diff options
| author | Zhineng Li <im@zhineng.li> | 2026-07-12 17:11:17 +0800 |
|---|---|---|
| committer | Zhineng Li <im@zhineng.li> | 2026-07-12 17:11:17 +0800 |
| commit | 1c7f908ce09f98fdcbf79ed2a8ae21be60eaa634 (patch) | |
| tree | 5f0857666365b7e40cdaa3733ebe1f3ba9e13c67 /data/zh_cn/sae/2019-05-06/api-docs.php | |
| parent | 7347bac4ab7e136157fc94777e6cf87ef9e08599 (diff) | |
| download | afterglow-metadata-full-1c7f908ce09f98fdcbf79ed2a8ae21be60eaa634.tar.gz afterglow-metadata-full-1c7f908ce09f98fdcbf79ed2a8ae21be60eaa634.zip | |
update APIs 20260712
Diffstat (limited to 'data/zh_cn/sae/2019-05-06/api-docs.php')
| -rw-r--r-- | data/zh_cn/sae/2019-05-06/api-docs.php | 55306 |
1 files changed, 20301 insertions, 35005 deletions
diff --git a/data/zh_cn/sae/2019-05-06/api-docs.php b/data/zh_cn/sae/2019-05-06/api-docs.php index 5c96cc9..1b5cbfb 100644 --- a/data/zh_cn/sae/2019-05-06/api-docs.php +++ b/data/zh_cn/sae/2019-05-06/api-docs.php @@ -1,1563 +1,173 @@ <?php return [ 'version' => '1.0', - 'info' => [ - 'style' => 'ROA', - 'product' => 'sae', - 'version' => '2019-05-06', - ], + 'info' => ['style' => 'ROA', 'product' => 'sae', 'version' => '2019-05-06'], 'directories' => [ [ - 'id' => 194111, - 'title' => '服务开通', + 'children' => ['OpenSaeService'], 'type' => 'directory', - 'children' => [ - 'OpenSaeService', - ], + 'title' => '服务开通', + 'id' => 304842, ], [ - 'id' => 194101, - 'title' => '服务通用管理', - 'type' => 'directory', 'children' => [ [ - 'id' => 121181, + 'children' => ['CreateIngress', 'DeleteIngress', 'UpdateNamespaceVpc', 'UpdateApplicationVswitches', 'UpdateIngress', 'DescribeNamespaces', 'DescribeNamespaceList', 'ListAppEvents', 'ListNamespaceChangeOrders', 'DescribeNamespaceResources', 'DescribeIngress', 'ListIngresses', 'DescribePipeline'], + 'type' => 'directory', 'title' => '命名空间和VPC', + 'id' => 304819, + ], + [ + 'children' => ['GetArmsTopNMetric', 'GetChangeOrderMetric', 'GetScaleAppMetric', 'GetWarningEventMetric'], 'type' => 'directory', - 'children' => [ - 'CreateNamespace', - 'CreateIngress', - 'DeleteNamespace', - 'DeleteIngress', - 'UpdateNamespace', - 'UpdateNamespaceVpc', - 'UpdateApplicationVswitches', - 'UpdateIngress', - 'DescribeNamespace', - 'DescribeNamespaces', - 'DescribeNamespaceList', - 'ListAppEvents', - 'ListNamespaceChangeOrders', - 'DescribeNamespaceResources', - 'DescribeIngress', - 'ListIngresses', - 'DescribePipeline', - ], - ], - [ - 'id' => 194112, 'title' => '概览页TOP N监控', - 'type' => 'directory', - 'children' => [ - 'GetArmsTopNMetric', - 'GetChangeOrderMetric', - 'GetScaleAppMetric', - 'GetWarningEventMetric', - ], + 'id' => 304837, ], ], + 'type' => 'directory', + 'title' => '服务通用管理', + 'id' => 304818, ], [ - 'id' => 194092, - 'title' => '微服务应用', - 'type' => 'directory', 'children' => [ [ - 'id' => 121212, - 'title' => '应用生命周期', - 'type' => 'directory', - 'children' => [ - 'CreateApplication', - 'DeleteApplication', - 'DeleteInstances', - 'StopApplication', - 'StartApplication', - 'ReduceApplicationCapacityByInstanceIds', - 'UpdateApplicationDescription', - 'UpdateAppSecurityGroup', - 'DescribeApplicationStatus', - 'ListChangeOrders', - 'DescribeChangeOrder', - 'DescribeInstanceSpecifications', - 'DeployApplication', - 'RescaleApplicationVertically', - 'ConfirmPipelineBatch', - 'AbortAndRollbackChangeOrder', - 'RescaleApplication', - 'RestartApplication', - 'AbortChangeOrder', - 'RollbackApplication', - 'BatchStopApplications', - 'BatchStartApplications', - 'DowngradeApplicationApmService', - 'UpgradeApplicationApmService', - ], - ], - [ - 'id' => 121236, - 'title' => '微服务列表', + 'children' => ['StopApplication', 'StartApplication', 'ReduceApplicationCapacityByInstanceIds', 'UpdateApplicationDescription', 'UpdateAppSecurityGroup', 'DescribeApplicationStatus', 'ListChangeOrders', 'DescribeChangeOrder', 'DescribeInstanceSpecifications', 'DeployApplication', 'RescaleApplicationVertically', 'ConfirmPipelineBatch', 'AbortAndRollbackChangeOrder', 'RestartApplication', 'AbortChangeOrder', 'BatchStopApplications', 'BatchStartApplications', 'DowngradeApplicationApmService', 'UpgradeApplicationApmService'], 'type' => 'directory', - 'children' => [ - 'ListConsumedServices', - 'ListPublishedServices', - 'ListAppServices', - ], + 'title' => '应用生命周期', + 'id' => 304714, ], [ - 'id' => 194113, - 'title' => '保密字典管理', + 'children' => ['ListConsumedServices', 'ListPublishedServices', 'ListAppServices'], 'type' => 'directory', - 'children' => [ - 'CreateSecret', - 'DescribeSecret', - 'ListSecrets', - 'UpdateSecret', - 'DeleteSecret', - ], + 'title' => '微服务列表', + 'id' => 304746, ], [ - 'id' => 121239, - 'title' => '标签管理', + 'children' => ['CreateConfigMap', 'DeleteConfigMap', 'UpdateConfigMap', 'DescribeConfigMap', 'ListNamespacedConfigMaps'], 'type' => 'directory', - 'children' => [ - 'ListTagResources', - 'UntagResources', - 'TagResources', - ], + 'title' => '配置项管理', + 'id' => 304754, ], [ - 'id' => 194102, - 'title' => '配置项管理', + 'children' => ['CreateGreyTagRoute', 'DeleteGreyTagRoute', 'UpdateGreyTagRoute', 'DescribeGreyTagRoute', 'ListGreyTagRoute'], 'type' => 'directory', - 'children' => [ - 'CreateConfigMap', - 'DeleteConfigMap', - 'UpdateConfigMap', - 'DescribeConfigMap', - 'ListNamespacedConfigMaps', - ], + 'title' => '灰度标签路由', + 'id' => 304682, ], [ - 'id' => 121168, - 'title' => '灰度标签路由', + 'children' => ['CreateOrUpdateSwimmingLaneGroup', 'CreateOrUpdateSwimmingLane', 'ListApplicationsForSwimmingLane', 'ListSwimmingLaneGatewayRoutes', 'ListSwimmingLaneGroupTags', 'DescribeSwimmingLane', 'ListAllSwimmingLanes', 'ListAllSwimmingLaneGroups', 'DeleteSwimmingLaneGroup', 'UpdateSwimmingLaneEnableAttribute'], 'type' => 'directory', - 'children' => [ - 'CreateGreyTagRoute', - 'DeleteGreyTagRoute', - 'UpdateGreyTagRoute', - 'DescribeGreyTagRoute', - 'ListGreyTagRoute', - ], + 'title' => '全链路灰度', + 'id' => 304766, ], [ - 'id' => 207429, - 'title' => '全链路灰度', + 'children' => ['DescribeApplicationConfig', 'DescribeInstanceLog', 'DescribeComponents', 'DescribeEdasContainers', 'DescribeApplicationImage', 'DescribeApplicationInstances', 'DescribeApplicationGroups', 'QueryResourceStatics', 'ListLogConfigs', 'RestartInstances', 'GetAvailabilityMetric', 'DescribeAppServiceDetail', 'ListAppServicesPage'], 'type' => 'directory', - 'children' => [ - 'CreateOrUpdateSwimmingLaneGroup', - 'CreateOrUpdateSwimmingLane', - 'ListApplicationsForSwimmingLane', - 'ListSwimmingLaneGatewayRoutes', - 'ListSwimmingLaneGroupTags', - 'DescribeSwimmingLane', - 'ListAllSwimmingLanes', - 'ListAllSwimmingLaneGroups', - 'DeleteSwimmingLaneGroup', - 'UpdateSwimmingLaneEnableAttribute', - ], + 'title' => '应用信息查询', + 'id' => 304696, ], [ - 'id' => 121198, - 'title' => '应用信息查询', + 'children' => ['DescribeApplicationNlbs', 'BindNlb', 'DescribeApplicationSlbs', 'BindSlb', 'UnbindSlb', 'UnbindNlb'], 'type' => 'directory', - 'children' => [ - 'GetApplication', - 'DescribeApplicationConfig', - 'DescribeRegions', - 'DescribeInstanceLog', - 'DescribeComponents', - 'DescribeEdasContainers', - 'DescribeApplicationImage', - 'DescribeApplicationInstances', - 'DescribeApplicationGroups', - 'ListApplications', - 'QueryResourceStatics', - 'ListLogConfigs', - 'ListAppVersions', - 'RestartInstances', - 'GetAvailabilityMetric', - 'DescribeAppServiceDetail', - 'ListAppServicesPage', - ], - ], - [ - 'id' => 121232, 'title' => 'SLB管理', - 'type' => 'directory', - 'children' => [ - 'DescribeApplicationNlbs', - 'BindNlb', - 'DescribeApplicationSlbs', - 'BindSlb', - 'UnbindSlb', - 'UnbindNlb', - ], + 'id' => 304739, ], [ - 'id' => 121174, - 'title' => '应用伸缩规则', + 'children' => ['CreateApplicationScalingRule', 'DeleteApplicationScalingRule', 'DisableApplicationScalingRule', 'EnableApplicationScalingRule', 'UpdateApplicationScalingRule', 'DescribeApplicationScalingRule', 'DescribeApplicationScalingRules'], 'type' => 'directory', - 'children' => [ - 'CreateApplicationScalingRule', - 'DeleteApplicationScalingRule', - 'DisableApplicationScalingRule', - 'EnableApplicationScalingRule', - 'UpdateApplicationScalingRule', - 'DescribeApplicationScalingRule', - 'DescribeApplicationScalingRules', - ], + 'title' => '应用伸缩规则', + 'id' => 304688, ], ], + 'type' => 'directory', + 'title' => '微服务应用', + 'id' => 304681, ], [ - 'id' => 194093, - 'title' => 'Web应用', - 'type' => 'directory', 'children' => [ [ - 'id' => 194094, - 'title' => '应用管控', + 'children' => ['CreateWebApplication', 'DescribeWebApplication', 'ListWebApplications', 'UpdateWebApplication', 'DeleteWebApplication'], 'type' => 'directory', - 'children' => [ - 'CreateWebApplication', - 'DescribeWebApplication', - 'ListWebApplications', - 'UpdateWebApplication', - 'DeleteWebApplication', - ], + 'title' => '应用管控', + 'id' => 304778, ], [ - 'id' => 194095, - 'title' => '应用运维', + 'children' => ['UpdateWebApplicationScalingConfig', 'DescribeWebApplicationScalingConfig', 'StopWebApplication', 'StartWebApplication'], 'type' => 'directory', - 'children' => [ - 'UpdateWebApplicationScalingConfig', - 'DescribeWebApplicationScalingConfig', - 'StopWebApplication', - 'StartWebApplication', - ], + 'title' => '应用运维', + 'id' => 304784, ], [ - 'id' => 194096, - 'title' => '流量管理', + 'children' => ['UpdateWebApplicationTrafficConfig', 'DescribeWebApplicationTrafficConfig'], 'type' => 'directory', - 'children' => [ - 'UpdateWebApplicationTrafficConfig', - 'DescribeWebApplicationTrafficConfig', - ], + 'title' => '流量管理', + 'id' => 304789, ], [ - 'id' => 194097, - 'title' => '版本管理', + 'children' => ['PublishWebApplicationRevision', 'ListWebApplicationRevisions', 'DescribeWebApplicationRevision', 'DeleteWebApplicationRevision'], 'type' => 'directory', - 'children' => [ - 'PublishWebApplicationRevision', - 'ListWebApplicationRevisions', - 'DescribeWebApplicationRevision', - 'DeleteWebApplicationRevision', - ], + 'title' => '版本管理', + 'id' => 304792, ], [ - 'id' => 194098, - 'title' => '自定义域名', + 'children' => ['CreateWebCustomDomain', 'DescribeWebCustomDomain', 'ListWebCustomDomains', 'UpdateWebCustomDomain', 'DeleteWebCustomDomain'], 'type' => 'directory', - 'children' => [ - 'CreateWebCustomDomain', - 'DescribeWebCustomDomain', - 'ListWebCustomDomains', - 'UpdateWebCustomDomain', - 'DeleteWebCustomDomain', - ], + 'title' => '自定义域名', + 'id' => 304797, ], [ - 'id' => 194099, - 'title' => '可观测', + 'children' => ['ListWebApplicationInstances', 'DescribeWebInstanceLogs', 'DescribeWebApplicationResourceStatics'], 'type' => 'directory', - 'children' => [ - 'ListWebApplicationInstances', - 'DescribeWebInstanceLogs', - 'DescribeWebApplicationResourceStatics', - ], + 'title' => '可观测', + 'id' => 304803, ], ], + 'type' => 'directory', + 'title' => 'Web应用', + 'id' => 304777, ], [ - 'id' => 194100, - 'title' => 'Job任务', + 'children' => ['DeleteHistoryJob', 'DescribeJobStatus', 'DescribeJob', 'ExecJob', 'SuspendJob', 'DescribeJobHistory'], 'type' => 'directory', - 'children' => [ - 'CreateJob', - 'DeleteHistoryJob', - 'DeleteJob', - 'DescribeJobStatus', - 'DescribeJob', - 'ExecJob', - 'ListJobs', - 'SuspendJob', - 'UpdateJob', - 'DescribeJobHistory', - ], + 'title' => 'Job任务', + 'id' => 304807, ], [ - 'id' => 179283, - 'title' => '其他', - 'type' => 'directory', 'children' => [ - 'DescribeConfigurationPrice', - 'GetWebshellToken', - 'UpdateAppMode', - 'QueryArmsEnable', - 'DescribeApplicationMseService', - 'BatchRestartApplications', - 'UpdateNamespaceSlsConfigs', - 'DisableArms', - 'ResumeTraffic', - 'SuspendTraffic', - 'ListApplicationCenterServiceInstances', + 'DescribeConfigurationPrice', 'GetWebshellToken', 'UpdateAppMode', 'QueryArmsEnable', 'DescribeApplicationMseService', 'BatchRestartApplications', 'UpdateNamespaceSlsConfigs', 'DisableArms', 'ResumeTraffic', 'SuspendTraffic', 'CreateApplication', 'CreateJob', 'CreateNamespace', 'CreateSecret', 'DeleteApplication', 'DeleteInstances', 'DeleteJob', 'DeleteNamespace', 'DeleteSecret', 'DescribeNamespace', + 'DescribeRegions', 'DescribeSecret', 'GetApplication', 'ListAppVersions', 'ListApplications', 'ListJobs', 'ListSecrets', 'ListTagResources', 'RescaleApplication', 'RollbackApplication', 'TagResources', 'UntagResources', 'UpdateJob', 'UpdateNamespace', 'UpdateSecret', ], + 'type' => 'directory', + 'title' => '其他', + 'id' => 304670, ], ], 'components' => [ 'schemas' => [ - 'AclConfig' => [ - 'title' => 'IP ACL 白名单配置', - 'description' => 'IP ACL', - 'type' => 'object', - 'properties' => [ - 'aclEntries' => [ - 'title' => 'IP 列表', - 'type' => 'array', - 'items' => [ - 'required' => true, - '$ref' => '#/components/schemas/AclEntryConfig', - ], - 'required' => true, - ], - ], - ], - 'AclEntryConfig' => [ - 'title' => 'IP 白名单列表', - 'type' => 'object', - 'properties' => [ - 'entry' => [ - 'title' => 'CIDR', - 'type' => 'string', - 'required' => true, - 'example' => '1.2.3.4/32', - ], - ], - ], - 'AppStackInstance' => [ - 'title' => 'A short description of struct', - 'description' => '应用模板-实例', - 'type' => 'object', - 'properties' => [ - 'StackId' => [ - 'title' => '模板ID', - 'type' => 'string', - 'example' => 'palworld', - ], - 'InstanceId' => [ - 'title' => '实例ID', - 'type' => 'string', - 'example' => 'i-789y', - ], - 'InstanceName' => [ - 'title' => '实例名称', - 'type' => 'string', - 'example' => 'palworld', - ], - 'Parameters' => [ - 'title' => '实例参数', - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'Name' => [ - 'title' => '参数名', - 'type' => 'string', - 'example' => 'regionId', - ], - 'Value' => [ - 'title' => '参数值', - 'type' => 'string', - 'example' => 'cn-hangzhou', - ], - ], - ], - ], - 'Endpoints' => [ - 'title' => '访问地址', - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'Name' => [ - 'title' => '地址名称', - 'type' => 'string', - 'example' => 'game', - ], - 'Protocol' => [ - 'title' => '地址协议', - 'type' => 'string', - 'example' => 'UDP', - ], - 'Address' => [ - 'title' => '地址和端口', - 'type' => 'string', - 'example' => '127.0.0.1:8211', - ], - ], - ], - ], - 'Status' => [ - 'title' => '实例状态', - 'type' => 'string', - 'example' => 'WAIT', - ], - 'CreateTime' => [ - 'title' => '创建时间', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1706518652', - ], - 'UpdateTime' => [ - 'title' => '修改时间', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1706518652', - ], - ], - ], - 'AppStackResource' => [ - 'title' => 'A short description of struct', - 'description' => '应用模板-资源', - 'type' => 'object', - 'properties' => [ - 'StackId' => [ - 'title' => '模板ID', - 'type' => 'string', - 'example' => 'palworld', - ], - 'InstanceId' => [ - 'title' => '实例ID', - 'type' => 'string', - 'example' => 'i-78yt', - ], - 'ResourceId' => [ - 'title' => '资源ID', - 'type' => 'string', - 'example' => 'vsw-qwe112233', - ], - 'ResourceType' => [ - 'title' => '资源类型', - 'type' => 'string', - 'example' => 'VSWITCH', - ], - 'ResourceName' => [ - 'title' => '资源名称', - 'type' => 'string', - 'example' => 'vsw-palworld-a', - ], - 'ProductCode' => [ - 'title' => '归属产品', - 'type' => 'string', - 'example' => 'VPC', - ], - 'Status' => [ - 'title' => '资源状态', - 'type' => 'string', - 'example' => 'NORMAL', - ], - 'CreateTime' => [ - 'title' => '创建时间', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1706518652000', - ], - ], - ], - 'AppStackTask' => [ - 'title' => '应用模板实例详情', - 'type' => 'object', - 'properties' => [ - 'StackId' => [ - 'title' => '模板ID', - 'type' => 'string', - 'example' => 'palworld', - ], - 'InstanceId' => [ - 'title' => '实例ID', - 'type' => 'string', - 'example' => 'i-789y', - ], - 'TaskId' => [ - 'title' => '任务ID', - 'type' => 'string', - 'example' => 't-789y-deploy', - ], - 'Status' => [ - 'title' => '任务状态', - 'type' => 'string', - 'example' => 'WAIT', - ], - 'CreateTime' => [ - 'title' => '创建时间', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1706518652', - ], - 'StartTime' => [ - 'title' => '开始时间', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1706518652', - ], - 'EndTime' => [ - 'title' => '结束时间', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1706518652', - ], - 'Steps' => [ - 'title' => '步骤列表', - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'Id' => [ - 'title' => '步骤ID', - 'type' => 'string', - 'example' => 'VPC_CREATE_NETWORK', - ], - 'Name' => [ - 'title' => '步骤名称', - 'type' => 'string', - 'example' => '初始化 VPC 网络', - ], - 'StartTime' => [ - 'title' => '开始时间', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1706518652', - ], - 'EndTime' => [ - 'title' => '结束时间', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1706518652', - ], - 'Status' => [ - 'title' => '步骤状态', - 'type' => 'string', - 'example' => 'WAIT', - ], - 'Duration' => [ - 'title' => '步骤用时', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '0', - ], - 'Code' => [ - 'title' => '错误码', - 'type' => 'string', - 'example' => 'OK', - ], - 'Message' => [ - 'title' => '错误信息', - 'type' => 'string', - 'example' => 'OK', - ], - ], - ], - ], - ], - ], - 'Application' => [ - 'type' => 'object', - 'properties' => [ - 'applicationName' => [ - 'title' => 'applicationName', - 'type' => 'string', - 'required' => false, - ], - 'applicationId' => [ - 'title' => 'applicationId', - 'type' => 'string', - ], - 'namespaceID' => [ - 'title' => 'namespaceId', - 'type' => 'string', - 'required' => false, - ], - 'namespaceName' => [ - 'title' => 'namespaceName', - 'type' => 'string', - 'required' => false, - ], - 'handler' => [ - 'title' => 'handler', - 'type' => 'string', - 'required' => false, - ], - 'lastModifiedTime' => [ - 'title' => 'lastModifiedTime', - 'type' => 'string', - 'required' => false, - ], - 'tracingConfig' => [ - 'required' => false, - '$ref' => '#/components/schemas/TracingConfig', - ], - 'instanceSoftConcurrency' => [ - 'title' => 'instanceSoftConcurrency', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - ], - 'nasConfig' => [ - 'required' => false, - '$ref' => '#/components/schemas/NASConfig', - ], - 'description' => [ - 'title' => 'description', - 'type' => 'string', - 'required' => false, - ], - 'codeSize' => [ - 'title' => 'codeSize', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - ], - 'timeout' => [ - 'title' => 'timeout', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - ], - 'codeChecksum' => [ - 'title' => 'codeChecksum', - 'type' => 'string', - 'required' => false, - ], - 'diskSize' => [ - 'title' => 'diskSize', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - ], - 'caPort' => [ - 'title' => 'caPort', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - ], - 'internetAccess' => [ - 'title' => 'internetAccess', - 'type' => 'boolean', - 'required' => false, - ], - 'layers' => [ - 'title' => 'layers', - 'type' => 'array', - 'items' => [ - 'type' => 'string', - 'required' => false, - ], - 'required' => false, - ], - 'ossMountConfig' => [ - 'required' => false, - '$ref' => '#/components/schemas/OSSMountConfig', - ], - 'createdTime' => [ - 'title' => 'createdTime', - 'type' => 'string', - 'required' => false, - ], - 'layersArnV2' => [ - 'title' => 'layersArnV2', - 'type' => 'array', - 'items' => [ - 'type' => 'string', - 'required' => false, - ], - 'required' => false, - ], - 'customRuntimeConfig' => [ - 'required' => false, - '$ref' => '#/components/schemas/CustomRuntimeConfig', - ], - 'logConfig' => [ - 'required' => false, - '$ref' => '#/components/schemas/LogConfig', - ], - 'instanceLifecycleConfig' => [ - 'required' => false, - '$ref' => '#/components/schemas/InstanceLifecycleConfig', - ], - 'scaleConfig' => [ - 'required' => false, - '$ref' => '#/components/schemas/ScaleConfig', - ], - 'instanceType' => [ - 'title' => 'instanceType', - 'type' => 'string', - 'required' => false, - ], - 'cpu' => [ - 'title' => 'cpu', - 'type' => 'number', - 'format' => 'float', - 'required' => false, - ], - 'runtime' => [ - 'title' => 'runtime', - 'type' => 'string', - 'required' => false, - ], - 'command' => [ - 'title' => 'command', - 'type' => 'string', - 'required' => false, - ], - 'imageConfig' => [ - 'required' => false, - '$ref' => '#/components/schemas/ImageConfig', - ], - 'instanceConcurrency' => [ - 'title' => 'instanceConcurrency', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - ], - 'initializer' => [ - 'title' => 'initializer', - 'type' => 'string', - 'required' => false, - ], - 'args' => [ - 'title' => 'args', - 'type' => 'string', - 'required' => false, - ], - 'initializationTimeout' => [ - 'title' => 'initializationTimeout', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - ], - 'memorySize' => [ - 'title' => 'memorySize', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - ], - 'customDNS' => [ - 'required' => false, - '$ref' => '#/components/schemas/CustomDNS', - ], - 'customHealthCheckConfig' => [ - 'required' => false, - '$ref' => '#/components/schemas/CustomHealthCheckConfig', - ], - 'environmentVariables' => [ - 'title' => 'environmentVariables', - 'type' => 'object', - 'required' => false, - 'additionalProperties' => [ - 'type' => 'string', - 'required' => false, - ], - ], - 'gpuMemorySize' => [ - 'title' => 'gpuMemorySize', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - ], - 'vpcConfig' => [ - 'required' => false, - '$ref' => '#/components/schemas/VPCConfig', - ], - 'httpTriggerConfig' => [ - 'required' => false, - '$ref' => '#/components/schemas/HTTPTriggerConfig', - ], - 'urlInternet' => [ - 'title' => 'urlInternet', - 'type' => 'string', - 'required' => false, - ], - 'urlIntranet' => [ - 'title' => 'urlIntranet', - 'type' => 'string', - 'required' => false, - ], - 'RequestId' => [ - 'title' => 'requestId', - 'type' => 'string', - ], - 'namespace' => [ - 'title' => 'namespace', - 'type' => 'string', - ], - 'customDomainName' => [ - 'title' => 'customDomainName', - 'type' => 'string', - ], - 'version' => [ - 'title' => 'version', - '$ref' => '#/components/schemas/Version', - ], - 'enableAppMetric' => [ - 'title' => 'enableAppMetric', - 'type' => 'boolean', - ], - 'enableArmsAdvanced' => [ - 'title' => 'enableArmsAdvanced', - 'type' => 'boolean', - ], - 'slsConfig' => [ - 'title' => 'slsConfig', - '$ref' => '#/components/schemas/SLSConfig', - ], - 'startupProbe' => [ - 'title' => 'startupProbe', - '$ref' => '#/components/schemas/Probe', - ], - 'livenessProbe' => [ - 'title' => 'livenessProbe', - '$ref' => '#/components/schemas/Probe', - ], - 'customHostAlias' => [ - 'title' => 'customHostAlias', - '$ref' => '#/components/schemas/CustomHostAlias', - ], - 'programmingLanguage' => [ - 'title' => 'programmingLanguage', - 'type' => 'string', - ], - ], - ], - 'ApplicationStatus' => [ - 'title' => 'A short description of struct', - 'type' => 'object', - 'properties' => [ - 'scaleConfig' => [ - '$ref' => '#/components/schemas/ScaleConfig', - ], - 'instanceCount' => [ - 'type' => 'integer', - 'format' => 'int64', - ], - ], - ], - 'ApplicationWithStatus' => [ - 'title' => 'A short description of struct', - 'type' => 'object', - 'properties' => [ - 'application' => [ - '$ref' => '#/components/schemas/Application', - ], - 'status' => [ - '$ref' => '#/components/schemas/ApplicationStatus', - ], - ], - ], - 'ArmsConfig' => [ - 'type' => 'object', - 'properties' => [ - 'appId' => [ - 'title' => 'appId', - 'type' => 'string', - ], - 'licenseKey' => [ - 'title' => 'licenseKey', - 'type' => 'string', - ], - 'agentVersion' => [ - 'title' => 'agentVersion', - 'type' => 'string', - ], - ], - ], - 'BuildPipeline' => [ - 'title' => '流水线配置', - 'type' => 'object', - 'properties' => [ - 'BuildConfig' => [ - 'title' => '构建配置', - 'type' => 'object', - 'properties' => [ - 'BeforeBuildCommand' => [ - 'title' => '构建命令', - 'type' => 'string', - 'example' => 'mvn clean package', - ], - 'BuildType' => [ - 'title' => '构建类型', - 'type' => 'string', - 'required' => true, - 'example' => 'buildpacks/dockerfile', - ], - 'RunCommand' => [ - 'title' => '启动命令', - 'type' => 'string', - 'example' => 'java -jar target/app.jar', - ], - 'WorkingDir' => [ - 'title' => '工作目录', - 'type' => 'string', - 'example' => 'code', - ], - 'DockerfilePath' => [ - 'title' => 'Dockerfile位置', - 'type' => 'string', - 'example' => 'code/Dockerfile', - ], - 'TomcatConfig' => [ - 'title' => 'Tomcat配置', - '$ref' => '#/components/schemas/TomcatConfig', - ], - 'RuntimeType' => [ - 'title' => '运行时类型', - 'type' => 'string', - ], - 'RuntimeVersion' => [ - 'title' => '运行时版本', - 'type' => 'string', - ], - ], - 'required' => true, - ], - 'CodeConfig' => [ - 'title' => '源码配置', - 'type' => 'object', - 'properties' => [ - 'AccountId' => [ - 'title' => '账号ID', - 'type' => 'string', - 'required' => true, - 'example' => '10000', - ], - 'BranchName' => [ - 'title' => '分支名称', - 'type' => 'string', - 'required' => true, - 'example' => 'master', - ], - 'Provider' => [ - 'title' => '代码仓库提供方', - 'type' => 'string', - 'required' => true, - 'example' => 'github/gitee/gitlab等', - ], - 'RepoFullName' => [ - 'title' => '仓库全称', - 'type' => 'string', - 'required' => true, - 'example' => 'sae-samples/java-maven-demo', - ], - 'RepoId' => [ - 'title' => '仓库ID', - 'type' => 'string', - 'required' => true, - 'example' => '3001', - ], - 'CommitId' => [ - 'title' => '提交ID', - 'type' => 'string', - ], - 'CommitUrl' => [ - 'title' => '提交地址', - 'type' => 'string', - ], - 'OrganizationId' => [ - 'title' => '企业/组织ID', - 'type' => 'string', - ], - ], - 'required' => true, - ], - 'DeployConfig' => [ - 'title' => '部署配置', - 'type' => 'object', - 'properties' => [ - 'MinimumInstanceCount' => [ - 'title' => '最小实例数', - 'type' => 'integer', - 'format' => 'int32', - ], - 'MaximumInstanceCount' => [ - 'title' => '最大实例数', - 'type' => 'integer', - 'format' => 'int32', - ], - 'AlwaysAllocateCPU' => [ - 'title' => 'CPU分配模式', - 'type' => 'boolean', - ], - 'UpdateApplicationInput' => [ - 'title' => '应用更新的参数', - 'type' => 'string', - ], - 'UpdateTraffic' => [ - 'title' => '是否自动切流', - 'type' => 'boolean', - ], - ], - 'required' => false, - ], - 'ApplicationId' => [ - 'title' => '应用ID', - 'type' => 'string', - 'required' => true, - ], - 'ApplicationName' => [ - 'title' => '应用名称', - 'type' => 'string', - 'required' => true, - ], - 'Enabled' => [ - 'title' => '启用状态', - 'type' => 'boolean', - ], - 'TriggerConfig' => [ - 'title' => '触发器', - 'type' => 'object', - 'properties' => [ - 'Type' => [ - 'title' => '触发类型', - 'type' => 'string', - 'required' => true, - 'example' => 'PUSH', - ], - 'BranchName' => [ - 'title' => '分支名称', - 'type' => 'string', - 'required' => false, - 'example' => 'master', - ], - 'TagName' => [ - 'title' => 'tag名称', - 'type' => 'string', - 'example' => 'v1', - ], - ], - 'required' => true, - ], - 'ImageConfig' => [ - 'title' => '镜像配置', - 'type' => 'object', - 'properties' => [ - 'Namespace' => [ - 'title' => '命名空间', - 'type' => 'string', - ], - 'Repository' => [ - 'title' => '仓库名称', - 'type' => 'string', - ], - 'InstanceType' => [ - 'title' => '实例类型', - 'type' => 'string', - 'required' => false, - 'example' => 'ACR/ACREE', - ], - ], - ], - 'PackageConfig' => [ - 'title' => '源码包配置', - 'type' => 'object', - 'properties' => [ - 'PackageType' => [ - 'title' => '源码包类型', - 'type' => 'string', - 'example' => 'war/jar/zip', - ], - 'PackageUrl' => [ - 'title' => '源码包地址', - 'type' => 'string', - 'example' => 'http://myoss.oss-cn-****.aliyuncs.com/my-buc/2019-06-30/****.jar', - ], - 'PackageVersion' => [ - 'title' => '源码包版本', - 'type' => 'string', - 'example' => '1.0.0', - ], - 'PackageName' => [ - 'title' => '源码包名字', - 'type' => 'string', - ], - ], - ], - ], - ], - 'BuildPipelineRun' => [ - 'title' => '流水线实例详情', - 'type' => 'object', - 'properties' => [ - 'BuildConfig' => [ - 'title' => '构建配置', - 'type' => 'object', - 'properties' => [ - 'BeforeBuildCommand' => [ - 'title' => '构建命令', - 'type' => 'string', - 'example' => 'mvn clean package', - ], - 'BuildType' => [ - 'title' => '构建类型', - 'type' => 'string', - 'required' => true, - 'example' => 'buildpacks/dockerfile', - ], - 'RunCommand' => [ - 'title' => '启动命令', - 'type' => 'string', - 'example' => 'java -jar target/app.jar', - ], - 'Trigger' => [ - 'title' => '触发方式', - 'type' => 'object', - 'properties' => [ - 'BranchName' => [ - 'title' => '分支名称', - 'type' => 'string', - 'required' => false, - 'example' => 'master', - ], - 'Type' => [ - 'title' => '触发事件类型', - 'type' => 'string', - 'required' => true, - 'example' => 'PUSH', - ], - 'TagName' => [ - 'title' => 'tag名称', - 'type' => 'string', - 'example' => 'v1', - ], - ], - 'required' => true, - ], - 'WorkingDir' => [ - 'title' => '工作目录', - 'type' => 'string', - 'example' => 'code', - ], - 'DockerfilePath' => [ - 'title' => 'Dockerfile位置', - 'type' => 'string', - 'example' => 'code/Dockerfile', - ], - 'TomcatConfig' => [ - 'title' => 'Tomcat配置', - '$ref' => '#/components/schemas/TomcatConfig', - ], - 'RuntimeType' => [ - 'title' => '运行时类型', - 'type' => 'string', - ], - 'RuntimeVersion' => [ - 'title' => '运行时版本', - 'type' => 'string', - ], - ], - 'required' => false, - ], - 'CodeConfig' => [ - 'title' => '源码配置', - 'type' => 'object', - 'properties' => [ - 'AccountId' => [ - 'title' => '账号ID', - 'type' => 'string', - 'required' => true, - 'example' => '10000', - ], - 'BranchName' => [ - 'title' => '分支名称', - 'type' => 'string', - 'required' => true, - 'example' => 'master', - ], - 'Provider' => [ - 'title' => '代码仓库提供方', - 'type' => 'string', - 'required' => true, - 'example' => 'github/gitee/gitlab等', - ], - 'RepoFullName' => [ - 'title' => '仓库全称', - 'type' => 'string', - 'required' => true, - 'example' => 'sae-samples/java-maven-demo', - ], - 'RepoId' => [ - 'title' => '仓库ID', - 'type' => 'string', - 'required' => true, - 'example' => '3001', - ], - 'CommitId' => [ - 'title' => '提交ID', - 'type' => 'string', - ], - 'CommitUrl' => [ - 'title' => '提交地址', - 'type' => 'string', - ], - 'OrganizationId' => [ - 'title' => '企业/组织ID', - 'type' => 'string', - ], - ], - 'required' => false, - ], - 'DeployConfig' => [ - 'title' => '部署配置', - 'type' => 'object', - 'properties' => [ - 'MinimumInstanceCount' => [ - 'title' => '最小实例数', - 'type' => 'integer', - 'format' => 'int32', - ], - 'MaximumInstanceCount' => [ - 'title' => '最大实例数', - 'type' => 'integer', - 'format' => 'int32', - ], - 'AlwaysAllocateCPU' => [ - 'title' => 'CPU分配模式', - 'type' => 'boolean', - ], - 'UpdateApplicationInput' => [ - 'title' => '应用更新的参数', - 'type' => 'string', - ], - 'UpdateTraffic' => [ - 'title' => '是否自动切流', - 'type' => 'boolean', - ], - ], - 'required' => false, - ], - 'VersionId' => [ - 'title' => '版本号', - 'type' => 'string', - ], - 'PipelineId' => [ - 'title' => '流水线ID', - 'type' => 'string', - ], - 'Status' => [ - 'title' => '流水线状态', - 'type' => 'string', - ], - 'PipelineRunId' => [ - 'title' => '流水线实例Id', - 'type' => 'string', - ], - 'CreateTime' => [ - 'title' => '创建时间', - 'type' => 'integer', - 'format' => 'int64', - ], - 'StartTime' => [ - 'title' => '启动时间', - 'type' => 'integer', - 'format' => 'int64', - ], - 'EndTime' => [ - 'title' => '结束时间', - 'type' => 'integer', - 'format' => 'int64', - ], - 'WaitDuration' => [ - 'title' => '排队时长', - 'type' => 'integer', - 'format' => 'int64', - ], - 'BuildDuration' => [ - 'title' => '构建时长', - 'type' => 'integer', - 'format' => 'int64', - ], - 'DeployDuration' => [ - 'title' => '部署时长', - 'type' => 'integer', - 'format' => 'int64', - ], - 'Steps' => [ - 'title' => '步骤列表', - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'Id' => [ - 'title' => '任务ID', - 'type' => 'string', - ], - 'Name' => [ - 'title' => '任务名称', - 'type' => 'string', - ], - 'StartTime' => [ - 'title' => '开始时间', - 'type' => 'integer', - 'format' => 'int64', - ], - 'EndTime' => [ - 'title' => '结束时间', - 'type' => 'integer', - 'format' => 'int64', - ], - 'Status' => [ - 'title' => '任务状态', - 'type' => 'string', - ], - 'Description' => [ - 'title' => '任务描述', - 'type' => 'string', - ], - 'Duration' => [ - 'title' => '任务用时', - 'type' => 'integer', - 'format' => 'int64', - ], - 'Result' => [ - 'title' => '任务结果', - 'type' => 'string', - ], - ], - ], - ], - 'ImageConfig' => [ - 'title' => '镜像配置', - 'type' => 'object', - 'properties' => [ - 'Namespace' => [ - 'title' => '命名空间', - 'type' => 'string', - ], - 'Repository' => [ - 'title' => '镜像仓库', - 'type' => 'string', - ], - 'InstanceType' => [ - 'title' => '类型', - 'type' => 'string', - ], - ], - ], - 'PackageConfig' => [ - 'title' => '源码包配置', - 'type' => 'object', - 'properties' => [ - 'PackageType' => [ - 'title' => '源码包类型', - 'type' => 'string', - ], - 'PackageUrl' => [ - 'title' => '源码包地址', - 'type' => 'string', - ], - 'PackageVersion' => [ - 'title' => '源码包版本', - 'type' => 'string', - ], - 'PackageName' => [ - 'title' => '源码包名字', - 'type' => 'string', - ], - ], - ], - 'TriggerConfig' => [ - 'title' => '触发配置', - 'type' => 'object', - 'properties' => [ - 'Type' => [ - 'title' => '触发类型', - 'type' => 'string', - ], - 'BranchName' => [ - 'title' => '分支名', - 'type' => 'string', - ], - 'TagName' => [ - 'title' => 'tag名', - 'type' => 'string', - ], - ], - ], - ], - ], - 'BuildPipelineRunLogLine' => [ - 'title' => '一行日志', - 'description' => 'BuildPipelineLogLine', - 'type' => 'object', - 'properties' => [ - 'Offset' => [ - 'title' => '日志行号', - 'type' => 'integer', - 'format' => 'int64', - ], - 'Content' => [ - 'title' => '日志内容', - 'type' => 'string', - ], - ], - ], - 'CertConfig' => [ - 'title' => 'TODO', - 'type' => 'object', - 'properties' => [ - 'certName' => [ - 'title' => 'TODO', - 'type' => 'string', - 'required' => false, - 'maxLength' => 128, - 'minLength' => 1, - ], - 'certificate' => [ - 'title' => 'TODO', - 'type' => 'string', - 'required' => false, - 'maxLength' => 20480, - ], - 'privateKey' => [ - 'title' => 'TODO', - 'type' => 'string', - 'required' => false, - 'maxLength' => 4096, - ], - ], - ], - 'ChangeOrderStatus' => [ - 'title' => '发布单状态', - 'description' => '发布单状态', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '2', - ], - 'CoStatus' => [ - 'title' => '发布单状态', - 'type' => 'string', - 'example' => '2', - ], 'Container' => [ 'title' => 'TODO', - 'description' => '容器的详细配置参数。', + 'description' => '容器的详细配置参数', 'type' => 'object', 'properties' => [ - 'Args' => [ - 'title' => '容器启动参数', - 'description' => '容器启动参数。', - 'type' => 'string', - 'required' => false, - 'example' => '["abc", ">", "file0"]', - ], - 'Command' => [ - 'title' => '容器启动命令', - 'description' => '容器启动命令。', - 'type' => 'string', - 'required' => false, - 'example' => '["/bin/sh"]', - ], + 'Args' => ['title' => '容器启动参数', 'description' => '容器启动参数。', 'type' => 'string', 'required' => false, 'example' => '["abc", ">", "file0"]'], + 'Command' => ['title' => '容器启动命令', 'description' => '容器启动命令。', 'type' => 'string', 'required' => false, 'example' => '["/bin/sh"]'], 'EnvironmentVariables' => [ 'title' => '容器环境变量', 'description' => '容器环境变量。', 'type' => 'object', 'required' => false, - 'additionalProperties' => [ - 'description' => '容器环境变量。', - 'type' => 'string', - 'example' => 'test:aaa', - ], - ], - 'Image' => [ - 'title' => '容器镜像', - 'description' => '容器镜像。', - 'type' => 'string', - 'required' => true, - 'example' => 'registry.cn-shanghai.aliyuncs.com/serverless_devsxxxxx', - ], - 'WebNASConfig' => [ - 'title' => '容器 NAS配置', - 'description' => '容器 NAS配置。', - 'required' => false, - '$ref' => '#/components/schemas/WebNASConfig', - ], - 'WebOSSConfig' => [ - 'title' => '容器 OSS 挂载配置', - 'description' => '容器 OSS 挂载配置。', - 'required' => false, - '$ref' => '#/components/schemas/WebOSSConfig', - ], - 'Port' => [ - 'title' => '容器端口', - 'description' => '容器端口。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '8080', - ], - 'RequestConcurrency' => [ - 'title' => '单实例并发请求数', - 'description' => '单实例并发请求数。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '100', - ], - 'RequestTimeout' => [ - 'title' => '容器请求超时时间', - 'description' => '容器请求超时时间。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '60', - ], - 'Resources' => [ - 'title' => '容器资源配置', - 'description' => '容器资源配置。', - 'required' => true, - '$ref' => '#/components/schemas/ContainerResources', - ], - 'StartupProbe' => [ - 'title' => '容器启动检查配置', - 'description' => '容器启动检查配置。', - 'required' => false, - '$ref' => '#/components/schemas/StartupProbe', - ], - 'SLSCollectConfigs' => [ - 'title' => '容器日志采集配置', - 'description' => '容器日志采集配置。', - '$ref' => '#/components/schemas/SLSCollectConfigs', - ], - 'MetricsCollectConfig' => [ - 'title' => '监控采集配置', - 'description' => '监控采集配置。', - '$ref' => '#/components/schemas/MetricsCollectConfig', - ], - 'ImageRegistryConfig' => [ - 'title' => '镜像仓库配置', - 'description' => '镜像仓库配置。', - '$ref' => '#/components/schemas/ImageRegistryConfig', + 'additionalProperties' => ['description' => '容器环境变量。', 'type' => 'string', 'example' => 'test:aaa'], ], + 'Image' => ['title' => '容器镜像', 'description' => '容器镜像。', 'type' => 'string', 'required' => true, 'example' => 'registry.cn-shanghai.aliyuncs.com/serverless_devsxxxxx'], + 'WebNASConfig' => ['title' => '容器 NAS配置', 'description' => '容器 NAS配置。', 'required' => false, '$ref' => '#/components/schemas/WebNASConfig'], + 'WebOSSConfig' => ['title' => '容器 OSS 挂载配置', 'description' => '容器 OSS 挂载配置。', 'required' => false, '$ref' => '#/components/schemas/WebOSSConfig'], + 'Port' => ['title' => '容器端口', 'description' => '容器端口。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '8080'], + 'RequestConcurrency' => ['title' => '单实例并发请求数', 'description' => '单实例并发请求数。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '100'], + 'RequestTimeout' => ['title' => '容器请求超时时间', 'description' => '容器请求超时时间。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '60'], + 'Resources' => ['title' => '容器资源配置', 'description' => '容器资源配置。', 'required' => true, '$ref' => '#/components/schemas/ContainerResources'], + 'StartupProbe' => ['title' => '容器启动检查配置', 'description' => '容器启动检查配置。', 'required' => false, '$ref' => '#/components/schemas/StartupProbe'], + 'SLSCollectConfigs' => ['title' => '容器日志采集配置', 'description' => '容器日志采集配置。', '$ref' => '#/components/schemas/SLSCollectConfigs'], + 'MetricsCollectConfig' => ['title' => '监控采集配置', 'description' => '监控采集配置。', '$ref' => '#/components/schemas/MetricsCollectConfig'], + 'ImageRegistryConfig' => ['title' => '镜像仓库配置', 'description' => '镜像仓库配置', '$ref' => '#/components/schemas/ImageRegistryConfig'], ], ], 'ContainerResources' => [ @@ -1565,354 +175,27 @@ 'description' => '容器资源配置。', 'type' => 'object', 'properties' => [ - 'Cpu' => [ - 'title' => '容器CPU大小', - 'description' => '每个实例所需的CPU,单位为毫核,不能为0。目前仅支持以下固定规格:'."\n" - ."\n" - .'- **500**'."\n" - .'- **1000**'."\n" - .'- **2000**'."\n" - .'- **4000**'."\n" - .'- **8000**'."\n" - .'- **16000**'."\n" - .'- **32000**', - 'type' => 'integer', - 'format' => 'int32', - 'required' => true, - 'example' => '1000', - ], - 'Memory' => [ - 'title' => '容器内存大小', - 'description' => '每个实例所需的内存,单位为MB,不能为0。与CPU为一一对应关系,目前仅支持以下固定规格:'."\n" - ."\n" - .'- **1024**:对应CPU为500毫核和1000毫核。'."\n" - .'- **2048**:对应CPU为500、1000毫核和2000毫核。'."\n" - .'- **4096**:对应CPU为1000、2000毫核和4000毫核。'."\n" - .'- **8192**:对应CPU为2000、4000毫核和8000毫核。'."\n" - .'- **12288**:对应CPU为12000毫核。'."\n" - .'- **16384**:对应CPU为4000、8000毫核和16000毫核。'."\n" - .'- **24576**:对应CPU为12000毫核。'."\n" - .'- **32768**:对应CPU为16000毫核。'."\n" - .'- **65536**:对应CPU为8000、16000和32000毫核。'."\n" - .'- **131072**:对应CPU为32000毫核。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => true, - 'example' => '2048', - ], - ], - ], - 'CreateApplicationInput' => [ - 'type' => 'object', - 'properties' => [ - 'namespaceID' => [ - 'title' => 'namespaceID', - 'type' => 'string', - 'required' => false, - ], - 'handler' => [ - 'title' => 'handler', - 'type' => 'string', - 'required' => false, - 'maxLength' => 128, - 'minLength' => 1, - ], - 'code' => [ - 'required' => false, - '$ref' => '#/components/schemas/InputCodeLocation', - ], - 'tracingConfig' => [ - 'required' => false, - '$ref' => '#/components/schemas/TracingConfig', - ], - 'instanceSoftConcurrency' => [ - 'title' => 'instanceSoftConcurrency', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'maximum' => '200', - 'minimum' => '1', - ], - 'nasConfig' => [ - 'required' => false, - '$ref' => '#/components/schemas/NASConfig', - ], - 'description' => [ - 'title' => 'description', - 'type' => 'string', - 'required' => false, - ], - 'timeout' => [ - 'title' => 'timeout', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'minimum' => '1', - ], - 'diskSize' => [ - 'title' => 'diskSize', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'minimum' => '512', - ], - 'caPort' => [ - 'title' => 'caPort', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - ], - 'internetAccess' => [ - 'title' => 'internetAccess', - 'type' => 'boolean', - 'required' => false, - ], - 'layers' => [ - 'title' => 'layers', - 'type' => 'array', - 'items' => [ - 'type' => 'string', - 'required' => false, - ], - 'required' => false, - ], - 'ossMountConfig' => [ - 'required' => false, - '$ref' => '#/components/schemas/OSSMountConfig', - ], - 'applicationName' => [ - 'title' => 'applicationName', - 'type' => 'string', - 'required' => false, - 'maxLength' => 128, - 'minLength' => 1, - ], - 'customRuntimeConfig' => [ - 'required' => false, - '$ref' => '#/components/schemas/CustomRuntimeConfig', - ], - 'logConfig' => [ - 'required' => false, - '$ref' => '#/components/schemas/LogConfig', - ], - 'instanceLifecycleConfig' => [ - 'required' => false, - '$ref' => '#/components/schemas/InstanceLifecycleConfig', - ], - 'scaleConfig' => [ - 'required' => false, - '$ref' => '#/components/schemas/ScaleConfig', - ], - 'instanceType' => [ - 'title' => 'instanceType', - 'type' => 'string', - 'required' => false, - 'maxLength' => 128, - 'minLength' => 0, - ], - 'cpu' => [ - 'title' => 'cpu', - 'type' => 'number', - 'format' => 'float', - 'required' => false, - 'minimum' => '0.05', - ], - 'runtime' => [ - 'title' => 'runtime', - 'type' => 'string', - 'required' => false, - ], - 'command' => [ - 'title' => 'command', - 'type' => 'string', - 'required' => false, - ], - 'imageConfig' => [ - 'required' => false, - '$ref' => '#/components/schemas/ImageConfig', - ], - 'instanceConcurrency' => [ - 'title' => 'instanceConcurrency', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'maximum' => '200', - 'minimum' => '1', - ], - 'initializer' => [ - 'title' => 'initializer', - 'type' => 'string', - 'required' => false, - 'maxLength' => 128, - 'minLength' => 0, - ], - 'args' => [ - 'title' => 'args', - 'type' => 'string', - 'required' => false, - ], - 'initializationTimeout' => [ - 'title' => 'initializationTimeout', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'minimum' => '1', - ], - 'memorySize' => [ - 'title' => 'memorySize', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'minimum' => '128', - ], - 'customDNS' => [ - 'required' => false, - '$ref' => '#/components/schemas/CustomDNS', - ], - 'customHealthCheckConfig' => [ - 'required' => false, - '$ref' => '#/components/schemas/CustomHealthCheckConfig', - ], - 'environmentVariables' => [ - 'title' => 'environmentVariables', - 'type' => 'object', - 'required' => false, - 'additionalProperties' => [ - 'type' => 'string', - 'required' => false, - ], - ], - 'gpuMemorySize' => [ - 'title' => 'gpuMemorySize', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'minimum' => '128', - ], - 'vpcConfig' => [ - 'required' => false, - '$ref' => '#/components/schemas/VPCConfig', - ], - 'httpTriggerConfig' => [ - 'required' => false, - '$ref' => '#/components/schemas/HTTPTriggerConfig', - ], - 'slsConfig' => [ - 'required' => false, - '$ref' => '#/components/schemas/SLSConfig', - ], - 'startupProbe' => [ - 'required' => false, - '$ref' => '#/components/schemas/Probe', - ], - 'livenessProbe' => [ - 'required' => false, - '$ref' => '#/components/schemas/Probe', - ], - 'enableAppMetric' => [ - 'title' => 'enableAppMetric', - 'type' => 'boolean', - ], - 'customHostAlias' => [ - '$ref' => '#/components/schemas/CustomHostAlias', - ], - 'programmingLanguage' => [ - 'title' => 'programmingLanguage', - 'type' => 'string', - ], - ], - ], - 'CreateCustomDomainInput' => [ - 'type' => 'object', - 'properties' => [ - 'keepFullPath' => [ - 'title' => 'keepFullPath', - 'type' => 'boolean', - 'required' => false, - ], - 'protocol' => [ - 'title' => 'protocol', - 'type' => 'string', - 'required' => false, - ], - 'certConfig' => [ - 'required' => false, - '$ref' => '#/components/schemas/CertConfig', - ], - 'domainName' => [ - 'title' => 'domainName', - 'type' => 'string', - 'required' => false, - 'maxLength' => 256, - 'minLength' => 1, - ], - 'tlsConfig' => [ - 'required' => false, - '$ref' => '#/components/schemas/TLSConfig', - ], - 'wafConfig' => [ - 'required' => false, - '$ref' => '#/components/schemas/WAFConfig', - ], - 'applicationName' => [ - 'title' => 'applicationName', - 'type' => 'string', - 'required' => false, - ], - 'namespaceID' => [ - 'title' => 'namespaceId', - 'type' => 'string', - 'required' => false, - ], - ], - ], - 'CreateSlsIndexRequest' => [ - 'title' => 'index request', - 'type' => 'object', - 'properties' => [ - 'project' => [ - 'title' => 'project', - 'type' => 'string', - ], - 'logstore' => [ - 'title' => 'logstore', - 'type' => 'string', - ], - ], - ], - 'CreateSlsIndexResponse' => [ - 'title' => 'sls index response', - 'type' => 'object', - 'properties' => [ - 'project' => [ - 'title' => 'project', - 'type' => 'string', - ], - 'logStore' => [ - 'title' => 'logStore', - 'type' => 'string', - ], - 'RequestId' => [ - 'title' => 'requestId', - 'type' => 'string', - ], - ], - ], - 'CreateSlsResourceResponse' => [ - 'type' => 'object', - 'properties' => [ - 'project' => [ - 'title' => 'project', - 'type' => 'string', - ], - 'logStore' => [ - 'title' => 'logStore', - 'type' => 'string', - ], - 'requestId' => [ - 'title' => 'requestId', - 'type' => 'string', - ], + 'Cpu' => ['title' => '容器CPU大小', 'description' => '每个实例所需的CPU,单位为毫核,不能为0。目前仅支持以下固定规格:'."\n" + ."\n" + .'- **500**'."\n" + .'- **1000**'."\n" + .'- **2000**'."\n" + .'- **4000**'."\n" + .'- **8000**'."\n" + .'- **16000**'."\n" + .'- **32000**', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '1000'], + 'Memory' => ['title' => '容器内存大小', 'description' => '每个实例所需的内存,单位为MB,不能为0。与CPU为一一对应关系,目前仅支持以下固定规格:'."\n" + ."\n" + .'- **1024**:对应CPU为500毫核和1000毫核。'."\n" + .'- **2048**:对应CPU为500、1000毫核和2000毫核。'."\n" + .'- **4096**:对应CPU为1000、2000毫核和4000毫核。'."\n" + .'- **8192**:对应CPU为2000、4000毫核和8000毫核。'."\n" + .'- **12288**:对应CPU为12000毫核。'."\n" + .'- **16384**:对应CPU为4000、8000毫核和16000毫核。'."\n" + .'- **24576**:对应CPU为12000毫核。'."\n" + .'- **32768**:对应CPU为16000毫核。'."\n" + .'- **65536**:对应CPU为8000、16000和32000毫核。'."\n" + .'- **131072**:对应CPU为32000毫核。', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '2048'], ], ], 'CreateWebApplicationInput' => [ @@ -1920,50 +203,15 @@ 'description' => '应用信息。', 'type' => 'object', 'properties' => [ - 'ApplicationName' => [ - 'title' => '应用名称', - 'description' => '应用名称。', - 'type' => 'string', - 'required' => true, - 'example' => 'sae-app', - 'maxLength' => 128, - 'minLength' => 1, - ], - 'Description' => [ - 'title' => '应用描述', - 'description' => '应用描述。', - 'type' => 'string', - 'required' => false, - 'example' => 'my sae app', - 'maxLength' => 256, - ], - 'RevisionConfig' => [ - 'title' => '应用修订版本上的配置', - 'description' => '应用修订版本上的配置。', - 'required' => true, - '$ref' => '#/components/schemas/RevisionConfig', - ], - 'WebNetworkConfig' => [ - 'title' => '应用网络配置', - 'description' => '应用网络配置。'."\n" - ."\n\n" - .'> '."\n" - .'> 此字段是为应用配置网络信息。', - 'required' => false, - '$ref' => '#/components/schemas/WebNetworkConfig', - ], - 'WebScalingConfig' => [ - 'title' => '应用弹性伸缩配置', - 'description' => '应用弹性伸缩配置。', - 'required' => false, - '$ref' => '#/components/schemas/WebScalingConfig', - ], - 'WebTrafficConfig' => [ - 'title' => '应用流量配置', - 'description' => '应用流量配置。', - 'required' => false, - '$ref' => '#/components/schemas/WebTrafficConfig', - ], + 'ApplicationName' => ['title' => '应用名称', 'description' => '应用名称。', 'type' => 'string', 'required' => true, 'example' => 'sae-app', 'maxLength' => 128, 'minLength' => 1], + 'Description' => ['title' => '应用描述', 'description' => '应用描述。', 'type' => 'string', 'required' => false, 'example' => 'my sae app', 'maxLength' => 256], + 'RevisionConfig' => ['title' => '应用修订版本上的配置', 'description' => '应用修订版本上的配置。', 'required' => true, '$ref' => '#/components/schemas/RevisionConfig'], + 'WebNetworkConfig' => ['title' => '应用网络配置', 'description' => '应用网络配置。'."\n" + ."\n\n" + .'> '."\n" + .'> 此字段是为应用配置网络信息。', 'required' => false, '$ref' => '#/components/schemas/WebNetworkConfig'], + 'WebScalingConfig' => ['title' => '应用弹性伸缩配置', 'description' => '应用弹性伸缩配置。', 'required' => false, '$ref' => '#/components/schemas/WebScalingConfig'], + 'WebTrafficConfig' => ['title' => '应用流量配置', 'description' => '应用流量配置。', 'required' => false, '$ref' => '#/components/schemas/WebTrafficConfig'], ], ], 'CreateWebCustomDomainInput' => [ @@ -1971,252 +219,17 @@ 'description' => '创建自定义域名的请求参数。', 'type' => 'object', 'properties' => [ - 'WebCertConfig' => [ - 'title' => 'HTTPS证书的信息。', - 'description' => 'HTTPS证书的信息。', - 'required' => false, - '$ref' => '#/components/schemas/WebCertConfig', - ], - 'DefaultForwardingAppName' => [ - 'title' => '域名默认转发的应用名', - 'description' => '域名默认转发的应用名。', - 'type' => 'string', - 'required' => false, - 'example' => 'demo-app', - ], - 'DomainName' => [ - 'title' => '域名。填写已在阿里云备案或接入备案的自定义域名名称。', - 'description' => '域名。填写已在阿里云备案或接入备案的自定义域名名称。', - 'type' => 'string', - 'required' => true, - 'example' => 'example.com', - 'maxLength' => 256, - 'minLength' => 1, - ], - 'Protocol' => [ - 'title' => '域名支持的协议类型。HTTP:仅支持HTTP协议。HTTPS:仅支持HTTPS协议。HTTP,HTTPS:支持HTTP及HTTPS协议。', - 'description' => '域名支持的协议类型。'."\n" - ."\n" - .'- **HTTP**:仅支持HTTP协议。'."\n" - .'- **HTTPS**:仅支持HTTPS协议。'."\n" - .'- **HTTP,HTTPS**:支持HTTP及HTTPS协议。', - 'type' => 'string', - 'required' => false, - 'example' => 'HTTP', - ], - 'WebTLSConfig' => [ - 'title' => 'TLS配置信息。', - 'description' => 'TLS配置信息。', - 'required' => false, - '$ref' => '#/components/schemas/WebTLSConfig', - ], - 'WebWAFConfig' => [ - 'title' => 'Web应用防火墙配置信息。', - 'description' => 'Web应用防火墙配置信息。', - 'required' => false, - '$ref' => '#/components/schemas/WebWAFConfig', - ], - 'RouteConfig' => [ - 'title' => '路由配置', - 'description' => '路由配置', - '$ref' => '#/components/schemas/RouteConfig', - ], - ], - ], - 'CustomDNS' => [ - 'type' => 'object', - 'properties' => [ - 'searches' => [ - 'title' => 'searches', - 'type' => 'array', - 'items' => [ - 'type' => 'string', - 'required' => false, - ], - 'required' => false, - ], - 'dnsOptions' => [ - 'title' => 'dnsOptions', - 'type' => 'array', - 'items' => [ - 'required' => false, - '$ref' => '#/components/schemas/DNSOption', - ], - 'required' => false, - ], - 'nameServers' => [ - 'title' => 'nameServers', - 'type' => 'array', - 'items' => [ - 'type' => 'string', - 'required' => false, - ], - 'required' => false, - ], - ], - ], - 'CustomDomain' => [ - 'type' => 'object', - 'properties' => [ - 'accountId' => [ - 'title' => 'accountId', - 'type' => 'string', - 'required' => false, - ], - 'namespaceID' => [ - 'title' => 'namespaceId', - 'type' => 'string', - 'required' => false, - ], - 'protocol' => [ - 'title' => 'protocol', - 'type' => 'string', - 'required' => false, - ], - 'apiVersion' => [ - 'title' => 'apiVersion', - 'type' => 'string', - 'required' => false, - ], - 'lastModifiedTime' => [ - 'title' => 'lastModifiedTime', - 'type' => 'string', - 'required' => false, - ], - 'subdomainCount' => [ - 'title' => 'subdomainCount', - 'type' => 'string', - 'required' => false, - ], - 'certConfig' => [ - 'required' => false, - '$ref' => '#/components/schemas/CertConfig', - ], - 'domainName' => [ - 'title' => 'domainName', - 'type' => 'string', - 'required' => false, - ], - 'createdTime' => [ - 'title' => 'createdTime', - 'type' => 'string', - 'required' => false, - ], - 'keepFullPath' => [ - 'title' => 'keepFullPath', - 'type' => 'boolean', - 'required' => false, - ], - 'tlsConfig' => [ - 'required' => false, - '$ref' => '#/components/schemas/TLSConfig', - ], - 'wafConfig' => [ - 'required' => false, - '$ref' => '#/components/schemas/WAFConfig', - ], - 'requestId' => [ - 'title' => 'requestId', - 'type' => 'string', - ], - 'routeConfig' => [ - 'title' => 'routeConfig', - '$ref' => '#/components/schemas/RouteConfig', - ], - ], - ], - 'CustomHealthCheckConfig' => [ - 'type' => 'object', - 'properties' => [ - 'periodSeconds' => [ - 'title' => 'periodSeconds', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - ], - 'timeoutSeconds' => [ - 'title' => 'timeoutSeconds', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - ], - 'successThreshold' => [ - 'title' => 'successThreshold', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - ], - 'failureThreshold' => [ - 'title' => 'failureThreshold', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - ], - 'initialDelaySeconds' => [ - 'title' => 'initialDelaySeconds', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - ], - 'httpGetUrl' => [ - 'title' => 'httpGetUrl', - 'type' => 'string', - 'required' => false, - ], - ], - ], - 'CustomHostAlias' => [ - 'title' => 'TODO', - 'description' => '容器配置中指定自定义的域名别名映射', - 'type' => 'object', - 'properties' => [ - 'hostAliases' => [ - 'title' => 'TODO', - 'type' => 'array', - 'items' => [ - '$ref' => '#/components/schemas/HostAlias', - ], - ], - ], - ], - 'CustomRuntimeConfig' => [ - 'type' => 'object', - 'properties' => [ - 'args' => [ - 'title' => 'args', - 'type' => 'array', - 'items' => [ - 'type' => 'string', - 'required' => false, - ], - 'required' => false, - ], - 'command' => [ - 'title' => 'command', - 'type' => 'array', - 'items' => [ - 'type' => 'string', - 'required' => false, - ], - 'required' => false, - ], - ], - ], - 'DNSOption' => [ - 'type' => 'object', - 'properties' => [ - 'name' => [ - 'title' => 'name', - 'type' => 'string', - 'required' => false, - 'maxLength' => 256, - ], - 'value' => [ - 'title' => 'value', - 'type' => 'string', - 'required' => false, - 'maxLength' => 256, - ], + 'WebCertConfig' => ['title' => 'HTTPS证书的信息。', 'description' => 'HTTPS证书的信息。', 'required' => false, '$ref' => '#/components/schemas/WebCertConfig'], + 'DefaultForwardingAppName' => ['title' => '域名默认转发的应用名', 'description' => '域名默认转发的应用名。', 'type' => 'string', 'required' => false, 'example' => 'demo-app'], + 'DomainName' => ['title' => '域名。填写已在阿里云备案或接入备案的自定义域名名称。', 'description' => '域名。填写已在阿里云备案或接入备案的自定义域名名称。', 'type' => 'string', 'required' => true, 'example' => 'example.com', 'maxLength' => 256, 'minLength' => 1], + 'Protocol' => ['title' => '域名支持的协议类型。HTTP:仅支持HTTP协议。HTTPS:仅支持HTTPS协议。HTTP,HTTPS:支持HTTP及HTTPS协议。', 'description' => '域名支持的协议类型。'."\n" + ."\n" + .'- **HTTP**:仅支持HTTP协议。'."\n" + .'- **HTTPS**:仅支持HTTPS协议。'."\n" + .'- **HTTP,HTTPS**:支持HTTP及HTTPS协议。', 'type' => 'string', 'required' => false, 'example' => 'HTTP'], + 'WebTLSConfig' => ['title' => 'TLS配置信息。', 'description' => 'TLS配置信息。', 'required' => false, '$ref' => '#/components/schemas/WebTLSConfig'], + 'WebWAFConfig' => ['title' => 'Web应用防火墙配置信息。', 'description' => 'Web应用防火墙配置信息。', 'required' => false, '$ref' => '#/components/schemas/WebWAFConfig'], + 'RouteConfig' => ['title' => '路由配置', 'description' => '路由配置', '$ref' => '#/components/schemas/RouteConfig'], ], ], 'DescribeInstanceLogsOutput' => [ @@ -2228,10 +241,7 @@ 'title' => 'TODO', 'description' => '日志中的记录条目 。', 'type' => 'array', - 'items' => [ - 'description' => '日志详细信息。', - '$ref' => '#/components/schemas/WebLogEntry', - ], + 'items' => ['description' => '日志详细信息。', '$ref' => '#/components/schemas/WebLogEntry'], 'required' => false, ], ], @@ -2241,22 +251,12 @@ 'description' => '应用资源用量统计信息。', 'type' => 'object', 'properties' => [ - 'Length' => [ - 'title' => 'TODO', - 'description' => '查询列表最大长度。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '20', - ], + 'Length' => ['title' => 'TODO', 'description' => '查询列表最大长度。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20'], 'WebAppStatics' => [ 'title' => 'TODO', 'description' => 'Web应用程序中的静态资源。', 'type' => 'array', - 'items' => [ - 'description' => '应用统计数据的集合。', - '$ref' => '#/components/schemas/WebStaticsInfo', - ], + 'items' => ['description' => '应用统计数据的集合。', '$ref' => '#/components/schemas/WebStaticsInfo'], 'required' => false, ], ], @@ -2266,335 +266,14 @@ 'description' => '应用资源用量统计信息。', 'type' => 'object', 'properties' => [ - 'Length' => [ - 'title' => 'TODO', - 'description' => '查询列表最大长度。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '20', - ], + 'Length' => ['title' => 'TODO', 'description' => '查询列表最大长度。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20'], 'WebStatics' => [ 'title' => 'TODO', 'description' => '数据统计。', 'type' => 'array', - 'items' => [ - 'description' => '应用统计数据的集合。', - '$ref' => '#/components/schemas/WebStaticsInfo', - ], - 'required' => false, - ], - ], - ], - 'ExecAction' => [ - 'title' => 'TODO', - 'type' => 'object', - 'properties' => [ - 'command' => [ - 'title' => 'Command is the command line to execute inside the container, the working directory for the'."\n" - .'command is root (\'/\') in the container\'s filesystem. The command is simply exec\'d, it is'."\n" - .'not run inside a shell, so traditional shell instructions (\'|\', etc) won\'t work. To use'."\n" - .'a shell, you need to explicitly call out to that shell.'."\n" - .'Exit status of 0 is treated as live/healthy and non-zero is unhealthy.', - 'type' => 'array', - 'items' => [ - 'type' => 'string', - ], - 'required' => false, - ], - ], - ], - 'ExternalErrorSAEWeb' => [ - 'title' => 'TODO', - 'type' => 'object', - 'properties' => [ - 'code' => [ - 'title' => 'http code', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - ], - 'errorCode' => [ - 'title' => 'error code', - 'type' => 'string', - 'required' => false, - ], - 'message' => [ - 'title' => 'TODO', - 'type' => 'string', - 'required' => false, - ], - 'requestId' => [ - 'title' => 'TODO', - 'type' => 'string', - 'required' => false, - ], - 'success' => [ - 'title' => 'TODO', - 'type' => 'boolean', - 'required' => false, - ], - ], - ], - 'GRPCAction' => [ - 'title' => 'TODO', - 'type' => 'object', - 'properties' => [ - 'port' => [ - 'title' => 'Port number of the gRPC service. Number must be in the range 1 to 65535.', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - ], - 'service' => [ - 'title' => 'Service is the name of the service to place in the gRPC HealthCheckRequest'."\n" - .'(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).'."\n" - ."\n" - .'If this is not specified, the default behavior is defined by gRPC.', - 'type' => 'string', - 'required' => false, - ], - ], - ], - 'GetApplicationLogsInput' => [ - 'type' => 'object', - 'properties' => [ - 'isTail' => [ - 'title' => 'isTail', - 'type' => 'boolean', - 'required' => false, - ], - 'offset' => [ - 'title' => 'offset', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - ], - 'backwardLine' => [ - 'title' => 'backwardLine', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - ], - 'startTime' => [ - 'title' => 'startTime', - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - ], - 'endTime' => [ - 'title' => 'endTime', - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - ], - 'forwardLine' => [ - 'title' => 'forwardLine', - 'type' => 'integer', - 'format' => 'int64', + 'items' => ['description' => '应用统计数据的集合。', '$ref' => '#/components/schemas/WebStaticsInfo'], 'required' => false, ], - 'versionID' => [ - 'title' => 'versionID', - 'type' => 'string', - ], - 'match' => [ - 'title' => 'match', - 'type' => 'string', - ], - 'packID' => [ - 'title' => 'packID', - 'type' => 'string', - ], - 'packMeta' => [ - 'title' => 'packMeta', - 'type' => 'string', - ], - 'message' => [ - 'title' => 'message', - 'type' => 'string', - ], - 'timestamp' => [ - 'title' => 'timestamp', - 'type' => 'string', - ], - 'instanceID' => [ - 'title' => 'instanceID', - 'type' => 'string', - ], - ], - ], - 'GetApplicationLogsOutput' => [ - 'type' => 'object', - 'properties' => [ - 'nextOffset' => [ - 'title' => 'nextOffset', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - ], - 'logEntrys' => [ - 'title' => 'logEntrys', - 'type' => 'array', - 'items' => [ - '$ref' => '#/components/schemas/LogEntry', - ], - 'required' => false, - ], - 'requestId' => [ - 'title' => 'requestId', - 'type' => 'string', - ], - ], - ], - 'GetInstanceLogsInput' => [ - 'type' => 'object', - 'properties' => [ - 'startTime' => [ - 'title' => 'startTime', - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - ], - 'endTime' => [ - 'title' => 'endTime', - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - ], - 'versionID' => [ - 'title' => 'versionID', - 'type' => 'string', - ], - 'isTail' => [ - 'title' => 'isTail', - 'type' => 'boolean', - ], - 'offset' => [ - 'title' => 'offset', - 'type' => 'integer', - 'format' => 'int64', - ], - 'backwardLine' => [ - 'title' => 'backwardLine', - 'type' => 'integer', - 'format' => 'int64', - ], - 'forwardLine' => [ - 'title' => 'forwardLine', - 'type' => 'integer', - 'format' => 'int64', - ], - 'match' => [ - 'title' => 'match', - 'type' => 'string', - ], - 'packID' => [ - 'title' => 'packID', - 'type' => 'string', - ], - 'packMeta' => [ - 'title' => 'packMeta', - 'type' => 'string', - ], - 'message' => [ - 'title' => 'message', - 'type' => 'string', - ], - 'timestamp' => [ - 'title' => 'timestamp', - 'type' => 'string', - ], - ], - ], - 'GetInstanceLogsOutput' => [ - 'type' => 'object', - 'properties' => [ - 'data' => [ - 'title' => 'data', - 'type' => 'string', - 'required' => false, - ], - 'requestId' => [ - 'title' => 'requestId', - 'type' => 'string', - ], - ], - ], - 'GetPerRequestLogsInput' => [ - 'type' => 'object', - 'properties' => [ - 'startTime' => [ - 'title' => 'startTime', - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - ], - 'endTime' => [ - 'title' => 'endTime', - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - ], - 'requestID' => [ - 'title' => 'requestID', - 'type' => 'string', - 'required' => true, - ], - 'errorType' => [ - 'title' => 'errorType', - 'type' => 'string', - ], - 'timestamp' => [ - 'title' => 'timestamp', - 'type' => 'string', - ], - 'isColdStart' => [ - 'title' => 'isColdStart', - 'type' => 'boolean', - ], - 'instanceID' => [ - 'title' => 'instanceID', - 'type' => 'string', - ], - 'forwardLine' => [ - 'title' => 'forwardLine', - 'type' => 'integer', - 'format' => 'int64', - ], - ], - ], - 'GetPerRequestLogsOutput' => [ - 'type' => 'object', - 'properties' => [ - 'data' => [ - 'title' => 'data', - 'type' => 'string', - ], - 'requestId' => [ - 'title' => 'requestId', - 'type' => 'string', - ], - ], - ], - 'GetQuotaOutput' => [ - 'title' => 'A short description of struct', - 'type' => 'object', - 'properties' => [ - 'instanceLimit' => [ - 'title' => 'instanceLimit', - 'type' => 'integer', - 'format' => 'int64', - ], - 'instanceUsed' => [ - 'title' => 'instanceUsed', - 'type' => 'integer', - 'format' => 'int64', - ], - 'RequestId' => [ - 'title' => 'requestId', - 'type' => 'string', - ], ], ], 'HTTPGetAction' => [ @@ -2602,48 +281,20 @@ 'description' => '描述信息。', 'type' => 'object', 'properties' => [ - 'Host' => [ - 'title' => 'Host name to connect to, defaults to the pod IP. You probably want to set'."\n" - .'"Host" in httpHeaders instead.', - 'description' => '要连接的主机名,默认为pod IP。您可能需要在httpHeaders中设置"Host"。', - 'type' => 'string', - 'required' => false, - 'example' => '172.22.XX.XX', - ], + 'Host' => ['title' => 'Host name to connect to, defaults to the pod IP. You probably want to set'."\n" + .'"Host" in httpHeaders instead.', 'description' => '要连接的主机名,默认为pod IP。您可能需要在httpHeaders中设置"Host"。', 'type' => 'string', 'required' => false, 'example' => '172.22.XX.XX'], 'HttpHeaders' => [ 'title' => 'Custom headers to set in the request. HTTP allows repeated headers.', 'description' => '要在请求中设置的自定义头信息。HTTP允许重复标头。', 'type' => 'array', - 'items' => [ - 'description' => 'HTTP请求头。', - '$ref' => '#/components/schemas/HTTPHeader', - ], + 'items' => ['description' => 'HTTP请求头。', '$ref' => '#/components/schemas/HTTPHeader'], 'required' => false, ], - 'Path' => [ - 'title' => 'Path to access on the HTTP server.', - 'description' => 'URL路径。', - 'type' => 'string', - 'required' => false, - 'example' => '/path1', - ], - 'Port' => [ - 'title' => 'Number of the port to access on the container.'."\n" - .'Number must be in the range 1 to 65535.', - 'description' => '端口范围。端口的取值范围为1~65535。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '80', - ], - 'Scheme' => [ - 'title' => 'Scheme to use for connecting to the host.'."\n" - .'Defaults to HTTP.', - 'description' => '用于连接主机的方案。默认为 HTTP。', - 'type' => 'string', - 'required' => false, - 'example' => 'http', - ], + 'Path' => ['title' => 'Path to access on the HTTP server.', 'description' => 'URL路径。', 'type' => 'string', 'required' => false, 'example' => '/path1'], + 'Port' => ['title' => 'Number of the port to access on the container.'."\n" + .'Number must be in the range 1 to 65535.', 'description' => '端口范围。端口的取值范围为1~65535。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '80'], + 'Scheme' => ['title' => 'Scheme to use for connecting to the host.'."\n" + .'Defaults to HTTP.', 'description' => '用于连接主机的方案。默认为 HTTP。', 'type' => 'string', 'required' => false, 'example' => 'http'], ], ], 'HTTPHeader' => [ @@ -2651,432 +302,9 @@ 'description' => '返回信息。', 'type' => 'object', 'properties' => [ - 'name' => [ - 'title' => 'The header field name.'."\n" - .'This will be canonicalized upon output, so case-variant names will be understood as the same header.', - 'description' => '标题字段名称。', - 'type' => 'string', - 'required' => false, - 'example' => 'Content-Type', - ], - 'value' => [ - 'title' => 'The header field value', - 'description' => '标头字段值。', - 'type' => 'string', - 'required' => false, - 'example' => 'application/json', - ], - ], - ], - 'HTTPTriggerConfig' => [ - 'type' => 'object', - 'properties' => [ - 'authType' => [ - 'title' => 'authType', - 'type' => 'string', - 'required' => false, - ], - 'authConfig' => [ - 'title' => 'authConfig', - 'type' => 'any', - 'required' => false, - ], - 'safeMode' => [ - 'title' => 'safeMode', - 'type' => 'boolean', - 'required' => false, - ], - 'disableURLInternet' => [ - 'title' => 'disableURLInternet', - 'type' => 'boolean', - 'required' => false, - ], - 'aclConfig' => [ - 'title' => 'aclConfig', - '$ref' => '#/components/schemas/AclConfig', - ], - ], - ], - 'HostAlias' => [ - 'title' => 'TODO', - 'description' => 'HostAlias对象定义了容器中如何通过自定义的主机名来访问特定的IP地址', - 'type' => 'object', - 'properties' => [ - 'ip' => [ - 'title' => 'TODO', - 'type' => 'string', - ], - 'hostnames' => [ - 'title' => 'TODO', - 'type' => 'array', - 'items' => [ - 'type' => 'string', - ], - ], - ], - ], - 'HttpApiRoute' => [ - 'title' => 'APIG HTTP网关路由配置', - 'description' => 'ApiGHttpApiRouteInput', - 'type' => 'object', - 'properties' => [ - 'IngressId' => [ - 'title' => 'SAE-路由ID', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1', - ], - 'RouteId' => [ - 'title' => 'APIG-路由ID', - 'type' => 'string', - 'required' => false, - ], - 'HttpApiId' => [ - 'title' => 'HttpApi ID', - 'type' => 'string', - ], - 'HttpApiType' => [ - 'title' => 'HttpApi 类型', - 'type' => 'string', - 'example' => 'Http', - ], - 'HttpApiName' => [ - 'title' => 'HttpApi 名称', - 'type' => 'string', - 'example' => 'Http', - ], - 'EnvironmentId' => [ - 'title' => '环境ID', - 'type' => 'string', - 'required' => false, - ], - 'Name' => [ - 'title' => '路由名称', - 'type' => 'string', - 'required' => false, - ], - 'NamespaceId' => [ - 'title' => 'SAE-命名空间ID', - 'type' => 'string', - 'required' => false, - ], - 'GatewayId' => [ - 'title' => '网关实例ID', - 'type' => 'string', - 'required' => false, - ], - 'Domains' => [ - 'title' => '关联的域名列表', - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'DomainId' => [ - 'title' => '域名ID', - 'type' => 'string', - ], - 'DomainName' => [ - 'title' => '域名', - 'type' => 'string', - ], - ], - ], - 'required' => false, - ], - 'DestinationType' => [ - 'title' => 'SAE-路由类型', - 'type' => 'string', - 'required' => false, - 'example' => 'Single/Multiple/VersionOriented', - ], - 'Services' => [ - 'title' => '后端服务列表', - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'AppId' => [ - 'title' => 'SAE应用ID', - 'type' => 'string', - 'required' => false, - ], - 'AppName' => [ - 'title' => 'SAE应用名', - 'type' => 'string', - ], - 'ServiceId' => [ - 'title' => '服务ID', - 'type' => 'string', - ], - 'ServiceName' => [ - 'title' => '服务名称', - 'type' => 'string', - 'required' => false, - ], - 'ServicePort' => [ - 'title' => '服务端口', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - ], - 'ServiceProtocol' => [ - 'title' => '服务协议', - 'type' => 'string', - 'required' => false, - 'example' => 'HTTP', - ], - 'ServiceWeight' => [ - 'title' => '服务权重', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '90', - ], - ], - ], - 'required' => false, - ], - 'Predicates' => [ - 'title' => '路由匹配规则', - 'type' => 'object', - 'properties' => [ - 'PathPredicates' => [ - 'title' => 'HTTP Path匹配规则', - 'type' => 'object', - 'properties' => [ - 'Path' => [ - 'title' => 'Path', - 'type' => 'string', - 'required' => false, - ], - 'Type' => [ - 'title' => '匹配方式', - 'type' => 'string', - 'required' => false, - 'example' => 'Prefix/Exact/Regex', - ], - 'IgnoreCase' => [ - 'title' => '是否忽略大小写', - 'type' => 'boolean', - ], - ], - 'required' => false, - ], - 'MethodPredicates' => [ - 'title' => 'HTTP方法列表', - 'type' => 'array', - 'items' => [ - 'type' => 'string', - ], - 'required' => false, - ], - 'HeaderPredicates' => [ - 'title' => 'HTTP头匹配规则', - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'Name' => [ - 'title' => 'Header名', - 'type' => 'string', - 'required' => false, - ], - 'Value' => [ - 'title' => 'Header值', - 'type' => 'string', - 'required' => false, - ], - 'Type' => [ - 'title' => '匹配方式', - 'type' => 'string', - 'required' => false, - 'example' => 'Prefix/Exact/Regex', - ], - ], - ], - ], - 'QueryPredicates' => [ - 'title' => 'HTTP参数匹配', - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'Name' => [ - 'title' => 'Header名', - 'type' => 'string', - 'required' => false, - ], - 'Value' => [ - 'title' => 'Header值', - 'type' => 'string', - 'required' => false, - ], - 'Type' => [ - 'title' => '匹配方式', - 'type' => 'string', - 'required' => false, - 'example' => 'Prefix/Exact/Regex', - ], - ], - ], - ], - ], - 'required' => false, - ], - 'Policies' => [ - 'title' => '路由策略', - 'type' => 'object', - 'properties' => [ - 'Retry' => [ - 'title' => '重试策略', - 'type' => 'object', - 'properties' => [ - 'Attempts' => [ - 'title' => '重试次数', - 'type' => 'integer', - 'format' => 'int64', - ], - 'HttpCodes' => [ - 'title' => 'Http状态码', - 'type' => 'array', - 'items' => [ - 'type' => 'string', - 'example' => '200', - ], - ], - 'RetryOn' => [ - 'title' => '重试条件', - 'type' => 'array', - 'items' => [ - 'type' => 'string', - 'example' => 'connect-failure/refused-stream/unavailable/cancelled/retriable-status-codes/5xx/reset/deadline-exceeded/internal/resource-exhausted', - ], - ], - 'Enable' => [ - 'title' => '是否启用', - 'type' => 'boolean', - 'example' => 'true/false', - ], - ], - ], - 'Timeout' => [ - 'title' => '超时策略', - 'type' => 'object', - 'properties' => [ - 'TimeUnit' => [ - 'title' => '单位', - 'type' => 'string', - 'example' => 's', - ], - 'UnitNum' => [ - 'title' => '数量', - 'type' => 'integer', - 'format' => 'int64', - ], - 'Enable' => [ - 'title' => '是否启用', - 'type' => 'boolean', - ], - ], - ], - 'Fallback' => [ - 'title' => 'Fallback策略', - 'type' => 'object', - 'properties' => [ - 'Destinations' => [ - 'title' => '目的服务', - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'AppId' => [ - 'title' => 'SAE应用ID', - 'type' => 'string', - ], - 'AppName' => [ - 'title' => 'SAE应用名', - 'type' => 'string', - ], - 'ServiceId' => [ - 'title' => '服务ID', - 'type' => 'string', - ], - 'ServiceName' => [ - 'title' => '服务名称', - 'type' => 'string', - ], - 'ServiceProtocol' => [ - 'title' => '服务协议', - 'type' => 'string', - ], - 'ServicePort' => [ - 'title' => '服务端口', - 'type' => 'integer', - 'format' => 'int64', - ], - ], - ], - ], - 'Enable' => [ - 'title' => '是否启用', - 'type' => 'boolean', - ], - ], - ], - ], - 'required' => false, - ], - 'SourceType' => [ - 'title' => '服务来源', - 'type' => 'string', - 'required' => false, - 'example' => 'SAE_NACOS/SAE_K8S_SERVICE/MSE_NACOS', - ], - 'NacosNamespaceId' => [ - 'title' => 'MSE NACOS命名空间', - 'type' => 'string', - 'example' => 'test', - ], - 'NacosInstanceId' => [ - 'title' => 'MSE NACOS实例ID', - 'type' => 'string', - ], - 'DeployStatus' => [ - 'title' => '路由状态', - 'type' => 'string', - 'example' => 'Deploying/NotDeployed/Undeploying/Deployed', - ], - 'AddressType' => [ - 'title' => '网络类型', - 'type' => 'string', - 'required' => false, - 'example' => 'intranet/internet', - ], - ], - 'required' => false, - ], - 'ImageConfig' => [ - 'type' => 'object', - 'properties' => [ - 'accelerationType' => [ - 'title' => 'accelerationType', - 'type' => 'string', - 'required' => false, - ], - 'image' => [ - 'title' => 'image', - 'type' => 'string', - 'required' => false, - ], - 'instanceID' => [ - 'title' => 'instanceID', - 'type' => 'string', - 'required' => false, - ], - 'registryConfig' => [ - 'title' => 'registryConfig', - 'required' => false, - '$ref' => '#/components/schemas/RegistryConfig', - ], + 'name' => ['title' => 'The header field name.'."\n" + .'This will be canonicalized upon output, so case-variant names will be understood as the same header.', 'description' => '标题字段名称。', 'type' => 'string', 'required' => false, 'example' => 'Content-Type'], + 'value' => ['title' => 'The header field value', 'description' => '标头字段值。', 'type' => 'string', 'required' => false, 'example' => 'application/json'], ], ], 'ImageRegistryConfig' => [ @@ -3084,16 +312,8 @@ 'description' => '镜像仓库的配置信息。', 'type' => 'object', 'properties' => [ - 'AuthConfig' => [ - 'title' => '镜像仓库认证配置', - 'description' => '镜像仓库认证配置', - '$ref' => '#/components/schemas/RegistryAuthenticationConfig', - ], - 'CertConfig' => [ - 'title' => '镜像仓库证书配置', - 'description' => '镜像仓库证书配置', - '$ref' => '#/components/schemas/RegistryCertificateConfig', - ], + 'AuthConfig' => ['title' => '镜像仓库认证配置', 'description' => '镜像仓库认证配置', '$ref' => '#/components/schemas/RegistryAuthenticationConfig'], + 'CertConfig' => ['title' => '镜像仓库证书配置', 'description' => '镜像仓库证书配置', '$ref' => '#/components/schemas/RegistryCertificateConfig'], ], ], 'InitContainerConfig' => [ @@ -3101,477 +321,14 @@ 'description' => '初始化容器配置。', 'type' => 'object', 'properties' => [ - 'Name' => [ - 'title' => '容器名称', - 'description' => '容器名称。', - 'type' => 'string', - 'example' => 'name', - ], - 'ImageUrl' => [ - 'title' => '镜像地址', - 'description' => '镜像地址', - 'type' => 'string', - 'example' => 'registry.cn-hangzhou.aliyuncs.com/sae_test/ali_sae_test:0.0.1', - ], - 'Command' => [ - 'title' => '镜像启动命令', - 'description' => '镜像启动命令', - 'type' => 'string', - 'example' => 'echo', - ], - 'CommandArgs' => [ - 'title' => '镜像启动命令参数', - 'description' => '镜像启动命令参数', - 'type' => 'string', - 'example' => '[\\"-c\\",\\"/bin/bash /home/admin/bin/start.sh\\"]', - ], - 'Envs' => [ - 'title' => '容器环境变量参数', - 'description' => '容器环境变量参数', - 'type' => 'string', - 'example' => '[{"name":"TEST_ENV_KEY","value":"TEST_ENV_VAR"}]', - ], - 'ConfigMapMountDesc' => [ - 'title' => 'ConfigMap 挂载描述', - 'description' => 'ConfigMap 挂载描述', - 'type' => 'string', - 'example' => '[{"configMapId":16,"key":"test","mountPath":"/tmp"}]', - ], - 'EmptyDirDesc' => [ - 'title' => 'EmptyDir挂载描述', - 'description' => 'EmptyDir挂载描述', - 'type' => 'string', - 'example' => '[{\\"name\\":\\"workdir\\",\\"mountPath\\":\\"/usr/local/tomcat/webapps\\"}]', - ], - ], - ], - 'InputCodeLocation' => [ - 'type' => 'object', - 'properties' => [ - 'zipFile' => [ - 'title' => 'zipFile', - 'type' => 'string', - 'required' => false, - ], - 'ossObjectName' => [ - 'title' => 'ossObjectName', - 'type' => 'string', - 'required' => false, - ], - 'ossBucketName' => [ - 'title' => 'ossBucketName', - 'type' => 'string', - 'required' => false, - 'maxLength' => 63, - 'minLength' => 3, - ], - ], - ], - 'InstanceExecAuthorizationInput' => [ - 'title' => 'A short description of struct', - 'description' => 'InstanceExecAuthorization的请求', - 'type' => 'object', - 'properties' => [ - 'options' => [ - 'title' => 'options', - '$ref' => '#/components/schemas/InstanceExecAuthorizationInputOptions', - ], - ], - ], - 'InstanceExecAuthorizationInputOptions' => [ - 'title' => 'A short description of struct', - 'description' => 'InstanceExecAuthorization的请求的字段信息', - 'type' => 'object', - 'properties' => [ - 'stdin' => [ - 'title' => 'stdin', - 'type' => 'boolean', - ], - 'stderr' => [ - 'title' => 'stderr', - 'type' => 'boolean', - ], - 'stdout' => [ - 'title' => 'stdout', - 'type' => 'boolean', - ], - 'tty' => [ - 'title' => 'tty', - 'type' => 'boolean', - ], - 'command' => [ - 'title' => 'command', - 'type' => 'array', - 'items' => [ - 'type' => 'string', - ], - ], - ], - ], - 'InstanceExecAuthorizationOutput' => [ - 'title' => 'A short description of struct', - 'description' => 'InstanceExecAuthorization的输出信息', - 'type' => 'object', - 'properties' => [ - 'accountId' => [ - 'title' => 'accountId', - 'type' => 'string', - ], - 'endpoint' => [ - 'title' => 'endpoint', - 'type' => 'string', - ], - 'date' => [ - 'title' => 'date', - 'type' => 'string', - ], - 'authorization' => [ - 'title' => 'authorization', - 'type' => 'string', - ], - 'accessKeyId' => [ - 'title' => 'accessKeyId', - 'type' => 'string', - ], - 'requestId' => [ - 'title' => 'requestId', - 'type' => 'string', - ], - ], - ], - 'InstanceInfo' => [ - 'type' => 'object', - 'properties' => [ - 'versionId' => [ - 'title' => 'versionId', - 'type' => 'string', - 'required' => false, - ], - 'instanceId' => [ - 'title' => 'instanceId', - 'type' => 'string', - 'required' => false, - ], - 'imageUrl' => [ - 'title' => 'imageUrl', - 'type' => 'string', - ], - 'status' => [ - 'title' => 'status', - 'type' => 'string', - ], - ], - ], - 'InstanceLifecycleConfig' => [ - 'type' => 'object', - 'properties' => [ - 'preStop' => [ - 'required' => false, - '$ref' => '#/components/schemas/LifecycleHook', - ], - 'preFreeze' => [ - 'required' => false, - '$ref' => '#/components/schemas/LifecycleHook', - ], - ], - ], - 'InstanceMetricInfo' => [ - 'type' => 'object', - 'properties' => [ - 'applicationID' => [ - 'title' => 'applicationID', - 'type' => 'string', - 'required' => false, - 'example' => 'a03aa9f9-3d32-4655-8394-05fd10dcbd8a', - ], - 'instanceID' => [ - 'title' => 'instanceID', - 'type' => 'string', - 'required' => false, - 'example' => 'c-6498f0fe-33bb4f9249b54789a023', - ], - 'memoryLimitMB' => [ - 'title' => 'memoryLimitMB', - 'type' => 'number', - 'format' => 'float', - 'required' => false, - 'example' => '512.0', - ], - 'cpuQuotaPercent' => [ - 'title' => 'cpuQuotaPercent', - 'type' => 'number', - 'format' => 'float', - 'required' => false, - 'example' => '35.0', - ], - 'memoryUsageMB' => [ - 'title' => 'memoryUsageMB', - 'type' => 'number', - 'format' => 'float', - 'required' => false, - 'example' => '8.81', - ], - 'cpuPercent' => [ - 'title' => 'cpuPercent', - 'type' => 'number', - 'format' => 'float', - 'required' => false, - 'example' => '1.98', - ], - 'timestamp' => [ - 'title' => 'timestamp', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '1686568800000', - ], - ], - ], - 'Instances' => [ - 'title' => 'A short description of struct', - 'type' => 'array', - 'items' => [ - 'type' => 'string', - 'example' => '90DE9C66-92FB-1029-A568-F644F2AC48BE', - ], - ], - 'JaegerConfig' => [ - 'type' => 'object', - 'properties' => [ - 'endpoint' => [ - 'title' => 'endpoint', - 'type' => 'string', - 'required' => false, - ], - ], - ], - 'LifecycleHook' => [ - 'type' => 'object', - 'properties' => [ - 'handler' => [ - 'title' => 'handler', - 'type' => 'string', - 'required' => false, - 'maxLength' => 128, - 'minLength' => 0, - ], - 'timeout' => [ - 'title' => 'timeout', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'minimum' => '1', - ], - ], - ], - 'ListApplicationVersionsOutput' => [ - 'type' => 'object', - 'properties' => [ - 'versions' => [ - 'title' => 'versions', - 'type' => 'array', - 'items' => [ - 'required' => false, - '$ref' => '#/components/schemas/Version', - ], - 'required' => false, - ], - 'nextToken' => [ - 'title' => 'nextToken', - 'type' => 'string', - 'required' => false, - ], - 'direction' => [ - 'title' => 'direction', - 'type' => 'string', - 'required' => false, - ], - 'requestId' => [ - 'title' => 'requestId', - 'type' => 'string', - ], - ], - ], - 'ListApplicationsOutput' => [ - 'type' => 'object', - 'properties' => [ - 'nextToken' => [ - 'title' => 'nextToken', - 'type' => 'string', - 'required' => false, - ], - 'applications' => [ - 'title' => 'applications', - 'type' => 'array', - 'items' => [ - 'required' => false, - '$ref' => '#/components/schemas/Application', - ], - 'required' => false, - ], - 'requestId' => [ - 'title' => 'requestId', - 'type' => 'string', - ], - ], - ], - 'ListApplicationsWithStatusOutput' => [ - 'title' => 'A short description of struct', - 'type' => 'object', - 'properties' => [ - 'nextToken' => [ - 'title' => 'nextToken', - 'type' => 'string', - 'required' => false, - ], - 'applications' => [ - 'title' => 'applications', - 'type' => 'array', - 'items' => [ - '$ref' => '#/components/schemas/ApplicationWithStatus', - ], - ], - 'requestId' => [ - 'title' => 'requestId', - 'type' => 'string', - ], - ], - ], - 'ListCustomDomainOutput' => [ - 'type' => 'object', - 'properties' => [ - 'customDomains' => [ - 'title' => 'customDomains', - 'type' => 'array', - 'items' => [ - 'required' => false, - '$ref' => '#/components/schemas/CustomDomain', - ], - 'required' => false, - ], - 'nextToken' => [ - 'title' => 'nextToken', - 'type' => 'string', - 'required' => false, - ], - 'requestId' => [ - 'title' => 'requestId', - 'type' => 'string', - ], - ], - ], - 'ListInstancesMetricsOutput' => [ - 'type' => 'object', - 'properties' => [ - 'metricsList' => [ - 'title' => 'metricsList', - 'type' => 'array', - 'items' => [ - 'required' => false, - '$ref' => '#/components/schemas/InstanceMetricInfo', - ], - 'required' => false, - ], - 'pageSize' => [ - 'title' => 'pageSize', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '100', - ], - 'pageNumber' => [ - 'title' => 'pageNumber', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], - 'totalCount' => [ - 'title' => 'totalCount', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1234', - ], - 'RequestId' => [ - 'title' => 'requestId', - 'type' => 'string', - ], - ], - ], - 'ListInstancesOutput' => [ - 'title' => 'A short description of struct', - 'description' => 'ListInstancesOutput', - 'type' => 'object', - 'properties' => [ - 'instances' => [ - 'title' => 'Instance', - 'type' => 'array', - 'items' => [ - '$ref' => '#/components/schemas/InstanceInfo', - ], - ], - 'requestId' => [ - 'title' => 'requestId', - 'type' => 'string', - ], - 'currentError' => [ - 'title' => 'currentError', - 'type' => 'string', - ], - 'versionStatus' => [ - 'title' => 'versionStatus', - 'type' => 'object', - 'required' => false, - 'additionalProperties' => [ - '$ref' => '#/components/schemas/VersionStatus', - ], - ], - ], - ], - 'ListMetricsOutput' => [ - 'type' => 'object', - 'properties' => [ - 'metrics' => [ - 'title' => 'metrics', - 'type' => 'object', - 'required' => false, - 'additionalProperties' => [ - 'type' => 'array', - 'items' => [ - 'required' => false, - '$ref' => '#/components/schemas/MetricInfo', - ], - 'required' => false, - ], - ], - 'RequestId' => [ - 'title' => 'requestId', - 'type' => 'string', - ], - ], - ], - 'ListStaticsQueryResponse' => [ - 'title' => 'A short description of struct', - 'description' => '查询资源的response结构体', - 'type' => 'object', - 'properties' => [ - 'statics' => [ - 'title' => '资源利用情况', - 'type' => 'array', - 'items' => [ - '$ref' => '#/components/schemas/StaticsInfo', - ], - ], - 'length' => [ - 'title' => 'length', - 'type' => 'integer', - 'format' => 'int64', - ], - 'sort' => [ - 'title' => 'sort', - 'type' => 'string', - ], + 'Name' => ['title' => '容器名称', 'description' => '容器名称。', 'type' => 'string', 'example' => 'name'], + 'ImageUrl' => ['title' => '镜像地址', 'description' => '镜像地址', 'type' => 'string', 'example' => 'registry.cn-hangzhou.aliyuncs.com/sae_test/ali_sae_test:0.0.1'], + 'Command' => ['title' => '镜像启动命令', 'description' => '镜像启动命令', 'type' => 'string', 'example' => 'echo'], + 'CommandArgs' => ['title' => '镜像启动命令参数', 'description' => '镜像启动命令参数', 'type' => 'string', 'example' => '[\\"-c\\",\\"/bin/bash /home/admin/bin/start.sh\\"]'], + 'Envs' => ['title' => '容器环境变量参数', 'description' => '容器环境变量参数', 'type' => 'string', 'example' => '[{"name":"TEST_ENV_KEY","value":"TEST_ENV_VAR"}]'], + 'ConfigMapMountDesc' => ['title' => 'ConfigMap 挂载描述', 'description' => 'ConfigMap 挂载描述', 'type' => 'string', 'example' => '[{"configMapId":16,"key":"test","mountPath":"/tmp"}]'], + 'EmptyDirDesc' => ['title' => 'EmptyDir挂载描述', 'description' => 'EmptyDir挂载描述', 'type' => 'string', 'example' => '[{\\"name\\":\\"workdir\\",\\"mountPath\\":\\"/usr/local/tomcat/webapps\\"}]'], + 'SecretMountDesc' => ['title' => 'Secret 挂载描述', 'type' => 'string'], ], ], 'ListWebApplicationInstancesBody' => [ @@ -3579,52 +336,22 @@ 'description' => '获取应用实例列表的响应信息。', 'type' => 'object', 'properties' => [ - 'Code' => [ - 'title' => 'HTTP 状态码', - 'description' => 'HTTP状态码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '200', - ], - 'Data' => [ - 'title' => '调用返回数据。', - 'description' => '调用返回数据。', - 'required' => false, - '$ref' => '#/components/schemas/ListWebInstancesOutput', - ], - 'Message' => [ - 'title' => '调用结果的附加信息。', - 'description' => '调用结果的附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回success。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'required' => false, - 'example' => 'success', - ], - 'RequestId' => [ - 'title' => '请求 ID。', - 'description' => '请求ID。', - 'type' => 'string', - 'required' => false, - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Success' => [ - 'title' => '是否成功。', - 'description' => '是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:成功。'."\n" - .'- **false**:失败。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'Code' => ['title' => 'HTTP 状态码', 'description' => 'HTTP状态码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '200'], + 'Data' => ['title' => '调用返回数据。', 'description' => '调用返回数据。', 'required' => false, '$ref' => '#/components/schemas/ListWebInstancesOutput'], + 'Message' => ['title' => '调用结果的附加信息。', 'description' => '调用结果的附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回success。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'required' => false, 'example' => 'success'], + 'RequestId' => ['title' => '请求 ID。', 'description' => '请求ID。', 'type' => 'string', 'required' => false, 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Success' => ['title' => '是否成功。', 'description' => '是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:成功。'."\n" + .'- **false**:失败。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], ], 'ListWebApplicationRevisionsBody' => [ @@ -3632,41 +359,11 @@ 'description' => '返回信息。', 'type' => 'object', 'properties' => [ - 'Code' => [ - 'title' => 'HTTP 状态码', - 'description' => 'HTTP 状态码。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '200', - ], - 'Data' => [ - 'title' => '调用返回数据。', - 'description' => '调用返回数据。', - 'required' => false, - '$ref' => '#/components/schemas/ListWebApplicationRevisionsOutput', - ], - 'Message' => [ - 'title' => '调用结果的附加信息。', - 'description' => '调用结果的附加信息。', - 'type' => 'string', - 'required' => false, - 'example' => 'success', - ], - 'RequestId' => [ - 'title' => '请求 ID。', - 'description' => '请求 ID。', - 'type' => 'string', - 'required' => false, - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Success' => [ - 'title' => '是否成功。', - 'description' => '是否成功。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'Code' => ['title' => 'HTTP 状态码', 'description' => 'HTTP 状态码。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '200'], + 'Data' => ['title' => '调用返回数据。', 'description' => '调用返回数据。', 'required' => false, '$ref' => '#/components/schemas/ListWebApplicationRevisionsOutput'], + 'Message' => ['title' => '调用结果的附加信息。', 'description' => '调用结果的附加信息。', 'type' => 'string', 'required' => false, 'example' => 'success'], + 'RequestId' => ['title' => '请求 ID。', 'description' => '请求 ID。', 'type' => 'string', 'required' => false, 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Success' => ['title' => '是否成功。', 'description' => '是否成功。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], ], 'ListWebApplicationRevisionsOutput' => [ @@ -3674,21 +371,12 @@ 'description' => '返回信息。', 'type' => 'object', 'properties' => [ - 'NextToken' => [ - 'title' => '当符合查询条件的数据未读取完时,服务端会返回nextToken,此时可以使用nextToken继续读取后面的数据。第一次查询不需要提供这个参数。', - 'description' => '当符合查询条件的数据未读取完时,服务端会返回nextToken,此时可以使用nextToken继续读取后面的数据。第一次查询不需要提供这个参数。', - 'type' => 'string', - 'required' => false, - 'example' => '1', - ], + 'NextToken' => ['title' => '当符合查询条件的数据未读取完时,服务端会返回nextToken,此时可以使用nextToken继续读取后面的数据。第一次查询不需要提供这个参数。', 'description' => '当符合查询条件的数据未读取完时,服务端会返回nextToken,此时可以使用nextToken继续读取后面的数据。第一次查询不需要提供这个参数。', 'type' => 'string', 'required' => false, 'example' => '1'], 'Revisions' => [ 'title' => '版本列表', 'description' => '版本列表。', 'type' => 'array', - 'items' => [ - 'description' => '版本集合。', - '$ref' => '#/components/schemas/Revision', - ], + 'items' => ['description' => '版本集合。', '$ref' => '#/components/schemas/Revision'], 'required' => false, ], ], @@ -3698,52 +386,22 @@ 'description' => '返回信息。', 'type' => 'object', 'properties' => [ - 'Code' => [ - 'title' => 'HTTP 状态码', - 'description' => 'HTTP状态码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '200', - ], - 'Data' => [ - 'title' => '调用返回数据。', - 'description' => '调用返回数据。', - 'required' => false, - '$ref' => '#/components/schemas/ListWebApplicationsOutput', - ], - 'Message' => [ - 'title' => '调用结果的附加信息。', - 'description' => '调用结果的附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回success。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'required' => false, - 'example' => 'success', - ], - 'RequestId' => [ - 'title' => '请求 ID。', - 'description' => '请求ID。', - 'type' => 'string', - 'required' => false, - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Success' => [ - 'title' => '是否成功。', - 'description' => '是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:成功。'."\n" - .'- **false**:失败。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'Code' => ['title' => 'HTTP 状态码', 'description' => 'HTTP状态码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '200'], + 'Data' => ['title' => '调用返回数据。', 'description' => '调用返回数据。', 'required' => false, '$ref' => '#/components/schemas/ListWebApplicationsOutput'], + 'Message' => ['title' => '调用结果的附加信息。', 'description' => '调用结果的附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回success。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'required' => false, 'example' => 'success'], + 'RequestId' => ['title' => '请求 ID。', 'description' => '请求ID。', 'type' => 'string', 'required' => false, 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Success' => ['title' => '是否成功。', 'description' => '是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:成功。'."\n" + .'- **false**:失败。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], ], 'ListWebApplicationsOutput' => [ @@ -3751,21 +409,12 @@ 'description' => '返回信息。', 'type' => 'object', 'properties' => [ - 'NextToken' => [ - 'title' => '当符合查询条件的数据未读取完时,服务端会返回nextToken,此时可以使用nextToken继续读取后面的数据。第一次查询不需要提供这个参数。', - 'description' => '分页起始标记。', - 'type' => 'string', - 'required' => false, - 'example' => 'A2RN', - ], + 'NextToken' => ['title' => '当符合查询条件的数据未读取完时,服务端会返回nextToken,此时可以使用nextToken继续读取后面的数据。第一次查询不需要提供这个参数。', 'description' => '分页起始标记。', 'type' => 'string', 'required' => false, 'example' => 'A2RN'], 'WebApplicationWithInstanceCount' => [ 'title' => '应用列表', 'description' => '应用列表。', 'type' => 'array', - 'items' => [ - 'description' => 'IP ACL.', - '$ref' => '#/components/schemas/WebApplicationWithInstanceCount', - ], + 'items' => ['description' => 'IP ACL.', '$ref' => '#/components/schemas/WebApplicationWithInstanceCount'], 'required' => false, ], ], @@ -3775,52 +424,22 @@ 'description' => '返回信息。', 'type' => 'object', 'properties' => [ - 'Code' => [ - 'title' => 'HTTP 状态码', - 'description' => 'HTTP状态码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '200', - ], - 'Data' => [ - 'title' => '调用返回数据。', - 'description' => '调用返回数据。', - 'required' => false, - '$ref' => '#/components/schemas/ListWebCustomDomainOutput', - ], - 'Message' => [ - 'title' => '调用结果的附加信息。', - 'description' => '调用结果的附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回success。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'required' => false, - 'example' => 'success', - ], - 'RequestId' => [ - 'title' => '请求 ID。', - 'description' => '请求ID。', - 'type' => 'string', - 'required' => false, - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Success' => [ - 'title' => '是否成功。', - 'description' => '是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:成功。'."\n" - .'- **false**:失败。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'Code' => ['title' => 'HTTP 状态码', 'description' => 'HTTP状态码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '200'], + 'Data' => ['title' => '调用返回数据。', 'description' => '调用返回数据。', 'required' => false, '$ref' => '#/components/schemas/ListWebCustomDomainOutput'], + 'Message' => ['title' => '调用结果的附加信息。', 'description' => '调用结果的附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回success。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'required' => false, 'example' => 'success'], + 'RequestId' => ['title' => '请求 ID。', 'description' => '请求ID。', 'type' => 'string', 'required' => false, 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Success' => ['title' => '是否成功。', 'description' => '是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:成功。'."\n" + .'- **false**:失败。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], ], 'ListWebCustomDomainOutput' => [ @@ -3828,21 +447,12 @@ 'description' => '返回信息。', 'type' => 'object', 'properties' => [ - 'NextToken' => [ - 'title' => '当符合查询条件的数据未读取完时,服务端会返回nextToken,此时可以使用nextToken继续读取后面的数据。第一次查询不需要提供这个参数。', - 'description' => '当符合查询条件的数据未读取完时,服务端会返回nextToken,此时可以使用nextToken继续读取后面的数据。第一次查询不需要提供这个参数。', - 'type' => 'string', - 'required' => false, - 'example' => 'A2RN', - ], + 'NextToken' => ['title' => '当符合查询条件的数据未读取完时,服务端会返回nextToken,此时可以使用nextToken继续读取后面的数据。第一次查询不需要提供这个参数。', 'description' => '当符合查询条件的数据未读取完时,服务端会返回nextToken,此时可以使用nextToken继续读取后面的数据。第一次查询不需要提供这个参数。', 'type' => 'string', 'required' => false, 'example' => 'A2RN'], 'WebCustomDomains' => [ 'title' => '自定义域名列表', 'description' => '自定义域名列表。', 'type' => 'array', - 'items' => [ - 'description' => '自定义域名信息。', - '$ref' => '#/components/schemas/WebCustomDomain', - ], + 'items' => ['description' => '自定义域名信息。', '$ref' => '#/components/schemas/WebCustomDomain'], 'required' => false, ], ], @@ -3856,157 +466,16 @@ 'title' => '应用实例', 'description' => '应用实例。', 'type' => 'array', - 'items' => [ - 'description' => '实例详情。', - '$ref' => '#/components/schemas/WebInstanceInfo', - ], + 'items' => ['description' => '实例详情。', '$ref' => '#/components/schemas/WebInstanceInfo'], 'required' => false, ], - 'CurrentError' => [ - 'title' => '实例创建错误信息', - 'description' => '实例创建错误信息。示例创建成功,则不会返回此字段。', - 'type' => 'string', - 'example' => '无', - ], + 'CurrentError' => ['title' => '实例创建错误信息', 'description' => '实例创建错误信息。示例创建成功,则不会返回此字段。', 'type' => 'string', 'example' => '无'], 'WebVersionStatus' => [ 'title' => '实例状态', 'description' => '实例状态。', 'type' => 'object', 'required' => false, - 'additionalProperties' => [ - 'description' => '实例状态。', - '$ref' => '#/components/schemas/WebVersionStatus', - ], - ], - ], - ], - 'LogConfig' => [ - 'type' => 'object', - 'properties' => [ - 'project' => [ - 'title' => 'project', - 'type' => 'string', - 'required' => false, - 'maxLength' => 63, - ], - 'enableRequestMetrics' => [ - 'title' => 'enableRequestMetrics', - 'type' => 'boolean', - 'required' => false, - ], - 'enableInstanceMetrics' => [ - 'title' => 'enableInstanceMetrics', - 'type' => 'boolean', - 'required' => false, - ], - 'logstore' => [ - 'title' => 'logstore', - 'type' => 'string', - 'required' => false, - 'maxLength' => 63, - ], - 'logBeginRule' => [ - 'title' => 'logBeginRule', - 'type' => 'string', - 'required' => false, - ], - 'pushToUserSLS' => [ - 'title' => 'pushToUserSLS', - 'type' => 'boolean', - ], - ], - ], - 'LogEntry' => [ - 'title' => 'A short description of struct', - 'type' => 'object', - 'properties' => [ - 'timestamp' => [ - 'title' => 'timestamp', - 'type' => 'integer', - 'format' => 'int32', - ], - 'message' => [ - 'title' => 'message', - 'type' => 'string', - ], - 'qualifier' => [ - 'title' => 'qualifier', - 'type' => 'string', - ], - 'versionID' => [ - 'title' => 'versionID', - 'type' => 'string', - ], - 'instanceID' => [ - 'title' => 'instanceID', - 'type' => 'string', - ], - 'offset' => [ - 'title' => 'offset', - 'type' => 'integer', - 'format' => 'int64', - ], - 'packID' => [ - 'title' => 'packID', - 'type' => 'string', - ], - 'packMeta' => [ - 'title' => 'packMeta', - 'type' => 'string', - ], - ], - ], - 'MetricInfo' => [ - 'type' => 'object', - 'properties' => [ - 'timestamp' => [ - 'title' => 'timestamp', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '1686568800000', - ], - 'value' => [ - 'title' => 'value', - 'type' => 'number', - 'format' => 'float', - 'required' => false, - 'example' => '1234.5', - ], - 'Count' => [ - 'title' => 'Count', - 'type' => 'number', - 'format' => 'float', - 'required' => false, - 'example' => '1234.5', - ], - 'Sum' => [ - 'title' => 'Sum', - 'type' => 'number', - 'format' => 'float', - 'required' => false, - 'example' => '1234.5', - ], - 'Average' => [ - 'title' => 'Average', - 'type' => 'number', - 'format' => 'float', - 'required' => false, - 'example' => '1234.5', - ], - 'Maximum' => [ - 'title' => 'Maximum', - 'type' => 'number', - 'format' => 'float', - 'required' => false, - 'example' => '1234.5', - ], - 'Minimum' => [ - 'title' => 'Minimum', - 'type' => 'number', - 'format' => 'float', - 'required' => false, - 'example' => '1234.5', + 'additionalProperties' => ['description' => '实例状态。', '$ref' => '#/components/schemas/WebVersionStatus'], ], ], ], @@ -4015,117 +484,12 @@ 'description' => '监控采集配置。', 'type' => 'object', 'properties' => [ - 'LogstoreName' => [ - 'title' => '监控指标推送到日志服务的logstore名称', - 'description' => '监控指标推送到日志服务的Logstore名称。', - 'type' => 'string', - 'required' => false, - 'example' => 'my-sls-logstorename', - 'maxLength' => 63, - ], - 'ProjectName' => [ - 'title' => '监控指标推送到日志服务的project名称', - 'description' => '监控指标推送到日志服务的Project名称。', - 'type' => 'string', - 'required' => false, - 'example' => 'my-sls-project', - 'maxLength' => 63, - ], - 'EnablePushToUserSLS' => [ - 'title' => '是否推送', - 'description' => '是否推送:'."\n" - ."\n" - .'- true。'."\n" - .'- false。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], - ], - ], - 'NASConfig' => [ - 'type' => 'object', - 'properties' => [ - 'mountPoints' => [ - 'title' => 'mountPoints', - 'type' => 'array', - 'items' => [ - 'required' => false, - '$ref' => '#/components/schemas/NASMountConfig', - ], - 'required' => false, - 'maxItems' => 5, - ], - ], - ], - 'NASMountConfig' => [ - 'title' => 'TODO', - 'type' => 'object', - 'properties' => [ - 'enableTLS' => [ - 'title' => 'TODO', - 'type' => 'boolean', - 'required' => false, - ], - 'mountDir' => [ - 'title' => 'TODO', - 'type' => 'string', - 'required' => false, - 'maxLength' => 64, - ], - 'serverAddr' => [ - 'title' => 'TODO', - 'type' => 'string', - 'required' => false, - 'maxLength' => 128, - ], - ], - ], - 'OSSMountConfig' => [ - 'title' => 'TODO', - 'type' => 'object', - 'properties' => [ - 'mountPoints' => [ - 'title' => 'TODO', - 'type' => 'array', - 'items' => [ - 'required' => false, - '$ref' => '#/components/schemas/OSSMountPoint', - ], - 'required' => false, - 'maxItems' => 5, - ], - ], - ], - 'OSSMountPoint' => [ - 'title' => 'TODO', - 'type' => 'object', - 'properties' => [ - 'bucketName' => [ - 'title' => 'TODO', - 'type' => 'string', - 'required' => false, - 'maxLength' => 64, - 'minLength' => 3, - ], - 'bucketPath' => [ - 'title' => 'TODO', - 'type' => 'string', - 'required' => false, - 'maxLength' => 128, - ], - 'mountDir' => [ - 'title' => 'TODO', - 'type' => 'string', - 'required' => false, - 'maxLength' => 64, - 'minLength' => 2, - ], - 'readOnly' => [ - 'title' => 'TODO', - 'type' => 'boolean', - 'required' => false, - ], + 'LogstoreName' => ['title' => '监控指标推送到日志服务的logstore名称', 'description' => '监控指标推送到日志服务的Logstore名称。', 'type' => 'string', 'required' => false, 'example' => 'my-sls-logstorename', 'maxLength' => 63], + 'ProjectName' => ['title' => '监控指标推送到日志服务的project名称', 'description' => '监控指标推送到日志服务的Project名称。', 'type' => 'string', 'required' => false, 'example' => 'my-sls-project', 'maxLength' => 63], + 'EnablePushToUserSLS' => ['title' => '是否推送', 'description' => '是否推送:'."\n" + ."\n" + .'- true。'."\n" + .'- false。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], ], 'PathConfig' => [ @@ -4133,578 +497,70 @@ 'description' => 'A short description of struct', 'type' => 'object', 'properties' => [ - 'path' => [ - 'title' => 'path', - 'description' => 'path', - 'type' => 'string', - 'example' => '/packages', - ], - 'applicationName' => [ - 'title' => 'applicationName', - 'description' => 'applicationName', - 'type' => 'string', - 'example' => 'applicationName', - ], + 'path' => ['title' => 'path', 'description' => 'path', 'type' => 'string', 'example' => '/packages'], + 'applicationName' => ['title' => 'applicationName', 'description' => 'applicationName', 'type' => 'string', 'example' => 'applicationName'], ], ], - 'PermissionAssistantApi' => [ + 'PortProtocol' => [ 'title' => 'A short description of struct', - 'description' => '权限助手API定义', 'type' => 'object', 'properties' => [ - 'id' => [ - 'title' => 'id', - 'type' => 'integer', - 'format' => 'int64', - ], - 'name' => [ - 'title' => 'name', - 'type' => 'string', - ], - 'resourceType' => [ - 'title' => 'resourceType', - 'type' => 'string', - ], - 'createTime' => [ - 'title' => 'createTime', - 'type' => 'string', - ], - 'updateTime' => [ - 'title' => 'updateTime', - 'type' => 'string', - ], + 'Port' => ['title' => '端口号', 'type' => 'integer', 'format' => 'int32'], + 'TargetPort' => ['title' => '目标端口号', 'type' => 'integer', 'format' => 'int32'], + 'Protocol' => ['title' => '协议', 'type' => 'string'], ], ], - 'PipelineStatus' => [ - 'title' => 'pipeline状态', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '2', - ], - 'PolicyItem' => [ + 'PortProtocols' => [ 'title' => 'A short description of struct', - 'type' => 'object', - 'properties' => [ - 'type' => [ - 'title' => 'type', - 'type' => 'string', - ], - 'key' => [ - 'title' => 'key', - 'type' => 'string', - ], - 'value' => [ - 'title' => 'value', - 'type' => 'string', - ], - 'operator' => [ - 'title' => 'operator', - 'type' => 'string', - ], - ], + 'type' => 'array', + 'items' => ['$ref' => '#/components/schemas/PortProtocol'], ], 'PriceEstimateFeature' => [ 'title' => '应用特性', 'description' => '价格计算器应用特性', 'type' => 'object', 'properties' => [ - 'RegionId' => [ - 'title' => 'Region', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], - 'EnvType' => [ - 'title' => '环境类型', - 'type' => 'string', - 'required' => true, - 'example' => 'Test/Production', - ], - 'AppType' => [ - 'title' => '应用类型', - 'type' => 'string', - 'required' => true, - 'example' => 'Web/MicroService', - ], - 'CpuStrategy' => [ - 'title' => 'CPU分配策略', - 'type' => 'string', - 'required' => true, - 'example' => 'Request/Always', - ], - 'CpuCore' => [ - 'title' => 'CPU核心数', - 'type' => 'number', - 'format' => 'float', - 'required' => true, - 'example' => '1', - ], - 'MemoryGiB' => [ - 'title' => '内存容量', - 'type' => 'number', - 'format' => 'float', - 'required' => true, - 'example' => '1', - ], - 'MinInstanceCount' => [ - 'title' => '最小实例数', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1', - ], - 'MaxInstanceCount' => [ - 'title' => '最大实例数', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '10', - ], - 'InstanceQps' => [ - 'title' => '单实例并发请求数', - 'type' => 'number', - 'format' => 'float', - 'example' => '2', - ], - 'InternetOutboundGiB' => [ - 'title' => '公网出口流量', - 'type' => 'number', - 'format' => 'float', - 'example' => '24', - ], - 'HighLoadSeconds' => [ - 'title' => '峰值时段时长', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '3600', - ], - 'HighLoadQps' => [ - 'title' => '峰值时段并发请求数', - 'type' => 'number', - 'format' => 'float', - 'example' => '5', - ], - 'HighLoadInstanceCount' => [ - 'title' => '峰值时段实例数', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '3', - ], - 'LowLoadSeconds' => [ - 'title' => '常态时段时长', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '3600', - ], - 'LowLoadQps' => [ - 'title' => '常态时段并发请求数', - 'type' => 'number', - 'format' => 'float', - 'example' => '2', - ], - 'LowLoadInstanceCount' => [ - 'title' => '常态时段实例数', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1', - ], - 'NoneLoadSeconds' => [ - 'title' => '空闲时段时长', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '79200', - ], - 'NoneLoadInstanceCount' => [ - 'title' => '空闲时段实例数', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '0', - ], - 'NewSaeVersion' => [ - 'title' => '应用版本', - 'type' => 'string', - 'example' => 'std', - ], - 'ResourceType' => [ - 'title' => '计算资源类型', - 'type' => 'string', - 'example' => 'haiguang', - ], - 'EphemeralStorageGiB' => [ - 'title' => '临时存储容量', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '30', - ], - 'EnableCpuIdle' => [ - 'title' => '是否启用闲置', - 'type' => 'boolean', - 'example' => 'true', - ], - 'CpuUtilLevel' => [ - 'title' => 'CPU利用率预估等级', - 'type' => 'string', - 'example' => 'L1', - ], + 'RegionId' => ['title' => 'Region', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'backendName' => 'regionId'], + 'EnvType' => ['title' => '环境类型', 'type' => 'string', 'required' => true, 'example' => 'Test/Production', 'backendName' => 'envType'], + 'AppType' => ['title' => '应用类型', 'type' => 'string', 'required' => true, 'example' => 'Web/MicroService', 'backendName' => 'appType'], + 'CpuStrategy' => ['title' => 'CPU分配策略', 'type' => 'string', 'required' => true, 'example' => 'Request/Always', 'backendName' => 'cpuStrategy'], + 'CpuCore' => ['title' => 'CPU核心数', 'type' => 'number', 'format' => 'float', 'required' => true, 'example' => '1', 'backendName' => 'cpuCore'], + 'MemoryGiB' => ['title' => '内存容量', 'type' => 'number', 'format' => 'float', 'required' => true, 'example' => '1', 'backendName' => 'memoryGiB'], + 'MinInstanceCount' => ['title' => '最小实例数', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'backendName' => 'minInstanceCount'], + 'MaxInstanceCount' => ['title' => '最大实例数', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'backendName' => 'maxInstanceCount'], + 'InstanceQps' => ['title' => '单实例并发请求数', 'type' => 'number', 'format' => 'float', 'example' => '2', 'backendName' => 'instanceQps'], + 'InternetOutboundGiB' => ['title' => '公网出口流量', 'type' => 'number', 'format' => 'float', 'example' => '24', 'backendName' => 'internetOutboundGiB'], + 'HighLoadSeconds' => ['title' => '峰值时段时长', 'type' => 'integer', 'format' => 'int64', 'example' => '3600', 'backendName' => 'highLoadSeconds'], + 'HighLoadQps' => ['title' => '峰值时段并发请求数', 'type' => 'number', 'format' => 'float', 'example' => '5', 'backendName' => 'highLoadQps'], + 'HighLoadInstanceCount' => ['title' => '峰值时段实例数', 'type' => 'integer', 'format' => 'int64', 'example' => '3', 'backendName' => 'highLoadInstanceCount'], + 'LowLoadSeconds' => ['title' => '常态时段时长', 'type' => 'integer', 'format' => 'int64', 'example' => '3600', 'backendName' => 'lowLoadSeconds'], + 'LowLoadQps' => ['title' => '常态时段并发请求数', 'type' => 'number', 'format' => 'float', 'example' => '2', 'backendName' => 'lowLoadQps'], + 'LowLoadInstanceCount' => ['title' => '常态时段实例数', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'backendName' => 'lowLoadInstanceCount'], + 'NoneLoadSeconds' => ['title' => '空闲时段时长', 'type' => 'integer', 'format' => 'int64', 'example' => '79200', 'backendName' => 'noneLoadSeconds'], + 'NoneLoadInstanceCount' => ['title' => '空闲时段实例数', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'backendName' => 'noneLoadInstanceCount'], + 'NewSaeVersion' => ['title' => '应用版本', 'type' => 'string', 'example' => 'std', 'backendName' => 'newSaeVersion'], + 'ResourceType' => ['title' => '计算资源类型', 'type' => 'string', 'example' => 'haiguang', 'backendName' => 'resourceType'], + 'EphemeralStorageGiB' => ['title' => '临时存储容量', 'type' => 'integer', 'format' => 'int64', 'example' => '30', 'backendName' => 'ephemeralStorageGiB'], + 'EnableCpuIdle' => ['title' => '是否启用闲置', 'type' => 'boolean', 'example' => 'true', 'backendName' => 'enableCpuIdle'], + 'CpuUtilLevel' => ['title' => 'CPU利用率预估等级', 'type' => 'string', 'example' => 'L1', 'backendName' => 'cpuUtilLevel'], 'CpuUtilMetrics' => [ 'title' => 'CPU利用率监控指标', 'type' => 'array', - 'items' => [ - 'type' => 'number', - 'format' => 'float', - 'example' => '30', - ], - ], - 'AppCount' => [ - 'title' => '应用数量', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1', + 'items' => ['type' => 'number', 'format' => 'float', 'example' => '30'], + 'backendName' => 'cpuUtilMetrics', ], + 'AppCount' => ['title' => '应用数量', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'backendName' => 'appCount'], ], 'required' => true, - ], - 'PriceEstimateOutput' => [ - 'title' => '计算结果', - 'description' => '价格计算器-计算结果', - 'type' => 'object', - 'properties' => [ - 'TotalPrice' => [ - 'title' => '预估总价', - 'type' => 'number', - 'format' => 'float', - 'example' => '235.66', - ], - 'Apps' => [ - 'title' => '应用列表', - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'Id' => [ - 'title' => '应用ID', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1', - ], - 'Feature' => [ - 'title' => '应用特性', - '$ref' => '#/components/schemas/PriceEstimateFeature', - ], - 'Usages' => [ - 'title' => '用量数据', - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'Id' => [ - 'title' => '计费项ID', - 'type' => 'string', - 'example' => 'Microservice_cpuUsage', - ], - 'Amount' => [ - 'title' => '用量值', - 'type' => 'number', - 'format' => 'float', - 'example' => '3600.00', - ], - 'Unit' => [ - 'title' => '用量单位', - 'type' => 'string', - 'example' => '核*秒', - ], - ], - ], - ], - ], - ], - ], - 'Items' => [ - 'title' => '商品列表', - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'Id' => [ - 'title' => '商品ID', - 'type' => 'string', - 'example' => 'p_micro_service_cpu', - ], - 'Type' => [ - 'title' => '商品类型', - 'type' => 'string', - 'example' => 'pack/post', - ], - 'Amount' => [ - 'title' => '资源包容量/按量付费用量', - 'type' => 'number', - 'format' => 'float', - 'example' => '3600.00', - ], - 'Unit' => [ - 'title' => '用量单位', - 'type' => 'string', - 'example' => '核*秒', - ], - 'Count' => [ - 'title' => '购买数量', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1', - ], - 'Price' => [ - 'title' => '商品总价', - 'type' => 'number', - 'format' => 'float', - 'example' => '1.00', - ], - 'Steps' => [ - 'title' => '阶梯定价', - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'Begin' => [ - 'title' => '起步值', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '0', - ], - 'End' => [ - 'title' => '终到值', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '10000', - ], - 'Unit' => [ - 'title' => '单位', - 'type' => 'string', - 'example' => '核*秒', - ], - 'Price' => [ - 'title' => '单价', - 'type' => 'number', - 'format' => 'float', - 'example' => '0.0001', - ], - 'RegionIds' => [ - 'title' => '地域ID列表', - 'type' => 'array', - 'items' => [ - 'type' => 'string', - 'example' => 'cn-hangzhou', - ], - ], - ], - ], - ], - ], - ], - ], - 'PostPayItems' => [ - 'title' => '按量付费商品列表', - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'Id' => [ - 'title' => '商品ID', - 'type' => 'string', - 'example' => 'p_micro_service_cpu', - ], - 'Type' => [ - 'title' => '商品类型', - 'type' => 'string', - 'example' => 'pack/post', - ], - 'Amount' => [ - 'title' => '资源包容量/按量付费用量', - 'type' => 'number', - 'format' => 'float', - 'example' => '3600.00', - ], - 'Unit' => [ - 'title' => '用量单位', - 'type' => 'string', - 'example' => '核*秒', - ], - 'Count' => [ - 'title' => '购买数量', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1', - ], - 'Price' => [ - 'title' => '商品总价', - 'type' => 'number', - 'format' => 'float', - 'example' => '1.00', - ], - 'Steps' => [ - 'title' => '阶梯定价', - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'Begin' => [ - 'title' => '起步值', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '0', - ], - 'End' => [ - 'title' => '终到值', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '10000', - ], - 'Unit' => [ - 'title' => '单位', - 'type' => 'string', - 'example' => '核*秒', - ], - 'Price' => [ - 'title' => '单价', - 'type' => 'number', - 'format' => 'float', - 'example' => '0.0001', - ], - 'RegionIds' => [ - 'title' => '地域ID列表', - 'type' => 'array', - 'items' => [ - 'type' => 'string', - 'example' => 'cn-hangzhou', - ], - ], - ], - ], - ], - ], - ], - ], - 'PostPayTotalPrice' => [ - 'title' => '按量付费总价', - 'type' => 'number', - 'format' => 'float', - 'example' => '235.66', - ], - ], - ], - 'Probe' => [ - 'title' => 'A short description of struct', - 'description' => '健康检查配置', - 'type' => 'object', - 'properties' => [ - 'initialDelaySeconds' => [ - 'title' => 'initialDelaySeconds', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - ], - 'timeoutSeconds' => [ - 'title' => 'timeoutSeconds', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - ], - 'periodSeconds' => [ - 'title' => 'periodSeconds', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - ], - 'failureThreshold' => [ - 'title' => 'failureThreshold', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - ], - 'probeHandler' => [ - 'title' => 'probeHandler', - 'type' => 'object', - 'properties' => [ - 'httpGet' => [ - 'title' => 'httpGet', - 'type' => 'object', - 'properties' => [ - 'path' => [ - 'title' => 'path', - 'type' => 'string', - 'required' => false, - ], - 'port' => [ - 'title' => 'port', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - ], - 'httpHeaders' => [ - 'title' => 'httpHeaders', - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'name' => [ - 'title' => 'name', - 'type' => 'string', - 'required' => false, - ], - 'value' => [ - 'title' => 'value', - 'type' => 'string', - 'required' => false, - ], - ], - ], - 'required' => false, - ], - ], - 'required' => false, - ], - 'tcpSocket' => [ - 'title' => 'tcpSocket', - 'type' => 'object', - 'properties' => [ - 'port' => [ - 'title' => 'port', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - ], - ], - 'required' => false, - ], - ], - ], - ], + 'parseType' => 'struct', ], 'ProbeHandler' => [ 'title' => 'TODO', 'description' => '描述信息。', 'type' => 'object', 'properties' => [ - 'HttpGet' => [ - 'title' => 'HTTPGet specifies the http request to perform.', - 'description' => 'HTTPGet指定要执行的HTTP请求。', - 'required' => false, - '$ref' => '#/components/schemas/HTTPGetAction', - ], - 'TcpSocket' => [ - 'title' => 'TCPSocket specifies an action involving a TCP port.', - 'description' => 'TCPSocket指定涉及TCP端口的操作。', - 'required' => false, - '$ref' => '#/components/schemas/TCPSocketAction', - ], - ], - ], - 'PublishApplicationVersionInput' => [ - 'type' => 'object', - 'properties' => [ - 'description' => [ - 'title' => 'description', - 'type' => 'string', - 'required' => false, - 'maxLength' => 256, - ], + 'HttpGet' => ['title' => 'HTTPGet specifies the http request to perform.', 'description' => 'HTTPGet指定要执行的HTTP请求。', 'required' => false, '$ref' => '#/components/schemas/HTTPGetAction'], + 'TcpSocket' => ['title' => 'TCPSocket specifies an action involving a TCP port.', 'description' => 'TCPSocket指定涉及TCP端口的操作。', 'required' => false, '$ref' => '#/components/schemas/TCPSocketAction'], ], ], 'PublishWebApplicationRevisionInput' => [ @@ -4716,57 +572,13 @@ 'title' => '修订版本上的容器配置', 'description' => '修订版本上的容器配置。', 'type' => 'array', - 'items' => [ - 'description' => '容器的详细信息。', - '$ref' => '#/components/schemas/Container', - ], + 'items' => ['description' => '容器的详细信息。', '$ref' => '#/components/schemas/Container'], 'required' => true, 'maxItems' => 1, ], - 'Description' => [ - 'title' => '版本描述', - 'description' => '版本描述。', - 'type' => 'string', - 'required' => false, - 'example' => 'test version', - 'maxLength' => 256, - ], - 'EnableArmsMetrics' => [ - 'title' => '是否开启Arms应用监控', - 'description' => '是否开启Arms应用监控。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], - 'TakeEffect' => [ - 'title' => '新版本发布后是否将 100% 流量切到新版本, 默认值为 false', - 'description' => '新版本发布后是否将 100% 流量切到新版本, 默认值为false。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], - ], - ], - 'RegistryAuthConfig' => [ - 'title' => 'A short description of struct', - 'description' => '镜像仓库的认证信息', - 'type' => 'object', - 'properties' => [ - 'userName' => [ - 'title' => 'userName', - 'type' => 'string', - 'example' => 'admin', - ], - 'password' => [ - 'title' => 'password', - 'type' => 'string', - 'example' => 'abc***', - ], - 'role' => [ - 'title' => 'role to get c', - 'type' => 'string', - 'example' => 'acs:ram::142xxxx:role/xxxxxx', - ], + 'Description' => ['title' => '版本描述', 'description' => '版本描述。', 'type' => 'string', 'required' => false, 'example' => 'test version', 'maxLength' => 256], + 'EnableArmsMetrics' => ['title' => '是否开启Arms应用监控', 'description' => '是否开启Arms应用监控。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], + 'TakeEffect' => ['title' => '新版本发布后是否将 100% 流量切到新版本, 默认值为 false', 'description' => '新版本发布后是否将 100% 流量切到新版本, 默认值为false。', 'type' => 'boolean', 'required' => false, 'example' => 'false'], ], ], 'RegistryAuthenticationConfig' => [ @@ -4774,33 +586,8 @@ 'description' => '镜像仓库认证配置。', 'type' => 'object', 'properties' => [ - 'UserName' => [ - 'title' => '镜像仓库用户名', - 'description' => '镜像仓库用户名', - 'type' => 'string', - 'example' => 'admin', - ], - 'Password' => [ - 'title' => '镜像仓库密码', - 'description' => '镜像仓库密码', - 'type' => 'string', - 'example' => 'abc***', - ], - ], - ], - 'RegistryCertConfig' => [ - 'title' => 'A short description of struct', - 'description' => '镜像仓库的证书信息', - 'type' => 'object', - 'properties' => [ - 'insecure' => [ - 'title' => 'insecure', - 'type' => 'boolean', - ], - 'rootCaCertBase64' => [ - 'title' => 'rootCaCertBase64', - 'type' => 'string', - ], + 'UserName' => ['title' => '镜像仓库用户名', 'description' => '镜像仓库用户名', 'type' => 'string', 'example' => 'admin'], + 'Password' => ['title' => '镜像仓库密码', 'description' => '镜像仓库密码', 'type' => 'string', 'example' => 'abc***'], ], ], 'RegistryCertificateConfig' => [ @@ -4808,33 +595,8 @@ 'description' => '镜像仓库的证书配置。', 'type' => 'object', 'properties' => [ - 'Insecure' => [ - 'title' => '是否以insecure的方式访问镜像仓库', - 'description' => '是否以insecure的方式访问镜像仓库', - 'type' => 'boolean', - 'example' => 'true', - ], - 'CertBase64' => [ - 'title' => 'base64之后的镜像仓库证书', - 'description' => 'base64之后的镜像仓库证书', - 'type' => 'string', - 'example' => 'LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCmZha2VDZXJ0aWZpY2F0ZQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0t', - ], - ], - ], - 'RegistryConfig' => [ - 'title' => 'A short description of struct', - 'description' => '镜像仓库的配置信息', - 'type' => 'object', - 'properties' => [ - 'authConfig' => [ - 'title' => 'authConfig', - '$ref' => '#/components/schemas/RegistryAuthConfig', - ], - 'certConfig' => [ - 'title' => 'certConfig', - '$ref' => '#/components/schemas/RegistryCertConfig', - ], + 'Insecure' => ['title' => '是否以insecure的方式访问镜像仓库', 'description' => '是否以insecure的方式访问镜像仓库', 'type' => 'boolean', 'example' => 'true'], + 'CertBase64' => ['title' => 'base64之后的镜像仓库证书', 'description' => 'base64之后的镜像仓库证书', 'type' => 'string', 'example' => 'LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCmZha2VDZXJ0aWZpY2F0ZQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0t'], ], ], 'Revision' => [ @@ -4842,41 +604,11 @@ 'description' => '描述信息。', 'type' => 'object', 'properties' => [ - 'CreatedTime' => [ - 'title' => '修订版本创建时间', - 'description' => '修订版本创建时间。', - 'type' => 'string', - 'required' => false, - 'example' => '2021-06-09T14:24:42', - ], - 'Description' => [ - 'title' => '修订版本描述', - 'description' => '修订版本描述。', - 'type' => 'string', - 'required' => false, - 'example' => 'test', - ], - 'RevisionConfig' => [ - 'title' => '修订版本上的配置', - 'description' => '修订版本上的配置。', - 'required' => false, - '$ref' => '#/components/schemas/RevisionConfig', - ], - 'RevisionId' => [ - 'title' => '修订版本ID', - 'description' => '修订版本ID。', - 'type' => 'string', - 'required' => false, - 'example' => '1', - ], - 'Weight' => [ - 'title' => '版本的流量权重', - 'description' => '版本的流量权重。', - 'type' => 'number', - 'format' => 'float', - 'required' => false, - 'example' => '0.5', - ], + 'CreatedTime' => ['title' => '修订版本创建时间', 'description' => '修订版本创建时间。', 'type' => 'string', 'required' => false, 'example' => '2021-06-09T14:24:42'], + 'Description' => ['title' => '修订版本描述', 'description' => '修订版本描述。', 'type' => 'string', 'required' => false, 'example' => 'test'], + 'RevisionConfig' => ['title' => '修订版本上的配置', 'description' => '修订版本上的配置。', 'required' => false, '$ref' => '#/components/schemas/RevisionConfig'], + 'RevisionId' => ['title' => '修订版本ID', 'description' => '修订版本ID。', 'type' => 'string', 'required' => false, 'example' => '1'], + 'Weight' => ['title' => '版本的流量权重', 'description' => '版本的流量权重。', 'type' => 'number', 'format' => 'float', 'required' => false, 'example' => '0.5'], ], ], 'RevisionConfig' => [ @@ -4888,31 +620,17 @@ 'title' => '容器配置,目前一个应用只支持一个容器,数组的长度最大为1', 'description' => '容器配置,目前一个应用只支持一个容器,数组的长度最大为1。', 'type' => 'array', - 'items' => [ - 'description' => '容器的详细信息。', - '$ref' => '#/components/schemas/Container', - ], + 'items' => ['description' => '容器的详细信息。', '$ref' => '#/components/schemas/Container'], 'required' => true, 'maxItems' => 1, ], - 'EnableArmsMetrics' => [ - 'title' => '是否开启Arms应用监控', - 'description' => '是否开启Arms应用监控。取值:'."\n" - ."\n" - .'- **`true`**:开启应用监控。'."\n" - .'- **`false`**:关闭应用监控。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], - 'WebNetworkConfig' => [ - 'title' => '网络配置', - 'description' => '网络配置。'."\n" - ."\n" - .'> 此字段是为应用的版本配置网络信息。', - 'required' => false, - '$ref' => '#/components/schemas/WebNetworkConfig', - ], + 'EnableArmsMetrics' => ['title' => '是否开启Arms应用监控', 'description' => '是否开启Arms应用监控。取值:'."\n" + ."\n" + .'- **`true`**:开启应用监控。'."\n" + .'- **`false`**:关闭应用监控。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], + 'WebNetworkConfig' => ['title' => '网络配置', 'description' => '网络配置。'."\n" + ."\n" + .'> 此字段是为应用的版本配置网络信息。', 'required' => false, '$ref' => '#/components/schemas/WebNetworkConfig'], ], ], 'RouteConfig' => [ @@ -4924,28 +642,30 @@ 'title' => 'pathConfig', 'description' => 'pathConfig', 'type' => 'array', - 'items' => [ - 'description' => 'PathConfig', - '$ref' => '#/components/schemas/PathConfig', - ], + 'items' => ['description' => 'PathConfig', '$ref' => '#/components/schemas/PathConfig'], ], ], ], - 'RoutePolicy' => [ - 'title' => 'A short description of struct', + 'SidecarContainerConfig' => [ + 'title' => 'Sidecar 容器配置', + 'description' => 'Sidecar 容器配置', 'type' => 'object', 'properties' => [ - 'condition' => [ - 'title' => 'condition', - 'type' => 'string', - ], - 'policyItems' => [ - 'title' => 'policyItems', - 'type' => 'array', - 'items' => [ - '$ref' => '#/components/schemas/PolicyItem', - ], - ], + 'Name' => ['title' => '容器名称', 'description' => '容器名称', 'type' => 'string', 'example' => 'name'], + 'Cpu' => ['title' => 'Cpu', 'description' => 'Cpu', 'type' => 'integer', 'format' => 'int32', 'example' => '1000'], + 'Memory' => ['title' => 'Memory', 'description' => 'Memory', 'type' => 'integer', 'format' => 'int32', 'example' => '1024'], + 'ImageUrl' => ['title' => '镜像地址', 'description' => '镜像地址', 'type' => 'string', 'example' => 'registry-vpc.cn-hangzhou.aliyuncs.com/demo/nginx:latest'], + 'Command' => ['title' => '镜像启动命令', 'description' => '镜像启动命令', 'type' => 'string', 'example' => 'python'], + 'CommandArgs' => ['title' => '镜像启动命令参数', 'description' => '镜像启动命令参数', 'type' => 'string', 'example' => '["a","b"]'], + 'Envs' => ['title' => '容器环境变量参数', 'description' => '容器环境变量参数', 'type' => 'string', 'example' => '[{"name":"TEST_ENV_KEY","value":"TEST_ENV_VAR"}]'], + 'ConfigMapMountDesc' => ['title' => 'ConfigMap 挂载描述', 'description' => 'ConfigMap 挂载描述', 'type' => 'string', 'example' => '[{"configMapId":16,"key":"test","mountPath":"/tmp"}]'], + 'EmptyDirDesc' => ['title' => 'EmptyDir描述', 'description' => 'EmptyDir描述', 'type' => 'string', 'example' => '[{\\"name\\":\\"workdir\\",\\"mountPath\\":\\"/usr/local/tomcat/webapps\\"}]'], + 'AcrInstanceId' => ['title' => '容器镜像服务 ACR 企业版实例 ID。当 ImageUrl 为容器镜像服务企业版时必填', 'description' => '容器镜像服务 ACR 企业版实例 ID。当 ImageUrl 为容器镜像服务企业版时必填', 'type' => 'string', 'example' => 'cri-xxxxxx'], + 'SecretMountDesc' => ['title' => 'Secret 挂载描述', 'type' => 'string'], + 'Liveness' => ['title' => '存活检查(Liveness配置)', 'type' => 'string'], + 'Readiness' => ['title' => '业务就绪检查(Readiness配置)', 'type' => 'string'], + 'PreStop' => ['title' => 'PreStop配置', 'type' => 'string'], + 'PostStart' => ['title' => 'PostStart配置', 'type' => 'string'], ], ], 'SLSCollectConfig' => [ @@ -4953,57 +673,21 @@ 'description' => '日志配置信息。', 'type' => 'object', 'properties' => [ - 'LogPath' => [ - 'title' => 'TODO', - 'description' => '日志路径。', - 'type' => 'string', - 'required' => false, - 'example' => '/test', - ], - 'LogType' => [ - 'title' => 'TODO', - 'description' => '日志类型,有以下两种类型:'."\n" - ."\n" - .'- 文件采集日志。'."\n" - ."\n" - .'- 标准输出日志。', - 'type' => 'string', - 'required' => false, - 'example' => '文件采集日志', - ], - 'LogstoreName' => [ - 'title' => 'TODO', - 'description' => 'Logstore 名称。其命名规则如下:'."\n" - ."\n" - .'- 同一个 Project 下,Logstore 名称不可重复。'."\n" - .'- 只能包括小写字母、数字、短划线(-)和下划线(_)。'."\n" - .'- 必须以小写字母或者数字开头和结尾。'."\n" - .'- 长度为 3-63 字符。', - 'type' => 'string', - 'required' => false, - 'example' => 'my-logstore', - ], - 'LogtailName' => [ - 'title' => 'TODO', - 'description' => 'Logtail配置名称。', - 'type' => 'string', - 'required' => false, - 'example' => '******-access-log-collector', - ], - 'MachineGroup' => [ - 'title' => 'TODO', - 'description' => '日志服务的机器组名称。', - 'type' => 'string', - 'required' => false, - 'example' => 'Log Service Group', - ], - 'ProjectName' => [ - 'title' => 'TODO', - 'description' => '日志服务的项目。', - 'type' => 'string', - 'required' => false, - 'example' => 'log-service-1199085698835****-cn-neijing', - ], + 'LogPath' => ['title' => 'TODO', 'description' => '日志路径。', 'type' => 'string', 'required' => false, 'example' => '/test'], + 'LogType' => ['title' => 'TODO', 'description' => '日志类型,有以下两种类型:'."\n" + ."\n" + .'- 文件采集日志。'."\n" + ."\n" + .'- 标准输出日志。', 'type' => 'string', 'required' => false, 'example' => '文件采集日志'], + 'LogstoreName' => ['title' => 'TODO', 'description' => 'Logstore 名称。其命名规则如下:'."\n" + ."\n" + .'- 同一个 Project 下,Logstore 名称不可重复。'."\n" + .'- 只能包括小写字母、数字、短划线(-)和下划线(_)。'."\n" + .'- 必须以小写字母或者数字开头和结尾。'."\n" + .'- 长度为 3-63 字符。', 'type' => 'string', 'required' => false, 'example' => 'my-logstore'], + 'LogtailName' => ['title' => 'TODO', 'description' => 'Logtail配置名称。', 'type' => 'string', 'required' => false, 'example' => '******-access-log-collector'], + 'MachineGroup' => ['title' => 'TODO', 'description' => '日志服务的机器组名称。', 'type' => 'string', 'required' => false, 'example' => 'Log Service Group'], + 'ProjectName' => ['title' => 'TODO', 'description' => '日志服务的项目。', 'type' => 'string', 'required' => false, 'example' => 'log-service-1199085698835****-cn-neijing'], ], ], 'SLSCollectConfigs' => [ @@ -5015,221 +699,9 @@ 'title' => '日志采集的配置', 'description' => '日志采集的配置。', 'type' => 'array', - 'items' => [ - 'description' => '日志配置。', - '$ref' => '#/components/schemas/SLSCollectConfig', - ], - 'required' => false, - ], - ], - ], - 'SLSConfig' => [ - 'title' => '用户Logtail日志采集配置', - 'type' => 'object', - 'properties' => [ - 'collectConfigs' => [ - 'title' => '日志采集配置', - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'logPath' => [ - 'title' => 'logPath', - 'type' => 'string', - 'required' => false, - ], - 'projectName' => [ - 'title' => 'projectName', - 'type' => 'string', - 'required' => false, - ], - 'logstoreName' => [ - 'title' => 'logstoreName', - 'type' => 'string', - 'required' => false, - ], - 'logtailName' => [ - 'title' => 'logtailName', - 'type' => 'string', - 'required' => false, - ], - 'logType' => [ - 'title' => 'logType', - 'type' => 'string', - 'required' => false, - ], - ], - ], - ], - ], - ], - 'ScaleConfig' => [ - 'type' => 'object', - 'properties' => [ - 'alwaysAllocateCPU' => [ - 'title' => 'alwaysAllocateCPU', - 'type' => 'boolean', + 'items' => ['description' => '日志配置。', '$ref' => '#/components/schemas/SLSCollectConfig'], 'required' => false, ], - 'maximumInstanceCount' => [ - 'title' => 'maximumInstanceCount', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - ], - 'minimumInstanceCount' => [ - 'title' => 'minimumInstanceCount', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - ], - 'requestId' => [ - 'title' => 'requestId', - 'type' => 'string', - ], - ], - ], - 'SidecarContainerConfig' => [ - 'title' => 'Sidecar 容器配置', - 'description' => 'Sidecar 容器配置', - 'type' => 'object', - 'properties' => [ - 'Name' => [ - 'title' => '容器名称', - 'description' => '容器名称', - 'type' => 'string', - 'example' => 'name', - ], - 'Cpu' => [ - 'title' => 'Cpu', - 'description' => 'Cpu', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1000', - ], - 'Memory' => [ - 'title' => 'Memory', - 'description' => 'Memory', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1024', - ], - 'ImageUrl' => [ - 'title' => '镜像地址', - 'description' => '镜像地址', - 'type' => 'string', - 'example' => 'registry-vpc.cn-hangzhou.aliyuncs.com/demo/nginx:latest', - ], - 'Command' => [ - 'title' => '镜像启动命令', - 'description' => '镜像启动命令', - 'type' => 'string', - 'example' => 'python', - ], - 'CommandArgs' => [ - 'title' => '镜像启动命令参数', - 'description' => '镜像启动命令参数', - 'type' => 'string', - 'example' => '["a","b"]', - ], - 'Envs' => [ - 'title' => '容器环境变量参数', - 'description' => '容器环境变量参数', - 'type' => 'string', - 'example' => '[{"name":"TEST_ENV_KEY","value":"TEST_ENV_VAR"}]', - ], - 'ConfigMapMountDesc' => [ - 'title' => 'ConfigMap 挂载描述', - 'description' => 'ConfigMap 挂载描述', - 'type' => 'string', - 'example' => '[{"configMapId":16,"key":"test","mountPath":"/tmp"}]', - ], - 'EmptyDirDesc' => [ - 'title' => 'EmptyDir描述', - 'description' => 'EmptyDir描述', - 'type' => 'string', - 'example' => '[{\\"name\\":\\"workdir\\",\\"mountPath\\":\\"/usr/local/tomcat/webapps\\"}]', - ], - 'AcrInstanceId' => [ - 'title' => '容器镜像服务 ACR 企业版实例 ID。当 ImageUrl 为容器镜像服务企业版时必填', - 'description' => '容器镜像服务 ACR 企业版实例 ID。当 ImageUrl 为容器镜像服务企业版时必填', - 'type' => 'string', - 'example' => 'cri-xxxxxx', - ], - ], - ], - 'SourceCodeAccount' => [ - 'title' => 'A short description of struct', - 'description' => '查询代码仓库授权账号列表', - 'type' => 'object', - 'properties' => [ - 'Id' => [ - 'title' => 'id', - 'type' => 'string', - ], - 'Name' => [ - 'title' => 'name', - 'type' => 'string', - ], - 'AvatarUrl' => [ - 'title' => 'avatarUrl', - 'type' => 'string', - ], - 'Organizations' => [ - 'title' => '企业/组织列表', - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'Id' => [ - 'title' => '企业/组织 ID', - 'type' => 'string', - ], - 'Name' => [ - 'title' => '企业/组织 名字', - 'type' => 'string', - ], - 'AvatarUrl' => [ - 'title' => 'avatarUrl', - 'type' => 'string', - ], - ], - ], - ], - ], - ], - 'SourceCodeRepo' => [ - 'title' => '代码仓库列表', - 'description' => '查询代码仓库列表返回值', - 'type' => 'object', - 'properties' => [ - 'Id' => [ - 'title' => '仓库id', - 'type' => 'string', - ], - 'Name' => [ - 'title' => '仓库名称', - 'type' => 'string', - ], - 'FullName' => [ - 'title' => '带命名空间的仓库名称', - 'type' => 'string', - ], - ], - ], - 'SourceCodeRepoBranch' => [ - 'title' => '仓库分支列表', - 'description' => '查询代码仓库分支列表返回值', - 'type' => 'object', - 'properties' => [ - 'Name' => [ - 'title' => '分支name', - 'type' => 'string', - ], - 'CommitId' => [ - 'title' => 'commitId', - 'type' => 'string', - ], ], ], 'StartupProbe' => [ @@ -5237,168 +709,16 @@ 'description' => '容器启动时的配置检查。', 'type' => 'object', 'properties' => [ - 'FailureThreshold' => [ - 'title' => 'Minimum consecutive failures for the probe to be considered failed after having succeeded.'."\n" - .'Defaults to 3. Minimum value is 1.', - 'description' => '探测成功后被视为失败的最小连续失败次数。默认值为3。最小值为1。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], - 'InitialDelaySeconds' => [ - 'title' => 'Number of seconds after the container has started before liveness probes are initiated.'."\n" - .'More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes', - 'description' => '容器启动到发起健康检查的延迟。更多信息,请参见[探针]( https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes)。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], - 'PeriodSeconds' => [ - 'title' => 'How often (in seconds) to perform the probe.'."\n" - .'Default to 10 seconds. Minimum value is 1.', - 'description' => '健康检查周期(以秒为单位)。默认值为10秒。最小值为1。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], - 'ProbeHandler' => [ - 'title' => 'The action taken to determine the health of a container', - 'description' => '为确定容器的运行状况而采取的操作。', - 'required' => false, - '$ref' => '#/components/schemas/ProbeHandler', - ], - 'TimeoutSeconds' => [ - 'title' => 'Number of seconds after which the probe times out.'."\n" - .'Defaults to 1 second. Minimum value is 1.'."\n" - .'More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes', - 'description' => '健康检查超时时间。默认值为 1。最小值为1。更多信息,请参见[container-probes](https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes)。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], - ], - ], - 'StaticsInfo' => [ - 'title' => 'A short description of struct', - 'description' => '查询资源的返回的单个应用的资源利用情况结构体', - 'type' => 'object', - 'properties' => [ - 'memoryUsage' => [ - 'title' => '资源利用率', - 'type' => 'integer', - 'format' => 'int64', - ], - 'cost' => [ - 'title' => '花销', - 'type' => 'number', - 'format' => 'float', - ], - 'functionName' => [ - 'title' => 'functionName', - 'type' => 'string', - ], - 'gpuUsage' => [ - 'title' => 'gpuUsage', - 'type' => 'integer', - 'format' => 'int64', - ], - 'instanceTrafficOut' => [ - 'title' => 'instanceTrafficOut', - 'type' => 'integer', - 'format' => 'int64', - ], - 'serviceName' => [ - 'title' => 'serviceName', - 'type' => 'string', - ], - 'invocations' => [ - 'title' => 'invocations', - 'type' => 'integer', - 'format' => 'int64', - ], - 'idleCPUUsage' => [ - 'title' => 'idleCPUUsage', - 'type' => 'integer', - 'format' => 'int64', - ], - 'activeCPUUsage' => [ - 'title' => 'activeCPUUsage', - 'type' => 'integer', - 'format' => 'int64', - ], - 'invokeInternetOut' => [ - 'title' => 'invokeInternetOut', - 'type' => 'integer', - 'format' => 'int64', - ], - 'invokeCDNOut' => [ - 'title' => 'invokeCDNOut', - 'type' => 'integer', - 'format' => 'int64', - ], - 'diskUsage' => [ - 'title' => 'diskUsage', - 'type' => 'integer', - 'format' => 'int64', - ], - 'region' => [ - 'title' => 'region', - 'type' => 'string', - ], - ], - ], - 'Submenu' => [ - 'title' => '菜单', - 'description' => '子菜单', - 'type' => 'object', - 'properties' => [ - 'SubmenuType' => [ - 'title' => '菜单类型', - 'type' => 'string', - ], - 'SubmenuDesc' => [ - 'title' => '菜单描述', - 'type' => 'string', - ], - 'Submenus' => [ - 'title' => '子菜单', - 'type' => 'array', - 'items' => [ - '$ref' => '#/components/schemas/Submenu', - ], - ], - 'Items' => [ - 'title' => 'API列表', - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'ItemType' => [ - 'title' => '选项类型', - 'type' => 'string', - ], - 'ItemDesc' => [ - 'title' => '选项描述', - 'type' => 'string', - ], - 'DefaultSelected' => [ - 'title' => '是否默认选中', - 'type' => 'boolean', - ], - 'RelatingItems' => [ - 'title' => '关联菜单', - 'type' => 'array', - 'items' => [ - 'type' => 'string', - ], - ], - ], - ], - ], + 'FailureThreshold' => ['title' => 'Minimum consecutive failures for the probe to be considered failed after having succeeded.'."\n" + .'Defaults to 3. Minimum value is 1.', 'description' => '探测成功后被视为失败的最小连续失败次数。默认值为3。最小值为1。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], + 'InitialDelaySeconds' => ['title' => 'Number of seconds after the container has started before liveness probes are initiated.'."\n" + .'More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes', 'description' => '容器启动到发起健康检查的延迟。更多信息,请参见[探针]( https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes)。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], + 'PeriodSeconds' => ['title' => 'How often (in seconds) to perform the probe.'."\n" + .'Default to 10 seconds. Minimum value is 1.', 'description' => '健康检查周期(以秒为单位)。默认值为10秒。最小值为1。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], + 'ProbeHandler' => ['title' => 'The action taken to determine the health of a container', 'description' => '为确定容器的运行状况而采取的操作。', 'required' => false, '$ref' => '#/components/schemas/ProbeHandler'], + 'TimeoutSeconds' => ['title' => 'Number of seconds after which the probe times out.'."\n" + .'Defaults to 1 second. Minimum value is 1.'."\n" + .'More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes', 'description' => '健康检查超时时间。默认值为 1。最小值为1。更多信息,请参见[container-probes](https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes)。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], ], 'TCPSocketAction' => [ @@ -5406,473 +726,9 @@ 'description' => '描述信息。', 'type' => 'object', 'properties' => [ - 'Host' => [ - 'title' => 'Optional: Host name to connect to, defaults to the pod IP.', - 'description' => '可选:要连接的主机名称,默认为 pod IP。', - 'type' => 'string', - 'required' => false, - 'example' => '172.16.XX.XX', - ], - 'Port' => [ - 'title' => 'Number of the port to access on the container.'."\n" - .'Number must be in the range 1 to 65535.', - 'description' => '容器上要访问的端口号。端口号范围:1~65535。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '80', - ], - ], - ], - 'TLSConfig' => [ - 'title' => 'TODO', - 'type' => 'object', - 'properties' => [ - 'cipherSuites' => [ - 'title' => 'TODO', - 'type' => 'array', - 'items' => [ - 'type' => 'string', - 'required' => false, - ], - 'required' => false, - ], - 'maxVersion' => [ - 'title' => 'TODO', - 'type' => 'string', - 'required' => false, - ], - 'minVersion' => [ - 'title' => 'TODO', - 'type' => 'string', - 'required' => false, - ], - ], - ], - 'TomcatConfig' => [ - 'title' => 'A short description of struct', - 'type' => 'object', - 'properties' => [ - 'Version' => [ - 'title' => 'tomcat版本', - 'type' => 'string', - ], - 'Port' => [ - 'title' => '端口号', - 'type' => 'integer', - 'format' => 'int32', - ], - 'ContextPath' => [ - 'title' => '访问路径', - 'type' => 'string', - ], - 'MaxThreads' => [ - 'title' => '配置连接池的连接数大小', - 'type' => 'integer', - 'format' => 'int32', - ], - 'UriEncoding' => [ - 'title' => 'Tomcat的编码格式', - 'type' => 'string', - ], - 'UseBodyEncodingForUri' => [ - 'title' => '是否使用BodyEncoding for URL', - 'type' => 'boolean', - ], - ], - ], - 'TracingConfig' => [ - 'type' => 'object', - 'properties' => [ - 'params' => [ - 'title' => 'params', - 'type' => 'any', - 'required' => false, - ], - 'type' => [ - 'title' => 'type', - 'type' => 'string', - 'required' => false, - ], - 'jaegerConfig' => [ - 'title' => 'jaegerConfig', - 'required' => false, - '$ref' => '#/components/schemas/JaegerConfig', - ], - ], - ], - 'TrafficConfig' => [ - 'type' => 'object', - 'properties' => [ - 'createdTime' => [ - 'title' => 'createdTime', - 'type' => 'string', - 'required' => false, - ], - 'additionalVersionWeight' => [ - 'title' => 'additionalVersionWeight', - 'type' => 'object', - 'required' => false, - 'additionalProperties' => [ - 'type' => 'number', - 'format' => 'float', - 'required' => false, - ], - ], - 'versionId' => [ - 'title' => 'versionId', - 'type' => 'string', - 'required' => false, - ], - 'lastModifiedTime' => [ - 'title' => 'lastModifiedTime', - 'type' => 'string', - 'required' => false, - ], - 'requestId' => [ - 'title' => 'requestId', - 'type' => 'string', - ], - 'routePolicy' => [ - '$ref' => '#/components/schemas/RoutePolicy', - ], - 'resolvePolicy' => [ - 'title' => 'resolvePolicy', - 'type' => 'string', - ], - ], - ], - 'UpdateApplicationInput' => [ - 'type' => 'object', - 'properties' => [ - 'handler' => [ - 'title' => 'handler', - 'type' => 'string', - 'required' => false, - 'maxLength' => 128, - 'minLength' => 1, - ], - 'code' => [ - 'required' => false, - '$ref' => '#/components/schemas/InputCodeLocation', - ], - 'tracingConfig' => [ - 'required' => false, - '$ref' => '#/components/schemas/TracingConfig', - ], - 'instanceSoftConcurrency' => [ - 'title' => 'instanceSoftConcurrency', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'maximum' => '200', - 'minimum' => '1', - ], - 'nasConfig' => [ - 'required' => false, - '$ref' => '#/components/schemas/NASConfig', - ], - 'description' => [ - 'title' => 'description', - 'type' => 'string', - 'required' => false, - 'maxLength' => 256, - ], - 'timeout' => [ - 'title' => 'timeout', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'minimum' => '1', - ], - 'diskSize' => [ - 'title' => 'diskSize', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'minimum' => '512', - ], - 'caPort' => [ - 'title' => 'caPort', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - ], - 'internetAccess' => [ - 'title' => 'internetAccess', - 'type' => 'boolean', - 'required' => false, - ], - 'layers' => [ - 'title' => 'layers', - 'type' => 'array', - 'items' => [ - 'type' => 'string', - 'required' => false, - ], - 'required' => false, - ], - 'ossMountConfig' => [ - 'required' => false, - '$ref' => '#/components/schemas/OSSMountConfig', - ], - 'customRuntimeConfig' => [ - 'required' => false, - '$ref' => '#/components/schemas/CustomRuntimeConfig', - ], - 'logConfig' => [ - 'required' => false, - '$ref' => '#/components/schemas/LogConfig', - ], - 'instanceLifecycleConfig' => [ - 'required' => false, - '$ref' => '#/components/schemas/InstanceLifecycleConfig', - ], - 'scaleConfig' => [ - 'required' => false, - '$ref' => '#/components/schemas/ScaleConfig', - ], - 'instanceType' => [ - 'title' => 'instanceType', - 'type' => 'string', - 'required' => false, - 'maxLength' => 128, - 'minLength' => 0, - ], - 'cpu' => [ - 'title' => 'cpu', - 'type' => 'number', - 'format' => 'float', - 'required' => false, - 'minimum' => '0.05', - ], - 'runtime' => [ - 'title' => 'runtime', - 'type' => 'string', - 'required' => false, - ], - 'command' => [ - 'title' => 'command', - 'type' => 'string', - 'required' => false, - ], - 'imageConfig' => [ - 'required' => false, - '$ref' => '#/components/schemas/ImageConfig', - ], - 'instanceConcurrency' => [ - 'title' => 'instanceConcurrency', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'maximum' => '200', - 'minimum' => '1', - ], - 'initializer' => [ - 'title' => 'initializer', - 'type' => 'string', - 'required' => false, - 'maxLength' => 128, - 'minLength' => 0, - ], - 'args' => [ - 'title' => 'args', - 'type' => 'string', - 'required' => false, - ], - 'initializationTimeout' => [ - 'title' => 'initializationTimeout', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'minimum' => '1', - ], - 'memorySize' => [ - 'title' => 'memorySize', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'minimum' => '128', - ], - 'customDNS' => [ - 'required' => false, - '$ref' => '#/components/schemas/CustomDNS', - ], - 'customHealthCheckConfig' => [ - 'required' => false, - '$ref' => '#/components/schemas/CustomHealthCheckConfig', - ], - 'environmentVariables' => [ - 'title' => 'environmentVariables', - 'type' => 'object', - 'required' => false, - 'additionalProperties' => [ - 'type' => 'string', - 'required' => false, - ], - ], - 'gpuMemorySize' => [ - 'title' => 'gpuMemorySize', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'minimum' => '128', - ], - 'vpcConfig' => [ - 'required' => false, - '$ref' => '#/components/schemas/VPCConfig', - ], - 'httpTriggerConfig' => [ - 'required' => false, - '$ref' => '#/components/schemas/HTTPTriggerConfig', - ], - 'effectiveImmediately' => [ - 'title' => 'effectiveImmediately', - 'type' => 'boolean', - ], - 'enableAppMetric' => [ - 'title' => 'enableAppMetric', - 'type' => 'boolean', - ], - 'slsConfig' => [ - 'required' => false, - '$ref' => '#/components/schemas/SLSConfig', - ], - 'startupProbe' => [ - 'required' => false, - '$ref' => '#/components/schemas/Probe', - ], - 'livenessProbe' => [ - 'required' => false, - '$ref' => '#/components/schemas/Probe', - ], - 'namespaceID' => [ - 'title' => 'namespaceID', - 'type' => 'string', - ], - 'customHostAlias' => [ - '$ref' => '#/components/schemas/CustomHostAlias', - ], - 'programmingLanguage' => [ - 'title' => 'programmingLanguage', - 'type' => 'string', - ], - ], - ], - 'UpdateApplicationScaleConfigInput' => [ - 'type' => 'object', - 'properties' => [ - 'alwaysAllocateCPU' => [ - 'title' => 'alwaysAllocateCPU', - 'type' => 'boolean', - 'required' => false, - ], - 'maximumInstanceCount' => [ - 'title' => 'maximumInstanceCount', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'maximum' => '5000', - 'minimum' => '-1', - ], - 'minimumInstanceCount' => [ - 'title' => 'minimumInstanceCount', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'maximum' => '5000', - 'minimum' => '0', - ], - ], - ], - 'UpdateApplicationTrafficConfigInput' => [ - 'type' => 'object', - 'properties' => [ - 'additionalVersionWeight' => [ - 'title' => 'additionalVersionWeight', - 'type' => 'object', - 'required' => false, - 'additionalProperties' => [ - 'type' => 'number', - 'format' => 'float', - 'required' => false, - ], - ], - 'versionId' => [ - 'title' => 'versionId', - 'type' => 'string', - 'required' => false, - 'maxLength' => 10, - 'minLength' => 1, - ], - 'routePolicy' => [ - 'title' => 'routePolicy', - '$ref' => '#/components/schemas/RoutePolicy', - ], - 'resolvePolicy' => [ - 'title' => 'resolvePolicy', - 'type' => 'string', - ], - ], - ], - 'UpdateAttributesInput' => [ - 'title' => 'A short description of struct', - 'type' => 'object', - 'properties' => [ - 'description' => [ - 'title' => 'description', - 'type' => 'string', - ], - 'versionID' => [ - 'title' => 'versionID', - 'type' => 'string', - ], - 'httpTriggerConfig' => [ - 'title' => 'httpTriggerConfig', - '$ref' => '#/components/schemas/HTTPTriggerConfig', - ], - ], - ], - 'UpdateCustomDomainInput' => [ - 'type' => 'object', - 'properties' => [ - 'keepFullPath' => [ - 'title' => 'keepFullPath', - 'type' => 'boolean', - 'required' => false, - ], - 'protocol' => [ - 'title' => 'protocol', - 'type' => 'string', - 'required' => false, - ], - 'certConfig' => [ - 'required' => false, - '$ref' => '#/components/schemas/CertConfig', - ], - 'tlsConfig' => [ - 'required' => false, - '$ref' => '#/components/schemas/TLSConfig', - ], - 'wafConfig' => [ - 'required' => false, - '$ref' => '#/components/schemas/WAFConfig', - ], - 'applicationName' => [ - 'title' => 'applicationName', - 'type' => 'string', - 'required' => false, - ], - 'applicationID' => [ - 'title' => 'applicationID', - 'type' => 'string', - 'required' => false, - ], - 'namespaceID' => [ - 'title' => 'namespaceId', - 'type' => 'string', - 'required' => false, - ], + 'Host' => ['title' => 'Optional: Host name to connect to, defaults to the pod IP.', 'description' => '可选:要连接的主机名称,默认为 pod IP。', 'type' => 'string', 'required' => false, 'example' => '172.16.XX.XX'], + 'Port' => ['title' => 'Number of the port to access on the container.'."\n" + .'Number must be in the range 1 to 65535.', 'description' => '容器上要访问的端口号。端口号范围:1~65535。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '80'], ], ], 'UpdateWebApplicationInput' => [ @@ -5880,20 +736,8 @@ 'description' => '返回信息。', 'type' => 'object', 'properties' => [ - 'Description' => [ - 'title' => '应用描述', - 'description' => '应用描述。', - 'type' => 'string', - 'required' => false, - 'example' => 'sae-app', - 'maxLength' => 256, - ], - 'WebNetworkConfig' => [ - 'title' => '应用网络配置', - 'description' => '应用网络配置。', - 'required' => false, - '$ref' => '#/components/schemas/WebNetworkConfig', - ], + 'Description' => ['title' => '应用描述', 'description' => '应用描述。', 'type' => 'string', 'required' => false, 'example' => 'sae-app', 'maxLength' => 256], + 'WebNetworkConfig' => ['title' => '应用网络配置', 'description' => '应用网络配置。', 'required' => false, '$ref' => '#/components/schemas/WebNetworkConfig'], ], ], 'UpdateWebApplicationScalingConfigInput' => [ @@ -5901,22 +745,8 @@ 'description' => '更新弹性配置的请求信息。', 'type' => 'object', 'properties' => [ - 'MaximumInstanceCount' => [ - 'title' => '最大实例数', - 'description' => '最大实例数。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'example' => '10', - ], - 'MinimumInstanceCount' => [ - 'title' => '最小实例数', - 'description' => '最小实例数。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'example' => '1', - ], + 'MaximumInstanceCount' => ['title' => '最大实例数', 'description' => '最大实例数。', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '10'], + 'MinimumInstanceCount' => ['title' => '最小实例数', 'description' => '最小实例数。', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1'], ], ], 'UpdateWebApplicationTrafficConfigInput' => [ @@ -5924,38 +754,16 @@ 'description' => '更新流量配置的请求信息。', 'type' => 'object', 'properties' => [ - 'WebAclConfig' => [ - 'title' => 'IP ACL 白名单配置', - 'description' => 'IP ACL 白名单配置。', - 'required' => false, - '$ref' => '#/components/schemas/WebAclConfig', - ], - 'AuthType' => [ - 'title' => '认证类型。Anonymous:表示不需要认证,默认值。Application:表示需要认证。', - 'description' => '认证类型。Anonymous:表示不需要认证,默认值。Application:表示需要认证。', - 'type' => 'string', - 'required' => false, - 'example' => 'Anonymous', - ], - 'DisableURLInternet' => [ - 'title' => '禁用默认公网域名访问的开关。设置为true时,访问应用默认提供的公网URL地址会返回403错误。设置为false时,不会有任何影响。', - 'description' => '禁用默认公网域名访问的开关。设置为true时,访问应用默认提供的公网URL地址会返回403错误。设置为false时,不会有任何影响。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'WebAclConfig' => ['title' => 'IP ACL 白名单配置', 'description' => 'IP ACL 白名单配置。', 'required' => false, '$ref' => '#/components/schemas/WebAclConfig'], + 'AuthType' => ['title' => '认证类型。Anonymous:表示不需要认证,默认值。Application:表示需要认证。', 'description' => '认证类型。Anonymous:表示不需要认证,默认值。Application:表示需要认证。', 'type' => 'string', 'required' => false, 'example' => 'Anonymous'], + 'DisableURLInternet' => ['title' => '禁用默认公网域名访问的开关。设置为true时,访问应用默认提供的公网URL地址会返回403错误。设置为false时,不会有任何影响。', 'description' => '禁用默认公网域名访问的开关。设置为true时,访问应用默认提供的公网URL地址会返回403错误。设置为false时,不会有任何影响。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], 'RevisionsTrafficWeight' => [ 'title' => '应用版本流量比例,所有版本流量百分比之和必须等于 100%', 'description' => '应用版本流量比例,所有版本流量百分比之和必须等于1。', 'type' => 'object', 'required' => false, - 'additionalProperties' => [ - 'description' => '版本的流量权重配置。', - 'type' => 'number', - 'format' => 'float', - 'example' => '001:0.5'."\n" - .'002:0.5', - ], + 'additionalProperties' => ['description' => '版本的流量权重配置。', 'type' => 'number', 'format' => 'float', 'example' => '001:0.5'."\n" + .'002:0.5'], ], ], ], @@ -5964,147 +772,16 @@ 'description' => '更新自定义域名的请求参数。', 'type' => 'object', 'properties' => [ - 'WebCertConfig' => [ - 'title' => 'HTTPS证书的信息。', - 'description' => 'HTTPS证书的信息。', - 'required' => false, - '$ref' => '#/components/schemas/WebCertConfig', - ], - 'DefaultForwardingAppName' => [ - 'title' => '域名默认转发的应用名', - 'description' => '域名默认转发的应用名。', - 'type' => 'string', - 'required' => false, - 'example' => 'demo-app', - ], - 'Protocol' => [ - 'title' => '域名支持的协议类型。HTTP:仅支持HTTP协议。HTTPS:仅支持HTTPS协议。HTTP,HTTPS:支持HTTP及HTTPS协议。', - 'description' => '域名支持的协议类型。'."\n" - ."\n" - .'- **HTTP**:仅支持HTTP协议。'."\n" - .'- **HTTPS**:仅支持HTTPS协议。'."\n" - .'- **HTTP,HTTPS**:支持HTTP及HTTPS协议。', - 'type' => 'string', - 'required' => false, - 'example' => 'HTTP', - ], - 'WebTLSConfig' => [ - 'title' => 'TLS配置信息。', - 'description' => 'TLS配置信息。', - 'required' => false, - '$ref' => '#/components/schemas/WebTLSConfig', - ], - 'WebWAFConfig' => [ - 'title' => 'Web应用防火墙配置信息。', - 'description' => 'Web应用防火墙配置信息。', - 'required' => false, - '$ref' => '#/components/schemas/WebWAFConfig', - ], - 'RouteConfig' => [ - 'title' => '路由配置', - 'description' => '路由配置', - '$ref' => '#/components/schemas/RouteConfig', - ], - ], - ], - 'VPCConfig' => [ - 'type' => 'object', - 'properties' => [ - 'anytunnelViaENI' => [ - 'title' => 'anytunnelViaENI', - 'type' => 'boolean', - 'required' => false, - ], - 'securityGroupId' => [ - 'title' => 'securityGroupId', - 'type' => 'string', - 'required' => false, - 'maxLength' => 50, - ], - 'role' => [ - 'title' => 'role', - 'type' => 'string', - 'required' => false, - 'maxLength' => 300, - ], - 'vSwitchIds' => [ - 'title' => 'vSwitchIds', - 'type' => 'array', - 'items' => [ - 'type' => 'string', - 'required' => false, - ], - 'required' => false, - 'maxItems' => 10, - ], - 'vpcId' => [ - 'title' => 'vpcId', - 'type' => 'string', - 'required' => false, - 'maxLength' => 50, - ], - ], - ], - 'Version' => [ - 'type' => 'object', - 'properties' => [ - 'createdTime' => [ - 'title' => 'createdTime', - 'type' => 'string', - 'required' => false, - ], - 'description' => [ - 'title' => 'description', - 'type' => 'string', - 'required' => false, - ], - 'versionId' => [ - 'title' => 'versionId', - 'type' => 'string', - 'required' => false, - ], - 'lastModifiedTime' => [ - 'title' => 'lastModifiedTime', - 'type' => 'string', - 'required' => false, - ], - 'image' => [ - 'title' => 'image', - 'type' => 'string', - ], - 'weight' => [ - 'title' => 'weight', - 'type' => 'number', - 'format' => 'double', - ], - 'requestId' => [ - 'title' => 'requestId', - 'type' => 'string', - ], - ], - ], - 'VersionStatus' => [ - 'type' => 'object', - 'properties' => [ - 'errorMessage' => [ - 'title' => 'errorMessage', - 'type' => 'string', - ], - 'status' => [ - 'title' => 'status', - 'type' => 'string', - ], - ], - ], - 'WAFConfig' => [ - 'title' => 'TODO', - 'type' => 'object', - 'properties' => [ - 'enableWAF' => [ - 'title' => 'TODO', - 'type' => 'boolean', - 'required' => false, - ], + 'WebCertConfig' => ['title' => 'HTTPS证书的信息。', 'description' => 'HTTPS证书的信息。', 'required' => false, '$ref' => '#/components/schemas/WebCertConfig'], + 'DefaultForwardingAppName' => ['title' => '域名默认转发的应用名', 'description' => '域名默认转发的应用名。', 'type' => 'string', 'required' => false, 'example' => 'demo-app'], + 'Protocol' => ['title' => '域名支持的协议类型。HTTP:仅支持HTTP协议。HTTPS:仅支持HTTPS协议。HTTP,HTTPS:支持HTTP及HTTPS协议。', 'description' => '域名支持的协议类型。'."\n" + ."\n" + .'- **HTTP**:仅支持HTTP协议。'."\n" + .'- **HTTPS**:仅支持HTTPS协议。'."\n" + .'- **HTTP,HTTPS**:支持HTTP及HTTPS协议。', 'type' => 'string', 'required' => false, 'example' => 'HTTP'], + 'WebTLSConfig' => ['title' => 'TLS配置信息。', 'description' => 'TLS配置信息。', 'required' => false, '$ref' => '#/components/schemas/WebTLSConfig'], + 'WebWAFConfig' => ['title' => 'Web应用防火墙配置信息。', 'description' => 'Web应用防火墙配置信息。', 'required' => false, '$ref' => '#/components/schemas/WebWAFConfig'], + 'RouteConfig' => ['title' => '路由配置', 'description' => '路由配置', '$ref' => '#/components/schemas/RouteConfig'], ], ], 'WebAclConfig' => [ @@ -6116,11 +793,7 @@ 'title' => 'IP 列表', 'description' => 'IP 列表。', 'type' => 'array', - 'items' => [ - 'description' => 'ACL配置。', - 'required' => true, - '$ref' => '#/components/schemas/WebAclEntryConfig', - ], + 'items' => ['description' => 'ACL配置。', 'required' => true, '$ref' => '#/components/schemas/WebAclEntryConfig'], 'required' => true, ], ], @@ -6130,14 +803,8 @@ 'description' => 'IP 白名单列表。', 'type' => 'object', 'properties' => [ - 'Entry' => [ - 'title' => 'CIDR', - 'description' => 'CIDR。'."\n" - .'> 暂时不支持CIDR。', - 'type' => 'string', - 'required' => true, - 'example' => '219.145.XX.XX', - ], + 'Entry' => ['title' => 'CIDR', 'description' => 'CIDR。'."\n" + .'> 暂时不支持CIDR。', 'type' => 'string', 'required' => true, 'example' => '219.145.XX.XX'], ], ], 'WebApplication' => [ @@ -6145,92 +812,18 @@ 'description' => '应用信息。', 'type' => 'object', 'properties' => [ - 'ApplicationId' => [ - 'title' => '应用ID', - 'description' => '应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****', - 'maxLength' => 128, - 'minLength' => 1, - ], - 'ApplicationName' => [ - 'title' => '应用名称', - 'description' => '应用名称。', - 'type' => 'string', - 'required' => true, - 'example' => 'sae-app', - 'maxLength' => 128, - 'minLength' => 1, - ], - 'CreatedTime' => [ - 'title' => '应用创建时间', - 'description' => '应用创建时间。', - 'type' => 'string', - 'required' => false, - 'example' => '2024-07-17T06:12:17Z', - ], - 'Description' => [ - 'title' => '应用描述', - 'description' => '应用描述。', - 'type' => 'string', - 'required' => false, - 'example' => 'my sae app', - 'maxLength' => 256, - ], - 'LastModifiedTime' => [ - 'title' => '应用最近一次修改时间', - 'description' => '应用最近一次修改时间。', - 'type' => 'string', - 'required' => false, - 'example' => '2024-07-17T06:12:18Z', - ], - 'NamespaceId' => [ - 'title' => '应用所属的命名空间ID', - 'description' => '应用所属的命名空间ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-beijing:test', - ], - 'RevisionConfig' => [ - 'title' => '应用修订版本上的配置', - 'description' => '应用修订版本上的配置。', - 'required' => false, - '$ref' => '#/components/schemas/RevisionConfig', - ], - 'InternetURL' => [ - 'title' => '应用公网访问URL', - 'description' => '应用公网访问URL。', - 'type' => 'string', - 'required' => false, - 'example' => 'https://****.cn-hangzhou.sae.run', - ], - 'IntranetURL' => [ - 'title' => '应用内网访问URL', - 'description' => '应用内网访问URL。', - 'type' => 'string', - 'required' => false, - 'example' => 'https://****.cn-hangzhou-vpc.sae.run', - ], - 'VpcId' => [ - 'title' => '应用命名空间的 VpcId', - 'description' => '应用命名空间的VPC ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'vpc-2ze0i263cnn311nvj****', - ], - 'WebScalingConfig' => [ - 'title' => '应用弹性伸缩配置', - 'description' => '应用弹性伸缩配置。', - 'required' => false, - '$ref' => '#/components/schemas/WebScalingConfig', - ], - 'WebTrafficConfig' => [ - 'title' => '应用流量配置', - 'description' => '应用流量配置。', - 'required' => false, - '$ref' => '#/components/schemas/WebTrafficConfig', - ], + 'ApplicationId' => ['title' => '应用ID', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****', 'maxLength' => 128, 'minLength' => 1], + 'ApplicationName' => ['title' => '应用名称', 'description' => '应用名称。', 'type' => 'string', 'required' => true, 'example' => 'sae-app', 'maxLength' => 128, 'minLength' => 1], + 'CreatedTime' => ['title' => '应用创建时间', 'description' => '应用创建时间。', 'type' => 'string', 'required' => false, 'example' => '2024-07-17T06:12:17Z'], + 'Description' => ['title' => '应用描述', 'description' => '应用描述。', 'type' => 'string', 'required' => false, 'example' => 'my sae app', 'maxLength' => 256], + 'LastModifiedTime' => ['title' => '应用最近一次修改时间', 'description' => '应用最近一次修改时间。', 'type' => 'string', 'required' => false, 'example' => '2024-07-17T06:12:18Z'], + 'NamespaceId' => ['title' => '应用所属的命名空间ID', 'description' => '应用所属的命名空间ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-beijing:test'], + 'RevisionConfig' => ['title' => '应用修订版本上的配置', 'description' => '应用修订版本上的配置。', 'required' => false, '$ref' => '#/components/schemas/RevisionConfig'], + 'InternetURL' => ['title' => '应用公网访问URL', 'description' => '应用公网访问URL。', 'type' => 'string', 'required' => false, 'example' => 'https://****.cn-hangzhou.sae.run'], + 'IntranetURL' => ['title' => '应用内网访问URL', 'description' => '应用内网访问URL。', 'type' => 'string', 'required' => false, 'example' => 'https://****.cn-hangzhou-vpc.sae.run'], + 'VpcId' => ['title' => '应用命名空间的 VpcId', 'description' => '应用命名空间的VPC ID。', 'type' => 'string', 'required' => false, 'example' => 'vpc-2ze0i263cnn311nvj****'], + 'WebScalingConfig' => ['title' => '应用弹性伸缩配置', 'description' => '应用弹性伸缩配置。', 'required' => false, '$ref' => '#/components/schemas/WebScalingConfig'], + 'WebTrafficConfig' => ['title' => '应用流量配置', 'description' => '应用流量配置。', 'required' => false, '$ref' => '#/components/schemas/WebTrafficConfig'], ], ], 'WebApplicationBody' => [ @@ -6238,52 +831,22 @@ 'description' => '返回信息。', 'type' => 'object', 'properties' => [ - 'Code' => [ - 'title' => 'HTTP 状态码', - 'description' => 'HTTP状态码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '200', - ], - 'Data' => [ - 'title' => '调用返回数据。', - 'description' => '调用返回数据。', - 'required' => false, - '$ref' => '#/components/schemas/WebApplication', - ], - 'Message' => [ - 'title' => '调用结果的附加信息。', - 'description' => '调用结果的附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回success。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'required' => false, - 'example' => 'success', - ], - 'RequestId' => [ - 'title' => '请求 ID。', - 'description' => '请求 ID。', - 'type' => 'string', - 'required' => false, - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Success' => [ - 'title' => '是否成功。', - 'description' => '是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:成功。'."\n" - .'- **false**:失败。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'Code' => ['title' => 'HTTP 状态码', 'description' => 'HTTP状态码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '200'], + 'Data' => ['title' => '调用返回数据。', 'description' => '调用返回数据。', 'required' => false, '$ref' => '#/components/schemas/WebApplication'], + 'Message' => ['title' => '调用结果的附加信息。', 'description' => '调用结果的附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回success。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'required' => false, 'example' => 'success'], + 'RequestId' => ['title' => '请求 ID。', 'description' => '请求 ID。', 'type' => 'string', 'required' => false, 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Success' => ['title' => '是否成功。', 'description' => '是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:成功。'."\n" + .'- **false**:失败。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], ], 'WebApplicationInstanceLogsBody' => [ @@ -6291,52 +854,22 @@ 'description' => '获取应用实例日志的响应信息。', 'type' => 'object', 'properties' => [ - 'Code' => [ - 'title' => 'HTTP 状态码', - 'description' => 'HTTP状态码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '200', - ], - 'Data' => [ - 'title' => '调用返回数据。', - 'description' => '调用返回数据。', - 'required' => false, - '$ref' => '#/components/schemas/DescribeInstanceLogsOutput', - ], - 'Message' => [ - 'title' => '调用结果的附加信息。', - 'description' => '调用结果的附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回success。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'required' => false, - 'example' => 'success', - ], - 'RequestId' => [ - 'title' => '请求 ID。', - 'description' => '请求ID。', - 'type' => 'string', - 'required' => false, - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Success' => [ - 'title' => '是否成功。', - 'description' => '是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:成功。'."\n" - .'- **false**:失败。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'Code' => ['title' => 'HTTP 状态码', 'description' => 'HTTP状态码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '200'], + 'Data' => ['title' => '调用返回数据。', 'description' => '调用返回数据。', 'required' => false, '$ref' => '#/components/schemas/DescribeInstanceLogsOutput'], + 'Message' => ['title' => '调用结果的附加信息。', 'description' => '调用结果的附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回success。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'required' => false, 'example' => 'success'], + 'RequestId' => ['title' => '请求 ID。', 'description' => '请求ID。', 'type' => 'string', 'required' => false, 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Success' => ['title' => '是否成功。', 'description' => '是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:成功。'."\n" + .'- **false**:失败。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], ], 'WebApplicationResourceStaticsBody' => [ @@ -6344,52 +877,22 @@ 'description' => '获取应用资源用量统计的响应信息。', 'type' => 'object', 'properties' => [ - 'Code' => [ - 'title' => 'HTTP 状态码', - 'description' => 'HTTP状态码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '200', - ], - 'Data' => [ - 'title' => '调用返回数据。', - 'description' => '调用返回数据。', - 'required' => false, - '$ref' => '#/components/schemas/DescribeWebAppStaticsOutput', - ], - 'Message' => [ - 'title' => '调用结果的附加信息。', - 'description' => '调用结果的附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回success。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'required' => false, - 'example' => 'success', - ], - 'RequestId' => [ - 'title' => '请求 ID。', - 'description' => '请求ID。', - 'type' => 'string', - 'required' => false, - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Success' => [ - 'title' => '是否成功。', - 'description' => '是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:成功。'."\n" - .'- **false**:失败。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'Code' => ['title' => 'HTTP 状态码', 'description' => 'HTTP状态码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '200'], + 'Data' => ['title' => '调用返回数据。', 'description' => '调用返回数据。', 'required' => false, '$ref' => '#/components/schemas/DescribeWebAppStaticsOutput'], + 'Message' => ['title' => '调用结果的附加信息。', 'description' => '调用结果的附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回success。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'required' => false, 'example' => 'success'], + 'RequestId' => ['title' => '请求 ID。', 'description' => '请求ID。', 'type' => 'string', 'required' => false, 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Success' => ['title' => '是否成功。', 'description' => '是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:成功。'."\n" + .'- **false**:失败。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], ], 'WebApplicationRevisionBody' => [ @@ -6397,41 +900,11 @@ 'description' => '返回信息。', 'type' => 'object', 'properties' => [ - 'Code' => [ - 'title' => 'HTTP 状态码', - 'description' => 'HTTP 状态码。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '200', - ], - 'Data' => [ - 'title' => '调用返回数据。', - 'description' => '调用返回数据。', - 'required' => false, - '$ref' => '#/components/schemas/Revision', - ], - 'Message' => [ - 'title' => '调用结果的附加信息。', - 'description' => '调用结果的附加信息。', - 'type' => 'string', - 'required' => false, - 'example' => 'success', - ], - 'RequestId' => [ - 'title' => '请求 ID。', - 'description' => '请求 ID。', - 'type' => 'string', - 'required' => false, - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Success' => [ - 'title' => '是否成功。', - 'description' => '是否成功。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'Code' => ['title' => 'HTTP 状态码', 'description' => 'HTTP 状态码。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '200'], + 'Data' => ['title' => '调用返回数据。', 'description' => '调用返回数据。', 'required' => false, '$ref' => '#/components/schemas/Revision'], + 'Message' => ['title' => '调用结果的附加信息。', 'description' => '调用结果的附加信息。', 'type' => 'string', 'required' => false, 'example' => 'success'], + 'RequestId' => ['title' => '请求 ID。', 'description' => '请求 ID。', 'type' => 'string', 'required' => false, 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Success' => ['title' => '是否成功。', 'description' => '是否成功。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], ], 'WebApplicationScalingConfigBody' => [ @@ -6439,52 +912,22 @@ 'description' => '获取弹性配置的响应信息。', 'type' => 'object', 'properties' => [ - 'Code' => [ - 'title' => 'HTTP 状态码', - 'description' => 'HTTP状态码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '200', - ], - 'Data' => [ - 'title' => '调用返回数据。', - 'description' => '调用返回数据。', - 'required' => false, - '$ref' => '#/components/schemas/WebScalingConfig', - ], - 'Message' => [ - 'title' => '调用结果的附加信息。', - 'description' => '调用结果的附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回success。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'required' => false, - 'example' => 'success', - ], - 'RequestId' => [ - 'title' => '请求 ID。', - 'description' => '请求 ID。', - 'type' => 'string', - 'required' => false, - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Success' => [ - 'title' => '是否成功。', - 'description' => '是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:成功。'."\n" - .'- **false**:失败。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'Code' => ['title' => 'HTTP 状态码', 'description' => 'HTTP状态码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '200'], + 'Data' => ['title' => '调用返回数据。', 'description' => '调用返回数据。', 'required' => false, '$ref' => '#/components/schemas/WebScalingConfig'], + 'Message' => ['title' => '调用结果的附加信息。', 'description' => '调用结果的附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回success。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'required' => false, 'example' => 'success'], + 'RequestId' => ['title' => '请求 ID。', 'description' => '请求 ID。', 'type' => 'string', 'required' => false, 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Success' => ['title' => '是否成功。', 'description' => '是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:成功。'."\n" + .'- **false**:失败。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], ], 'WebApplicationStatus' => [ @@ -6492,20 +935,8 @@ 'description' => '返回信息。', 'type' => 'object', 'properties' => [ - 'InstanceCount' => [ - 'title' => '应用实例数', - 'description' => '应用实例数。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '3', - ], - 'WebScalingConfig' => [ - 'title' => '应用弹性伸缩配置', - 'description' => '应用弹性伸缩配置。', - 'required' => false, - '$ref' => '#/components/schemas/WebScalingConfig', - ], + 'InstanceCount' => ['title' => '应用实例数', 'description' => '应用实例数。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '3'], + 'WebScalingConfig' => ['title' => '应用弹性伸缩配置', 'description' => '应用弹性伸缩配置。', 'required' => false, '$ref' => '#/components/schemas/WebScalingConfig'], ], ], 'WebApplicationTrafficConfigBody' => [ @@ -6513,52 +944,22 @@ 'description' => '获取流量配置的响应信息', 'type' => 'object', 'properties' => [ - 'Code' => [ - 'title' => 'HTTP 状态码', - 'description' => 'HTTP状态码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '200', - ], - 'Data' => [ - 'title' => '调用返回数据。', - 'description' => '调用返回数据。', - 'required' => false, - '$ref' => '#/components/schemas/WebTrafficConfig', - ], - 'Message' => [ - 'title' => '调用结果的附加信息。', - 'description' => '调用结果的附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回success。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'required' => false, - 'example' => 'success', - ], - 'RequestId' => [ - 'title' => '请求 ID。', - 'description' => '请求 ID。', - 'type' => 'string', - 'required' => false, - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Success' => [ - 'title' => '是否成功。', - 'description' => '是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:成功。'."\n" - .'- **false**:失败。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'Code' => ['title' => 'HTTP 状态码', 'description' => 'HTTP状态码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '200'], + 'Data' => ['title' => '调用返回数据。', 'description' => '调用返回数据。', 'required' => false, '$ref' => '#/components/schemas/WebTrafficConfig'], + 'Message' => ['title' => '调用结果的附加信息。', 'description' => '调用结果的附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回success。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'required' => false, 'example' => 'success'], + 'RequestId' => ['title' => '请求 ID。', 'description' => '请求 ID。', 'type' => 'string', 'required' => false, 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Success' => ['title' => '是否成功。', 'description' => '是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:成功。'."\n" + .'- **false**:失败。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], ], 'WebApplicationWithInstanceCount' => [ @@ -6566,19 +967,8 @@ 'description' => '返回信息。', 'type' => 'object', 'properties' => [ - 'WebApplication' => [ - 'title' => '应用信息', - 'description' => '应用信息。', - 'required' => false, - '$ref' => '#/components/schemas/WebApplication', - ], - 'InstanceCount' => [ - 'title' => '应用实例数', - 'description' => '应用实例数。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1', - ], + 'WebApplication' => ['title' => '应用信息', 'description' => '应用信息。', 'required' => false, '$ref' => '#/components/schemas/WebApplication'], + 'InstanceCount' => ['title' => '应用实例数', 'description' => '应用实例数。', 'type' => 'integer', 'format' => 'int64', 'example' => '1'], ], ], 'WebApplicationWithStatus' => [ @@ -6586,18 +976,8 @@ 'description' => '返回信息。', 'type' => 'object', 'properties' => [ - 'WebApplication' => [ - 'title' => '应用详情', - 'description' => '应用详情。', - 'required' => false, - '$ref' => '#/components/schemas/WebApplication', - ], - 'Status' => [ - 'title' => '应用状态', - 'description' => '应用状态。', - 'required' => false, - '$ref' => '#/components/schemas/WebApplicationStatus', - ], + 'WebApplication' => ['title' => '应用详情', 'description' => '应用详情。', 'required' => false, '$ref' => '#/components/schemas/WebApplication'], + 'Status' => ['title' => '应用状态', 'description' => '应用状态。', 'required' => false, '$ref' => '#/components/schemas/WebApplicationStatus'], ], ], 'WebCertConfig' => [ @@ -6605,34 +985,12 @@ 'description' => 'HTTPS证书的信息。', 'type' => 'object', 'properties' => [ - 'CertName' => [ - 'title' => 'TODO', - 'description' => '证书名称。', - 'type' => 'string', - 'required' => false, - 'example' => 'sae-certname', - 'maxLength' => 128, - 'minLength' => 1, - ], - 'Certificate' => [ - 'title' => 'TODO', - 'description' => '证书配对的公钥。', - 'type' => 'string', - 'required' => false, - 'example' => '-----BEGIN CERTIFICATE-----'."\n" - .' …… '."\n" - .'-----END CERTIFICATE-----', - 'maxLength' => 20480, - ], - 'PrivateKey' => [ - 'title' => 'TODO', - 'description' => '证书配对的私钥。', - 'type' => 'string', - 'required' => false, - 'example' => '-----BEGIN RSA PRIVATE KEY----- MIIEowIBAAKCAQEA5SIfpNCBoiDrZhX1H39CHwQMVD0kBNeBTWfP9xkeesvfzbOz ******* POVNFfDf9h7pJtQ5fRZNTYTDs/d+cH62Z3+nS74mNnEfff0nkvne '."\n" - .'-----END RSA PRIVATE KEY-----', - 'maxLength' => 4096, - ], + 'CertName' => ['title' => 'TODO', 'description' => '证书名称。', 'type' => 'string', 'required' => false, 'example' => 'sae-certname', 'maxLength' => 128, 'minLength' => 1], + 'Certificate' => ['title' => 'TODO', 'description' => '证书配对的公钥。', 'type' => 'string', 'required' => false, 'example' => '-----BEGIN CERTIFICATE-----'."\n" + .' …… '."\n" + .'-----END CERTIFICATE-----', 'maxLength' => 20480], + 'PrivateKey' => ['title' => 'TODO', 'description' => '证书配对的私钥。', 'type' => 'string', 'required' => false, 'example' => '-----BEGIN RSA PRIVATE KEY----- MIIEowIBAAKCAQEA5SIfpNCBoiDrZhX1H39CHwQMVD0kBNeBTWfP9xkeesvfzbOz ******* POVNFfDf9h7pJtQ5fRZNTYTDs/d+cH62Z3+nS74mNnEfff0nkvne '."\n" + .'-----END RSA PRIVATE KEY-----', 'maxLength' => 4096], ], ], 'WebCustomDomain' => [ @@ -6640,78 +998,17 @@ 'description' => '自定义域名信息。', 'type' => 'object', 'properties' => [ - 'accountId' => [ - 'title' => '您的阿里云账号(主账号)ID', - 'description' => '您的阿里云账号(主账号)ID', - 'type' => 'string', - 'required' => false, - 'example' => '123xxxxxx', - ], - 'WebCertConfig' => [ - 'title' => 'HTTPS证书的信息。', - 'description' => 'HTTPS证书的信息。', - 'required' => false, - '$ref' => '#/components/schemas/WebCertConfig', - ], - 'CreatedTime' => [ - 'title' => '自定义域名的创建时间。', - 'description' => '自定义域名的创建时间。', - 'type' => 'string', - 'required' => false, - 'example' => '2023-03-30T08:02:19Z', - ], - 'DefaultForwardingAppName' => [ - 'title' => '域名默认转发的应用名', - 'description' => '域名默认转发的应用名。', - 'type' => 'string', - 'required' => false, - 'example' => 'appxxxxx', - ], - 'DomainName' => [ - 'title' => '域名。', - 'description' => '域名。', - 'type' => 'string', - 'required' => false, - 'example' => 'example.com', - ], - 'LastModifiedTime' => [ - 'title' => '自定义域名上一次被更新的时间。', - 'description' => '自定义域名上一次被更新的时间。', - 'type' => 'string', - 'required' => false, - 'example' => '2023-03-30T08:02:19Z', - ], - 'NamespaceId' => [ - 'title' => '域名所在的命名空间ID', - 'description' => '域名所在的命名空间ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-chengdu', - ], - 'Protocol' => [ - 'title' => '域名支持的协议类型。HTTP:仅支持HTTP协议。HTTPS:仅支持HTTPS协议。HTTP,HTTPS:支持HTTP及HTTPS协议。', - 'description' => '域名支持的协议类型。HTTP:仅支持HTTP协议。HTTPS:仅支持HTTPS协议。HTTP,HTTPS:支持HTTP及HTTPS协议。', - 'type' => 'string', - 'required' => false, - 'example' => 'HTTP', - ], - 'WebTLSConfig' => [ - 'title' => 'TLS配置信息。', - 'description' => 'TLS配置信息。', - 'required' => false, - '$ref' => '#/components/schemas/WebTLSConfig', - ], - 'WebWAFConfig' => [ - 'title' => 'Web应用防火墙配置信息。', - 'description' => 'Web应用防火墙配置信息。', - 'required' => false, - '$ref' => '#/components/schemas/WebWAFConfig', - ], - 'RouteConfig' => [ - 'title' => '路由配置', - 'description' => '路由配置', - '$ref' => '#/components/schemas/RouteConfig', - ], + 'accountId' => ['title' => '您的阿里云账号(主账号)ID', 'description' => '您的阿里云账号(主账号)ID', 'type' => 'string', 'required' => false, 'example' => '123xxxxxx'], + 'WebCertConfig' => ['title' => 'HTTPS证书的信息。', 'description' => 'HTTPS证书的信息。', 'required' => false, '$ref' => '#/components/schemas/WebCertConfig'], + 'CreatedTime' => ['title' => '自定义域名的创建时间。', 'description' => '自定义域名的创建时间。', 'type' => 'string', 'required' => false, 'example' => '2023-03-30T08:02:19Z'], + 'DefaultForwardingAppName' => ['title' => '域名默认转发的应用名', 'description' => '域名默认转发的应用名。', 'type' => 'string', 'required' => false, 'example' => 'appxxxxx'], + 'DomainName' => ['title' => '域名。', 'description' => '域名。', 'type' => 'string', 'required' => false, 'example' => 'example.com'], + 'LastModifiedTime' => ['title' => '自定义域名上一次被更新的时间。', 'description' => '自定义域名上一次被更新的时间。', 'type' => 'string', 'required' => false, 'example' => '2023-03-30T08:02:19Z'], + 'NamespaceId' => ['title' => '域名所在的命名空间ID', 'description' => '域名所在的命名空间ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-chengdu'], + 'Protocol' => ['title' => '域名支持的协议类型。HTTP:仅支持HTTP协议。HTTPS:仅支持HTTPS协议。HTTP,HTTPS:支持HTTP及HTTPS协议。', 'description' => '域名支持的协议类型。HTTP:仅支持HTTP协议。HTTPS:仅支持HTTPS协议。HTTP,HTTPS:支持HTTP及HTTPS协议。', 'type' => 'string', 'required' => false, 'example' => 'HTTP'], + 'WebTLSConfig' => ['title' => 'TLS配置信息。', 'description' => 'TLS配置信息。', 'required' => false, '$ref' => '#/components/schemas/WebTLSConfig'], + 'WebWAFConfig' => ['title' => 'Web应用防火墙配置信息。', 'description' => 'Web应用防火墙配置信息。', 'required' => false, '$ref' => '#/components/schemas/WebWAFConfig'], + 'RouteConfig' => ['title' => '路由配置', 'description' => '路由配置', '$ref' => '#/components/schemas/RouteConfig'], ], ], 'WebCustomDomainBody' => [ @@ -6719,52 +1016,22 @@ 'description' => '返回信息。', 'type' => 'object', 'properties' => [ - 'Code' => [ - 'title' => 'HTTP 状态码', - 'description' => 'HTTP状态码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '200', - ], - 'Data' => [ - 'title' => '调用返回数据。', - 'description' => '调用返回数据。', - 'required' => false, - '$ref' => '#/components/schemas/WebCustomDomain', - ], - 'Message' => [ - 'title' => '调用结果的附加信息。', - 'description' => '调用结果的附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回success。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'required' => false, - 'example' => 'success', - ], - 'RequestId' => [ - 'title' => '请求 ID。', - 'description' => '请求ID。', - 'type' => 'string', - 'required' => false, - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Success' => [ - 'title' => '是否成功。', - 'description' => '是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:成功。'."\n" - .'- **false**:失败。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'Code' => ['title' => 'HTTP 状态码', 'description' => 'HTTP状态码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '200'], + 'Data' => ['title' => '调用返回数据。', 'description' => '调用返回数据。', 'required' => false, '$ref' => '#/components/schemas/WebCustomDomain'], + 'Message' => ['title' => '调用结果的附加信息。', 'description' => '调用结果的附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回success。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'required' => false, 'example' => 'success'], + 'RequestId' => ['title' => '请求 ID。', 'description' => '请求ID。', 'type' => 'string', 'required' => false, 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Success' => ['title' => '是否成功。', 'description' => '是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:成功。'."\n" + .'- **false**:失败。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], ], 'WebInstanceInfo' => [ @@ -6772,32 +1039,10 @@ 'description' => '返回信息。', 'type' => 'object', 'properties' => [ - 'InstanceId' => [ - 'title' => '应用实例ID', - 'description' => '应用实例ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'c-66691780-1522405d-3021e1******', - ], - 'VersionId' => [ - 'title' => '应用版本ID', - 'description' => '应用版本ID。', - 'type' => 'string', - 'required' => false, - 'example' => '1', - ], - 'ImageUrl' => [ - 'title' => '实例的镜像', - 'description' => '实例的镜像。', - 'type' => 'string', - 'example' => 'registry.cn-hangzhou.aliyuncs.com/sae_test/******:0.0.1', - ], - 'Status' => [ - 'title' => '实例状态', - 'description' => '实例状态。', - 'type' => 'string', - 'example' => 'Idle', - ], + 'InstanceId' => ['title' => '应用实例ID', 'description' => '应用实例ID。', 'type' => 'string', 'required' => false, 'example' => 'c-66691780-1522405d-3021e1******'], + 'VersionId' => ['title' => '应用版本ID', 'description' => '应用版本ID。', 'type' => 'string', 'required' => false, 'example' => '1'], + 'ImageUrl' => ['title' => '实例的镜像', 'description' => '实例的镜像。', 'type' => 'string', 'example' => 'registry.cn-hangzhou.aliyuncs.com/sae_test/******:0.0.1'], + 'Status' => ['title' => '实例状态', 'description' => '实例状态。', 'type' => 'string', 'example' => 'Idle'], ], ], 'WebLogEntry' => [ @@ -6805,16 +1050,10 @@ 'description' => '返回信息。', 'type' => 'object', 'properties' => [ - 'Message' => [ - 'title' => 'TODO', - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回success。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'required' => false, - 'example' => 'success', - ], + 'Message' => ['title' => 'TODO', 'description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回success。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'required' => false, 'example' => 'success'], ], ], 'WebNASConfig' => [ @@ -6825,11 +1064,7 @@ 'title' => 'mountPoints', 'description' => '挂载点。', 'type' => 'array', - 'items' => [ - 'description' => '挂载点信息集合。', - 'required' => false, - '$ref' => '#/components/schemas/WebNASMountPoint', - ], + 'items' => ['description' => '挂载点信息集合。', 'required' => false, '$ref' => '#/components/schemas/WebNASMountPoint'], 'required' => false, 'maxItems' => 5, ], @@ -6840,28 +1075,9 @@ 'description' => '挂载信息。', 'type' => 'object', 'properties' => [ - 'MountDir' => [ - 'title' => '挂载到容器内路径', - 'description' => '本地挂载目录。', - 'type' => 'string', - 'required' => false, - 'example' => '/test/consumer/log', - 'maxLength' => 64, - ], - 'NasAddr' => [ - 'title' => '挂载点', - 'description' => '挂载点。', - 'type' => 'string', - 'required' => false, - 'example' => '/home', - 'maxLength' => 128, - ], - 'NasPath' => [ - 'title' => '挂载目录', - 'description' => '挂载目录', - 'type' => 'string', - 'example' => '/', - ], + 'MountDir' => ['title' => '挂载到容器内路径', 'description' => '本地挂载目录。', 'type' => 'string', 'required' => false, 'example' => '/test/consumer/log', 'maxLength' => 64], + 'NasAddr' => ['title' => '挂载点', 'description' => '挂载点。', 'type' => 'string', 'required' => false, 'example' => '/home', 'maxLength' => 128], + 'NasPath' => ['title' => '挂载目录', 'description' => '挂载目录', 'type' => 'string', 'example' => '/'], ], ], 'WebNetworkConfig' => [ @@ -6869,33 +1085,16 @@ 'description' => '网络配置。', 'type' => 'object', 'properties' => [ - 'InternetAccess' => [ - 'title' => '是否开启公网访问', - 'description' => '是否开启公网访问。取值:'."\n" - ."\n" - .'- **true**:开启公网访问。'."\n" - .'- **false**:关闭公网访问。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], - 'SecurityGroupId' => [ - 'title' => '安全组ID', - 'description' => '安全组ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'sg-bp18hj1wtxgy3b0***', - 'maxLength' => 50, - ], + 'InternetAccess' => ['title' => '是否开启公网访问', 'description' => '是否开启公网访问。取值:'."\n" + ."\n" + .'- **true**:开启公网访问。'."\n" + .'- **false**:关闭公网访问。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], + 'SecurityGroupId' => ['title' => '安全组ID', 'description' => '安全组ID。', 'type' => 'string', 'required' => false, 'example' => 'sg-bp18hj1wtxgy3b0***', 'maxLength' => 50], 'VSwitchIds' => [ 'title' => '交换机列表', 'description' => '交换机列表。', 'type' => 'array', - 'items' => [ - 'description' => '交换机ID列表。', - 'type' => 'string', - 'example' => 'vsw-bp1ozpcrdc6r****', - ], + 'items' => ['description' => '交换机ID列表。', 'type' => 'string', 'example' => 'vsw-bp1ozpcrdc6r****'], 'required' => false, 'maxItems' => 10, ], @@ -6910,11 +1109,7 @@ 'title' => 'TODO', 'description' => '挂载点。', 'type' => 'array', - 'items' => [ - 'description' => '挂载点信息集合。', - 'required' => false, - '$ref' => '#/components/schemas/WebOSSMountPoint', - ], + 'items' => ['description' => '挂载点信息集合。', 'required' => false, '$ref' => '#/components/schemas/WebOSSMountPoint'], 'required' => false, 'maxItems' => 5, ], @@ -6925,39 +1120,10 @@ 'description' => '挂载点信息集合。', 'type' => 'object', 'properties' => [ - 'BucketName' => [ - 'title' => 'TODO', - 'description' => 'Bucket名称。', - 'type' => 'string', - 'required' => false, - 'example' => 'gcx-pic-test', - 'maxLength' => 64, - 'minLength' => 3, - ], - 'BucketPath' => [ - 'title' => 'TODO', - 'description' => 'OSS Bucket存储路径。', - 'type' => 'string', - 'required' => false, - 'example' => 'billing-2023-11-06_17:30:18-rn7wG8', - 'maxLength' => 128, - ], - 'MountDir' => [ - 'title' => 'TODO', - 'description' => '本地挂载目录。', - 'type' => 'string', - 'required' => false, - 'example' => '/k8s-prod/oms-api-yy-prod/log', - 'maxLength' => 64, - 'minLength' => 2, - ], - 'ReadOnly' => [ - 'title' => 'TODO', - 'description' => '是否只读。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'BucketName' => ['title' => 'TODO', 'description' => 'Bucket名称。', 'type' => 'string', 'required' => false, 'example' => 'gcx-pic-test', 'maxLength' => 64, 'minLength' => 3], + 'BucketPath' => ['title' => 'TODO', 'description' => 'OSS Bucket存储路径。', 'type' => 'string', 'required' => false, 'example' => 'billing-2023-11-06_17:30:18-rn7wG8', 'maxLength' => 128], + 'MountDir' => ['title' => 'TODO', 'description' => '本地挂载目录。', 'type' => 'string', 'required' => false, 'example' => '/k8s-prod/oms-api-yy-prod/log', 'maxLength' => 64, 'minLength' => 2], + 'ReadOnly' => ['title' => 'TODO', 'description' => '是否只读。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], ], 'WebScalingConfig' => [ @@ -6965,22 +1131,8 @@ 'description' => '弹性配置信息。', 'type' => 'object', 'properties' => [ - 'MaximumInstanceCount' => [ - 'title' => '最大实例数', - 'description' => '最大实例数。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '10', - ], - 'MinimumInstanceCount' => [ - 'title' => '最小实例数', - 'description' => '最小实例数。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '1', - ], + 'MaximumInstanceCount' => ['title' => '最大实例数', 'description' => '最大实例数。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '10'], + 'MinimumInstanceCount' => ['title' => '最小实例数', 'description' => '最小实例数。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1'], ], ], 'WebStaticsInfo' => [ @@ -6988,38 +1140,10 @@ 'description' => '返回信息。', 'type' => 'object', 'properties' => [ - 'CpuUsage' => [ - 'title' => 'TODO', - 'description' => 'CPU使用量。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '1327', - ], - 'Invocations' => [ - 'title' => '调用次数', - 'description' => '调用次数。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '2', - ], - 'InternetTrafficOut' => [ - 'title' => 'TODO', - 'description' => '出站流量。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '2792', - ], - 'MemoryUsage' => [ - 'title' => 'TODO', - 'description' => '查询内存使用峰值。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '5045929297920', - ], + 'CpuUsage' => ['title' => 'TODO', 'description' => 'CPU使用量。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1327'], + 'Invocations' => ['title' => '调用次数', 'description' => '调用次数。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '2'], + 'InternetTrafficOut' => ['title' => 'TODO', 'description' => '出站流量。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '2792'], + 'MemoryUsage' => ['title' => 'TODO', 'description' => '查询内存使用峰值。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '5045929297920'], ], ], 'WebTLSConfig' => [ @@ -7031,28 +1155,11 @@ 'title' => 'TODO', 'description' => '服务器支持的加密套件列表。', 'type' => 'array', - 'items' => [ - 'description' => 'TLS 加密套件列表。', - 'type' => 'string', - 'required' => false, - 'example' => 'TLS_RSA_WITH_RC4_128_SHA', - ], + 'items' => ['description' => 'TLS 加密套件列表。', 'type' => 'string', 'required' => false, 'example' => 'TLS_RSA_WITH_RC4_128_SHA'], 'required' => false, ], - 'MaxVersion' => [ - 'title' => 'TODO', - 'description' => '服务器接受的最大TLS协议版本。', - 'type' => 'string', - 'required' => false, - 'example' => 'TLSv1.3', - ], - 'MinVersion' => [ - 'title' => 'TODO', - 'description' => '服务器接受的最低TLS协议版本。', - 'type' => 'string', - 'required' => false, - 'example' => 'TLSv1.0', - ], + 'MaxVersion' => ['title' => 'TODO', 'description' => '服务器接受的最大TLS协议版本。', 'type' => 'string', 'required' => false, 'example' => 'TLSv1.3'], + 'MinVersion' => ['title' => 'TODO', 'description' => '服务器接受的最低TLS协议版本。', 'type' => 'string', 'required' => false, 'example' => 'TLSv1.0'], ], ], 'WebTrafficConfig' => [ @@ -7060,41 +1167,19 @@ 'description' => '流量配置信息。', 'type' => 'object', 'properties' => [ - 'WebAclConfig' => [ - 'title' => 'IP ACL 白名单配置', - 'description' => 'IP ACL 白名单配置。', - 'required' => false, - '$ref' => '#/components/schemas/WebAclConfig', - ], - 'AuthType' => [ - 'title' => '认证类型。Anonymous:表示不需要认证,默认值。Application:表示需要认证。', - 'description' => '认证类型,包含如下两种类型:'."\n" - .'- **Anonymous**:表示不需要认证。'."\n" - .'- **Application**:表示需要认证。'."\n" - .'> 默认类型为**Anonymous**。', - 'type' => 'string', - 'required' => false, - 'example' => 'Anonymous', - ], - 'DisableInternetURL' => [ - 'title' => '禁用默认公网域名访问的开关。设置为true时,访问应用默认提供的公网URL地址会返回403错误。设置为false时,不会有任何影响。', - 'description' => '禁用默认公网域名访问的开关。设置为true时,访问应用默认提供的公网URL地址会返回403错误。设置为false时,不会有任何影响。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'WebAclConfig' => ['title' => 'IP ACL 白名单配置', 'description' => 'IP ACL 白名单配置。', 'required' => false, '$ref' => '#/components/schemas/WebAclConfig'], + 'AuthType' => ['title' => '认证类型。Anonymous:表示不需要认证,默认值。Application:表示需要认证。', 'description' => '认证类型,包含如下两种类型:'."\n" + .'- **Anonymous**:表示不需要认证。'."\n" + .'- **Application**:表示需要认证。'."\n" + .'> 默认类型为**Anonymous**。', 'type' => 'string', 'required' => false, 'example' => 'Anonymous'], + 'DisableInternetURL' => ['title' => '禁用默认公网域名访问的开关。设置为true时,访问应用默认提供的公网URL地址会返回403错误。设置为false时,不会有任何影响。', 'description' => '禁用默认公网域名访问的开关。设置为true时,访问应用默认提供的公网URL地址会返回403错误。设置为false时,不会有任何影响。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], 'RevisionsTrafficWeight' => [ 'title' => '应用版本流量比例,所有版本流量百分比之和必须等于 100%', 'description' => '应用版本流量比例,所有版本流量百分比之和必须等于100%。', 'type' => 'object', 'required' => false, - 'additionalProperties' => [ - 'description' => '版本流量。流量取值范围:0~1。', - 'type' => 'number', - 'format' => 'float', - 'example' => '001:0.5'."\n" - .'002:0.5', - ], + 'additionalProperties' => ['description' => '版本流量。流量取值范围:0~1。', 'type' => 'number', 'format' => 'float', 'example' => '001:0.5'."\n" + .'002:0.5'], ], ], ], @@ -7102,24 +1187,14 @@ 'description' => '返回信息。', 'type' => 'object', 'properties' => [ - 'ErrorMessage' => [ - 'title' => 'errorMessage', - 'description' => '应用执行的报错信息。如果执行成功,返回信息为空值。', - 'type' => 'string', - 'example' => '空', - ], - 'Status' => [ - 'title' => 'status', - 'description' => '阶段的状态,取值说明如下:'."\n" - ."\n" - .'- **Completed**:表示运行成功。'."\n" - ."\n" - .'- **Updating**:表示正在更新中。'."\n" - ."\n" - .'- **Updating**:表示执行失败,并且返回一个非空的ErrorMessage。', - 'type' => 'string', - 'example' => 'Completed', - ], + 'ErrorMessage' => ['title' => 'errorMessage', 'description' => '应用执行的报错信息。如果执行成功,返回信息为空值。', 'type' => 'string', 'example' => '空'], + 'Status' => ['title' => 'status', 'description' => '阶段的状态,取值说明如下:'."\n" + ."\n" + .'- **Completed**:表示运行成功。'."\n" + ."\n" + .'- **Updating**:表示正在更新中。'."\n" + ."\n" + .'- **Updating**:表示执行失败,并且返回一个非空的ErrorMessage。', 'type' => 'string', 'example' => 'Completed'], ], ], 'WebWAFConfig' => [ @@ -7127,168 +1202,125 @@ 'description' => '返回信息。', 'type' => 'object', 'properties' => [ - 'EnableWAF' => [ - 'title' => 'TODO', - 'description' => '是否启用Web应用防火墙。取值说明如下:'."\n" - ."\n" - .'- **true**:开启。'."\n" - .'- **false**:关闭。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'EnableWAF' => ['title' => 'TODO', 'description' => '是否启用Web应用防火墙。取值说明如下:'."\n" + ."\n" + .'- **true**:开启。'."\n" + .'- **false**:关闭。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], ], ], ], 'apis' => [ - 'OpenSaeService' => [ - 'path' => '/service/open', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'AbortAndRollbackChangeOrder' => [ + 'path' => '/pop/v1/sam/changeorder/AbortAndRollbackChangeOrder', + 'methods' => ['put'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], - [ - 'APP' => [], - ], - [ - 'PrivateKey' => [], - ], - [ - 'BearerToken' => [], - ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'none', - 'abilityTreeCode' => '20152', - 'abilityTreeNodes' => [ - 'FEATUREsaeD9PL61', + 'abilityTreeCode' => '6291', + 'abilityTreeNodes' => ['FEATUREsaeD9PL61'], + ], + 'parameters' => [ + [ + 'name' => 'ChangeOrderId', + 'in' => 'query', + 'schema' => ['description' => '变更单ID。', 'type' => 'string', 'required' => true, 'example' => 'ba386059-69b1-4e65-b1e5-0682d9fa****'], ], ], - 'parameters' => [], 'responses' => [ 200 => [ 'schema' => [ + 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '559B4247-C41C-4D9E-B866-B55D378B****', - ], - 'OrderId' => [ - 'description' => '订单ID。', - 'type' => 'string', - 'example' => '20485646575****', + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '调用结果的附加信息。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], + 'Data' => [ + 'description' => '变更单信息。', + 'type' => 'object', + 'properties' => [ + 'ChangeOrderId' => ['description' => '变更单ID。', 'type' => 'string', 'example' => 'ba386059-69b1-4e65-b1e5-0682d9fa****'], + ], ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string', 'example' => 'success'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '终止变更单是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:终止成功。'."\n" + .'- **false**:终止失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'ORDER.OPEND', - 'errorMessage' => 'order opend.', - ], - [ - 'errorCode' => 'Pay.Insufficient.Balance', - 'errorMessage' => 'pay insufficient balance', + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'Resouce.no.permission', 'errorMessage' => 'You are not authorized to operate on the specified resources.', 'description' => '没有权限操作资源。'], + ['errorCode' => 'InvalidChangeOrder.NotFound', 'errorMessage' => 'The current change order does not exist.', 'description' => '变更单不存在。'], + ['errorCode' => 'Application.ChangerOrder.Not.Running', 'errorMessage' => 'The change order is not running and cannot be terminated.', 'description' => '变更单不在运行中,不能进行中止操作。'], + ['errorCode' => 'System.Upgrading', 'errorMessage' => 'The system is being upgraded. Please try again later.', 'description' => '系统正在升级,请稍后操作。'], + ['errorCode' => 'Application.ChangerOrderRunning', 'errorMessage' => 'An application change process is in progress. Please try again later.', 'description' => '应用有变更流程正在执行,请稍后重试。'], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"ChangeOrderId\\": \\"ba386059-69b1-4e65-b1e5-0682d9fa****\\"\\n },\\n \\"ErrorCode\\": \\"success\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<AbortAndRollbackChangeOrderResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <ChangeOrderId>ba386059-69b1-4e65-b1e5-0682d9fa****</ChangeOrderId>\\n </Data>\\n <ErrorCode>success</ErrorCode>\\n <Code>200</Code>\\n <Success>true</Success>\\n</AbortAndRollbackChangeOrderResponse>","errorExample":""}]', + 'title' => '中止或回滚变更单', + 'summary' => '调用AbortAndRollbackChangeOrder接口终止或回滚变更单。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => '', + 'ramAction' => [ + 'action' => 'sae:AbortAndRollbackChangeOrder', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"559B4247-C41C-4D9E-B866-B55D378B****\\",\\n \\"OrderId\\": \\"20485646575****\\"\\n}","errorExample":""},{"type":"xml","example":"<OpenSaeServiceResponse>\\n <RequestId>559B4247-C41C-4D9E-B866-B55D378B****</RequestId>\\n <OrderId>20485646575****</OrderId>\\n</OpenSaeServiceResponse>","errorExample":""}]', - 'title' => 'OpenSaeService', - 'summary' => '免费开通SAE服务。', - 'description' => '> 请确保您的账号余额大于0,否则,无法开通SAE服务。', ], - 'CreateNamespace' => [ - 'path' => '/pop/v1/paas/namespace', - 'methods' => [ - 'post', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'AbortChangeOrder' => [ + 'path' => '/pop/v1/sam/changeorder/AbortChangeOrder', + 'methods' => ['put'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'create', - 'abilityTreeCode' => '6307', - 'abilityTreeNodes' => [ - 'FEATUREsaeD9PL61', - ], + 'operationType' => 'update', + 'abilityTreeCode' => '6292', + 'abilityTreeNodes' => ['FEATUREsaeRVPNSA'], ], 'parameters' => [ [ - 'name' => 'NamespaceId', - 'in' => 'query', - 'schema' => [ - 'description' => '长版命名空间ID。如果设置了该参数会继续生效而忽略NameSpaceShortId,为了兼容保留,推荐使用短版命名空间ID;格式为`<RegionId>:<NamespaceId>`,`NamespaceId`仅允许小写英文字母和数字,例如`cn-beijing:test`,不超过32个字符。SAE支持的**RegionId**,请参见[DescribeRegions](~~126213~~)。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-beijing:test', - ], - ], - [ - 'name' => 'NamespaceName', - 'in' => 'query', - 'schema' => [ - 'description' => '命名空间名称。不超过64个字符。', - 'type' => 'string', - 'required' => true, - 'example' => 'name', - ], - ], - [ - 'name' => 'NamespaceDescription', - 'in' => 'query', - 'schema' => [ - 'description' => '命名空间描述信息,不超过100个字符。', - 'type' => 'string', - 'required' => false, - 'example' => 'desc', - ], - ], - [ - 'name' => 'NameSpaceShortId', + 'name' => 'ChangeOrderId', 'in' => 'query', - 'schema' => [ - 'description' => '短版命名空间ID,不需要带上region,推荐;不超过20个字符,仅允许小写英文字母和数字。'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'test', - ], + 'schema' => ['description' => '变更单ID。', 'type' => 'string', 'required' => true, 'example' => 'be2e1c76-682b-4897-98d3-1d8d6478****'], ], [ - 'name' => 'EnableMicroRegistration', + 'name' => 'Rollback', 'in' => 'query', - 'schema' => [ - 'description' => '是否启用SAE内置注册中心:'."\n" - .'- **true**'."\n" - .'- **false**'."\n" - ."\n" - .'默认为true,若不使用内置注册中心,填false可加快命名空间创建速度。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'schema' => ['description' => '是否回滚', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], ], 'responses' => [ @@ -7297,422 +1329,197 @@ 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '调用结果的附加信息。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a981dd515966966104121683d****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '调用结果的附加信息。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], 'Data' => [ - 'description' => '命名空间信息。', + 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'NamespaceDescription' => [ - 'description' => '命名空间描述信息。', - 'type' => 'string', - 'example' => 'desc', - ], - 'NamespaceId' => [ - 'description' => '命名空间ID。', - 'type' => 'string', - 'example' => 'cn-beijing:test', - ], - 'NamespaceName' => [ - 'description' => '命名空间名称。', - 'type' => 'string', - 'example' => 'name', - ], - 'RegionId' => [ - 'description' => '命名空间所在地域。', - 'type' => 'string', - 'example' => 'cn-beijing', - ], - 'NameSpaceShortId' => [ - 'description' => '短版命名空间ID。', - 'type' => 'string', - 'example' => 'test', - ], - 'EnableMicroRegistration' => [ - 'description' => '是否已启用SAE内置注册中心:'."\n" - .'- **true**'."\n" - .'- **false**', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ChangeOrderId' => ['description' => '变更单ID。', 'type' => 'string', 'example' => 'be2e1c76-682b-4897-98d3-1d8d6478****'], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '创建命名空间是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:创建成功。'."\n" - .'- **false**:创建失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '终止变更单是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:终止成功。'."\n" + .'- **false**:终止失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InstanceExist.NamespaceId', - 'errorMessage' => 'The specified namespace ID already exists.', - ], - [ - 'errorCode' => 'InvalidNamespace.WithUppercase', - 'errorMessage' => 'This namespace does not support creating SAE apps because it contains uppercase letters.', - ], - [ - 'errorCode' => 'InvalidNamespaceId.Format', - 'errorMessage' => 'The specified NamespaceId is invalid.', - ], - [ - 'errorCode' => 'InvalidNamespaceIdSuffix.Format', - 'errorMessage' => 'The specified NamespaceId is invalid. NamespaceId can only contain alphabetical letters or numbers.', - ], - [ - 'errorCode' => 'InvalidNamespaceName.Format', - 'errorMessage' => 'The specified NamespaceName is invalid. The name of the namespace cannot exceed 63 characters in length.', - ], - [ - 'errorCode' => 'InvalidOperation.NamespaceClusterNotDeleted', - 'errorMessage' => 'The specified NamespaceId contains clusters.', - ], - [ - 'errorCode' => 'Namespace.AppExists', - 'errorMessage' => 'Please delete the application first.', - ], - [ - 'errorCode' => 'System.Upgrading', - 'errorMessage' => 'The system is being upgraded. Please try again later.', - ], - [ - 'errorCode' => 'Exceed.Namespace', - 'errorMessage' => 'Too many namespaces have been created.', - ], + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'Resouce.no.permission', 'errorMessage' => 'You are not authorized to operate on the specified resources.', 'description' => '没有权限操作资源。'], + ['errorCode' => 'Application.ChangerOrder.Not.Running', 'errorMessage' => 'The change order is not running and cannot be terminated.', 'description' => '变更单不在运行中,不能进行中止操作。'], + ['errorCode' => 'Application.ChangerOrderRunning', 'errorMessage' => 'An application change process is in progress. Please try again later.', 'description' => '应用有变更流程正在执行,请稍后重试。'], ], - 500 => [ - [ - 'errorCode' => 'OperationFailed.DauthHttpRequest', - 'errorMessage' => 'request dauth failed.', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"ChangeOrderId\\": \\"be2e1c76-682b-4897-98d3-1d8d6478****\\"\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<AbortChangeOrderResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <ChangeOrderId>be2e1c76-682b-4897-98d3-1d8d6478****</ChangeOrderId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</AbortChangeOrderResponse>","errorExample":""}]', + 'title' => '中止变更单', + 'summary' => '调用AbortChangeOrder接口终止变更单。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:25.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-05-19T10:45:25.000Z', 'description' => '请求参数发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'AbortChangeOrder'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'sae:AbortChangeOrder', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a981dd515966966104121683d****\\",\\n \\"Data\\": {\\n \\"NamespaceDescription\\": \\"desc\\",\\n \\"NamespaceId\\": \\"cn-beijing:test\\",\\n \\"NamespaceName\\": \\"name\\",\\n \\"RegionId\\": \\"cn-beijing\\",\\n \\"NameSpaceShortId\\": \\"test\\",\\n \\"EnableMicroRegistration\\": true\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<CreateNamespaceResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a981dd515966966104121683d****</TraceId>\\n <Data>\\n <NamespaceDescription>desc</NamespaceDescription>\\n <NamespaceId>cn-beijing:test</NamespaceId>\\n <NamespaceName>name</NamespaceName>\\n <RegionId>cn-beijing</RegionId>\\n <NameSpaceShortId>test</NameSpaceShortId>\\n <EnableMicroRegistration>true</EnableMicroRegistration>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</CreateNamespaceResponse>","errorExample":""}]', - 'title' => '创建命名空间', - 'summary' => '创建命名空间', ], - 'CreateIngress' => [ - 'path' => '/pop/v1/sam/ingress/Ingress', - 'methods' => [ - 'post', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'BatchRestartApplications' => [ + 'summary' => '批量重启应用', + 'path' => '/pop/v1/sam/app/batchRestartApplications', + 'methods' => ['put'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'create', - 'abilityTreeCode' => '6306', - 'abilityTreeNodes' => [ - 'FEATUREsaeBRTWZ3', - ], + 'operationType' => 'none', + 'abilityTreeCode' => '285072', + 'abilityTreeNodes' => ['FEATUREsaeRVPNSA'], ], 'parameters' => [ [ 'name' => 'NamespaceId', 'in' => 'query', - 'schema' => [ - 'description' => '应用所在命名空间ID,目前不支持跨命名空间的应用。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-beijing:sae-test', - ], - ], - [ - 'name' => 'Description', - 'in' => 'query', - 'schema' => [ - 'description' => '路由规则名称。', - 'type' => 'string', - 'required' => false, - 'example' => 'ingress-for-sae-test', - ], - ], - [ - 'name' => 'SlbId', - 'in' => 'query', - 'schema' => [ - 'description' => '路由规则所使用的SLB实例ID。'."\n" - ."\n" - .'> 负载均衡SLB包括CLB实例和ALB实例。', - 'type' => 'string', - 'required' => false, - 'example' => 'lb-uf6hucc7inlqrtcq5****', - ], - ], - [ - 'name' => 'ListenerPort', - 'in' => 'query', - 'schema' => [ - 'description' => 'SLB监听端口,该端口不能被占用。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => true, - 'example' => '80', - ], - ], - [ - 'name' => 'CertId', - 'in' => 'query', - 'schema' => [ - 'description' => '**CLB**证书ID。取值说明如下:'."\n" - ."\n" - .'- **LoadBalanceType**为**clb**时,使用该字段来配置HTTPS监听证书。'."\n" - ."\n" - .'CLB使用SSL证书ID的更多信息,请参见[管理证书(CLB)](~~90792~~)。', - 'type' => 'string', - 'required' => false, - 'example' => '188077086902****_176993d****_181437****_108724****', - ], - ], - [ - 'name' => 'CertIds', - 'in' => 'query', - 'schema' => [ - 'description' => '**ALB**多证书ID。取值说明如下:'."\n" - ."\n" - .'- **LoadBalanceType**为**alb**时,使用该字段来配置HTTPS监听多证书,多个证书ID之间使用逗号分割。'."\n" - ."\n" - .'- ALB使用的SSL证书ID需要从数字证书产品获取。例如配置`756***-cn-hangzhou`,`756***`为产品页获取的证书ID, `-cn-hangzhou`为固定后缀。更多信息,请参见[管理证书(ALB)](~~209076~~)。', - 'type' => 'string', - 'required' => false, - 'example' => '87***35-cn-hangzhou,812***3-cn-hangzhou', - ], - ], - [ - 'name' => 'DefaultRule', - 'in' => 'query', - 'schema' => [ - 'description' => '默认转发规则。按照IP地址,通过指定端口转发流量到指定应用。参数说明如下:'."\n" - ."\n" - .'- **appId**:应用ID。'."\n" - .'- **containerPort**:应用实例端口。'."\n" - ."\n" - .'> 所有未匹配或不满足**Rules**转发规则的请求都会转到该指定应用。', - 'type' => 'string', - 'required' => true, - 'example' => '{"appId":"395b60e4-0550-458d-9c54-a265d036****","containerPort":8080}', - ], - ], - [ - 'name' => 'Rules', - 'in' => 'formData', - 'schema' => [ - 'description' => '转发规则。按照域名和请求路径,通过指定端口转发流量到指定应用。参数说明如下:'."\n" - ."\n" - .'- **appId**:应用ID。'."\n" - .'- **containerPort**:应用实例端口。'."\n" - .'- **domain**:域名。'."\n" - .'- **path**:请求路径。'."\n" - .'- **backendProtocol**:后端服务协议,支持http/https/grpc,默认值为http。'."\n" - .'- **rewritePath**:重写路径。'."\n" - ."\n" - .'> 目前仅有ALB支持设置URL路径重写(RewritePath)功能,CLB不支持此功能。', - 'type' => 'string', - 'required' => true, - 'example' => '[{"appId":"395b60e4-0550-458d-9c54-a265d036****","containerPort":8080,"domain":"www.sae.site","path":"/path1"},{"appId":"666403ce-d25b-47cf-87fe-497565d2****","containerPort":8080,"domain":"sae.site","path":"/sys/(.*)/(.*)/aaa","backendProtocol":"http"}]', - ], - ], - [ - 'name' => 'LoadBalanceType', - 'in' => 'query', - 'schema' => [ - 'description' => '负载均衡SLB的类型。取决于创建路由规则时填写的类型,更新时不可变更。取值说明如下:'."\n" - ."\n" - .'- **clb**:传统型负载均衡CLB(原SLB)。'."\n" - .'- **alb**:应用型负载均衡ALB。', - 'type' => 'string', - 'required' => false, - 'example' => 'clb', - ], - ], - [ - 'name' => 'ListenerProtocol', - 'in' => 'query', - 'schema' => [ - 'description' => '请求转发协议。取值说明如下:'."\n" - ."\n" - .'- **HTTP**:适用于需要对数据内容进行识别的应用。'."\n" - .'- **HTTPS**:适用于需要加密传输的应用。', - 'type' => 'string', - 'required' => false, - 'example' => 'HTTP', - ], - ], - [ - 'name' => 'SecurityPolicyId', - 'in' => 'query', - 'schema' => [ - 'title' => '安全策略实例 ID', - 'description' => '安全策略实例 ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'sp-bp1bpn0kn9****', - ], - ], - [ - 'name' => 'RequestTimeout', - 'in' => 'query', - 'schema' => [ - 'title' => '指定请求超时时间。单位:秒。'."\n" - ."\n" - .'取值:1~180。'."\n" - ."\n" - .'默认值:60。'."\n" - ."\n" - .'如果在超时时间内后端服务器一直没有响应,负载均衡将放弃等待,并给客户端返回HTTP 504错误码。', - 'description' => '指定请求超时时间。单位:秒。取值范围:1~180。'."\n" - .'如果在超时时间内后端服务器一直没有响应,负载均衡将放弃等待,给客户端返回HTTP 504错误码。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '3', - ], + 'schema' => ['description' => '命名空间ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-shanghai'], ], [ - 'name' => 'IdleTimeout', - 'in' => 'query', - 'schema' => [ - 'title' => '指定连接空闲超时时间。单位:秒。'."\n" - ."\n" - .'取值范围:1~60。'."\n" - ."\n" - .'默认值:15。'."\n" - ."\n" - .'如果在超时时间内一直没有访问请求,负载均衡会暂时中断当前连接,直到一下次请求来临时重新建立新的连接。', - 'description' => '指定连接空闲超时时间。单位:秒。取值范围:1~60。'."\n" - .'如果在超时时间内一直没有访问请求,负载均衡会暂时中断当前连接,直到一下次请求来临时重新建立新的连接。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '15', - ], - ], - [ - 'name' => 'EnableXForwardedFor', - 'in' => 'query', - 'schema' => [ - 'type' => 'boolean', - 'required' => false, - ], - ], - [ - 'name' => 'EnableXForwardedForClientSrcPort', - 'in' => 'query', - 'schema' => [ - 'type' => 'boolean', - 'required' => false, - ], - ], - [ - 'name' => 'EnableXForwardedForProto', + 'name' => 'AppIds', 'in' => 'query', - 'schema' => [ - 'type' => 'boolean', - 'required' => false, - ], + 'schema' => ['description' => '应用id列表。输入多个时,以英文逗号(,)分隔。', 'type' => 'string', 'required' => true, 'example' => '00893b3a-0e24-45ed-be0c-1f20e07b****'], ], - [ - 'name' => 'EnableXForwardedForSlbId', - 'in' => 'query', + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'type' => 'boolean', - 'required' => false, + 'title' => 'Schema of Response', + 'description' => '返回数据。', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'请求正常,返回success。'."\n" + .'请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], + 'Data' => [ + 'description' => '返回结果。', + 'type' => 'object', + 'properties' => [ + 'ChangeOrderId' => ['description' => '变更流程ID', 'type' => 'string', 'example' => '01db03d3-3ee9-48b3-b3d0-dfce2d88****'], + ], + ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'请求成功:不返回ErrorCode字段。'."\n" + .'请求失败:返回ErrorCode字段。具体信息,请参见本文的错误码列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'2xx:成功。'."\n" + .'3xx:重定向。'."\n" + .'4xx:请求错误。'."\n" + .'5xx:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '批量启动应用是否成功。取值说明如下:'."\n" + ."\n" + .'true:表示批量启动应用成功。'."\n" + .'false:表示批量启动应用失败。', 'type' => 'boolean', 'example' => 'true'], + ], ], ], - [ - 'name' => 'EnableXForwardedForSlbPort', - 'in' => 'query', - 'schema' => [ - 'type' => 'boolean', - 'required' => false, - ], + ], + 'errorCodes' => [ + 400 => [ + ['errorCode' => 'System.Upgrading', 'errorMessage' => 'The system is being upgraded. Please try again later.', 'description' => '系统正在升级,请稍后操作。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'Mamespace.Have.No.Applications', 'errorMessage' => 'There are no applications in this namespace.', 'description' => '该命名空间中没有应用。'], + ['errorCode' => 'Invalid.App.List.Not.Same.Namespace', 'errorMessage' => 'The selected applications do not belong to the same namespace.', 'description' => '所选择的应用不属于同一个命名空间。'], + ['errorCode' => 'user.indebt', 'errorMessage' => 'The user has an outstanding payment.', 'description' => '当前用户处于欠费状态。'], ], + ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"ChangeOrderId\\": \\"01db03d3-3ee9-48b3-b3d0-dfce2d88****\\"\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => '批量重启应用', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:25.000Z', 'description' => 'OpenAPI 下线'], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ [ - 'name' => 'AddressType', - 'in' => 'query', - 'schema' => [ - 'type' => 'string', - 'required' => false, + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'sae:BatchRestartApplications', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], + ], + ], + 'BatchStartApplications' => [ + 'path' => '/pop/v1/sam/app/batchStartApplications', + 'methods' => ['put'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'LoadBalancerEdition', - 'in' => 'query', - 'schema' => [ - 'type' => 'string', - 'required' => false, - ], + 'AK' => [], ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'abilityTreeCode' => '6294', + 'abilityTreeNodes' => ['FEATUREsaeD9PL61'], + ], + 'parameters' => [ [ - 'name' => 'ZoneMappings', + 'name' => 'NamespaceId', 'in' => 'query', - 'schema' => [ - 'type' => 'string', - 'required' => false, - ], + 'schema' => ['description' => '命名空间ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-shanghai'], ], [ - 'name' => 'CorsConfig', + 'name' => 'AppIds', 'in' => 'query', - 'schema' => [ - 'type' => 'string', - 'required' => false, - ], + 'schema' => ['description' => '应用ID,多个ID时使用半角逗号(,)分割。', 'type' => 'string', 'required' => false, 'example' => '00893b3a-0e24-45ed-be0c-1f20e07b****'], ], [ - 'name' => 'EnableGzip', + 'name' => 'Version', 'in' => 'query', - 'schema' => [ - 'type' => 'boolean', - 'required' => false, - ], + 'schema' => ['description' => '应用的版本。', 'type' => 'string', 'required' => false, 'example' => '1.0'], ], ], 'responses' => [ @@ -7721,117 +1528,76 @@ 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], 'Data' => [ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'IngressId' => [ - 'description' => '路由规则ID。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '87', - ], + 'ChangeOrderId' => ['description' => '变更流程ID。', 'type' => 'string', 'example' => '01db03d3-3ee9-48b3-b3d0-dfce2d88****'], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '创建路由规则是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:创建成功。'."\n" - .'- **false**:创建失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '批量启动应用是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:表示批量启动应用成功。'."\n" + .'- **false**:表示批量启动应用失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], - [ - 'errorCode' => 'Slb.NotFound', - 'errorMessage' => 'The SLB instance does not exist: slbId [%s]', - ], - [ - 'errorCode' => 'Exceed.IngressRule', - 'errorMessage' => 'The number of Ingress related rules must be less than or equal to 40.', - ], - [ - 'errorCode' => 'SlbListenerPort.NotAvailable', - 'errorMessage' => 'The SLB listening port is unavailable: slbId [%s], port [%s]', - ], - [ - 'errorCode' => 'SSLCert.NotFound', - 'errorMessage' => 'The specified SSL certificate cannot be found.', - ], + ['errorCode' => 'System.Upgrading', 'errorMessage' => 'The system is being upgraded. Please try again later.', 'description' => '系统正在升级,请稍后操作。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'Mamespace.Have.No.Applications', 'errorMessage' => 'There are no applications in this namespace.', 'description' => '该命名空间中没有应用。'], + ['errorCode' => 'Invalid.App.List.Not.Same.Namespace', 'errorMessage' => 'The selected applications do not belong to the same namespace.', 'description' => '所选择的应用不属于同一个命名空间。'], + ['errorCode' => 'user.indebt', 'errorMessage' => 'The user has an outstanding payment.', 'description' => '当前用户处于欠费状态。'], ], - 404 => [ - [ - 'errorCode' => 'InvalidResponse.Api', - 'errorMessage' => 'The response of API %s is empty.', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"ChangeOrderId\\": \\"01db03d3-3ee9-48b3-b3d0-dfce2d88****\\"\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<BatchStartApplicationsResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <ChangeOrderId>01db03d3-3ee9-48b3-b3d0-dfce2d88****</ChangeOrderId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</BatchStartApplicationsResponse>","errorExample":""}]', + 'title' => '批量启动应用', + 'summary' => '批量启动应用。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:25.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2024-04-12T01:56:54.000Z', 'description' => '请求参数发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '40', 'countWindow' => 60, 'regionId' => '*', 'api' => 'BatchStartApplications'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'sae:BatchStartApplications', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"IngressId\\": 87\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<CreateIngressResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <IngressId>87</IngressId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</CreateIngressResponse>","errorExample":""}]', - 'title' => '创建一条路由规则', - 'summary' => '创建一条路由规则。', ], - 'DeleteNamespace' => [ - 'path' => '/pop/v1/paas/namespace', - 'methods' => [ - 'delete', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'BatchStopApplications' => [ + 'path' => '/pop/v1/sam/app/batchStopApplications', + 'methods' => ['put'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -7840,32 +1606,27 @@ 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'delete', - 'abilityTreeCode' => '6314', - 'abilityTreeNodes' => [ - 'FEATUREsaeD9PL61', - ], + 'operationType' => 'none', + 'abilityTreeCode' => '6295', + 'abilityTreeNodes' => ['FEATUREsaeD9PL61'], ], 'parameters' => [ [ 'name' => 'NamespaceId', 'in' => 'query', - 'schema' => [ - 'description' => '长版命名空间ID。如果设置了该参数会继续生效而忽略NameSpaceShortId,该参数是为了兼容保留,推荐使用短版命名空间ID,简化参数。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-beijing:test', - ], + 'schema' => ['description' => '命名空间ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-shanghai'], ], [ - 'name' => 'NameSpaceShortId', + 'name' => 'AppIds', 'in' => 'query', - 'schema' => [ - 'description' => '短版命名空间ID,不需要带上Region。推荐使用该参数。', - 'type' => 'string', - 'required' => false, - 'example' => 'test', - ], + 'schema' => ['description' => '需要停止的应用ID。'."\n" + .'> '."\n" + .'>如果同时需要停止多个应用,应用ID之间需要使用半角逗号(,)进行分割。', 'type' => 'string', 'required' => false, 'example' => 'ebf491f0-c1a5-45e2-b2c4-710dbe2a****'], + ], + [ + 'name' => 'Version', + 'in' => 'query', + 'schema' => ['description' => '应用的版本。', 'type' => 'string', 'required' => false, 'example' => '1.0'], ], ], 'responses' => [ @@ -7874,92 +1635,77 @@ 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '调用结果的附加信息。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a981dd515966966104121683d****', - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '删除命名空间是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:表示删除成功。'."\n" - .'- **false**:表示删除失败。', - 'type' => 'boolean', - 'example' => 'true', + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '7BD8F4C7-D84C-4D46-9885-8212997E****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0bc3b6e215637275918588187d****'], + 'Data' => [ + 'description' => '返回结果。', + 'type' => 'object', + 'properties' => [ + 'ChangeOrderId' => ['description' => '变更单ID。', 'type' => 'string', 'example' => '4a815998-b468-4bea-b7d8-59f52a44****'], + ], ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '批量停止应用是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:停止成功。'."\n" + .'- **false**:停止失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidOperation.NamespaceClusterNotDeleted', - 'errorMessage' => 'The specified NamespaceId contains clusters.', - ], - [ - 'errorCode' => 'Namespace.AppExists', - 'errorMessage' => 'Please delete the application first.', - ], - [ - 'errorCode' => 'System.Upgrading', - 'errorMessage' => 'The system is being upgraded. Please try again later.', - ], + ['errorCode' => 'System.Upgrading', 'errorMessage' => 'The system is being upgraded. Please try again later.', 'description' => '系统正在升级,请稍后操作。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'Invalid.App.List.Not.Same.Namespace', 'errorMessage' => 'The selected applications do not belong to the same namespace.', 'description' => '所选择的应用不属于同一个命名空间。'], + ['errorCode' => 'Mamespace.Have.No.Applications', 'errorMessage' => 'There are no applications in this namespace.', 'description' => '该命名空间中没有应用。'], + ['errorCode' => 'user.indebt', 'errorMessage' => 'The user has an outstanding payment.', 'description' => '当前用户处于欠费状态。'], ], - 404 => [ - [ - 'errorCode' => 'InvalidNamespaceId.NotFound', - 'errorMessage' => 'The specified NamespaceId does not exist.', - ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"7BD8F4C7-D84C-4D46-9885-8212997E****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0bc3b6e215637275918588187d****\\",\\n \\"Data\\": {\\n \\"ChangeOrderId\\": \\"4a815998-b468-4bea-b7d8-59f52a44****\\"\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<BatchStopApplicationsResponse>\\n <RequestId>7BD8F4C7-D84C-4D46-9885-8212997E****</RequestId>\\n <Message>success</Message>\\n <TraceId>0bc3b6e215637275918588187d****</TraceId>\\n <Data>\\n <ChangeOrderId>4a815998-b468-4bea-b7d8-59f52a44****</ChangeOrderId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</BatchStopApplicationsResponse>","errorExample":""}]', + 'title' => '批量停止应用', + 'summary' => '批量停止应用。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:25.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2024-04-12T01:56:54.000Z', 'description' => '请求参数发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '40', 'countWindow' => 60, 'regionId' => '*', 'api' => 'BatchStopApplications'], ], - 500 => [ - [ - 'errorCode' => 'OperationFailed.DauthHttpRequest', - 'errorMessage' => 'request dauth failed.', + ], + 'ramActions' => [ + [ + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'sae:BatchStopApplications', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a981dd515966966104121683d****\\",\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeleteNamespaceResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a981dd515966966104121683d****</TraceId>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DeleteNamespaceResponse>","errorExample":""}]', - 'title' => '删除命名空间', - 'summary' => '删除命名空间。', ], - 'DeleteIngress' => [ - 'path' => '/pop/v1/sam/ingress/Ingress', - 'methods' => [ - 'delete', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'BindNlb' => [ + 'summary' => '应用访问支持NLB', + 'path' => '/pop/v1/sam/app/nlb', + 'methods' => ['post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -7968,191 +1714,180 @@ 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'delete', - 'abilityTreeCode' => '6313', - 'abilityTreeNodes' => [ - 'FEATUREsaeD9PL61', - ], + 'operationType' => 'create', + 'abilityTreeCode' => '259781', + 'abilityTreeNodes' => ['FEATUREsaeBRTWZ3'], ], 'parameters' => [ [ - 'name' => 'IngressId', + 'name' => 'AppId', 'in' => 'query', - 'schema' => [ - 'description' => '需要删除的路由规则ID。通过调用[ListIngresses](~~153934~~)接口获取。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'example' => '87', - ], + 'schema' => ['description' => '目标应用ID。', 'type' => 'string', 'required' => false, 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****'], + ], + [ + 'name' => 'NlbId', + 'in' => 'query', + 'schema' => ['description' => 'NLB实例ID', 'type' => 'string', 'required' => false, 'example' => 'nlb-7z7jjbzz44d82c9***'], + ], + [ + 'name' => 'Listeners', + 'in' => 'query', + 'schema' => ['description' => '传入要操作的Listeners的JSON数组串,每个Listener的具体结构描述如下:'."\n" + ."\n" + .'- **Port**,Integer类型,必选,负载均衡监听端口。取值范围:0~65535。'."\n" + ."\n" + .'- **TargetPort**,Integer类型,必选,实例容器监听端口。取值范围:0~65535。'."\n" + ."\n" + .'- **Protocol**,String类型,必选,监听协议。取值:TCP、UDP 或 TCPSSL。'."\n" + ."\n" + .'- **CertIds**,String类型,可选,服务器证书列表信息。仅对 TCPSSL 监听生效。', 'type' => 'string', 'required' => false], + ], + [ + 'name' => 'ZoneMappings', + 'in' => 'query', + 'schema' => ['description' => '可用区及交换机映射列表的JSON字符串。最多支持添加 10 个可用区。若当前地域支持 2 个及以上的可用区,至少需要添加 2 个可用区。一个ZoneMapping结构为:'."\n" + ."\n" + .'- VSwitchId,String类型,可用区对应的交换机,每个可用区只能使用一台交换机和一个子网。'."\n" + ."\n" + .'- ZoneId,String类型,网络型负载均衡实例的可用区 ID。', 'type' => 'string', 'required' => false, 'example' => 'vsw-sersdf****'."\n" + .'cn-hangzhou-a'], + ], + [ + 'name' => 'AddressType', + 'in' => 'query', + 'schema' => ['description' => '地址类型:'."\n" + .'- Internet:公网地址。'."\n" + .'- Intranet:私网地址。', 'type' => 'string', 'required' => false, 'example' => 'Internet'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'description' => '返回数据。', + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '调用结果的附加信息。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'Id of the request', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a06dfe717389800573793090e0589'], 'Data' => [ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'IngressId' => [ - 'description' => '删除的路由规则ID。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '87', - ], + 'ChangeOrderId' => ['description' => '返回的发布单ID,用于查询任务执行状态。', 'type' => 'string', 'example' => 'ba386059-69b1-4e65-b1e5-0682d9fa****'], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '删除Ingress实例是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:删除成功。'."\n" - .'- **false**:删除失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => 'HTTP状态码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '批量停止应用是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:停止成功。'."\n" + .'- **false**:停止失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], - 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], - ], - 500 => [ - [ - 'errorCode' => 'OperationFailed.RPCError', - 'errorMessage' => 'Internal RPC request processing error.', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a06dfe717389800573793090e0589\\",\\n \\"Data\\": {\\n \\"ChangeOrderId\\": \\"ba386059-69b1-4e65-b1e5-0682d9fa****\\"\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => '为应用绑定NLB', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:30.000Z', 'description' => 'OpenAPI 下线'], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'sae:BindNlb', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"IngressId\\": 87\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeleteIngressResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <IngressId>87</IngressId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DeleteIngressResponse>","errorExample":""}]', - 'title' => '删除 ingress 实例', - 'summary' => '删除ingress实例。', ], - 'UpdateNamespace' => [ - 'path' => '/pop/v1/paas/namespace', - 'methods' => [ - 'put', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'BindSlb' => [ + 'path' => '/pop/v1/sam/app/slb', + 'methods' => ['post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '6403', - 'abilityTreeNodes' => [ - 'FEATUREsaeD9PL61', - ], + 'operationType' => 'create', + 'abilityTreeCode' => '6297', + 'abilityTreeNodes' => ['FEATUREsaeD9PL61'], ], 'parameters' => [ [ - 'name' => 'NamespaceId', + 'name' => 'AppId', 'in' => 'query', - 'schema' => [ - 'description' => '长版命名空间ID。如果设置了该参数会继续生效而忽略NameSpaceShortId,为了兼容保留,推荐使用短版命名空间ID;格式为`<RegionId>:<NamespaceId>`,`NamespaceId`仅允许小写英文字母和数字,例如`cn-beijing:test`,不超过32个字符。SAE支持的**RegionId**,请参见[DescribeRegions](~~2834842~~)。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-beijing:test', - ], + 'schema' => ['description' => '需要绑定SLB的目标应用ID。', 'type' => 'string', 'required' => true, 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****'], ], [ - 'name' => 'NamespaceName', + 'name' => 'Internet', 'in' => 'query', - 'schema' => [ - 'description' => '命名空间名称,不超过64个字符。', - 'type' => 'string', - 'required' => true, - 'example' => 'name', - ], + 'schema' => ['description' => '绑定公网SLB。例如:\\[{"port":80,"targetPort":8080,"protocol":"TCP"}\\],表示通过TCP协议,将容器的8080端口通过SLB的80端口暴露服务。取值说明如下:'."\n" + ."\n" + .'- **port**:SLB端口。'."\n" + .'- **targetPort**:容器端口。'."\n" + .'- **protocol**:网络协议。支持**TCP**、**HTTP**和**HTTPS**。'."\n" + .'- **httpsCertId**:SSL证书。仅限选择**HTTPS**时需配置SSL证书。'."\n", 'type' => 'string', 'required' => false, 'example' => '[{"port":80,"targetPort":8080,"protocol":"TCP"}]'], ], [ - 'name' => 'NamespaceDescription', + 'name' => 'Intranet', 'in' => 'query', - 'schema' => [ - 'description' => '命名空间描述,不超过100个字符。', - 'type' => 'string', - 'required' => false, - 'example' => 'desc', - ], + 'schema' => ['description' => '绑定私网SLB。例如:\\[{"port":80,"targetPort":8080,"protocol":"TCP"}\\],表示通过TCP协议,将容器的8080端口通过SLB的80端口暴露服务。取值说明如下:'."\n" + ."\n" + .'- **port**:SLB端口。'."\n" + .'- **targetPort**:容器端口。'."\n" + .'- **protocol**:网络协议。支持**TCP**、**HTTP**和**HTTPS**。'."\n" + .'- **httpsCertId**:SSL证书。仅限选择**HTTPS**时需配置SSL证书。', 'type' => 'string', 'required' => false, 'example' => '[{"port":80,"targetPort":8080,"protocol":"TCP"}]'], ], [ - 'name' => 'NameSpaceShortId', + 'name' => 'InternetSlbId', 'in' => 'query', - 'schema' => [ - 'description' => '短版命名空间ID,不需要带上region,不超过20个字符,推荐;仅允许小写英文字母和数字。', - 'type' => 'string', - 'required' => false, - 'example' => 'test', - ], + 'schema' => ['description' => '使用指定的已购买的公网SLB,支持非共享型实例。', 'type' => 'string', 'required' => false, 'example' => 'lb-bp1tg0k6d9nqaw7l1****'], ], [ - 'name' => 'EnableMicroRegistration', + 'name' => 'IntranetSlbId', 'in' => 'query', - 'schema' => [ - 'description' => '是否启用SAE内置注册中心:'."\n" - .'- **true**'."\n" - .'- **false**'."\n" - ."\n" - .'若选择true,则将为该命名空间创建共享注册中心等相关信息,同时创建后无法关闭。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'schema' => ['description' => '使用指定的已购买的私网SLB,支持非共享型实例。', 'type' => 'string', 'required' => false, 'example' => 'lb-bp1tg0k6d9nqaw7l1****'], + ], + [ + 'name' => 'InternetSlbChargeType', + 'in' => 'query', + 'schema' => ['description' => '公网负载均衡的计费方式。支持以下两种计费方式:'."\n" + ."\n" + .'- **PayBySpec**:表示按规格计费。'."\n" + .'- **PayByCLCU**:表示按使用量计费。', 'type' => 'string', 'required' => false, 'example' => 'PayBySpec'], + ], + [ + 'name' => 'IntranetSlbChargeType', + 'in' => 'query', + 'schema' => ['description' => '内网负载均衡的计费方式。支持以下两种计费方式:'."\n" + ."\n" + .'- **PayBySpec**:表示按规格计费。'."\n" + .'- **PayByCLCU**:表示按使用量计费。', 'type' => 'string', 'required' => false, 'example' => 'PayBySpec'], ], ], 'responses' => [ @@ -8161,172 +1896,117 @@ 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '调用结果的附加信息。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '调用结果的附加信息。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,可用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], 'Data' => [ - 'description' => '命名空间信息。', + 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'NamespaceDescription' => [ - 'description' => '命名空间描述。', - 'type' => 'string', - 'example' => 'desc', - ], - 'NamespaceId' => [ - 'description' => '命名空间ID。', - 'type' => 'string', - 'example' => 'cn-beijing:test', - ], - 'NamespaceName' => [ - 'description' => '命名空间名称。', - 'type' => 'string', - 'example' => 'name', - ], - 'RegionId' => [ - 'description' => '命名空间所在地域。', - 'type' => 'string', - 'example' => 'cn-beijing', - ], - 'NameSpaceShortId' => [ - 'description' => '短版命名空间ID。', - 'type' => 'string', - 'example' => 'test', - ], - 'EnableMicroRegistration' => [ - 'description' => '是否启用SAE内置注册中心:'."\n" - .'- **true**'."\n" - .'- **false**', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ChangeOrderId' => ['description' => '返回的发布单ID,用于查询任务执行状态。', 'type' => 'string', 'example' => '01db03d3-3ee9-48b3-b3d0-dfce2d88****'], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '更新命名空间信息是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:更新成功。'."\n" - .'- **false**:更新失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string', 'example' => '空'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。'."\n", 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '绑定SLB是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:绑定成功。'."\n" + .'- **false**:绑定失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidNamespaceName.Format', - 'errorMessage' => 'The specified NamespaceName is invalid. The name of the namespace cannot exceed 63 characters in length.', - ], - [ - 'errorCode' => 'System.Upgrading', - 'errorMessage' => 'The system is being upgraded. Please try again later.', - ], - [ - 'errorCode' => 'Exceed.Namespace', - 'errorMessage' => 'Too many namespaces have been created.', - ], - [ - 'errorCode' => 'InvalidNamespaceId.Format', - 'errorMessage' => 'The specified NamespaceId is invalid.', - ], + ['errorCode' => 'Slb.NotFound', 'errorMessage' => 'The SLB instance does not exist: slbId [%s]', 'description' => 'SLB不存在:slbId[%s]。'], + ['errorCode' => 'InvalidApplication.NotFound', 'errorMessage' => 'The current application does not exist.', 'description' => '找不到当前应用。'], + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'SlbHttpsCert.NotConsistent', 'errorMessage' => 'The HTTPS listening certificate for each listener must match.', 'description' => 'SLB设置HTTPS监听证书配置必须一致。'], + ['errorCode' => 'SlbHttpsCert.NotFound', 'errorMessage' => 'You must configure the certificate before you configure HTTPS listening for the SLB instance.', 'description' => 'SLB设置HTTPS监听必须有证书配置。'], + ['errorCode' => 'SlbListenerPort.NotAvailable', 'errorMessage' => 'The SLB listening port is unavailable: slbId [%s], port [%s]', 'description' => 'SLB监听端口被占用:slbId[%s], port[%s]。'], + ['errorCode' => 'SlbListenerType.Invalid', 'errorMessage' => 'An SLB listener type error occurred. Only HTTPS and TCP are supported.', 'description' => 'SLB监听类型异常,只支持HTTPS和TCP类型。'], + ['errorCode' => 'SlbSpec.NotSupport', 'errorMessage' => 'Shared performance SLB instances are not supported.', 'description' => '不支持性能共享型SLB实例。'], + ['errorCode' => 'SlbType.Invalid', 'errorMessage' => 'An SLB network type error occurred.', 'description' => 'SLB网络类型异常。'], + ['errorCode' => 'SSLCert.NotFound', 'errorMessage' => 'The specified SSL certificate cannot be found.', 'description' => '找不到对应的SSL证书。'], + ['errorCode' => 'System.Upgrading', 'errorMessage' => 'The system is being upgraded. Please try again later.', 'description' => '系统正在升级,请稍后操作。'], + ['errorCode' => 'Application.ChangerOrderRunning', 'errorMessage' => 'An application change process is in progress. Please try again later.', 'description' => '应用有变更流程正在执行,请稍后重试。'], + ['errorCode' => 'Application.InvalidStatus', 'errorMessage' => 'The application status is abnormal. Please try again later.', 'description' => '应用状态异常,请稍后重试。'], + ['errorCode' => 'Application.NotDeployYet', 'errorMessage' => 'The application has not been deployed. Please deploy it and try again.', 'description' => '应用没有部署,请部署后重试。'], + ['errorCode' => 'InvalidParam.ProtocolNotSupport', 'errorMessage' => 'Only TCP protocol is supported.', 'description' => '不支持指定的协议,只支持TCP协议。'], + ['errorCode' => 'SLBInstanceQuota.OverQuota', 'errorMessage' => 'The total number of SLB instances exceeds the quota. Please reduce the instances and try again.', 'description' => 'SLB总实例数超过了限额,请您减少数量后重试。'], + ['errorCode' => 'Slb.Tag.Not.Qualified', 'errorMessage' => 'The current SLB instance cannot be reused because it may have been occupied by %s.', 'description' => 'SLB实例正在被%s使用,不建议复用。'], + ['errorCode' => 'Application.NoInstanceAvailable', 'errorMessage' => 'No instance is available for the application. Please scale out and try again.', 'description' => '应用没有可用实例,请扩容后重试。'], + ['errorCode' => 'SlbAppVSwitch.NotMatch', 'errorMessage' => 'The SLB instance does not match the vSwitch of the current application.', 'description' => 'SLB与应用vSwitch不匹配。'], ], 404 => [ - [ - 'errorCode' => 'InvalidNamespaceId.NotFound', - 'errorMessage' => 'The specified NamespaceId does not exist.', - ], + ['errorCode' => 'InvalidAppId.NotFound', 'errorMessage' => 'The specified AppId does not exist.', 'description' => '指定的AppId不存在。'], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"NamespaceDescription\\": \\"desc\\",\\n \\"NamespaceId\\": \\"cn-beijing:test\\",\\n \\"NamespaceName\\": \\"name\\",\\n \\"RegionId\\": \\"cn-beijing\\",\\n \\"NameSpaceShortId\\": \\"test\\",\\n \\"EnableMicroRegistration\\": true\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<UpdateNamespaceResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <NamespaceDescription>desc</NamespaceDescription>\\n <NamespaceId>cn-beijing:test</NamespaceId>\\n <NamespaceName>name</NamespaceName>\\n <RegionId>cn-beijing</RegionId>\\n <NameSpaceShortId>test</NameSpaceShortId>\\n <EnableMicroRegistration>true</EnableMicroRegistration>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</UpdateNamespaceResponse>","errorExample":""}]', - 'title' => '更新命名空间信息', - 'summary' => '更新命名空间信息。', - ], - 'UpdateNamespaceVpc' => [ - 'path' => '/pop/v1/sam/namespace/updateNamespaceVpc', - 'methods' => [ - 'post', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"ChangeOrderId\\": \\"01db03d3-3ee9-48b3-b3d0-dfce2d88****\\"\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<BindSlbResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <ChangeOrderId>01db03d3-3ee9-48b3-b3d0-dfce2d88****</ChangeOrderId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</BindSlbResponse>","errorExample":""}]', + 'title' => '为应用绑定SLB', + 'summary' => '为应用绑定SLB。', + 'changeSet' => [ + ['createdAt' => '2024-08-07T11:17:57.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2022-02-25T09:30:12.000Z', 'description' => '错误码发生变更'], ], - 'schemes' => [ - 'http', - 'https', + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '20', 'countWindow' => 60, 'regionId' => '*', 'api' => 'BindSlb'], + ], ], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'sae:BindSlb', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], + ], + ], + 'ConfirmPipelineBatch' => [ + 'path' => '/pop/v1/sam/changeorder/ConfirmPipelineBatch', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', - 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '6404', - 'abilityTreeNodes' => [ - 'FEATUREsaeD9PL61', - ], + 'operationType' => 'none', + 'abilityTreeCode' => '6302', + 'abilityTreeNodes' => ['FEATUREsaeRVPNSA'], ], 'parameters' => [ [ - 'name' => 'NamespaceId', - 'in' => 'query', - 'schema' => [ - 'description' => '长版命名空间ID。如果设置了该参数会继续生效而忽略NameSpaceShortId,该参数是为了兼容保留,推荐使用短版命名空间ID,简化参数。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-beijing:test', - ], - ], - [ - 'name' => 'VpcId', + 'name' => 'PipelineId', 'in' => 'query', - 'schema' => [ - 'description' => 'VPC ID。用于替换现有的VPC ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'vpc-2ze0i263cnn311nvj****', - ], + 'schema' => ['description' => '批次ID。'."\n" + .'通过<props="china">[DescribeChangeOrder](https://help.aliyun.com/zh/sae/serverless-app-engine-upgrade/developer-reference/api-sae-2019-05-06-describechangeorder?spm=a2c4g.11186623.help-menu-search-118957.d_0)</props><props="intl">[DescribeChangeOrder](https://www.alibabacloud.com/help/zh/sae/serverless-app-engine-classic/developer-reference/api-sae-2019-05-06-describechangeorder-old?spm=a2c63.p38356.help-menu-search-118957.d_0)'."\n" + .'</props>此接口获取。', 'type' => 'string', 'required' => true, 'example' => 'e2e-vds-feh-***'], ], [ - 'name' => 'NameSpaceShortId', + 'name' => 'Confirm', 'in' => 'query', - 'schema' => [ - 'description' => '短版命名空间ID,不需要带上region,推荐。', - 'type' => 'string', - 'required' => false, - 'example' => 'test', - ], + 'schema' => ['description' => '是否开始下一批次。取值说明如下:'."\n" + ."\n" + .'- **true**:开始下一批次。'."\n" + .'- **false**:终止流程。', 'type' => 'boolean', 'required' => true, 'example' => 'true'], ], ], 'responses' => [ @@ -8335,2325 +2015,1389 @@ 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '更新VPC信息是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:更新成功。'."\n" - .'- **false**:更新失败。', - 'type' => 'boolean', - 'example' => 'true', + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '调用结果的附加信息。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], + 'Data' => [ + 'description' => '批次信息。', + 'type' => 'object', + 'properties' => [ + 'PipelineId' => ['description' => '批次ID。', 'type' => 'string', 'example' => 'e2e-vds-feh-***'], + ], ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '确认开启下一批次是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:确认成功。'."\n" + .'- **false**:确认失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'DeleteFail.NamespaceHasIngress', - 'errorMessage' => 'Ingress detected when deleting the namespace.', - ], - [ - 'errorCode' => 'Namespace.AppExists', - 'errorMessage' => 'Please delete the application first.', - ], + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'System.Upgrading', 'errorMessage' => 'The system is being upgraded. Please try again later.', 'description' => '系统正在升级,请稍后操作。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], + ['errorCode' => 'Pipeline.Can.Not.Start.Next.Batch', 'errorMessage' => 'You cannot start the next batch under the current status.', 'description' => '发布单当前状态下不能开始下一批部署。'], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<UpdateNamespaceVpcResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Code>200</Code>\\n <Success>true</Success>\\n</UpdateNamespaceVpcResponse>","errorExample":""}]', - 'title' => '更新命名空间绑定的vpc', - 'summary' => '调用UpdateNamespaceVpc接口更新命名空间绑定的VPC。', - ], - 'UpdateApplicationVswitches' => [ - 'path' => '/pop/v1/sam/app/updateAppVswitches', - 'methods' => [ - 'put', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"PipelineId\\": \\"e2e-vds-feh-***\\"\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<ConfirmPipelineBatchResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <PipelineId>e2e-vds-feh-***</PipelineId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</ConfirmPipelineBatchResponse>","errorExample":""}]', + 'title' => '是否开始一下批次', + 'summary' => '确认是否开始下一批次。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:30.000Z', 'description' => 'OpenAPI 下线'], ], - 'schemes' => [ - 'http', - 'https', + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ConfirmPipelineBatch'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'sae:ConfirmPipelineBatch', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + ], + 'CreateApplication' => [ + 'path' => '/pop/v1/sam/app/createApplication', + 'methods' => ['post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '6398', - 'abilityTreeNodes' => [ - 'FEATUREsaeRVPNSA', - ], + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '6303', + 'abilityTreeNodes' => ['FEATUREsaeRVPNSA'], ], 'parameters' => [ [ - 'name' => 'AppId', + 'name' => 'AppName', 'in' => 'query', - 'schema' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****', - ], + 'schema' => ['description' => '应用名称。允许数字、字母以及短划线(-)组合。必须以字母开始,不允许以短划线(-)结尾,不超过36个字符。', 'type' => 'string', 'required' => true, 'example' => 'test'], + ], + [ + 'name' => 'NamespaceId', + 'in' => 'query', + 'schema' => ['description' => 'SAE命名空间ID。仅支持名称为小写字母加短划线(-)的命名空间,必须以字母开始。'."\n" + .'命名空间可通过调用[DescribeNamespaceList](~~126547~~)接口获取。', 'type' => 'string', 'required' => false, 'example' => 'cn-beijing:test'], + ], + [ + 'name' => 'AppDescription', + 'in' => 'query', + 'schema' => ['description' => '应用描述信息。不超过1024个字符。', 'type' => 'string', 'required' => false, 'example' => 'This is a test description.'], + ], + [ + 'name' => 'VpcId', + 'in' => 'query', + 'schema' => ['description' => 'SAE命名空间对应的VPC。在SAE中,一个命名空间只能对应一个VPC,且不能修改。第一次在命名空间内创建SAE应用将形成绑定关系。多个命名空间可以对应一个VPC。不填则默认为命名空间绑定的VPC ID。', 'type' => 'string', 'required' => false, 'example' => 'vpc-bp1aevy8sofi8mh1q****'], ], [ 'name' => 'VSwitchId', 'in' => 'query', - 'schema' => [ - 'description' => '交换机ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'vsw-2ze559r1z1bpwqxwp****', - ], + 'schema' => ['description' => '应用实例弹性网卡所在的虚拟交换机。该交换机必须位于上述VPC内。该交换机与SAE命名空间同样存在绑定关系。不填则默认为命名空间绑定的vSwitch ID。', 'type' => 'string', 'required' => false, 'example' => 'vsw-bp12mw1f8k3jgygk9****'], ], [ - 'name' => 'Deploy', + 'name' => 'PackageType', 'in' => 'query', - 'schema' => [ - 'description' => '是否立即部署。取值说明如下:'."\n" - ."\n" - .'- **true**:默认值,立即部署。'."\n" - .'- **false**:稍后部署。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'schema' => ['description' => '应用包类型。取值说明如下:'."\n" + ."\n" + .'- 当您选择用Java部署时,支持**FatJar**、**War**和**Image**。'."\n" + .'- 当您选择用PHP部署时,支持类型如下:'."\n" + .' - **PhpZip**'."\n" + .' - **IMAGE\\_PHP\\_5\\_4**'."\n" + .' - **IMAGE\\_PHP\\_5\\_4\\_ALPINE**'."\n" + .' - **IMAGE\\_PHP\\_5\\_5**'."\n" + .' - **IMAGE\\_PHP\\_5\\_5\\_ALPINE**'."\n" + .' - **IMAGE\\_PHP\\_5\\_6**'."\n" + .' - **IMAGE\\_PHP\\_5\\_6\\_ALPINE**'."\n" + .' - **IMAGE\\_PHP\\_7\\_0**'."\n" + .' - **IMAGE\\_PHP\\_7\\_0\\_ALPINE**'."\n" + .' - **IMAGE\\_PHP\\_7\\_1**'."\n" + .' - **IMAGE\\_PHP\\_7\\_1\\_ALPINE**'."\n" + .' - **IMAGE\\_PHP\\_7\\_2**'."\n" + .' - **IMAGE\\_PHP\\_7\\_2\\_ALPINE**'."\n" + .' - **IMAGE\\_PHP\\_7\\_3**'."\n" + .' - **IMAGE\\_PHP\\_7\\_3\\_ALPINE**'."\n" + .'- 当您选择用Python部署时,支持**PythonZip**和**Image**。'."\n" + ."\n" + .'- 当您选用.NET Core部署时,支持**DotnetZip**和**Image**。'."\n" + .' > '."\n" + .' > 当选择DotnetZip时,Dotnet为.NET Core环境的版本号,支持.NET 3.1、.NET 5.0、.NET 6.0、.NET 7.0和.NET 8.0。同时Dotnet、Command和CommandArgs选项为必填项。', 'type' => 'string', 'required' => true, 'example' => 'FatJar'], ], [ - 'name' => 'MinReadyInstances', + 'name' => 'PackageVersion', 'in' => 'query', - 'schema' => [ - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - ], + 'schema' => ['description' => '部署包的版本号。当**Package Type**为**FatJar**、**War**或**PythonZip**时必填。', 'type' => 'string', 'required' => false, 'example' => '1.0.0'], ], [ - 'name' => 'MinReadyInstanceRatio', + 'name' => 'PackageUrl', 'in' => 'query', - 'schema' => [ - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - ], + 'schema' => ['description' => '部署包地址。当**Package Type**为**FatJar**、**War**或**PythonZip**时必填。', 'type' => 'string', 'required' => false, 'example' => 'http://myoss.oss-cn-****.aliyuncs.com/my-buc/2019-06-30/****.jar'], ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'description' => '返回信息。', - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '获取应用列表。取值说明如下:'."\n" - ."\n" - .'- **true**:获取成功。'."\n" - .'- **false**:获取失败。', - 'type' => 'boolean', - 'example' => 'true', - ], - ], - ], + [ + 'name' => 'ImageUrl', + 'in' => 'query', + 'schema' => ['description' => '镜像地址。当**Package Type**为**Image**时必填。', 'type' => 'string', 'required' => false, 'example' => 'registry.cn-hangzhou.aliyuncs.com/sae_test/ali_sae_test:0.0.1'], ], - ], - 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidApplication.NotFound', - 'errorMessage' => 'The current application does not exist.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], + [ + 'name' => 'Jdk', + 'in' => 'query', + 'schema' => ['description' => '部署包依赖的JDK版本。支持版本如下:'."\n" + ."\n" + .'- **Open JDK 8**'."\n" + .'- **Open JDK 7**'."\n" + .'- **Dragonwell 11**'."\n" + .'- **Dragonwell 8**'."\n" + .'- **openjdk-8u191-jdk-alpine3.9**'."\n" + .'- **openjdk-7u201-jdk-alpine3.9**'."\n" + ."\n" + .'当**Package Type**为**Image**时不支持。', 'type' => 'string', 'required' => false, 'example' => 'Open JDK 8'], ], - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => '更新交换机配置', - 'summary' => '更新交换机配置。', - ], - 'UpdateIngress' => [ - 'path' => '/pop/v1/sam/ingress/Ingress', - 'methods' => [ - 'put', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ [ - 'AK' => [], + 'name' => 'WebContainer', + 'in' => 'query', + 'schema' => ['description' => 'WebContainer部署包依赖的Tomcat版本。支持版本如下:'."\n" + ."\n" + .'- **apache-tomcat-7.0.91**'."\n" + .'- **apache-tomcat-8.5.42**'."\n" + ."\n" + .'当**Package Type**为**Image**时不支持。', 'type' => 'string', 'required' => false, 'example' => 'apache-tomcat-7.0.91'], ], - ], - 'operationType' => 'write', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '6401', - 'abilityTreeNodes' => [ - 'FEATUREsaeBRTWZ3', + [ + 'name' => 'Cpu', + 'in' => 'query', + 'schema' => ['description' => '每个实例所需的CPU,单位为毫核,不能为0。目前仅支持以下固定规格:'."\n" + ."\n" + .'- **500**'."\n" + .'- **1000**'."\n" + .'- **2000**'."\n" + .'- **4000**'."\n" + .'- **8000**'."\n" + .'- **16000**'."\n" + .'- **32000**', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1000'], ], - ], - 'parameters' => [ [ - 'name' => 'IngressId', + 'name' => 'Memory', 'in' => 'query', - 'schema' => [ - 'description' => '路由规则ID。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'example' => '87', - ], + 'schema' => ['description' => '每个实例所需的内存,单位为MB,不能为0。与CPU为一一对应关系,目前仅支持以下固定规格:'."\n" + .'- **1024**:对应CPU为500毫核和1000毫核。'."\n" + .'- **2048**:对应CPU为500、1000毫核和2000毫核。'."\n" + .'- **4096**:对应CPU为1000、2000毫核和4000毫核。'."\n" + .'- **8192**:对应CPU为2000、4000毫核和8000毫核。'."\n" + .'- **12288**:对应CPU为12000毫核。'."\n" + .'- **16384**:对应CPU为4000、8000毫核和16000毫核。'."\n" + .'- **24576**:对应CPU为12000毫核。'."\n" + .'- **32768**:对应CPU为16000毫核。'."\n" + .'- **65536**:对应CPU为8000、16000和32000毫核。'."\n" + .'- **131072**:对应CPU为32000毫核。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1024'], ], [ - 'name' => 'CertId', + 'name' => 'Replicas', 'in' => 'query', - 'schema' => [ - 'description' => '**CLB**证书ID。取值说明如下:'."\n" - ."\n" - .'- **LoadBalanceType**为**clb**时,使用该字段来配置HTTPS监听证书。'."\n" - ."\n" - .'CLB使用SSL证书ID的更多信息,请参见[管理证书(CLB)](~~90792~~)。', - 'type' => 'string', - 'required' => false, - 'example' => '188077086902****_176993d****_181437****_108724****', - ], + 'schema' => ['description' => '初始实例数。', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '1'], ], [ - 'name' => 'CertIds', + 'name' => 'Command', 'in' => 'query', - 'schema' => [ - 'description' => '**ALB**多证书ID。取值说明如下:'."\n" - ."\n" - .'- **LoadBalanceType**为**alb**时,使用该字段来配置HTTPS监听多证书,多个证书ID之间使用逗号分割。'."\n" - ."\n" - .'- ALB使用的SSL证书ID需要从数字证书产品获取。例如配置`756***-cn-hangzhou`,`756***`为产品页获取的证书ID, `-cn-hangzhou`为固定后缀。更多信息,请参见[管理证书(ALB)](~~209076~~)。', - 'type' => 'string', - 'required' => false, - 'example' => '87***35-cn-hangzhou,812***3-cn-hangzhou', - ], + 'schema' => ['description' => '镜像启动命令。该命令必须为容器内存在的可执行的对象。示例如下:'."\n" + ."\n" + .'```'."\n" + .'command:'."\n" + .' - echo'."\n" + .' - abc'."\n" + .' - >'."\n" + .' - file0'."\n" + .'```'."\n" + .'根据上述示例,则`Command="echo", CommandArgs=["abc", ">", "file0"]`。'."\n" + ."\n\n" + .'><notice>当PackageType选择为DotnetZip时,此选项为必填项。></notice>', 'type' => 'string', 'required' => false, 'example' => 'echo'], ], [ - 'name' => 'Description', + 'name' => 'CommandArgs', 'in' => 'query', - 'schema' => [ - 'description' => '路由规则名称。', - 'type' => 'string', - 'required' => false, - 'example' => 'ingress-sae-test', - ], + 'schema' => ['description' => '镜像启动命令参数。上述启动命令**Command**所需参数。格式如下:'."\n" + ."\n" + .'`["a","b"]`'."\n" + ."\n" + .'在上述示例中,`CommandArgs=["abc", ">", "file0"]`,其中`["abc", ">", "file0"]`需要转成String类型,里面的格式为JSON数组。如果无此参数,则无需填写。'."\n" + .'><notice>当PackageType选择为DotnetZip时,此选项为必填项。></notice>', 'type' => 'string', 'required' => false, 'example' => '["a","b"]'], ], [ - 'name' => 'ListenerPort', + 'name' => 'Envs', 'in' => 'query', - 'schema' => [ - 'description' => 'SLB监听端口,该端口不能被占用。', - 'type' => 'string', - 'required' => false, - 'example' => '443', - ], + 'schema' => ['description' => '容器环境变量参数。支持自定义或引用配置项。如需引用配置项,请先创建ConfigMap实例。更多信息,请参见[CreateConfigMap](~~176914~~)。取值说明如下:'."\n" + .'- 自定义配置'."\n" + .' - **name**:环境变量名称。'."\n" + .' - **value**:环境变量值。优先级高于valueFrom。'."\n" + .'- 引用配置项(valueFrom)'."\n" + .' - **name**:环境变量名称。支持引用单个或全部键,如果引用全部键,需输入`sae-sys-configmap-all-<配置项名称>`,例如`sae-sys-configmap-all-test1`。'."\n" + .' - **valueFrom**:环境变量引用。取值为`configMapRef`。'."\n" + .' - **configMapId**:配置项ID。'."\n" + .' - **key**:键。如果引用全部健值,则不设置该字段。', 'type' => 'string', 'required' => false, 'example' => '['."\n" + .' {'."\n" + .' "name": "sae-sys-configmap-all-hello",'."\n" + .' "valueFrom": {'."\n" + .' "configMapRef": {'."\n" + .' "configMapId": 100,'."\n" + .' "key": ""'."\n" + .' }'."\n" + .' }'."\n" + .' },'."\n" + .' {'."\n" + .' "name": "hello",'."\n" + .' "valueFrom": {'."\n" + .' "configMapRef": {'."\n" + .' "configMapId": 101,'."\n" + .' "key": "php-fpm"'."\n" + .' }'."\n" + .' }'."\n" + .' },'."\n" + .' {'."\n" + .' "name": "envtmp",'."\n" + .' "value": "newenv"'."\n" + .' }'."\n" + .']'], ], [ - 'name' => 'DefaultRule', + 'name' => 'CustomHostAlias', 'in' => 'query', - 'schema' => [ - 'description' => '默认转发规则。按照IP地址,通过指定端口转发流量到指定应用。参数说明如下:'."\n" - ."\n" - .'- **appId**:应用ID。'."\n" - .'- **containerPort**:应用实例端口。'."\n" - ."\n" - .'> 所有未匹配或不满足**Rules**转发规则的请求都会转到该指定应用。', - 'type' => 'string', - 'required' => false, - 'example' => '{"appId":"395b60e4-0550-458d-9c54-a265d036****","containerPort":8080}', - ], + 'schema' => ['description' => '容器内自定义Host映射。取值说明如下:'."\n" + ."\n" + .'- **hostName**:域名或主机名。'."\n" + .'- **ip**:IP地址。', 'type' => 'string', 'required' => false, 'example' => '[{"hostName":"samplehost","ip":"127.0.0.1"}]'], ], [ - 'name' => 'Rules', - 'in' => 'formData', - 'schema' => [ - 'description' => '转发规则。按照域名和请求路径,通过指定端口转发流量到指定应用。参数说明如下:'."\n" - ."\n" - .'- **appId**:应用ID。'."\n" - .'- **containerPort**:应用实例端口。'."\n" - .'- **domain**:域名。'."\n" - .'- **path**:请求路径。'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '[{"appId":"395b60e4-0550-458d-9c54-a265d036****","containerPort":8080,"domain":"www.sae.site","path":"/path1"},{"appId":"666403ce-d25b-47cf-87fe-497565d2****","containerPort":8080,"domain":"sae.site","path":"/path2"}]', - ], + 'name' => 'JarStartOptions', + 'in' => 'query', + 'schema' => ['description' => 'JAR包启动应用选项。应用默认启动命令:`$JAVA_HOME/bin/java $JarStartOptions -jar $CATALINA_OPTS "$package_path" $JarStartArgs`', 'type' => 'string', 'required' => false, 'example' => '-Xms4G -Xmx4G'], ], [ - 'name' => 'LoadBalanceType', + 'name' => 'JarStartArgs', 'in' => 'query', - 'schema' => [ - 'description' => '废弃参数,已不支持更新。', - 'type' => 'string', - 'required' => false, - 'example' => 'clb', - ], + 'schema' => ['description' => 'JAR包启动应用参数。应用默认启动命令:`$JAVA_HOME/bin/java $JarStartOptions -jar $CATALINA_OPTS "$package_path" $JarStartArgs`', 'type' => 'string', 'required' => false, 'example' => 'custom-args'], ], [ - 'name' => 'ListenerProtocol', + 'name' => 'Liveness', 'in' => 'query', - 'schema' => [ - 'description' => '请求转发协议。取值说明如下:'."\n" - ."\n" - .'- **HTTP**:适用于需要对数据内容进行识别的应用。'."\n" - .'- **HTTPS**:适用于需要加密传输的应用。', - 'type' => 'string', - 'required' => false, - 'example' => 'HTTP', - ], + 'schema' => ['description' => '容器健康检查,健康检查失败的容器将被关闭并恢复。支持方式如下:'."\n" + ."\n" + .'- **exec**:例如 `{"exec":{"command":\\["sh","-c","cat/home/admin/start.sh"]},"initialDelaySeconds":30,"periodSeconds":30,"timeoutSeconds":2}`'."\n" + .'- **httpGet**:例如`{"httpGet":{"path":"/","port":18091,"scheme":"HTTP","isContainKeyWord":true,"keyWord":"SAE"},"initialDelaySeconds":11,"periodSeconds":10,"timeoutSeconds":1}`'."\n" + .'- **tcpSocket**:例如`{"tcpSocket":{"port":18091},"initialDelaySeconds":11,"periodSeconds":10,"timeoutSeconds":1}`'."\n" + ."\n" + .'> 只能选择一种方式进行健康检查。'."\n" + ."\n" + .'参数说明如下:'."\n" + ."\n" + .'- **exec.command**:设置健康检查命令。'."\n" + .'- **httpGet.path**:访问路径。'."\n" + .'- **httpGet.scheme**:**HTTP**或**HTTPS**。'."\n" + .'- **httpGet.isContainKeyWord**:**true**表示包含关键字,**false**表示不包含关键字,缺失该字段表示不使用高级功能。'."\n" + .'- **httpGet.keyWord**:自定义的关键字,使用时不能缺失**isContainKeyWord**字段。'."\n" + .'- **tcpSocket.port**:tcp连接检测的端口 。'."\n" + .'- **initialDelaySeconds**:设置健康检查延迟检测时间,默认为10,单位为秒。'."\n" + .'- **periodSeconds**:设置健康检查周期,默认为30,单位为秒。'."\n" + .'- **timeoutSeconds**:设置健康检查超时等待时间,默认为1,单位为秒。如果设置为0或不设置,默认超时等待时间为1秒。'."\n", 'type' => 'string', 'required' => false, 'example' => '{"exec":{"command":["sh","-c","cat /home/admin/start.sh"]},"initialDelaySeconds":30,"periodSeconds":30,"timeoutSeconds":2}'], ], [ - 'name' => 'RequestTimeout', + 'name' => 'Readiness', 'in' => 'query', - 'schema' => [ - 'title' => '指定请求超时时间。单位:秒。'."\n" - ."\n" - .'取值:1~180。'."\n" - ."\n" - .'默认值:60。'."\n" - ."\n" - .'如果在超时时间内后端服务器一直没有响应,负载均衡将放弃等待,并给客户端返回HTTP 504错误码。', - 'description' => '请求超时事件,单位秒(s)。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '60', - ], + 'schema' => ['description' => '应用启动状态检查,多次健康检查失败的容器将被关闭并重启。不通过健康检查的容器将不会有SLB流量进入。支持**exec**、**httpGet**和**tcpSocket**方式。具体示例,请参见**Liveness**参数。'."\n" + ."\n" + .'> 只能选择一种方式进行健康检查。', 'type' => 'string', 'required' => false, 'example' => '{"exec":{"command":["sh","-c","cat /home/admin/start.sh"]},"initialDelaySeconds":30,"periodSeconds":30,"timeoutSeconds":2}'], ], [ - 'name' => 'SecurityPolicyId', + 'name' => 'Deploy', 'in' => 'query', - 'schema' => [ - 'title' => '安全策略 ID。支持系统安全策略和自定义安全策略。'."\n" - .'说明'."\n" - .'仅 HTTPS 监听支持此参数。', - 'description' => '安全策略实例 ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'tls_cipher_policy_1_2_strict_with_1_3', - ], + 'schema' => ['description' => '是否立即部署。取值说明如下:'."\n" + ."\n" + .'- **true**:默认值,立即部署。'."\n" + .'- **false**:稍后部署。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], [ - 'name' => 'IdleTimeout', + 'name' => 'EdasContainerVersion', 'in' => 'query', - 'schema' => [ - 'title' => '指定连接空闲超时时间。单位:秒。'."\n" - ."\n" - .'取值范围:1~60。'."\n" - ."\n" - .'默认值:15。'."\n" - ."\n" - .'如果在超时时间内一直没有访问请求,负载均衡会暂时中断当前连接,直到一下次请求来临时重新建立新的连接。', - 'description' => '空闲连接超时时间,单位秒(s)。'."\n" - .'> 取值为0,表示使用默认的空闲超时值。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '15', - ], + 'schema' => ['description' => 'HSF框架中应用运行环境版本,例如Ali-Tomcat容器。', 'type' => 'string', 'required' => false, 'example' => '3.5.3'], ], [ - 'name' => 'EnableXForwardedFor', + 'name' => 'Timezone', 'in' => 'query', - 'schema' => [ - 'type' => 'boolean', - 'required' => false, - ], + 'schema' => ['description' => '时区,默认为**Asia/Shanghai**。', 'type' => 'string', 'required' => false, 'example' => 'Asia/Shanghai'], ], [ - 'name' => 'EnableXForwardedForClientSrcPort', + 'name' => 'SlsConfigs', 'in' => 'query', - 'schema' => [ - 'type' => 'boolean', - 'required' => false, - ], + 'schema' => ['description' => '日志采集到SLS的配置。'."\n" + ."\n" + .'- 使用SAE自动创建的SLS资源:`[{"logDir":"","logType":"stdout"},{"logDir":"/tmp/a.log"}]`。'."\n" + .'- 使用自定义的SLS资源:`[{"projectName":"test-sls","logType":"stdout","logDir":"","logstoreName":"sae","logtailName":""},{"projectName":"test","logDir":"/tmp/a.log","logstoreName":"sae","logtailName":""}]`。'."\n" + ."\n" + .'参数说明如下:'."\n" + ."\n" + .'- **projectName**:配置SLS上的Project名称。 '."\n" + .'- **logDir**:日志路径。'."\n" + .'- **logType**:日志类型。**stdout**表示容器标准输出日志,仅可设置1条;如果不设置,则表示收集文件日志。'."\n" + .'- **logstoreName**:配置SLS上的Logstore名称。'."\n" + .'- **logtailName**:配置SLS上的Logtail名称,如果不指定,则表示新建Logtail。'."\n" + ."\n" + .'多次部署时如果SLS采集配置没有变更,则不需要设置该参数(即请求中无需包含**SlsConfigs**字段);如果不再需要使用SLS采集功能,您需要在请求中将该字段的值设置为空字符串(即请求中**SlsConfigs**字段的值为"")。'."\n" + ."\n" + .'> 随应用自动创建的Project会随着应用删除而删除,因此在选择已有Project时,不能选择SAE自动创建的Project。', 'type' => 'string', 'required' => false, 'example' => '[{"logDir":"","logType":"stdout"},{"logDir":"/tmp/a.log"}]'], ], [ - 'name' => 'EnableXForwardedForProto', + 'name' => 'NasId', 'in' => 'query', - 'schema' => [ - 'type' => 'boolean', - 'required' => false, - ], + 'schema' => ['description' => '不推荐配置该字段,推荐配置**NasConfigs**。挂载的NAS的ID,必须与集群处在同一个地域。它必须有可用的挂载点创建额度,或者其挂载点已经在VPC内的交换机上。如果不填,且存在**mountDescs**字段,则默认将自动购买一个NAS并挂载至VPC内的交换机上。'."\n" + ."\n" + .'部署时如果配置没有变更,则不需要设置该参数(即请求中无需包含**NASId**字段);如果需要清除NAS配置,您需要在请求中将该字段的值设置为空字符串(即请求中**NASId**字段的值为"")。', 'type' => 'string', 'required' => false, 'example' => 'KSAK****'], ], [ - 'name' => 'EnableXForwardedForSlbId', + 'name' => 'MountHost', 'in' => 'query', - 'schema' => [ - 'type' => 'boolean', - 'required' => false, - ], + 'schema' => ['description' => '不推荐配置该字段,推荐配置**NasConfigs**。NAS在应用VPC内的挂载点。部署时如果配置没有变更,则不需要设置该参数(即请求中无需包含**MountHost**字段);如果需要清除NAS配置,您需要在请求中将该字段的值设置为空字符串(即请求中**MountHost**字段的值为"")。', 'type' => 'string', 'required' => false, 'example' => 'example.com'], ], [ - 'name' => 'EnableXForwardedForSlbPort', + 'name' => 'MountDesc', 'in' => 'query', - 'schema' => [ - 'type' => 'boolean', - 'required' => false, - ], + 'schema' => ['description' => '不推荐配置该字段,推荐配置**NasConfigs**。NAS挂载描述。部署时如果配置没有变更,则不需要设置该参数(即请求中无需包含**MountDesc**字段);如果需要清除NAS配置,您需要在请求中将该字段的值设置为空字符串(即请求中**MountDesc**字段的值为"")。', 'type' => 'string', 'required' => false, 'example' => '[{mountPath: "/tmp", nasPath: "/"}]'], ], [ - 'name' => 'CorsConfig', + 'name' => 'PreStop', 'in' => 'query', - 'schema' => [ - 'type' => 'string', - 'required' => false, - ], + 'schema' => ['description' => '容器停止前执行脚本。在容器被删除前触发执行一段脚本,格式如:`{"exec":{"command":\\["cat","/etc/group"]}}`', 'type' => 'string', 'required' => false, 'example' => '{"exec":{"command":["cat","/etc/group"]}}'], ], [ - 'name' => 'EnableGzip', + 'name' => 'PostStart', 'in' => 'query', - 'schema' => [ - 'type' => 'boolean', - 'required' => false, - ], + 'schema' => ['description' => '容器启动后执行脚本。在容器被创建后立刻触发执行一段脚本,格式如:`{"exec":{"command":\\["cat","/etc/group"]}}`', 'type' => 'string', 'required' => false, 'example' => '{"exec":{"command":["cat","/etc/group"]}}'], ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'description' => '返回数据。', - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], - 'Data' => [ - 'description' => '返回结果。', - 'type' => 'object', - 'properties' => [ - 'IngressId' => [ - 'description' => '路由规则ID。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '87', - ], - ], - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '更新Ingress实例配置是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:更新成功。'."\n" - .'- **false**:更新失败。', - 'type' => 'boolean', - 'example' => 'true', - ], - ], - ], + [ + 'name' => 'WarStartOptions', + 'in' => 'query', + 'schema' => ['description' => '设置WAR包部署应用的启动命令,操作步骤与镜像部署的启动命令配置操作相同。更多信息,请参见[设置启动命令](~~96677~~)。', 'type' => 'string', 'required' => false, 'example' => 'CATALINA_OPTS=\\"$CATALINA_OPTS $Options\\" catalina.sh run'], ], - ], - 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], - [ - 'errorCode' => 'Exceed.IngressRule', - 'errorMessage' => 'The number of Ingress related rules must be less than or equal to 40.', - ], - [ - 'errorCode' => 'SlbListenerPort.NotAvailable', - 'errorMessage' => 'The SLB listening port is unavailable: slbId [%s], port [%s]', - ], - [ - 'errorCode' => 'SSLCert.NotFound', - 'errorMessage' => 'The specified SSL certificate cannot be found.', - ], + [ + 'name' => 'ConfigMapMountDesc', + 'in' => 'formData', + 'schema' => ['description' => '**ConfigMap**挂载描述。使用在命名空间配置项页面创建的配置项来向容器中注入配置信息。参数说明如下:'."\n" + ."\n" + .'- **configMapId**:ConfigMap实例ID。可通过调用[ListNamespacedConfigMaps](~~176917~~)接口获取。'."\n" + .'- **key**:键值。'."\n" + ."\n" + .'> 可通过传递`sae-sys-configmap-all`参数挂载所有键。'."\n" + ."\n" + .'- **mountPath**:挂载路径。'."\n", 'type' => 'string', 'required' => false, 'example' => '[{"configMapId":16,"key":"test","mountPath":"/tmp"}]'], ], - ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"IngressId\\": 87\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<UpdateIngressResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <IngressId>87</IngressId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</UpdateIngressResponse>","errorExample":""}]', - 'title' => '更新ingress实例配置', - 'summary' => '更新Ingress实例配置。', - ], - 'DescribeNamespace' => [ - 'path' => '/pop/v1/paas/namespace', - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ [ - 'AK' => [], + 'name' => 'SecurityGroupId', + 'in' => 'query', + 'schema' => ['description' => '安全组ID。', 'type' => 'string', 'required' => false, 'example' => 'sg-wz969ngg2e49q5i4****'], ], - ], - 'operationType' => 'read', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '6338', - 'abilityTreeNodes' => [ - 'FEATUREsaeD9PL61', + [ + 'name' => 'AutoConfig', + 'in' => 'query', + 'schema' => ['description' => '是否自动配置网络环境。取值说明如下:'."\n" + ."\n" + .'- **true**:创建应用时SAE自动配置网络环境。**NamespaceId**、**VpcId**、**vSwitchId**和**SecurityGroupId**的取值将被忽略。'."\n" + .'- **false**:创建应用时SAE手动配置网络环境。'."\n" + ."\n" + .'> 如果选择为**true**,则传其他的**NamespaceId**会被忽略。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], - ], - 'parameters' => [ [ - 'name' => 'NamespaceId', + 'name' => 'TerminationGracePeriodSeconds', 'in' => 'query', - 'schema' => [ - 'description' => '命名空间ID。默认命名空间不可查询、更改或删除。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-beijing:test', - ], + 'schema' => ['description' => '优雅下线超时时间,默认为30,单位为秒。取值范围为1~300。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '6000', 'minimum' => '0', 'example' => '30', 'default' => '30'], ], [ - 'name' => 'NameSpaceShortId', + 'name' => 'PhpArmsConfigLocation', 'in' => 'query', - 'schema' => [ - 'description' => '短版命名空间ID,不需要带上region;不超过20个字符,仅允许小写英文字母和数字。', - 'type' => 'string', - 'required' => false, - 'example' => 'test', - ], + 'schema' => ['description' => 'PHP应用监控挂载路径,需要您保证PHP服务器一定会加载这个路径的配置文件。'."\n" + .'您无需关注配置内容,SAE会自动渲染正确的配置文件。', 'type' => 'string', 'required' => false, 'example' => '/usr/local/etc/php/conf.d/arms.ini'], ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'description' => '返回数据。', - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a981dd515966966104121683d****', - ], - 'Data' => [ - 'description' => '命名空间信息。', - 'type' => 'object', - 'properties' => [ - 'NamespaceDescription' => [ - 'description' => '命名空间描述。', - 'type' => 'string', - 'example' => 'desc', - ], - 'NamespaceId' => [ - 'description' => '命名空间ID。默认命名空间不可查询、更改或删除。', - 'type' => 'string', - 'example' => 'cn-beijing:test', - ], - 'NamespaceName' => [ - 'description' => '命名空间名称。', - 'type' => 'string', - 'example' => 'name', - ], - 'RegionId' => [ - 'description' => '地域。', - 'type' => 'string', - 'example' => 'cn-beijing', - ], - 'NameSpaceShortId' => [ - 'description' => '短版命名空间ID。', - 'type' => 'string', - 'example' => 'test', - ], - 'EnableMicroRegistration' => [ - 'description' => '是否已启用SAE内置注册中心:'."\n" - .'- **true**'."\n" - .'- **false**', - 'type' => 'boolean', - 'example' => 'true', - ], - ], - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**目录。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '查询命名空间信息是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:查询成功。'."\n" - .'- **false**:查询失败。', - 'type' => 'boolean', - 'example' => 'true', - ], - ], - ], + [ + 'name' => 'PhpConfigLocation', + 'in' => 'query', + 'schema' => ['description' => 'PHP应用启动配置挂载路径,需要您保证PHP服务器会使用这个配置文件启动。', 'type' => 'string', 'required' => false, 'example' => '/usr/local/etc/php/php.ini'], ], - ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a981dd515966966104121683d****\\",\\n \\"Data\\": {\\n \\"NamespaceDescription\\": \\"desc\\",\\n \\"NamespaceId\\": \\"cn-beijing:test\\",\\n \\"NamespaceName\\": \\"name\\",\\n \\"RegionId\\": \\"cn-beijing\\",\\n \\"NameSpaceShortId\\": \\"test\\",\\n \\"EnableMicroRegistration\\": true\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeNamespaceResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a981dd515966966104121683d****</TraceId>\\n <Data>\\n <NamespaceDescription>desc</NamespaceDescription>\\n <NamespaceId>cn-beijing:test</NamespaceId>\\n <NamespaceName>name</NamespaceName>\\n <RegionId>cn-beijing</RegionId>\\n <NameSpaceShortId>test</NameSpaceShortId>\\n <EnableMicroRegistration>true</EnableMicroRegistration>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeNamespaceResponse>","errorExample":""}]', - 'title' => '查询命名空间详细信息', - 'summary' => '调用DescribeNamespace接口查询命名空间详细信息。', - ], - 'DescribeNamespaces' => [ - 'path' => '/pop/v1/paas/namespaces', - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ [ - 'AK' => [], + 'name' => 'PhpConfig', + 'in' => 'formData', + 'schema' => ['description' => 'PHP配置文件内容。', 'type' => 'string', 'required' => false, 'example' => 'k1=v1'], ], - ], - 'operationType' => 'read', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '6341', - 'abilityTreeNodes' => [ - 'FEATUREsaeD9PL61', + [ + 'name' => 'TomcatConfig', + 'in' => 'query', + 'schema' => ['description' => 'Tomcat文件配置,设置为""或"{}"表示删除配置:'."\n" + ."\n" + .'- **port**:端口范围为1024~65535,小于1024的端口需要Root权限才能操作。因为容器配置的是Admin权限,所以请填写大于1024的端口。如果不配置,则默认为8080。'."\n" + .'- **contextPath**:访问路径,默认为根目录"/"。'."\n" + .'- **maxThreads**:配置连接池的连接数大小,默认大小为400。'."\n" + .'- **uriEncoding**:Tomcat的编码格式,包括**UTF-8**、**ISO-8859-1**、**GBK和GB2312**。如果不设置,则默认为**ISO-8859-1**。'."\n" + .'- **useBodyEncodingForUri**:是否使用**BodyEncoding for URL**,默认为**true**。'."\n", 'type' => 'string', 'required' => false, 'example' => '{"port":8080,"contextPath":"/","maxThreads":400,"uriEncoding":"ISO-8859-1","useBodyEncodingForUri":true}'], ], - ], - 'parameters' => [ [ - 'name' => 'CurrentPage', + 'name' => 'OssMountDescs', + 'in' => 'formData', + 'schema' => ['title' => 'OSS挂载描述信息', 'description' => 'OSS挂载描述信息。参数说明如下:'."\n" + ."\n" + .'- **bucketName**:Bucket名称。'."\n" + .'- **bucketPath**:您在OSS创建的目录或OSS对象,如果OSS挂载目录不存在,会触发异常。'."\n" + .'- **mountPath**:您在SAE的容器路径。如果路径已存在,为覆盖关系;如果路径不存在,会新建。'."\n" + .'- **readOnly**:容器路径是否对挂载目录资源有可读权限,取值说明如下:'."\n" + .' - **true**:只读权限。'."\n" + .' - **false**:读写权限。', 'type' => 'string', 'required' => false, 'example' => '[{"bucketName": "oss-bucket", "bucketPath": "data/user.data", "mountPath": "/usr/data/user.data", "readOnly": true}]'], + ], + [ + 'name' => 'OssAkId', + 'in' => 'formData', + 'schema' => ['title' => 'OSS使用的AKID', 'description' => 'OSS读写的AccessKey ID。', 'type' => 'string', 'required' => false, 'example' => 'xxxxxx'], + ], + [ + 'name' => 'OssAkSecret', + 'in' => 'formData', + 'schema' => ['title' => 'OSS AKID对应的secret', 'description' => 'OSS读写的AccessKey Secret。', 'type' => 'string', 'required' => false, 'example' => 'xxxxxx'], + ], + [ + 'name' => 'Php', + 'in' => 'formData', + 'schema' => ['title' => 'PHP部署包依赖的PHP版本。镜像不支持', 'description' => 'PHP部署包依赖的PHP版本。镜像不支持。', 'type' => 'string', 'required' => false, 'example' => 'PHP-FPM 7.0'], + ], + [ + 'name' => 'AcrInstanceId', + 'in' => 'formData', + 'schema' => ['title' => 'ACR 企业版实例 ID', 'description' => '容器镜像服务ACR企业版实例ID。当**ImageUrl**为容器镜像服务企业版时必填。', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'cri-xxxxxx'], + ], + [ + 'name' => 'AcrAssumeRoleArn', 'in' => 'query', - 'schema' => [ - 'description' => '当前页码。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => true, - 'example' => '1', - ], + 'schema' => ['description' => '跨账号拉取镜像时所需的RAM角色的ARN。更多信息,请参见[通过RAM角色实现跨云账号授权](~~223585~~)。', 'type' => 'string', 'required' => false, 'example' => 'acs:ram::123456789012****:role/adminrole'], ], [ - 'name' => 'PageSize', + 'name' => 'ImagePullSecrets', 'in' => 'query', - 'schema' => [ - 'description' => '分页查询时设置的每页数量。取值范围\\[0,10000\\]。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => true, - 'example' => '10', - ], + 'schema' => ['description' => '对应保密字典ID。', 'type' => 'string', 'required' => false, 'example' => '10'], ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'description' => '返回数据。', - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a981dd515966966104121683d****', - ], - 'Data' => [ - 'description' => '命名空间信息列表。', - 'type' => 'object', - 'properties' => [ - 'CurrentPage' => [ - 'description' => '当前页码。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'TotalSize' => [ - 'description' => '命名空间总数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '100', - ], - 'PageSize' => [ - 'description' => '分页查询时设置的每页数量。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'Namespaces' => [ - 'description' => '命名空间列表。', - 'type' => 'array', - 'items' => [ - 'description' => '命名空间信息。', - 'type' => 'object', - 'properties' => [ - 'NamespaceDescription' => [ - 'description' => '命名空间描述。', - 'type' => 'string', - 'example' => 'desc', - ], - 'AccessKey' => [ - 'description' => 'ACM专用AccessKey ID,用于操作ACM某个命名空间内的数据。更多信息,请参见[阿里云AccessKey和ACM专用AccessKey的区别](~~68941~~)。', - 'type' => 'string', - 'example' => 'b34dbe3315c64f9f99b58ea447ec****', - ], - 'SecretKey' => [ - 'description' => 'ACM专用AccessKey Secret,用于操作ACM某个命名空间内的数据。更多信息,请参见[阿里云AccessKey和ACM专用AccessKey的区别](~~68941~~)。', - 'type' => 'string', - 'example' => 'G/w6sseK7+nb3S6HBmANDBMD****', - ], - 'NamespaceId' => [ - 'description' => '命名空间ID。默认命名空间不可查询、更改或删除。', - 'type' => 'string', - 'example' => 'cn-beijing:test', - ], - 'AddressServerHost' => [ - 'description' => '主机服务地址。', - 'type' => 'string', - 'example' => 'addr-bj-internal.edas.aliyun.com', - ], - 'NamespaceName' => [ - 'description' => '命名空间名称。', - 'type' => 'string', - 'example' => 'name', - ], - 'TenantId' => [ - 'description' => '租户ID。', - 'type' => 'string', - 'example' => '838cad95-973f-48fe-830b-2a8546d7****', - ], - 'RegionId' => [ - 'description' => '地域。', - 'type' => 'string', - 'example' => 'cn-beijing', - ], - 'NameSpaceShortId' => [ - 'description' => '短版命名空间ID。', - 'type' => 'string', - 'example' => 'test', - ], - ], - ], - ], - ], - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**目录。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '查询命名空间列表是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:查询成功。'."\n" - .'- **false**:查询失败。', - 'type' => 'boolean', - 'example' => 'true', - ], - ], - ], + [ + 'name' => 'AssociateEip', + 'in' => 'formData', + 'schema' => ['title' => '是否绑定EIP', 'description' => '是否绑定EIP。取值说明如下:'."\n" + ."\n" + .'- **true**:绑定。'."\n" + .'- **false**:不绑定。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], - ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a981dd515966966104121683d****\\",\\n \\"Data\\": {\\n \\"CurrentPage\\": 1,\\n \\"TotalSize\\": 100,\\n \\"PageSize\\": 10,\\n \\"Namespaces\\": [\\n {\\n \\"NamespaceDescription\\": \\"desc\\",\\n \\"AccessKey\\": \\"b34dbe3315c64f9f99b58ea447ec****\\",\\n \\"SecretKey\\": \\"G/w6sseK7+nb3S6HBmANDBMD****\\",\\n \\"NamespaceId\\": \\"cn-beijing:test\\",\\n \\"AddressServerHost\\": \\"addr-bj-internal.edas.aliyun.com\\",\\n \\"NamespaceName\\": \\"name\\",\\n \\"TenantId\\": \\"838cad95-973f-48fe-830b-2a8546d7****\\",\\n \\"RegionId\\": \\"cn-beijing\\",\\n \\"NameSpaceShortId\\": \\"test\\"\\n }\\n ]\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeNamespacesResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a981dd515966966104121683d****</TraceId>\\n <Data>\\n <CurrentPage>1</CurrentPage>\\n <TotalSize>100</TotalSize>\\n <PageSize>10</PageSize>\\n <Namespaces>\\n <NamespaceDescription>desc</NamespaceDescription>\\n <AccessKey>b34dbe3315c64f9f99b58ea447ec****</AccessKey>\\n <SecretKey>G/w6sseK7+nb3S6HBmANDBMD****</SecretKey>\\n <NamespaceId>cn-beijing:test</NamespaceId>\\n <AddressServerHost>addr-bj-internal.edas.aliyun.com</AddressServerHost>\\n <NamespaceName>name</NamespaceName>\\n <TenantId>838cad95-973f-48fe-830b-2a8546d7****</TenantId>\\n <RegionId>cn-beijing</RegionId>\\n </Namespaces>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeNamespacesResponse>","errorExample":""}]', - 'title' => '查询命名空间列表', - 'summary' => '调用DescribeNamespaces接口查询命名空间列表。', - ], - 'DescribeNamespaceList' => [ - 'path' => '/pop/v1/sam/namespace/describeNamespaceList', - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ [ - 'AK' => [], + 'name' => 'ProgrammingLanguage', + 'in' => 'query', + 'schema' => ['description' => '创建应用的技术栈语言。取值说明如下:'."\n" + ."\n" + .'- **java**:Java语言。'."\n" + .'- **php**:PHP语言。'."\n" + .'- **python**:Python语言'."\n" + .'- **dotnet**:.NET Core语言'."\n" + .'- **other**:多语言,例如C++、Go和Node.js等。', 'type' => 'string', 'required' => false, 'example' => 'java'], ], - ], - 'operationType' => 'read', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '6339', - 'abilityTreeNodes' => [ - 'FEATUREsaeBRTWZ3', + [ + 'name' => 'KafkaConfigs', + 'in' => 'query', + 'schema' => ['description' => '日志采集到Kafka的配置汇总信息。取值说明如下:'."\n" + ."\n" + .'- **kafkaEndpoint**:Kafka API的服务接入地址。'."\n" + .'- **kafkaInstanceId**:Kafka实例ID。'."\n" + .'- **kafkaConfigs**:单条或多条日志的配置汇总信息。取值说明,请参见本文的请求参数**kafkaConfigs**。', 'type' => 'string', 'required' => false, 'example' => '{"kafkaEndpoint":"10.0.X.XXX:XXXX,10.0.X.XXX:XXXX,10.0.X.XXX:XXXX","kafkaInstanceId":"alikafka_pre-cn-7pp2l8kr****","kafkaConfigs":[{"logType":"file_log","logDir":"/tmp/a.log","kafkaTopic":"test2"},{"logType":"stdout","logDir":"","kafkaTopic":"test"}]}'], ], - ], - 'parameters' => [ [ - 'name' => 'ContainCustom', + 'name' => 'PvtzDiscoverySvc', 'in' => 'query', - 'schema' => [ - 'description' => '是否返回自定义命名空间。取值说明如下:'."\n" - ."\n" - .'- **true**:返回自定义命名空间。'."\n" - .'- **false**:不返回自定义命名空间。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'schema' => ['description' => '开启K8s Service服务注册发现。取值说明如下:'."\n" + ."\n" + .'- **serviceName**:服务名称。格式为`自定义-命名空间ID`,其中后缀`-命名空间ID`不支持自定义,需根据应用所在命名空间填写。例如,选择华北2(北京)地域的默认命名空间,则为`-cn-beijing-default`。'."\n" + .'- **namespaceId**:命名空间ID。'."\n" + .'- **portProtocols**:端口与协议。端口取值范围为\\[1,65535],协议支持**TCP**和**UDP**。'."\n" + .'- **portAndProtocol**:端口与协议。端口取值范围为\\[1,65535],协议支持**TCP**和**UDP**。**优先推荐portProtocols,如果设置了portProtocols,仅portProtocols生效**。'."\n" + .'- **enable**:开启K8s Service服务注册发现。', 'type' => 'string', 'required' => false, 'example' => '{"serviceName":"bwm-poc-sc-gateway-cn-beijing-front","namespaceId":"cn-beijing:front","portAndProtocol":{"18012":"TCP"},"enable":true,"portProtocols":[{"port":18012,"protocol":"TCP"}]}'], ], [ - 'name' => 'HybridCloudExclude', + 'name' => 'MicroRegistration', 'in' => 'query', - 'schema' => [ - 'description' => '是否排除混合云命名空间。取值说明如下:'."\n" - ."\n" - .'- **true**:排除混合云命名空间。 '."\n" - .'- **false**:不排除混合云命名空间。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'schema' => ['description' => '选择Nacos注册中心,取值说明如下:'."\n" + .'- **0**:SAE内置Nacos。'."\n" + .'- **1**:用户自建Nacos。'."\n" + .'- **2**:MSE商业版Nacos。', 'type' => 'string', 'required' => false, 'example' => '"0"'], ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'description' => '返回数据。', - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '30375C38-F4ED-4135-A0AE-5C75DC7F****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => 'ac1a0b2215622920113732501e****', - ], - 'Data' => [ - 'description' => '命名空间列表。', - 'type' => 'array', - 'items' => [ - 'description' => '命名空间信息。', - 'type' => 'object', - 'properties' => [ - 'VpcId' => [ - 'description' => 'VPC ID。', - 'type' => 'string', - 'example' => 'vpc-2ze0i263cnn311nvj****', - ], - 'VSwitchId' => [ - 'description' => 'vSwitch ID。', - 'type' => 'string', - 'example' => 'vsw-2ze559r1z1bpwqxwp****', - ], - 'Custom' => [ - 'description' => '是否返回自定义命名空间。取值说明如下:'."\n" - ."\n" - .'- **true**:返回自定义命名空间。'."\n" - .'- **false**:不返回自定义命名空间。', - 'type' => 'boolean', - 'example' => 'true', - ], - 'AgentInstall' => [ - 'description' => 'Agent安装命令。', - 'type' => 'string', - 'example' => 'http://edas-bj.oss-cn-beijing-internal.aliyuncs.com/test/install.sh', - ], - 'NamespaceId' => [ - 'description' => '命名空间ID。', - 'type' => 'string', - 'example' => 'cn-beijing:test', - ], - 'HybridCloudEnable' => [ - 'description' => '是否排除混合云命名空间。取值说明如下:'."\n" - ."\n" - .'- **true**:排除混合云命名空间。 '."\n" - .'- **false**:不排除混合云命名空间。', - 'type' => 'boolean', - 'example' => 'false', - ], - 'SecurityGroupId' => [ - 'description' => '安全组ID。', - 'type' => 'string', - 'example' => 'sg-wz969ngg2e49q5i4****', - ], - 'Current' => [ - 'description' => '废弃参数,无特殊含义。', - 'type' => 'boolean', - 'example' => 'false', - ], - 'NamespaceName' => [ - 'description' => '命名空间名称。', - 'type' => 'string', - 'example' => 'test', - ], - 'RegionId' => [ - 'description' => '命名空间所属地域。', - 'type' => 'string', - 'example' => 'cn-beijing', - ], - 'NameSpaceShortId' => [ - 'description' => '短版命名空间ID。', - 'type' => 'string', - 'example' => 'test', - ], - ], - ], - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '获取命名空间列表是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:获取成功。'."\n" - .'- **false**:获取失败。', - 'type' => 'boolean', - 'example' => 'true', - ], - ], - ], + [ + 'name' => 'MicroRegistrationConfig', + 'in' => 'formData', + 'schema' => ['title' => '注册中心配置信息', 'description' => '注册中心配置信息。', 'type' => 'string', 'required' => false, 'example' => '{\\"instanceId\\":\\"mse-cn-zvp2bh6h70r\\",\\"namespace\\":\\"4c0aa74f-57cb-423c-b6af-5d9f2d0e3dbd\\"}'], ], - ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"30375C38-F4ED-4135-A0AE-5C75DC7F****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"ac1a0b2215622920113732501e****\\",\\n \\"Data\\": [\\n {\\n \\"VpcId\\": \\"vpc-2ze0i263cnn311nvj****\\",\\n \\"VSwitchId\\": \\"vsw-2ze559r1z1bpwqxwp****\\",\\n \\"Custom\\": true,\\n \\"AgentInstall\\": \\"http://edas-bj.oss-cn-beijing-internal.aliyuncs.com/test/install.sh\\",\\n \\"NamespaceId\\": \\"cn-beijing:test\\",\\n \\"HybridCloudEnable\\": false,\\n \\"SecurityGroupId\\": \\"sg-wz969ngg2e49q5i4****\\",\\n \\"Current\\": false,\\n \\"NamespaceName\\": \\"test\\",\\n \\"RegionId\\": \\"cn-beijing\\",\\n \\"NameSpaceShortId\\": \\"test\\"\\n }\\n ],\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeNamespaceListResponse>\\n <RequestId>30375C38-F4ED-4135-A0AE-5C75DC7F****</RequestId>\\n <Message>success</Message>\\n <TraceId>ac1a0b2215622920113732501e****</TraceId>\\n <Data>\\n <VpcId>vpc-2ze0i263cnn311nvj****</VpcId>\\n <VSwitchId>vsw-2ze559r1z1bpwqxwp****</VSwitchId>\\n <Custom>true</Custom>\\n <AgentInstall>http://edas-bj.oss-cn-beijing-internal.aliyuncs.com/test/install.sh</AgentInstall>\\n <NamespaceId>cn-beijing:test</NamespaceId>\\n <HybridCloudEnable>false</HybridCloudEnable>\\n <SecurityGroupId>sg-wz969ngg2e49q5i4****</SecurityGroupId>\\n <Current>false</Current>\\n <NamespaceName>test</NamespaceName>\\n <RegionId>cn-beijing</RegionId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeNamespaceListResponse>","errorExample":""}]', - 'title' => '获取命名空间列表', - 'summary' => '调用DescribeNamespaceList接口获取命名空间列表。', - ], - 'ListAppEvents' => [ - 'path' => '/pop/v1/sam/app/listAppEvents', - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ [ - 'AK' => [], + 'name' => 'NasConfigs', + 'in' => 'query', + 'schema' => ['description' => '挂载NAS的配置。取值说明如下:'."\n" + ."\n" + .'- **mountPath**:容器挂载路径。'."\n" + .'- **readOnly**:取值为**false**时,表示拥有读写权限。'."\n" + .'- **nasId**:NAS ID。'."\n" + .'- **mountDomain**:容器挂载点地址。更多信息,请参见[DescribeMountTargets](~~62626~~)。'."\n" + .'- **nasPath**:NAS相对文件目录。', 'type' => 'string', 'required' => false, 'example' => '[{"mountPath":"/test1","readOnly":false,"nasId":"nasId1","mountDomain":"nasId1.cn-shenzhen.nas.aliyuncs.com","nasPath":"/test1"},{"nasId":"nasId2","mountDomain":"nasId2.cn-shenzhen.nas.aliyuncs.com","readOnly":false,"nasPath":"/test2","mountPath":"/test2"}]'], ], - ], - 'operationType' => 'read', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '6369', - 'abilityTreeNodes' => [ - 'FEATUREsae5BSSHJ', + [ + 'name' => 'Python', + 'in' => 'query', + 'schema' => ['description' => 'Python环境。支持**PYTHON 3.9.15**。', 'type' => 'string', 'required' => false, 'example' => 'PYTHON 3.9.15'], ], - ], - 'parameters' => [ [ - 'name' => 'CurrentPage', + 'name' => 'PythonModules', 'in' => 'query', - 'schema' => [ - 'description' => '当前页码。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], + 'schema' => ['description' => '自定义安装模块依赖。默认安装根目录下requirements.txt定义的依赖项。如果未配置或自定义软件包,可以指定安装的依赖。', 'type' => 'string', 'required' => false, 'example' => 'Flask==2.0'], ], [ - 'name' => 'PageSize', + 'name' => 'Dotnet', 'in' => 'query', - 'schema' => [ - 'description' => '分页查询时设置的每页行数。取值范围\\[0,10000]。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', - ], + 'schema' => ['description' => '.NET 框架的版本号:'."\n" + ."\n" + .'- .NET 3.1'."\n" + .'- .NET 5.0'."\n" + .'- .NET 6.0'."\n" + .'- .NET 7.0'."\n" + .'- .NET 8.0', 'type' => 'string', 'required' => false, 'example' => '.NET 3.1'], ], [ - 'name' => 'AppId', + 'name' => 'EnableEbpf', 'in' => 'query', - 'schema' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'f7730764-d88f-4b9a-8d8e-cd8efbfe****', - ], + 'schema' => ['description' => '基于eBPF技术,对非Java应用开启应用监控能力。取值说明如下:'."\n" + .'- **true**:开启。'."\n" + .'- **false**:关闭。默认值。', 'type' => 'string', 'required' => false, 'example' => 'false'], ], [ - 'name' => 'ObjectKind', + 'name' => 'SaeVersion', 'in' => 'query', 'schema' => [ - 'description' => '对象类型。取值说明如下:'."\n" + 'description' => 'SAE版本。支持版本如下:'."\n" ."\n" - .'- **Deployment**:应用。'."\n" - .'- **Pod**:应用实例。'."\n" - .'- **Service**:SLB。'."\n" - .'- **HorizontalPodAutoscaler**:自动弹性。'."\n" - .'- **CloneSet**:应用。', + .'- **v1**'."\n" + .'- **v2**', 'type' => 'string', 'required' => false, - 'example' => 'Pod', + 'example' => 'v1', + 'enum' => ['v1', 'v2'], ], ], [ - 'name' => 'ObjectName', + 'name' => 'AppSource', 'in' => 'query', - 'schema' => [ - 'description' => '对象名。支持前缀模糊搜索。', - 'type' => 'string', - 'required' => false, - 'example' => 'errew-b86bf540-b4dc-47d8-a42f-b4997c14bd8f-5595cbddd6-x****', - ], + 'schema' => ['description' => '选择micro_service,即为微服务应用。', 'type' => 'string', 'required' => false, 'example' => 'micro_service'], ], [ - 'name' => 'EventType', + 'name' => 'BaseAppId', + 'in' => 'formData', + 'schema' => ['description' => '基础应用ID。', 'type' => 'string', 'required' => false, 'example' => 'ee99cce6-1c8e-4bfa-96c3-3e2fa9de8a41'], + ], + [ + 'name' => 'ServiceTags', + 'in' => 'formData', + 'schema' => ['description' => '应用配置的灰度标签', 'type' => 'string', 'required' => false, 'example' => '{\\"alicloud.service.tag\\":\\"g1\\"}'], + ], + [ + 'name' => 'EnableNewArms', 'in' => 'query', - 'schema' => [ - 'description' => '事件类型。取值说明如下:'."\n" - ."\n" - .'- **Warning**:告警。'."\n" - .'- **Normal**:正常。'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'Warning', - ], + 'schema' => ['description' => '是否启用新的ARMS功能:'."\n" + ."\n" + .'- true:启用'."\n" + .'- false:不启用', 'type' => 'boolean', 'required' => false, 'example' => 'false'], ], [ - 'name' => 'Reason', + 'name' => 'EnableCpuBurst', + 'in' => 'query', + 'schema' => ['description' => '是否启用CPU Burst功能:'."\n" + ."\n" + .'- true:启用'."\n" + .'- false:不启用', 'type' => 'boolean', 'required' => false, 'example' => 'true'], + ], + [ + 'name' => 'OidcRoleName', 'in' => 'query', + 'schema' => ['description' => '设置身份认证服务RAM角色。'."\n" + .'> 需要提前创建同地域的OIDC身份供应商和身份供应商角色。具体信息,请参见<props="china">[创建OIDC身份供应商](https://help.aliyun.com/zh/ram/developer-reference/api-ims-2019-08-15-createoidcprovider?spm=a2c4g.11186623.help-menu-28625.d_4_1_0_3_2_7.7f0443efmdpxa3)和[创建角色SSO身份提供商](https://help.aliyun.com/zh/ram/developer-reference/api-ims-2019-08-15-createsamlprovider?spm=a2c4g.11186623.help-menu-28625.d_4_1_0_3_2_2.632244b1s8QbQt)</props><props="intl">[创建OIDC身份供应商](https://www.alibabacloud.com/help/zh/ram/developer-reference/api-ims-2019-08-15-createoidcprovider)和[创建角色SSO身份提供商](https://www.alibabacloud.com/help/zh/ram/developer-reference/api-ims-2019-08-15-createsamlprovider)</props>。', 'type' => 'string', 'required' => false, 'example' => 'sae-test'], + ], + [ + 'name' => 'SidecarContainersConfig', + 'in' => 'formData', + 'style' => 'json', 'schema' => [ - 'description' => '事件原因。支持前缀模糊搜索。', - 'type' => 'string', + 'description' => '容器配置信息。', + 'type' => 'array', + 'items' => ['description' => '容器配置信息。', 'required' => false, '$ref' => '#/components/schemas/SidecarContainerConfig'], 'required' => false, - 'example' => 'Started', ], ], [ - 'name' => 'Namespace', + 'name' => 'SecretMountDesc', 'in' => 'query', - 'schema' => [ - 'description' => '命名空间ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-beijing', - ], + 'schema' => ['description' => '**Secret**挂载描述。使用在命名空间保密字典页面创建的保密字典来向容器中注入保密信息。参数说明如下:'."\n" + ."\n" + .'- **secretId**:secret实例ID。可通过ListSecrets接口获取。'."\n" + .'- **key**:键值。'."\n" + ."\n" + .'> 可通过传递`sae-sys-secret-all`参数挂载所有键。'."\n" + ."\n" + .'- **mountPath**:挂载路径。', 'type' => 'string', 'required' => false, 'example' => '[{“secretId":10,”key":"test","mountPath":"/tmp"}]'], ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'description' => '返回数据。', - 'type' => 'object', - 'properties' => [ - 'Message' => [ - 'description' => '调用结果的附加信息。', - 'type' => 'string', - 'example' => 'success', - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'B4D805CA-926D-41B1-8E63-7AD0C1ED****', - ], - 'Data' => [ - 'description' => '事件列表。', - 'type' => 'object', - 'properties' => [ - 'CurrentPage' => [ - 'description' => '当前页码。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'AppEventEntity' => [ - 'description' => '事件。', - 'type' => 'array', - 'items' => [ - 'description' => '事件。', - 'type' => 'object', - 'properties' => [ - 'ObjectKind' => [ - 'description' => '对象种类。', - 'type' => 'string', - 'example' => 'Pod', - ], - 'EventType' => [ - 'description' => '事件类型。', - 'type' => 'string', - 'example' => 'Normal', - ], - 'LastTimestamp' => [ - 'description' => '最后出现时间。', - 'type' => 'string', - 'example' => '2020-02-19T05:01:28Z', - ], - 'Message' => [ - 'description' => '事件信息。', - 'type' => 'string', - 'example' => 'Created container', - ], - 'ObjectName' => [ - 'description' => '对象名称。', - 'type' => 'string', - 'example' => 'errew-b86bf540-b4dc-47d8-a42f-b4997c14bd8f-5595cbddd6-2****', - ], - 'Reason' => [ - 'description' => '事件原因。', - 'type' => 'string', - 'example' => 'Created', - ], - 'FirstTimestamp' => [ - 'description' => '首次出现时间。', - 'type' => 'string', - 'example' => '2020-02-19T05:01:28Z', - ], - 'CauseAnalysis' => [ - 'type' => 'string', - ], - ], - ], - ], - 'TotalSize' => [ - 'description' => '应用事件总数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '20', - ], - 'PageSize' => [ - 'description' => '分页查询时设置的每页数量。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - ], - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '查看应用事件是否成功。取值说明如下:'."\n" - .'- **true**:查看成功。'."\n" - .'- **false**:查看失败。', - 'type' => 'boolean', - 'example' => 'true', - ], - ], - ], + [ + 'name' => 'EnableSidecarResourceIsolated', + 'in' => 'formData', + 'schema' => ['description' => '是否启用Sidecar资源隔离:'."\n" + ."\n" + .'- true:进行隔离'."\n" + .'- false:不进行隔离', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], - ], - 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'get.event.error', - 'errorMessage' => 'Failed to obtain event information.', - ], - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], + [ + 'name' => 'CustomImageNetworkType', + 'in' => 'query', + 'schema' => ['description' => '自定义镜像类型,如果非自定义镜像,需要设置为空字符串:'."\n" + ."\n" + .'- internet:公网镜像'."\n" + .'- intranet:私网镜像', 'type' => 'string', 'required' => false, 'example' => 'internet'], ], - ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"B4D805CA-926D-41B1-8E63-7AD0C1ED****\\",\\n \\"Data\\": {\\n \\"CurrentPage\\": 1,\\n \\"AppEventEntity\\": [\\n {\\n \\"ObjectKind\\": \\"Pod\\",\\n \\"EventType\\": \\"Normal\\",\\n \\"LastTimestamp\\": \\"2020-02-19T05:01:28Z\\",\\n \\"Message\\": \\"Created container\\",\\n \\"ObjectName\\": \\"errew-b86bf540-b4dc-47d8-a42f-b4997c14bd8f-5595cbddd6-2****\\",\\n \\"Reason\\": \\"Created\\",\\n \\"FirstTimestamp\\": \\"2020-02-19T05:01:28Z\\",\\n \\"CauseAnalysis\\": \\"\\"\\n }\\n ],\\n \\"TotalSize\\": 20,\\n \\"PageSize\\": 10\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<ListAppEventsResponse>\\n <Message>success</Message>\\n <RequestId>B4D805CA-926D-41B1-8E63-7AD0C1ED****</RequestId>\\n <Data>\\n <CurrentPage>1</CurrentPage>\\n <AppEventEntity>\\n <ObjectKind>Pod</ObjectKind>\\n <EventType>Normal</EventType>\\n <LastTimestamp>2020-02-19T05:01:28Z</LastTimestamp>\\n <Message>Created container</Message>\\n <ObjectName>errew-b86bf540-b4dc-47d8-a42f-b4997c14bd8f-5595cbddd6-2****</ObjectName>\\n <Reason>Created</Reason>\\n <FirstTimestamp>2020-02-19T05:01:28Z</FirstTimestamp>\\n </AppEventEntity>\\n <TotalSize>20</TotalSize>\\n <PageSize>10</PageSize>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</ListAppEventsResponse>","errorExample":""}]', - 'title' => '查看应用事件', - 'summary' => '调用ListAppEvents接口查看应用事件。', - ], - 'ListNamespaceChangeOrders' => [ - 'path' => '/pop/v1/sam/changeorder/listNamespaceChangeOrders', - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ [ - 'AK' => [], + 'name' => 'ResourceType', + 'in' => 'query', + 'schema' => ['description' => '资源类型。支持NULL(默认)、default(默认)和haiguang(海光服务器)类型。', 'type' => 'string', 'required' => false, 'example' => 'NULL'], ], - ], - 'operationType' => 'read', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '75166', - 'abilityTreeNodes' => [ - 'FEATUREsaeD9PL61', + [ + 'name' => 'NewSaeVersion', + 'in' => 'query', + 'schema' => ['description' => '应用版本:'."\n" + ."\n" + .'- lite:轻量版'."\n" + .'- std:标准版'."\n" + .'- pro:专业版', 'type' => 'string', 'required' => false, 'example' => 'pro'], ], - ], - 'parameters' => [ [ - 'name' => 'NamespaceId', + 'name' => 'MicroserviceEngineConfig', 'in' => 'query', - 'schema' => [ - 'description' => '命名空间ID。', - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-shanghai:test', - ], + 'schema' => ['description' => '配置微服务治理功能。'."\n" + ."\n" + .'- 是否开启微服务治理(enable):'."\n" + ."\n" + .' - ture:开启'."\n" + ."\n" + .' - false:不开启'."\n" + ."\n" + .'- 配置无损上下线(mseLosslessRule):'."\n" + ."\n" + .' - delayTime:延迟时间'."\n" + ."\n" + .' - enable:是否启用无损上线功能,ture为开启,false为不开启。'."\n" + ."\n" + .' - notice:是否启用通知功能,ture为启用,false为启用。'."\n" + ."\n" + .' - warmupTime:小流量预热时长,单位为秒。', 'type' => 'string', 'required' => false, 'example' => '{"enable": true,"mseLosslessRule": {"delayTime": 0,"enable": false,"notice": false,"warmupTime": 120}}'], ], [ - 'name' => 'CoStatus', + 'name' => 'DiskSize', 'in' => 'query', + 'schema' => ['description' => '磁盘存储大小(单位GB)。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '50'], + ], + [ + 'name' => 'InitContainersConfig', + 'in' => 'formData', + 'style' => 'json', 'schema' => [ - 'description' => '发布单状态。取值说明如下:'."\n" - ."\n" - .'- **0**:准备。'."\n" - .'- **1**:执行中。'."\n" - .'- **2**:执行成功。'."\n" - .'- **3**:执行失败。'."\n" - .'- **6**:终止。'."\n" - .'- **10**:系统异常执行失败。', - 'type' => 'string', + 'description' => '初始化容器配置。', + 'type' => 'array', + 'items' => ['description' => '初始化容器配置', 'required' => false, '$ref' => '#/components/schemas/InitContainerConfig'], 'required' => false, - 'example' => '2', ], ], [ - 'name' => 'CoType', + 'name' => 'GpuConfig', 'in' => 'query', - 'schema' => [ - 'description' => '发布单类型。取值说明如下:'."\n" - ."\n" - .'- **CoBatchStartApplication**:批量启动应用。'."\n" - .'- **CoBatchStopApplication**:批量停止应用。', - 'type' => 'string', - 'required' => false, - 'example' => 'CoBatchStartApplication', - ], + 'schema' => ['type' => 'string', 'required' => false, 'description' => ''], ], [ - 'name' => 'Key', + 'name' => 'StartupProbe', 'in' => 'query', - 'schema' => [ - 'description' => '发布单描述信息模糊查询(包含此**key**的都会返回)。', - 'type' => 'string', - 'required' => false, - 'example' => 'test', - ], + 'schema' => ['description' => '启用应用启动探测。'."\n" + ."\n" + .'- 检查成功:表示应用启动成功,如果您配置了Liveness检查和Readiness检查,应用启动成功后会执行Liveness检查和Readiness检查。'."\n" + .'- 检查失败:表示应用启动失败,会上报异常并自动重启。'."\n" + .'> '."\n" + .'> - 支持 exec、httpGet 和 tcpSocket 方式。具体示例,请参见 Liveness 参数。'."\n" + .'> - 只能选择一种方式进行健康检查。', 'type' => 'string', 'required' => false, 'example' => '{"exec":{"command":["sh","-c","cat /home/admin/start.sh"]},"initialDelaySeconds":30,"periodSeconds":30,"timeoutSeconds":2}'], ], [ - 'name' => 'CurrentPage', + 'name' => 'IsStateful', 'in' => 'query', - 'schema' => [ - 'description' => '当前页。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], + 'schema' => ['description' => '是否有状态应用', 'type' => 'boolean', 'required' => false], ], [ - 'name' => 'PageSize', + 'name' => 'EnablePrometheus', 'in' => 'query', - 'schema' => [ - 'description' => '分页大小。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '20', - ], + 'schema' => ['description' => '是否开启Prometheus自定义指标采集', 'type' => 'boolean', 'required' => false, 'example' => 'false'], ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'description' => '返回数据。', - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '0bc3915638507554994370d****', - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Success' => [ - 'description' => '获取发布单列表是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:获取成功。'."\n" - .'- **false**:获取失败。', - 'type' => 'boolean', - 'example' => 'true', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => '调用结果的附加信息。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0bc3915638507554994370d****', - ], - 'Data' => [ - 'description' => '返回结果。', - 'type' => 'object', - 'properties' => [ - 'CurrentPage' => [ - 'description' => '当前分页。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'PageSize' => [ - 'description' => '分页大小。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '20', - ], - 'TotalSize' => [ - 'description' => '变更单总数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '32', - ], - 'ChangeOrderList' => [ - 'description' => '发布单列表。', - 'type' => 'array', - 'items' => [ - 'description' => '发布单列表数据。', - 'type' => 'object', - 'properties' => [ - 'Status' => [ - 'description' => '发布单状态。取值说明如下:'."\n" - ."\n" - .'- **0**:准备。'."\n" - .'- **1**:执行中。'."\n" - .'- **2**:执行成功。'."\n" - .'- **3**:执行失败。'."\n" - .'- **6**:终止。'."\n" - .'- **10**:系统异常执行失败。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '2', - ], - 'FinishTime' => [ - 'description' => '结束时间。', - 'type' => 'string', - 'example' => '2019-07-11 20:12:58', - ], - 'NamespaceId' => [ - 'description' => '命名空间ID。', - 'type' => 'string', - 'example' => 'cn-shanghai:test', - ], - 'CreateTime' => [ - 'description' => '创建时间。', - 'type' => 'string', - 'example' => '2019-07-11 15:54:49', - ], - 'UserId' => [ - 'description' => '用户ID。', - 'type' => 'string', - 'example' => 'test_sae', - ], - 'Source' => [ - 'description' => '变更单操作入口来源。', - 'type' => 'string', - 'example' => 'console', - ], - 'CreateUserId' => [ - 'description' => '创建用户ID。', - 'type' => 'string', - 'example' => 'test@aliyun.com', - ], - 'BatchCount' => [ - 'description' => '分批数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'CoTypeCode' => [ - 'description' => '发布单类型Code。取值说明如下:'."\n" - ."\n" - .'- **CoBatchStartApplication**:批量启动应用。'."\n" - .'- **CoBatchStopApplication**:批量停止应用。', - 'type' => 'string', - 'example' => 'CoBatchStartApplication', - ], - 'ChangeOrderId' => [ - 'description' => '发布单ID。', - 'type' => 'string', - 'example' => '7fa5c0-9ebb-4bb4-b383-1f885447****', - ], - 'BatchType' => [ - 'description' => '分批类型。取值说明如下:'."\n" - ."\n" - .'- **自动**:分批间处理方式为自动。'."\n" - .'- **手动**:分批间处理方式为手动。', - 'type' => 'string', - 'example' => '自动', - ], - 'Description' => [ - 'description' => '发布单描述信息。', - 'type' => 'string', - 'example' => '批量启动应用', - ], - 'GroupId' => [ - 'description' => '分组ID。', - 'type' => 'string', - 'example' => 'c9ecd2-cf6c-46c3-9f20-525de202****', - ], - 'CoType' => [ - 'description' => '发布单类型,是对**CoTypeCode**的描述。', - 'type' => 'string', - 'example' => 'msg.docker.app.actions.CoBatchStartApplication', - ], - 'Pipelines' => [ - 'description' => '变更流水线。', - 'type' => 'string', - 'example' => 'xxxx', - ], - ], - ], - ], - ], - ], - ], - ], + [ + 'name' => 'HeadlessPvtzDiscoverySvc', + 'in' => 'query', + 'schema' => ['description' => 'K8s Headless Service服务注册发现'."\n" + .'- serviceName:服务名称'."\n" + .'- namespaceId: 命名空间ID', 'type' => 'string', 'required' => false, 'example' => '{\\"serviceName\\":\\"leaf-test-headless\\",\\"namespaceId\\":\\"cn-zhangjiakou:prod\\"}'], ], - ], - 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'Resouce.no.permission', - 'errorMessage' => 'You are not authorized to operate on the specified resources.', - ], - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], + [ + 'name' => 'Html', + 'in' => 'query', + 'schema' => ['description' => 'Nginx版本'."\n" + .'- nginx 1.20'."\n" + .'- nginx 1.22'."\n" + .'- nginx 1.24'."\n" + .'- nginx 1.26'."\n" + .'- nginx 1.28', 'type' => 'string', 'required' => false, 'example' => 'nginx 1.28'], ], - ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"0bc3915638507554994370d****\\",\\n \\"ErrorCode\\": \\"空\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0bc3915638507554994370d****\\",\\n \\"Data\\": {\\n \\"CurrentPage\\": 1,\\n \\"PageSize\\": 20,\\n \\"TotalSize\\": 32,\\n \\"ChangeOrderList\\": [\\n {\\n \\"Status\\": 2,\\n \\"FinishTime\\": \\"2019-07-11 20:12:58\\",\\n \\"NamespaceId\\": \\"cn-shanghai:test\\",\\n \\"CreateTime\\": \\"2019-07-11 15:54:49\\",\\n \\"UserId\\": \\"test_sae\\",\\n \\"Source\\": \\"console\\",\\n \\"CreateUserId\\": \\"test@aliyun.com\\",\\n \\"BatchCount\\": 1,\\n \\"CoTypeCode\\": \\"CoBatchStartApplication\\",\\n \\"ChangeOrderId\\": \\"7fa5c0-9ebb-4bb4-b383-1f885447****\\",\\n \\"BatchType\\": \\"自动\\",\\n \\"Description\\": \\"批量启动应用\\",\\n \\"GroupId\\": \\"c9ecd2-cf6c-46c3-9f20-525de202****\\",\\n \\"CoType\\": \\"msg.docker.app.actions.CoBatchStartApplication\\",\\n \\"Pipelines\\": \\"xxxx\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<ListNamespaceChangeOrdersResponse>\\n <RequestId>0bc3915638507554994370d****</RequestId>\\n <Success>true</Success>\\n <Code>200</Code>\\n <Message>success</Message>\\n <TraceId>0bc3915638507554994370d****</TraceId>\\n <Data>\\n <CurrentPage>1</CurrentPage>\\n <PageSize>20</PageSize>\\n <TotalSize>32</TotalSize>\\n <ChangeOrderList>\\n <Status>2</Status>\\n <FinishTime>2019-07-11 20:12:58</FinishTime>\\n <NamespaceId>cn-shanghai:test</NamespaceId>\\n <CreateTime>2019-07-11 15:54:49</CreateTime>\\n <UserId>test_sae</UserId>\\n <Source>console</Source>\\n <CreateUserId>test@aliyun.com</CreateUserId>\\n <BatchCount>1</BatchCount>\\n <CoTypeCode>CoBatchStartApplication</CoTypeCode>\\n <ChangeOrderId>7fa5c0-9ebb-4bb4-b383-1f885447****</ChangeOrderId>\\n <BatchType>自动</BatchType>\\n <Description>批量启动应用</Description>\\n <GroupId>c9ecd2-cf6c-46c3-9f20-525de202****</GroupId>\\n <CoType>msg.docker.app.actions.CoBatchStartApplication</CoType>\\n <Pipelines>xxxx</Pipelines>\\n </ChangeOrderList>\\n </Data>\\n</ListNamespaceChangeOrdersResponse>","errorExample":""}]', - 'title' => '获取命名空间发布单列表', - 'summary' => '获取命名空间发布单列表。', - ], - 'DescribeNamespaceResources' => [ - 'path' => '/pop/v1/sam/namespace/describeNamespaceResources', - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ [ - 'AK' => [], + 'name' => 'EmptyDirDesc', + 'in' => 'formData', + 'schema' => ['description' => '共享临时存储配置。', 'type' => 'string', 'required' => false, 'example' => '[{\\"name\\":\\"workdir\\",\\"mountPath\\":\\"/usr/local/tomcat/webapps\\"}]'], ], - ], - 'operationType' => 'read', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '6340', - 'abilityTreeNodes' => [ - 'FEATUREsaeRVPNSA', + [ + 'name' => 'EnableNamespaceAgentVersion', + 'in' => 'query', + 'schema' => ['description' => '是否复用命名空间Agent版本配置', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], - ], - 'parameters' => [ [ - 'name' => 'NamespaceId', + 'name' => 'AgentVersion', + 'in' => 'query', + 'schema' => ['description' => 'AliyunAgent版本', 'type' => 'string', 'required' => false, 'example' => '4.4.2'], + ], + [ + 'name' => 'EnableNamespaceSlsConfig', 'in' => 'query', + 'schema' => ['description' => '是否复用命名空间SLS日志配置', 'type' => 'boolean', 'required' => false, 'example' => 'true'], + ], + [ + 'name' => 'SlsLogEnvTags', + 'in' => 'query', + 'schema' => ['title' => 'sls log tags', 'description' => 'sls log tags', 'type' => 'string', 'required' => false], + ], + [ + 'name' => 'LokiConfigs', + 'in' => 'query', + 'schema' => ['type' => 'string'], + ], + [ + 'name' => 'Labels', + 'in' => 'query', + 'style' => 'json', 'schema' => [ - 'description' => '长版命名空间ID。如果设置了该参数会继续生效而忽略NameSpaceShortId,该参数是为了兼容保留,推荐使用短版命名空间ID,简化参数。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-shanghai:test', + 'type' => 'object', + 'additionalProperties' => ['type' => 'string'], ], ], [ - 'name' => 'NameSpaceShortId', + 'name' => 'RaspConfig', 'in' => 'query', + 'style' => 'json', 'schema' => [ - 'description' => '短版命名空间ID,不需要带上region,推荐。', - 'type' => 'string', - 'required' => false, - 'example' => 'test', + 'type' => 'object', + 'properties' => [ + 'EnableRasp' => ['type' => 'boolean'], + 'RaspAppName' => ['type' => 'string'], + 'RaspAppKey' => ['type' => 'string'], + ], ], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'description' => '返回数据。', + 'description' => '创建的应用信息。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], 'Data' => [ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'VpcId' => [ - 'description' => 'VPC ID。', - 'type' => 'string', - 'example' => 'vpc-2ze0i263cnn311nvj****', - ], - 'LastChangeOrderId' => [ - 'description' => '发布单ID。', - 'type' => 'string', - 'example' => 'afedb3c4-63f8-4a3d-aaa3-2c30363f****', - ], - 'BelongRegion' => [ - 'description' => '命名空间所属地域。', - 'type' => 'string', - 'example' => 'cn-shanghai', - ], - 'NamespaceId' => [ - 'description' => '命名空间ID。', - 'type' => 'string', - 'example' => 'cn-shangha:test', - ], - 'SecurityGroupId' => [ - 'description' => '安全组ID。', - 'type' => 'string', - 'example' => 'sg-wz969ngg2e49q5i4****', - ], - 'UserId' => [ - 'description' => '用户ID。', - 'type' => 'string', - 'example' => 'test@aliyun.com', - ], - 'NamespaceName' => [ - 'description' => '命名空间名称。', - 'type' => 'string', - 'example' => 'test', - ], - 'LastChangeOrderStatus' => [ - 'description' => '最近一次发布单状态。取值说明如下:'."\n" - .' - **READY**:最近一次发布单准备就绪。'."\n" - .' - **RUNNING**:最近一次发布单处于执行中。'."\n" - .' - **SUCCESS**:最近一次发布单发布成功。'."\n" - .' - **FAIL**:最近一次发布单发布失败。'."\n" - .' - **ABORT**:最近一次发布单中止运行。'."\n" - .' - **WAIT\\_BATCH\\_CONFIRM**:最近一次发布单等待手工批量确认。'."\n" - .' - **AUTO\\_BATCH\\_WAIT**:最近一次发布单处于自动批量等待状态。'."\n" - .' - **SYSTEM\\_FAIL**:系统故障。'."\n" - .' - **WAIT\\_APPROVAL**:最近一次发布单等待审批。'."\n" - .' - **APPROVED**:最近一次发布单处于审批通过的待执行状态。', - 'type' => 'string', - 'example' => 'SUCCESS', - ], - 'VpcName' => [ - 'description' => 'VPC名称。', - 'type' => 'string', - 'example' => 'test', - ], - 'VSwitchId' => [ - 'description' => 'vSwitch ID。', - 'type' => 'string', - 'example' => 'vsw-2ze559r1z1bpwqxwp****', - ], - 'Description' => [ - 'description' => '命名空间描述信息。', - 'type' => 'string', - 'example' => 'decs', - ], - 'LastChangeOrderRunning' => [ - 'description' => '命名空间是否有发布单运行。取值说明如下:'."\n" - ."\n" - .'- **true**:有发布单运行。'."\n" - .'- **false**:没有发布单运行。', - 'type' => 'boolean', - 'example' => 'true', - ], - 'AppCount' => [ - 'description' => '应用个数。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1', - ], - 'VSwitchName' => [ - 'description' => 'vSwitch名称。', - 'type' => 'string', - 'example' => 'test', - ], - 'NotificationExpired' => [ - 'description' => '发布单通知是否过期。取值说明如下:'."\n" - ."\n" - .'- **true**:发布单已过期。'."\n" - .'- **false**:发布单没有过期。', - 'type' => 'boolean', - 'example' => 'true', - ], - 'TenantId' => [ - 'description' => 'SAE命名空间租户ID。', - 'type' => 'string', - 'example' => '838cad95-973f-48fe-830b-2a8546d7****', - ], - 'JumpServerAppId' => [ - 'description' => '跳板机应用ID。', - 'type' => 'string', - 'example' => '5ec46468-6b26-4a3c-9f7c-bf88761a****', - ], - 'JumpServerIp' => [ - 'description' => '跳板机IP地址。', - 'type' => 'string', - 'example' => '120.78.XXX.XX', - ], - 'NameSpaceShortId' => [ - 'description' => '短版命名空间ID。', - 'type' => 'string', - 'example' => 'test', - ], - 'ApmJavaAgentVersion' => [ - 'type' => 'string', - ], - 'SlsConfigs' => [ - 'type' => 'string', - ], + 'ChangeOrderId' => ['description' => '返回的发布单ID,用于查询任务执行状态。', 'type' => 'string', 'example' => '01db03d3-3ee9-48b3-b3d0-dfce2d88****'], + 'AppId' => ['description' => '创建成功的应用ID。', 'type' => 'string', 'example' => '017f39b8-dfa4-4e16-a84b-1dcee4b1****'], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '查询命名空间资源信息是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:查询成功。'."\n" - .'- **false**:查询失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string', 'example' => '空'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。'."\n", 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '创建应用是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:创建成功。'."\n" + .'- **false**:创建失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], + ['errorCode' => 'Application.MissingJdk', 'errorMessage' => 'Your application must at least contain a JDK component.', 'description' => '应用必须至少包含JDK组件。'], + ['errorCode' => 'InvalidPackageType.NotFound', 'errorMessage' => 'The package type must be War, FatJar, or Image.', 'description' => '包类型必须为WAR、FatJAR或Image。'], + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'JarApplication.MissingJdk', 'errorMessage' => 'A FatJar application must contain JDK.', 'description' => 'FatJar类型应用必须包含JDK。'], + ['errorCode' => 'NoAvailableCluster.NotFound', 'errorMessage' => 'No clusters are available for the current region.', 'description' => '当前地域没有可用集群。'], + ['errorCode' => 'NoComputeResourceQuota.Exceed', 'errorMessage' => 'Your compute resource is insufficient. Please contact us to raise the quota.', 'description' => ''], + ['errorCode' => 'PandoraApplication.MissingJdk', 'errorMessage' => 'The Pandora application is missing a JDK component.', 'description' => 'Pandora应用缺少JDK组件。'], + ['errorCode' => 'PandoraApplication.OnlyJdk', 'errorMessage' => 'A Pandora application only requires JDK component.', 'description' => 'Pandora应用只需要JDK组件。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], + ['errorCode' => 'InvalidComponent.NotFound', 'errorMessage' => 'The current component (such as JDK, Tomcat, or EDASWebContainer) does not exist.', 'description' => '找不到当前组件(JDK、Tomcat、EDASWebContainer等)。'], + ['errorCode' => 'InvalidHostnameIp.Invalid', 'errorMessage' => 'The hostname and/or IP is invalid: Hostname [%s], IP [%s].', 'description' => '主机名或IP不合法:主机名[%s],IP[%s]。'], + ['errorCode' => 'InvalidInstanceSpecification.Unsupported', 'errorMessage' => 'The instance specification is not supported: CPU [%s], memory [%s].', 'description' => '不支持的实例规格。CPU[%s],Memory[%s]。'], + ['errorCode' => 'InvalidServerlessRegion.Unsupported', 'errorMessage' => 'The current region is not supported: %s', 'description' => '不支持当前地域:%s。'], + ['errorCode' => 'WarApplication.MissingJdkWebcontainer', 'errorMessage' => 'A War application must contain JDK and Tomcat.', 'description' => 'WAR类型应用必须包含JDK和Tomcat。'], + ['errorCode' => 'InvalidNamespace.WithUppercase', 'errorMessage' => 'This namespace does not support creating SAE apps because it contains uppercase letters.', 'description' => '命名空间不支持创建SAE应用,因为它带有大写字母。'], + ['errorCode' => 'LogService.ConfigQuotaExceed', 'errorMessage' => 'The maximum number of Log Service configs is exceeded.', 'description' => '日志服务配置个数超过配额限制,请加入钉群32874633联系技术产品专家进行咨询。'], + ['errorCode' => 'LogService.InternalError', 'errorMessage' => 'An exception occurred while calling Log Service. Please submit a ticket to solve the problem.', 'description' => '调用日志服务异常,请加入钉群32874633联系技术产品专家进行咨询。'], + ['errorCode' => 'LogService.LogDirInvalid', 'errorMessage' => 'The log collection path is invalid.', 'description' => '日志采集路径不合法。'], + ['errorCode' => 'LogService.NotAvailable', 'errorMessage' => 'Log Service is unavailable. Please activate Log Service first.', 'description' => '日志服务不可用,请先开通日志服务。'], + ['errorCode' => 'LogService.ProjectNumQuotaExceed', 'errorMessage' => 'The maximum number of Log Service projects is exceeded.', 'description' => '日志服务项目个数超过配额限制,请加入钉群32874633联系技术产品专家进行咨询。'], + ['errorCode' => 'user.indebt', 'errorMessage' => 'The user has an outstanding payment.', 'description' => '当前用户处于欠费状态。'], + ['errorCode' => 'NoComputeResourceQuota.App.Exceed', 'errorMessage' => 'You can create %s instances for each application. Please submit a ticket to raise the quota.', 'description' => '每个应用只允许创建%s个实例,请加入钉群32874633联系技术产品专家进行咨询。'], + ['errorCode' => 'NoComputeResourceQuota.User.Exceed', 'errorMessage' => 'Your account is limited to create %s instances. Please submit a ticket to raise the quota.', 'description' => '您的账户限额%s个实例,请加入钉群32874633联系技术产品专家进行咨询。'], + ['errorCode' => 'System.Upgrading', 'errorMessage' => 'The system is being upgraded. Please try again later.', 'description' => '系统正在升级,请稍后操作。'], + ['errorCode' => 'VolumnPath.Conflict', 'errorMessage' => 'Conflict between log collection directory and persistent storage directory.', 'description' => '日志采集目录与持久化存储目录冲突。'], + ['errorCode' => 'MountConflict.ConfigMap', 'errorMessage' => 'Conflict detected for ConfigMap path %s.', 'description' => 'ConfigMap挂载路径%s存在冲突。'], + ['errorCode' => 'NotFound.ConfigMap', 'errorMessage' => 'The ConfigMap object (ID: %s) does not exist.', 'description' => '找不到ConfigMap对象(ID=%s)。'], + ['errorCode' => 'NotFound.ConfigMapKey', 'errorMessage' => 'The key %s of ConfigMap object (ID: %s) does not exist.', 'description' => '找不到ConfigMap对象(ID=%s)的Key %s。'], + ['errorCode' => 'Sls.Config.Mixed.Multi.Project', 'errorMessage' => 'The specified Config contains multiple projects.', 'description' => '您输入的SLS Config中指定了多个Project。'], + ['errorCode' => 'Sls.Config.User.Defined.Missing.Logstore.Info', 'errorMessage' => 'The specified Config is invalid. Both Project and Logstore must be specified.', 'description' => '您输入的SLS Config为自定义SLS配置,但是只有Project配置,缺失Logstore配置。'], + ['errorCode' => 'Sls.Config.User.Defined.Missing.Project.Info', 'errorMessage' => 'The specified Config is invalid. Both Project and Logstore must be specified.', 'description' => '您输入的SLS Config为自定义SLS配置,但是只有Logstore配置,缺失Project配置。'], + ['errorCode' => 'Sls.Logstore.Name.Invalid', 'errorMessage' => 'The specified name of Logstore is invalid. The Logstore name must not contain the prefix "sae-".', 'description' => '您输入的SLS Logstore名称不合法,前缀包含了"sae-",会与SAE自动创建的Logstore混淆。'], + ['errorCode' => 'Sls.Logstore.User.Defined.Not.Exist', 'errorMessage' => 'The user defined Logstore does not exist.', 'description' => '您输入的自建Logstore不存在。'], + ['errorCode' => 'Sls.Project.Name.Invalid', 'errorMessage' => 'The specified project name is invalid. The project name must not contain the prefix "sae-".', 'description' => '您输入的SLS Project名称不合法,前缀包含了"sae-",会与SAE自动创建的Project混淆。'], + ['errorCode' => 'Sls.Project.User.Defined.Not.Exist', 'errorMessage' => 'The user defined project does not exist.', 'description' => '您输入的自建Project不存在。'], + ['errorCode' => 'InvalidImageUrl.AcrInstanceId.Domain.NotMatch', 'errorMessage' => 'The specified domain of ImageUrl does not match AcrInstanceId domains.', 'description' => '指定的镜像地址ImageUrl域名与AcrInstanceId域名不匹配。'], + ['errorCode' => 'PhpApplication.MissingPhpRuntime', 'errorMessage' => 'A PHP application must contain PHP Runtime.', 'description' => 'PHP类型应用必须包含PHP运行时。'], + ['errorCode' => 'InvalidParameter.FileName', 'errorMessage' => 'The application deployment package name is invalid. This name can contain only alphanumeric characters, hyphens (-), and underscores (_). For deploying java package, you can upload JAR files only if the selected deployment version supports JAR file. Otherwise, upload WAR files only. For deploying php package, you can upload ZIP files only if the selected deployment version supports ZIP file.', 'description' => '应用部署程序包名称无效。名称只能包含字母、数字和特殊字符“-”“_”。Java 软件包部署,仅当选择的部署版本支持JAR部署时方可上传JAR包,否则只能上传WAR包;PHP 软件包部署,仅当选择的部署版本支持ZIP部署时方可上传ZIP包'], + ['errorCode' => 'Sls.Logtail.Name.Invalid', 'errorMessage' => 'The specified name of Logtail is invalid. The Logtail name must not contain the prefix sae-.', 'description' => '您输入的SLS Logtail名称不合法,前缀包含了"sae-",会与SAE自动创建的Logtail混淆。'], + ['errorCode' => 'vswitch.not.exist', 'errorMessage' => 'The specified vSwitch does not exist.', 'description' => 'vSwitch不存在,请更换vSwitch。'], + ['errorCode' => 'InvalidImageUrl.MissingAcrInstanceId', 'errorMessage' => 'The specified domain of ImageUrl is from ACREE, but you are not specified AcrInstanceId.', 'description' => '指定的镜像地址 ImageUrl 域名为容器镜像服务企业版 ACREE,但未指定实例 AcrInstanceId。'], + ['errorCode' => 'EnvFromSecretIdConflict.AlreadyExist', 'errorMessage' => 'The specified SecretId [%s] already exist in the specified Envs.', 'description' => '指定的保密字典[%s]已经存在于环境变量中。'], + ['errorCode' => 'MountConflict.Secret', 'errorMessage' => 'Conflict detected for Secret path %s.', 'description' => 'Secret挂载路径%s存在冲突。'], + ], + 404 => [ + ['errorCode' => 'Associate.Eip.Not.Enough', 'errorMessage' => 'No sufficient EIPs are available.', 'description' => '绑定EIP时,EIP不足,需要您购买。'], + ['errorCode' => 'InvalidNamespaceId.NotFound', 'errorMessage' => 'The specified NamespaceId does not exist.', 'description' => '指定的NamespaceId不存在。'], + ['errorCode' => 'InvalidVpcId.NotFound', 'errorMessage' => 'The specified VpcId does not exist.', 'description' => '指定的VpcId不存在。'], + ['errorCode' => 'InvalidAcrInstanceId.NotFound', 'errorMessage' => 'The specified AcrInstanceId does not exist.', 'description' => '指定的 AcrInstanceId 不存在。'], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"VpcId\\": \\"vpc-2ze0i263cnn311nvj****\\",\\n \\"LastChangeOrderId\\": \\"afedb3c4-63f8-4a3d-aaa3-2c30363f****\\",\\n \\"BelongRegion\\": \\"cn-shanghai\\",\\n \\"NamespaceId\\": \\"cn-shangha:test\\",\\n \\"SecurityGroupId\\": \\"sg-wz969ngg2e49q5i4****\\",\\n \\"UserId\\": \\"test@aliyun.com\\",\\n \\"NamespaceName\\": \\"test\\",\\n \\"LastChangeOrderStatus\\": \\"SUCCESS\\",\\n \\"VpcName\\": \\"test\\",\\n \\"VSwitchId\\": \\"vsw-2ze559r1z1bpwqxwp****\\",\\n \\"Description\\": \\"decs\\",\\n \\"LastChangeOrderRunning\\": true,\\n \\"AppCount\\": 1,\\n \\"VSwitchName\\": \\"test\\",\\n \\"NotificationExpired\\": true,\\n \\"TenantId\\": \\"838cad95-973f-48fe-830b-2a8546d7****\\",\\n \\"JumpServerAppId\\": \\"5ec46468-6b26-4a3c-9f7c-bf88761a****\\",\\n \\"JumpServerIp\\": \\"120.78.XXX.XX\\",\\n \\"NameSpaceShortId\\": \\"test\\",\\n \\"ApmJavaAgentVersion\\": \\"\\",\\n \\"SlsConfigs\\": \\"\\"\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeNamespaceResourcesResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <VpcId>vpc-2ze0i263cnn311nvj****</VpcId>\\n <LastChangeOrderId>afedb3c4-63f8-4a3d-aaa3-2c30363f****</LastChangeOrderId>\\n <BelongRegion>cn-shanghai</BelongRegion>\\n <NamespaceId>cn-shangha:test</NamespaceId>\\n <SecurityGroupId>sg-wz969ngg2e49q5i4****</SecurityGroupId>\\n <UserId>test@aliyun.com</UserId>\\n <NamespaceName>test</NamespaceName>\\n <LastChangeOrderStatus>SUCCESS</LastChangeOrderStatus>\\n <VpcName>test</VpcName>\\n <VSwitchId>vsw-2ze559r1z1bpwqxwp****</VSwitchId>\\n <Description>decs</Description>\\n <LastChangeOrderRunning>true</LastChangeOrderRunning>\\n <AppCount>1</AppCount>\\n <VSwitchName>test</VSwitchName>\\n <NotificationExpired>true</NotificationExpired>\\n <TenantId>838cad95-973f-48fe-830b-2a8546d7****</TenantId>\\n <JumpServerAppId>5ec46468-6b26-4a3c-9f7c-bf88761a****</JumpServerAppId>\\n <JumpServerIp>120.78.XXX.XX</JumpServerIp>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeNamespaceResourcesResponse>","errorExample":""}]', - 'title' => '查询命名空间内的资源信息', - 'summary' => '查询命名空间内的资源信息。', - ], - 'DescribeIngress' => [ - 'path' => '/pop/v1/sam/ingress/Ingress', - 'methods' => [ - 'get', + 'gatewayOptions' => [ + 'gatewayProtocols' => [], ], - 'schemes' => [ - 'http', - 'https', + 'title' => '创建一个SAE应用', + 'summary' => '创建一个应用。', + 'changeSet' => [ + ['createdAt' => '2026-03-04T05:50:32.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-03-04T03:39:56.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-03-04T03:39:23.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-02-25T06:15:36.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2026-02-25T06:10:10.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-02-25T01:45:40.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-02-25T01:42:15.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-02-24T12:41:57.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-02-24T12:37:58.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-02-24T11:44:49.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-02-24T11:14:30.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-02-24T11:09:31.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-02-24T11:05:15.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-02-24T11:00:08.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-02-24T10:52:23.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-02-04T02:09:06.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-02-03T03:18:47.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-02-03T02:36:32.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-01-30T08:18:00.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-01-30T02:56:58.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-01-15T02:33:06.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-01-13T13:03:44.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-01-13T12:45:38.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-01-13T12:31:59.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-01-13T09:00:03.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-01-13T08:52:08.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-12-25T08:18:18.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-12-25T07:49:55.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-12-25T03:02:51.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-12-22T05:48:37.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2025-11-27T05:52:40.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2025-11-04T03:34:35.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2025-09-18T11:30:37.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2025-07-30T06:59:48.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2025-07-29T05:33:47.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2025-07-04T06:12:36.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2025-05-26T08:50:06.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2025-05-22T02:27:26.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2025-04-25T11:26:58.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2025-04-07T03:09:05.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2025-03-13T11:48:39.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2025-01-13T06:07:31.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2024-12-26T08:38:33.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2024-12-17T11:33:09.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2024-12-10T09:29:00.000Z', 'description' => '错误码发生变更、请求参数发生变更'], + ['createdAt' => '2024-11-08T03:11:29.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2024-10-11T03:29:13.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2024-09-12T03:24:21.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2024-08-28T07:04:48.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2024-05-21T02:16:45.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2024-01-22T11:44:40.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2023-10-24T10:41:29.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2023-06-07T08:48:32.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2023-03-30T11:11:43.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2022-12-26T09:19:38.000Z', 'description' => '错误码发生变更'], + ['createdAt' => '2022-11-22T13:03:50.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2022-08-02T05:52:24.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2022-03-03T12:42:21.000Z', 'description' => '错误码发生变更'], + ['createdAt' => '2022-03-03T12:42:21.000Z', 'description' => '错误码发生变更、请求参数发生变更'], + ['createdAt' => '2022-01-18T04:01:16.000Z', 'description' => '错误码发生变更'], + ['createdAt' => '2021-12-27T09:02:51.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2021-11-17T11:35:05.000Z', 'description' => '错误码发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '40', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateApplication'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'sae:CreateApplication', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"ChangeOrderId\\": \\"01db03d3-3ee9-48b3-b3d0-dfce2d88****\\",\\n \\"AppId\\": \\"017f39b8-dfa4-4e16-a84b-1dcee4b1****\\"\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<CreateApplicationResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <ChangeOrderId>01db03d3-3ee9-48b3-b3d0-dfce2d88****</ChangeOrderId>\\n <AppId>017f39b8-dfa4-4e16-a84b-1dcee4b1****</AppId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</CreateApplicationResponse>","errorExample":""}]', + ], + 'CreateApplicationScalingRule' => [ + 'path' => '/pop/v1/sam/scale/applicationScalingRule', + 'methods' => ['post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '6335', - 'abilityTreeNodes' => [ - 'FEATUREsaeRW2OE6', - ], + 'operationType' => 'create', + 'abilityTreeCode' => '6304', + 'abilityTreeNodes' => ['FEATUREsae5HLO11'], ], 'parameters' => [ [ - 'name' => 'IngressId', + 'name' => 'AppId', 'in' => 'query', - 'schema' => [ - 'description' => '需要查询的路由规则ID。'."\n" - .'路由规则 ID 请通过[ListIngresses](~~2834910~~)接口获取。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'example' => '16263', - ], + 'schema' => ['description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****'], + ], + [ + 'name' => 'ScalingRuleName', + 'in' => 'query', + 'schema' => ['description' => '自定义的弹性伸缩策略名。应用内,策略名称不可重复,必须以小写字母开头,仅可包含小写字母、数字及短划线(-),不超过32个字符。'."\n" + .'> 弹性伸缩策略创建成功后,不可修改策略名。', 'type' => 'string', 'required' => true, 'example' => 'timer-0800-2100'], + ], + [ + 'name' => 'ScalingRuleType', + 'in' => 'query', + 'schema' => ['description' => '弹性伸缩策略类型。取值说明如下:'."\n" + ."\n" + .'- **timing**:定时弹性。'."\n" + .'- **metric**:监控指标弹性。'."\n" + ."\n" + .'- **mix**:混合弹性。'."\n" + ."\n" + .'>'."\n" + .'> - 如果选择定时弹性,ScalingRuleTimer字段为必填项。'."\n" + .'> - 如果选择监控指标弹性,ScalingRuleMetric字段为必填项。'."\n" + .'> - 如果选择混合弹性,ScalingRuleMetric字段为必填项,ScalingRuleTimer字段和ScalingRuleMetric字段也可以按需同时填写。', 'type' => 'string', 'required' => true, 'example' => 'timing'], + ], + [ + 'name' => 'ScalingRuleTimer', + 'in' => 'query', + 'schema' => ['description' => '定时弹性策略的配置。当您选择定时弹性策略或使用SDK设置时,该参数必选。'."\n" + ."\n" + .'参数说明如下:'."\n" + .'- **beginDate**和**endDate**:**beginDate**为起始日期,**endDate**为结束日期,用于配置定时弹性伸缩策略的时间。取值说明如下:'."\n" + ."\n" + .' - 当取值均为**null**时,表示长期执行,为默认值。'."\n" + .' - 当取值为具体日期时,例如**beginDate**为**2021-03-25**,**endDate**为**2021-04-25**,表示执行有效期为1个月。'."\n" + ."\n" + .'- **period**:执行定时弹性伸缩策略的周期。取值说明如下:'."\n" + .' - **\\* \\* \\***:每天指定时间执行定时策略。'."\n" + .' - **\\* \\* Fri,Mon**:每周指定天数的指定时间执行定时策略,支持多选,GMT+8时区。取值说明如下: '."\n" + .' - **Sun**:星期日'."\n" + .' - **Mon**:星期一'."\n" + .' - **Tue**:星期二'."\n" + .' - **Wed**:星期三'."\n" + .' - **Thu**:星期四'."\n" + .' - **Fri**:星期五'."\n" + .' - **Sat**:星期六'."\n" + .' - **1,2,3,28,31 \\* \\***:每月指定日期的指定时间执行定时策略,支持多选。取值范围\\[1,31\\]。若当月无31日,则跳过该日期执行定时策略。'."\n" + .'- **schedules**:弹性伸缩策略触发的时间,以及该时间段内需要保持的应用实例数。最多支持20个时间点。参数说明如下:'."\n" + .' - **atTime**:触发时间点。支持格式**时:分**,例如**08:00**。'."\n" + .' - **targetReplicas**:该参数可以指定应用的实例数,也可以是每次部署最小存活的实例数。取值范围\\[1,50\\]。'."\n" + .' > 每次滚动部署最小存活的实例数建议大于等于**1**,保证业务不中断。如果设置为**0**,应用在升级过程中将会中断业务。', 'type' => 'string', 'required' => false, 'example' => '{"beginDate":null,"endDate":null,"period":"* * *","schedules":[{"atTime":"08:00","targetReplicas":10},{"atTime":"20:00","targetReplicas":3}]}'], + ], + [ + 'name' => 'ScalingRuleMetric', + 'in' => 'query', + 'schema' => ['description' => '监控指标弹性策略的配置。当您选择监控指标弹性策略设置时,该参数必选。'."\n" + ."\n" + .'参数说明如下:'."\n" + ."\n" + .'- **maxReplicas**:应用最大实例数。'."\n" + .'- **minReplicas**:应用最小实例数。'."\n" + .'- **metricType**:监控指标触发条件。'."\n" + .' - **CPU**:CPU使用率。'."\n" + .' - **MEMORY**:内存使用率。'."\n" + .' - **QPS**:JAVA应用1分钟内单个实例的平均QPS。'."\n" + .' - **RT**:JAVA应用1分钟内应用所有服务接口平均RT值。'."\n" + .' - **tcpActiveConn**:30秒内单个实例的平均TCP活跃连接数。'."\n" + .' - **SLB\\_QPS**:15秒内单个实例的平均公网SLB QPS。'."\n" + .' - **SLB\\_RT**:15秒内公网SLB平均响应时间。'."\n" + .' - **INTRANET\\_SLB\\_QPS**:15秒内单个实例的平均私网SLB QPS。'."\n" + .' - **INTRANET\\_SLB\\_RT**:15秒内私网SLB平均响应时间。'."\n" + .'- **metricTargetAverageUtilization**:根据不同的**metricType**,设置对应的监控指标的目标值。'."\n" + .' - CPU使用率目标值,单位为百分比。'."\n" + .' - 内存使用率目标值,单位为百分比。'."\n" + .' - QPS,单位为秒。'."\n" + .' - 响应时间,单位为毫秒。'."\n" + .' - TCP活跃连接数平均值,单位为个/秒。'."\n" + .' - 公网SLB QPS,单位为秒。'."\n" + .' - 公网SLB响应时间,单位为毫秒。'."\n" + .' - 私网SLB QPS,单位为秒。'."\n" + .' - 私网SLB响应时间,单位为毫秒。'."\n" + .'- **slbId**:SLB ID。'."\n" + .'- **slbProject**:日志服务Project。'."\n" + .'- **slbLogstore**:日志服务Logstore。'."\n" + .'- **vport**:SLB监听端口,支持HTTP协议和HTTPS协议。'."\n" + .'- **scaleUpRules**:应用扩容规则。'."\n" + .'- **scaleDownRules**:应用缩容规则。'."\n" + .'- **step**:弹性扩容或缩容步长。单位时间内最多扩容或缩容的实例数。'."\n" + .'- **disabled**:是否禁止缩容。开启后将永远不会缩容该应用的实例,能有效防止在流量高峰期缩容造成业务风险。'."\n" + .' - **true**:开启。'."\n" + .' - **false**:关闭。默认值。'."\n" + .'- **stabilizationWindowSeconds**:扩容或缩容的冷却时间。取值范围\\[0, 3600\\],单位为秒。默认为0秒。'."\n" + ."\n" + .'> 您可以选择设置一个或多个监控指标。当设置多个监控指标时,只要任何一个指标大于或者等于目标值,则应用进行扩容,扩容后实例数不高于应用最大实例数;如果所有指标均小于目标值,则应用进行缩容,缩容后实例数不低于应用最小实例数。', 'type' => 'string', 'required' => false, 'example' => '{"maxReplicas":3,"minReplicas":1,"metrics":[{"metricType":"CPU","metricTargetAverageUtilization":20},{"metricType":"MEMORY","metricTargetAverageUtilization":30},{"metricType":"tcpActiveConn","metricTargetAverageUtilization":20},{"metricType":"SLB_QPS","MetricTargetAverageUtilization":25,"slbId":"lb-xxx","slbProject":"aliyun-fc-cn-hangzhou-d95881d9-5d3c-5f26-a6b8-************","slbLogstore":"function-log","vport":"80"},{"metricType":"SLB_RT","MetricTargetAverageUtilization":35,"slbId":"lb-xxx","slbProject":"aliyun-fc-cn-hangzhou-d95881d9-5d3c-5f26-a6b8-************","slbLogstore":"function-log","vport":"80"}],"scaleUpRules":{"step":"100","disabled":false,"stabilizationWindowSeconds":0},"scaleDownRules":{"step":"100","disabled":false,"stabilizationWindowSeconds":300}}'], + ], + [ + 'name' => 'MinReadyInstances', + 'in' => 'query', + 'schema' => ['description' => '最小存活实例数。取值说明如下:'."\n" + ."\n" + .'- 如果设置为**0**,应用在升级过程中将会中断业务。'."\n" + .'- 如果设置为**-1**,最小存活实例数将使用系统推荐值,即取现有实例数的25%。如果当前为5个实例,5×25%=1.25,向上取整后,最小存活实例数为2。'."\n" + ."\n" + .'> 每次滚动部署最小存活的实例数建议≥1,保证业务不中断。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '3'], + ], + [ + 'name' => 'MinReadyInstanceRatio', + 'in' => 'query', + 'schema' => ['description' => '最小存活实例数百分比。取值说明如下:'."\n" + ."\n" + .'- **-1**:初始化值,表示不采用百分比。'."\n" + .'- **0~100**:单位为百分比,向上取整。例如设置为50%,如果当前为5个实例,则最小存活实例数为3。'."\n" + ."\n" + .'> 当**MinReadyInstance**和**MinReadyInstanceRatio**同时传递时,且**MinReadyInstanceRatio**的取值非**-1**时,以**MinReadyInstanceRatio**参数为准。假设**MinReadyInstances**取值为**5**,**MinReadyInstanceRatio**取值为**50**,则会用**50**来计算最小存活实例数。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '-1'], + ], + [ + 'name' => 'ScalingRuleEnable', + 'in' => 'query', + 'schema' => ['description' => '是否启用弹性伸缩策略。取值说明如下:'."\n" + ."\n" + .'- **true**:启用状态。'."\n" + .'- **false**:禁用状态。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], + ], + [ + 'name' => 'EnableIdle', + 'in' => 'query', + 'schema' => ['description' => '是否开启闲置。', 'type' => 'boolean', 'required' => false], ], ], 'responses' => [ 200 => [ + 'headers' => [], 'schema' => [ - 'description' => '返回数据。', + 'description' => '返回信息。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a981dd515966966104121683d****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], 'Data' => [ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'SlbId' => [ - 'description' => 'SLB ID。', - 'type' => 'string', - 'example' => 'lb-uf62****6d13tq2u5', - ], - 'NamespaceId' => [ - 'description' => '命名空间ID。', - 'type' => 'string', - 'example' => 'cn-beijing:sae-test', - ], - 'Description' => [ - 'description' => '路由规则名称。', - 'type' => 'string', - 'example' => 'ingress-sae-test', - ], - 'ListenerPort' => [ - 'description' => 'SLB监听端口。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '443', - ], - 'SlbType' => [ - 'description' => 'SLB类型。取值说明如下:'."\n" - ."\n" - .'- **internet**:公网。'."\n" - .'- **intranet**:私网。', - 'type' => 'string', - 'example' => 'internet', - ], - 'CertId' => [ - 'description' => '**CLB**证书ID。', - 'type' => 'string', - 'example' => '13623****809_16cad216b32_845_-419427029', - ], - 'Name' => [ - 'description' => '路由规则名称。', - 'type' => 'string', - 'example' => 'lb-uf6jt0nu4z6ior943****-80-f5****', - ], - 'DefaultRule' => [ - 'description' => '默认规则。', + 'Timer' => [ + 'description' => '定时弹性伸缩。', 'type' => 'object', 'properties' => [ - 'ContainerPort' => [ - 'description' => '默认规则应用的后端端口。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '8080', - ], - 'AppName' => [ - 'description' => '默认规则的应用名称。', - 'type' => 'string', - 'example' => 'app1', - ], - 'AppId' => [ - 'description' => '默认规则的应用。', - 'type' => 'string', - 'example' => '395b60e4-0550-458d-9c54-a265d036****', - ], - 'BackendProtocol' => [ - 'description' => '后端协议。取值说明如下:'."\n" - ."\n" - .'- **http**:适用于需要对数据内容进行识别的应用。'."\n" - .'- **https**:适用于需要加密传输的应用。'."\n" - .'- **grpc**:适用于.net等多语言用户gRPC的负载均衡场景。'."\n" - ."\n" - .'该参数仅在参数**LoadBalanceType**取值为**ALB**,且参数**ListenerProtocol**取值为**HTTPS**时返回。', - 'type' => 'string', - 'example' => 'http', - ], - ], - ], - 'Rules' => [ - 'description' => '转发规则。', - 'type' => 'array', - 'items' => [ - 'description' => '转发规则。', - 'type' => 'object', - 'properties' => [ - 'AppName' => [ - 'description' => '目标应用名称。', - 'type' => 'string', - 'example' => 'app1', - ], - 'ContainerPort' => [ - 'description' => '应用后端端口。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '8080', - ], - 'Domain' => [ - 'description' => '应用域名。', - 'type' => 'string', - 'example' => 'edas.site', - ], - 'AppId' => [ - 'description' => '目标应用ID。', - 'type' => 'string', - 'example' => '395b60e4-0550-458d-9c54-a265d036****', - ], - 'Path' => [ - 'description' => 'URL路径。', - 'type' => 'string', - 'example' => '/path1', - ], - 'BackendProtocol' => [ - 'description' => '后端协议。取值说明如下:'."\n" - ."\n" - .'- **http**:适用于需要对数据内容进行识别的应用。'."\n" - .'- **https**:适用于需要加密传输的应用。'."\n" - .'- **grpc**:适用于.net等多语言用户gRPC的负载均衡场景。'."\n" - ."\n" - .'该参数仅在参数**LoadBalanceType**取值为**ALB**,且参数**ListenerProtocol**取值为**HTTPS**时返回。', - 'type' => 'string', - 'example' => 'http', - ], - 'RewritePath' => [ - 'description' => '重写路径。', - 'type' => 'string', - 'example' => '/${1}', - ], - 'RuleActions' => [ - 'description' => '转发规则动作列表。', - 'type' => 'array', - 'items' => [ - 'description' => '规则动作列表。', - 'type' => 'object', - 'properties' => [ - 'ActionType' => [ - 'description' => '转发动作类型。'."\n" - ."\n" - .'- rewrite:重写策略'."\n" - .'- redirect:重定向策略', - 'type' => 'string', - 'example' => 'rewrite', - ], - 'ActionConfig' => [ - 'description' => '转发动作中的具体配置。', - 'type' => 'string', - 'example' => '{\\"host\\":\\"www.example.com\\",\\"path\\":\\"/example/text\\",\\"query\\":\\"x=1\\"}', - ], - ], + 'EndDate' => ['description' => '定时弹性伸缩策略的短期结束日期。'."\n" + ."\n" + .'- 当**BeginDate**和**EndDate**取值均为**null**时,表示长期执行,为默认值。'."\n" + .'- 当取值为具体日期时,例如**BeginDate**为2021-03-25,**EndDate**为2021-04-25,表示执行有效期为1个月。', 'type' => 'string', 'example' => '2021-04-25'], + 'BeginDate' => ['description' => '定时弹性伸缩策略的短期起始日期。'."\n" + ."\n" + .'- 当**BeginDate**和**EndDate**取值均为**null**时,表示长期执行,为默认值。'."\n" + .'- 当取值为具体日期时,例如**BeginDate**为2021-03-25,**EndDate**为2021-04-25,表示执行有效期为1个月。'."\n", 'type' => 'string', 'example' => '2021-03-25'], + 'Schedules' => [ + 'description' => '单天内触发时间点。', + 'type' => 'array', + 'items' => [ + 'description' => '时间点数据。', + 'type' => 'object', + 'properties' => [ + 'AtTime' => ['description' => '时间点。格式:**时:分**。', 'type' => 'string', 'example' => '08:00'], + 'TargetReplicas' => ['description' => '目标实例数。', 'type' => 'integer', 'format' => 'int32', 'example' => '3'], + 'MaxReplicas' => ['description' => '最大实例数。', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], + 'MinReplicas' => ['description' => '最小实例数。', 'type' => 'integer', 'format' => 'int32', 'example' => '5'], ], ], ], + 'Period' => ['description' => '执行定时弹性伸缩策略的周期。取值说明如下:'."\n" + ."\n" + .'- **\\* \\* \\***:每天指定时间执行定时策略。'."\n" + .'- **\\* \\* Fri,Mon**:每周指定天数的指定时间执行定时策略,支持多选,GMT+8时区。取值说明如下: '."\n" + ."\n" + .' - **Sun**:星期日'."\n" + .' - **Mon**:星期一'."\n" + .' - **Tue**:星期二'."\n" + .' - **Wed**:星期三'."\n" + .' - **Thu**:星期四'."\n" + .' - **Fri**:星期五'."\n" + .' - **Sat**:星期六'."\n" + .'- **1,2,3,28,31 \\* \\***:每月指定日期的指定时间执行定时策略,支持多选。取值范围\\[1,31\\]。若当月无31日,则跳过该日期执行定时策略。', 'type' => 'string', 'example' => '* * *'], ], ], - 'Id' => [ - 'description' => '路由规则ID。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '87', - ], - 'LoadBalanceType' => [ - 'description' => '负载均衡SLB的类型。取值说明如下:'."\n" - ."\n" - .'- **clb**:传统型负载均衡CLB(原SLB)。'."\n" - .'- **alb**:应用型负载均衡ALB。', - 'type' => 'string', - 'example' => 'clb', - ], - 'ListenerProtocol' => [ - 'description' => '请求转发协议。取值说明如下:'."\n" - ."\n" - .'- **HTTP**:适用于需要对数据内容进行识别的应用。'."\n" - .'- **HTTPS**:适用于需要加密传输的应用。'."\n" - ."\n" - .'在**CreateIngress**和**UpadateIngress**中,该参数非必填项,如果创建或更新网关路由规则时未填写该参数,则调用该API时不返回。', - 'type' => 'string', - 'example' => 'HTTP', - ], - 'CertIds' => [ - 'description' => '**ALB**多证书ID。', - 'type' => 'string', - 'example' => '87***35-cn-hangzhou,812***3-cn-hangzhou', - ], - 'SecurityPolicyId' => [ - 'title' => '安全策略实例 ID', - 'description' => '安全策略实例 ID', - 'type' => 'string', - 'example' => 'sp-n0kn923****', - ], - 'RequestTimeout' => [ - 'title' => '指定请求超时时间。单位:秒。'."\n" - ."\n" - .'取值:1~180。'."\n" - ."\n" - .'默认值:60。'."\n" - ."\n" - .'如果在超时时间内后端服务器一直没有响应,负载均衡将放弃等待,并给客户端返回HTTP 504错误码。', - 'description' => '指定请求超时时间。单位:秒。'."\n" - ."\n" - .'取值:1~180。'."\n" - ."\n" - .'默认值:60。'."\n" - ."\n" - .'如果在超时时间内后端服务器一直没有响应,负载均衡将放弃等待,并给客户端返回HTTP 504错误码。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '60', - ], - 'IdleTimeout' => [ - 'title' => '指定连接空闲超时时间。单位:秒。'."\n" - ."\n" - .'取值范围:1~60。'."\n" - ."\n" - .'默认值:15。'."\n" - ."\n" - .'如果在超时时间内一直没有访问请求,负载均衡会暂时中断当前连接,直到一下次请求来临时重新建立新的连接。', - 'description' => '指定连接空闲超时时间。单位:秒。'."\n" - ."\n" - .'取值范围:1~60。'."\n" - ."\n" - .'默认值:15。'."\n" - ."\n" - .'如果在超时时间内一直没有访问请求,负载均衡会暂时中断当前连接,直到一下次请求来临时重新建立新的连接。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '3', - ], - 'EnableXForwardedFor' => [ - 'description' => '是否开启通过X-Forwarded-For头字段获取来访者客户端IP。', - 'type' => 'boolean', - 'example' => 'true', - ], - 'EnableXForwardedForClientSrcPort' => [ - 'description' => '是否通过X-Forwarded-Port头字段获取负载均衡实例的监听端口。', - 'type' => 'boolean', - 'example' => 'true', - ], - 'EnableXForwardedForProto' => [ - 'description' => '是否通过X-Forwarded-Proto头字段获取负载均衡实例的监听协议。', - 'type' => 'boolean', - 'example' => 'true', - ], - 'EnableXForwardedForSlbId' => [ - 'description' => '是否通过SLB-ID头字段获取负载均衡实例ID。', - 'type' => 'boolean', - 'example' => 'true', - ], - 'EnableXForwardedForSlbPort' => [ - 'description' => '是否通过X-Forwarded-Port头字段获取负载均衡实例的监听端口。', - 'type' => 'boolean', - 'example' => 'true', - ], - 'CreatedBySae' => [ - 'description' => 'ALB实例是否为SAE代购。', - 'type' => 'boolean', - 'example' => 'true', - ], - 'CorsConfig' => [ - 'description' => '选择跨域访问时允许的HTTP方法。取值:'."\n" - .'- **GET**。'."\n" - .'- **POST**。'."\n" - .'- **PUT**。'."\n" - .'- **DELETE**。'."\n" - .'- **HEAD**。'."\n" - .'- **OPTIONS**。'."\n" - .'- **PATCH**。', + 'UpdateTime' => ['description' => '弹性伸缩策略的更新时间。单位:毫秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1616642248938'], + 'AppId' => ['description' => '应用ID。', 'type' => 'string', 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****'], + 'CreateTime' => ['description' => '弹性伸缩策略的创建时间。单位:毫秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1616642248938'], + 'LastDisableTime' => ['description' => '最近一次禁用弹性伸缩策略的时间。', 'type' => 'integer', 'format' => 'int64', 'example' => '1641882854484'], + 'ScaleRuleEnabled' => ['description' => '是否启用弹性伸缩策略。取值说明如下:'."\n" + ."\n" + .'- **true**:启用状态。'."\n" + .'- **false**:禁用状态。', 'type' => 'boolean', 'example' => 'true'], + 'ScaleRuleType' => ['description' => '弹性伸缩策略类型。取值说明如下:'."\n" + ."\n" + .'- **timing**:定时弹性。'."\n" + .'- **metric**:监控指标弹性。'."\n" + .'- **mix**:混合弹性。', 'type' => 'string', 'example' => 'timing'], + 'Metric' => [ + 'description' => '监控指标弹性伸缩。', 'type' => 'object', 'properties' => [ - 'Enable' => [ - 'description' => '是否启用跨域支持。', - 'type' => 'string', - 'example' => 'false', - ], - 'ExposeHeaders' => [ - 'description' => '允许暴露的Header列表。', - 'type' => 'string', - 'example' => 'test_123', - ], - 'AllowHeaders' => [ - 'description' => '允许跨域的Header列表。', - 'type' => 'string', - 'example' => 'test_123', - ], - 'AllowMethods' => [ - 'description' => '跨域访问时允许的HTTP方法。', - 'type' => 'string', - 'example' => 'GET', - ], - 'AllowOrigin' => [ - 'description' => '允许的访问来源列表。支持只配置一个元素`*`,或配置一个或多个值。'."\n" - .'- 单个值必须以`http://`或者`https://`开头,后边加一个正确的域名或一级泛域名。(例:`http://*.test.abc.example.com`)'."\n" - .'- 单个值可以不加端口,也可以指定端口,端口范围:**1**~**65535**。', - 'type' => 'string', - 'example' => '*', - ], - 'AllowCredentials' => [ - 'description' => '是否允许携带凭证信息。取值:'."\n" - ."\n" - .'- **on**:是。'."\n" - .'- **off**:否。', - 'type' => 'string', - 'example' => 'on', - ], - 'MaxAge' => [ - 'description' => '预检请求在浏览器的最大缓存时间,单位:秒。'."\n" - ."\n" - .'取值范围:**-1**~**172800**。', - 'type' => 'string', - 'example' => '1000', + 'Metrics' => [ + 'description' => '监控指标弹性伸缩列表。', + 'type' => 'array', + 'items' => [ + 'description' => '监控指标数据。', + 'type' => 'object', + 'properties' => [ + 'MetricTargetAverageUtilization' => ['description' => '监控指标的目标值。'."\n" + ."\n" + .'- CPU使用率目标值,单位为百分比。'."\n" + .'- 内存使用率目标值,单位为百分比。'."\n" + .'- QPS,单位为秒。'."\n" + .'- 响应时间,单位为毫秒。'."\n" + .'- TCP活跃连接数平均值,单位为个/秒。'."\n" + .'- 公网SLB QPS,单位为秒。'."\n" + .'- 公网SLB响应时间,单位为毫秒。'."\n" + .'- 私网SLB QPS,单位为秒。'."\n" + .'- 私网SLB响应时间,单位为毫秒。', 'type' => 'integer', 'format' => 'int32', 'example' => '20'], + 'MetricType' => ['description' => '监控指标触发条件。取值说明如下:'."\n" + ."\n" + .'- **CPU**:CPU使用率。'."\n" + .'- **MEMORY**:内存使用率。'."\n" + .'- **QPS**:JAVA应用1分钟内单个实例的平均QPS。'."\n" + .'- **RT**:JAVA应用1分钟内应用所有服务接口平均RT值。'."\n" + .'- **tcpActiveConn**:30秒内单个实例的平均TCP活跃连接数。'."\n" + .'- **SLB\\_QPS**:15秒内单个实例的平均公网SLB QPS。'."\n" + .'- **SLB\\_RT**:15秒内公网SLB平均响应时间。'."\n" + .'- **INTRANET\\_SLB\\_QPS**:15秒内单个实例的平均私网SLB QPS。'."\n" + .'- **INTRANET\\_SLB\\_RT**:15秒内私网SLB平均响应时间。', 'type' => 'string', 'example' => 'CPU'], + 'SlbProject' => ['description' => 'SLB访问日志Project。', 'type' => 'string', 'example' => 'test'], + 'SlbLogstore' => ['description' => 'SLB访问日志Logstore。', 'type' => 'string', 'example' => 'test'], + 'Vport' => ['description' => 'SLB端口。', 'type' => 'string', 'example' => '80'], + 'SlbId' => ['description' => 'SLB实例ID。', 'type' => 'string', 'example' => 'lb-xxx'], + ], + ], ], + 'MaxReplicas' => ['description' => '最大实例数。', 'type' => 'integer', 'format' => 'int32', 'example' => '3'], + 'MinReplicas' => ['description' => '最小实例数。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], ], ], - 'EnableGzip' => [ - 'type' => 'boolean', - ], + 'ScaleRuleName' => ['description' => '弹性伸缩策略的名称。', 'type' => 'string', 'example' => 'test'], + 'EnableIdle' => ['description' => '是否开启闲置模式。', 'type' => 'boolean'], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '查询Ingress详情是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:查询成功。'."\n" - .'- **false**:查询失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '重启应用实例是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:重启成功。'."\n" + .'- **false**:重启失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', + ['errorCode' => 'InstanceExist.ScalingRuleName', 'errorMessage' => 'The specified ScalingRuleName already exists.', 'description' => '指定的弹性策略名称已存在。'], + ['errorCode' => 'InvalidScalingRuleDate.BeginAfterEnd', 'errorMessage' => 'The specified beginning time is later than the ending time.', 'description' => '指定的开始时间晚于结束时间。'], + ['errorCode' => 'InvalidScalingRuleDate.Format', 'errorMessage' => 'The specified date is invalid.', 'description' => '指定的日期不合法。正确的格式为yyyy-MM-dd。'], + ['errorCode' => 'InvalidScalingRuleName.NotFound', 'errorMessage' => 'The specified ScalingRuleName does not exist.', 'description' => '指定的ScalingRuleName不存在。'], + ['errorCode' => 'InvalidScalingRuleTime.Conflict', 'errorMessage' => 'The specified scaling rule time is invalid. Another schedule has been set for the specified time range. Please set a different time.', 'description' => '指定的弹性策略时间无效。该时间段已设置过定时策略,请重新选择时间设置。'], + ['errorCode' => 'InvalidScalingRuleTime.Format', 'errorMessage' => 'The specified time is invalid.', 'description' => '指定的时间不合法。正确的格式为HH:mm。'], + ['errorCode' => 'QuotaExceeded.ScalingRule', 'errorMessage' => 'The maximum number of application scaling rules is exceeded.', 'description' => '应用弹性策略数量到达上限。'], + ['errorCode' => 'QuotaExceeded.ScalingRuleTime', 'errorMessage' => 'The maximum number of scaling policy trigger time is exceeded.', 'description' => '弹性策略触发时间到达上限。'], + ['errorCode' => 'NoComputeResourceQuota.App.Exceed', 'errorMessage' => 'You can create %s instances for each application. Please submit a ticket to raise the quota.', 'description' => '每个应用只允许创建%s个实例,请加入钉群32874633联系技术产品专家进行咨询。'], + ['errorCode' => 'NoComputeResourceQuota.Exceed', 'errorMessage' => 'Your compute resource is insufficient. Please contact us to raise the quota.', 'description' => ''], + ['errorCode' => 'NoComputeResourceQuota.User.Exceed', 'errorMessage' => 'Your account is limited to create %s instances. Please submit a ticket to raise the quota.', 'description' => '您的账户限额%s个实例,请加入钉群32874633联系技术产品专家进行咨询。'], + ['errorCode' => 'System.Upgrading', 'errorMessage' => 'The system is being upgraded. Please try again later.', 'description' => '系统正在升级,请稍后操作。'], + ['errorCode' => 'OperationDenied.SDKNotSupported', 'errorMessage' => 'Metrics is not supported in SDK', 'description' => 'SDK未开放指标弹性规则。'], + ['errorCode' => 'MinReadyInstances.Not.Smaller.Replicas', 'errorMessage' => 'The minimum number of available instances must be less than the number of application instances.', 'description' => '最小可用实例数必须小于应用实例数。'], + ['errorCode' => 'MinReadyInstanceRatio.Invalid', 'errorMessage' => 'The ratio of minimum available instances must be between 0 and 100.', 'description' => '最小存活实例数比例值必须在0~100之间。'], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"Timer\\": {\\n \\"EndDate\\": \\"2021-04-25\\",\\n \\"BeginDate\\": \\"2021-03-25\\",\\n \\"Schedules\\": [\\n {\\n \\"AtTime\\": \\"08:00\\",\\n \\"TargetReplicas\\": 3,\\n \\"MaxReplicas\\": 10,\\n \\"MinReplicas\\": 5\\n }\\n ],\\n \\"Period\\": \\"* * *\\"\\n },\\n \\"UpdateTime\\": 1616642248938,\\n \\"AppId\\": \\"7171a6ca-d1cd-4928-8642-7d5cfe69****\\",\\n \\"CreateTime\\": 1616642248938,\\n \\"LastDisableTime\\": 1641882854484,\\n \\"ScaleRuleEnabled\\": true,\\n \\"ScaleRuleType\\": \\"timing\\",\\n \\"Metric\\": {\\n \\"Metrics\\": [\\n {\\n \\"MetricTargetAverageUtilization\\": 20,\\n \\"MetricType\\": \\"CPU\\",\\n \\"SlbProject\\": \\"test\\",\\n \\"SlbLogstore\\": \\"test\\",\\n \\"Vport\\": \\"80\\",\\n \\"SlbId\\": \\"lb-xxx\\"\\n }\\n ],\\n \\"MaxReplicas\\": 3,\\n \\"MinReplicas\\": 1\\n },\\n \\"ScaleRuleName\\": \\"test\\",\\n \\"EnableIdle\\": true\\n },\\n \\"Message\\": \\"success\\",\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<CreateApplicationScalingRuleResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <Timer>\\n <EndDate>2021-04-25</EndDate>\\n <BeginDate>2021-03-25</BeginDate>\\n <Schedules>\\n <AtTime>08:00</AtTime>\\n <TargetReplicas>3</TargetReplicas>\\n <MaxReplicas>10</MaxReplicas>\\n <MinReplicas>5</MinReplicas>\\n </Schedules>\\n <Period>* * *</Period>\\n </Timer>\\n <UpdateTime>1616642248938</UpdateTime>\\n <AppId>7171a6ca-d1cd-4928-8642-7d5cfe69****</AppId>\\n <CreateTime>1616642248938</CreateTime>\\n <LastDisableTime>1641882854484</LastDisableTime>\\n <ScaleRuleEnabled>true</ScaleRuleEnabled>\\n <ScaleRuleType>timing</ScaleRuleType>\\n <Metric>\\n <Metrics>\\n <MetricTargetAverageUtilization>20</MetricTargetAverageUtilization>\\n <MetricType>CPU</MetricType>\\n <SlbProject>test</SlbProject>\\n <SlbLogstore>test</SlbLogstore>\\n <Vport>80</Vport>\\n <SlbId>lb-xxx</SlbId>\\n </Metrics>\\n <MaxReplicas>3</MaxReplicas>\\n <MinReplicas>1</MinReplicas>\\n </Metric>\\n <ScaleRuleName>test</ScaleRuleName>\\n </Data>\\n <Message>success</Message>\\n <Code>200</Code>\\n <Success>true</Success>\\n</CreateApplicationScalingRuleResponse>","errorExample":""}]', + 'title' => '创建应用弹性伸缩策略', + 'summary' => '创建应用弹性伸缩策略。', + 'description' => '## 使用须知'."\n" + .'- 您最多可以为1个应用创建5条弹性策略。'."\n" + .'- 您最多可以为1条定时弹性策略,创建20条单天内触发时间点。'."\n" + .'- 弹性策略启用时,请勿手动执行应用生命周期管理操作,例如应用扩缩容、部署应用、更改规格、重启应用或停止应用。如果您需要对应用执行该类操作,请停用弹性策略后,再手动执行操作。'."\n" + .'- 如果当前应用处于扩容、缩容、部署(单批、分批或灰度)、更改规格、重启或停止等过程中,该应用暂时无法添加或者启动弹性策略。'."\n" + .'- 如果单个应用需要弹出超过50个实例,请联系SAE技术支持并申请白名单。更多信息,请参见[联系我们](~~146530~~)。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:25.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2024-08-30T09:16:23.000Z', 'description' => '请求参数发生变更、响应参数发生变更'], + ['createdAt' => '2023-05-24T09:14:46.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2023-05-23T09:38:52.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2022-12-26T09:19:37.000Z', 'description' => '错误码发生变更'], + ['createdAt' => '2022-12-19T02:15:04.000Z', 'description' => '响应参数发生变更、响应参数发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '20', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateApplicationScalingRule'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'sae:CreateApplicationScalingRule', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a981dd515966966104121683d****\\",\\n \\"Data\\": {\\n \\"SlbId\\": \\"lb-uf62****6d13tq2u5\\",\\n \\"NamespaceId\\": \\"cn-beijing:sae-test\\",\\n \\"Description\\": \\"ingress-sae-test\\",\\n \\"ListenerPort\\": 443,\\n \\"SlbType\\": \\"internet\\",\\n \\"CertId\\": \\"13623****809_16cad216b32_845_-419427029\\",\\n \\"Name\\": \\"lb-uf6jt0nu4z6ior943****-80-f5****\\",\\n \\"DefaultRule\\": {\\n \\"ContainerPort\\": 8080,\\n \\"AppName\\": \\"app1\\",\\n \\"AppId\\": \\"395b60e4-0550-458d-9c54-a265d036****\\",\\n \\"BackendProtocol\\": \\"http\\"\\n },\\n \\"Rules\\": [\\n {\\n \\"AppName\\": \\"app1\\",\\n \\"ContainerPort\\": 8080,\\n \\"Domain\\": \\"edas.site\\",\\n \\"AppId\\": \\"395b60e4-0550-458d-9c54-a265d036****\\",\\n \\"Path\\": \\"/path1\\",\\n \\"BackendProtocol\\": \\"http\\",\\n \\"RewritePath\\": \\"/${1}\\",\\n \\"RuleActions\\": [\\n {\\n \\"ActionType\\": \\"rewrite\\",\\n \\"ActionConfig\\": \\"{\\\\\\\\\\\\\\"host\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"www.example.com\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"path\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"/example/text\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"query\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"x=1\\\\\\\\\\\\\\"}\\"\\n }\\n ]\\n }\\n ],\\n \\"Id\\": 87,\\n \\"LoadBalanceType\\": \\"clb\\",\\n \\"ListenerProtocol\\": \\"HTTP\\",\\n \\"CertIds\\": \\"87***35-cn-hangzhou,812***3-cn-hangzhou\\",\\n \\"SecurityPolicyId\\": \\"sp-n0kn923****\\",\\n \\"RequestTimeout\\": 60,\\n \\"IdleTimeout\\": 3,\\n \\"EnableXForwardedFor\\": true,\\n \\"EnableXForwardedForClientSrcPort\\": true,\\n \\"EnableXForwardedForProto\\": true,\\n \\"EnableXForwardedForSlbId\\": true,\\n \\"EnableXForwardedForSlbPort\\": true,\\n \\"CreatedBySae\\": true,\\n \\"CorsConfig\\": {\\n \\"Enable\\": \\"false\\",\\n \\"ExposeHeaders\\": \\"test_123\\",\\n \\"AllowHeaders\\": \\"test_123\\",\\n \\"AllowMethods\\": \\"GET\\",\\n \\"AllowOrigin\\": \\"*\\",\\n \\"AllowCredentials\\": \\"on\\",\\n \\"MaxAge\\": \\"1000\\"\\n },\\n \\"EnableGzip\\": true\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeIngressResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a981dd515966966104121683d****</TraceId>\\n <Data>\\n <SlbId>lb-uf62****6d13tq2u5</SlbId>\\n <NamespaceId>cn-beijing:sae-test</NamespaceId>\\n <Description>ingress-sae-test</Description>\\n <ListenerPort>443</ListenerPort>\\n <SlbType>internet</SlbType>\\n <CertId>13623****809_16cad216b32_845_-419427029</CertId>\\n <Name>lb-uf6jt0nu4z6ior943****-80-f5****</Name>\\n <DefaultRule>\\n <ContainerPort>8080</ContainerPort>\\n <AppName>app1</AppName>\\n <AppId>395b60e4-0550-458d-9c54-a265d036****</AppId>\\n <BackendProtocol>http</BackendProtocol>\\n </DefaultRule>\\n <Rules>\\n <AppName>app1</AppName>\\n <ContainerPort>8080</ContainerPort>\\n <Domain>edas.site</Domain>\\n <AppId>395b60e4-0550-458d-9c54-a265d036****</AppId>\\n <Path>/path1</Path>\\n <BackendProtocol>http</BackendProtocol>\\n <RewritePath>/${1}</RewritePath>\\n </Rules>\\n <Id>87</Id>\\n <LoadBalanceType>clb</LoadBalanceType>\\n <ListenerProtocol>HTTP</ListenerProtocol>\\n <CertIds>87***35-cn-hangzhou,812***3-cn-hangzhou</CertIds>\\n </Data>\\n <ErrorCode>空</ErrorCode>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeIngressResponse>","errorExample":""}]', - 'title' => '查询ingress配置详情', - 'summary' => '查询Ingress配置详情。', ], - 'ListIngresses' => [ - 'path' => '/pop/v1/sam/ingress/IngressList', - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'CreateConfigMap' => [ + 'path' => '/pop/v1/sam/configmap/configMap', + 'methods' => ['post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '6374', - 'abilityTreeNodes' => [ - 'FEATUREsaeRW2OE6', - ], + 'operationType' => 'create', + 'abilityTreeCode' => '6305', + 'abilityTreeNodes' => ['FEATUREsaeD9PL61'], ], 'parameters' => [ [ - 'name' => 'NamespaceId', + 'name' => 'Name', 'in' => 'query', - 'schema' => [ - 'description' => '命名空间ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-beijing', - ], + 'schema' => ['description' => 'ConfigMap实例名称。允许数字、字母和下划线(_)组合,仅允许以字母开头。', 'type' => 'string', 'required' => true, 'example' => 'name'], ], [ - 'name' => 'AppId', + 'name' => 'NamespaceId', 'in' => 'query', - 'schema' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'bbf3a590-6d13-46fe-8ca9-c947a20b****', - ], + 'schema' => ['description' => 'ConfigMap实例所在命名空间ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], ], [ - 'name' => 'CurrentPage', - 'in' => 'query', + 'name' => 'Data', + 'in' => 'body', + 'style' => 'json', 'schema' => [ - 'type' => 'integer', - 'format' => 'int32', + 'description' => 'ConfigMap数据。', + 'type' => 'object', + 'properties' => [ + 'Data' => ['description' => 'ConfigMap键值对数据,JSON格式。格式如下:'."\n" + ."\n" + .'{"Data":"{\\"k1\\":\\"v1\\", \\"k2\\":\\"v2\\"}"}'."\n" + ."\n" + .'k表示键,v表示值。关于配置项的更多信息,请参见[管理和使用配置项](~~171326~~)。', 'type' => 'string', 'required' => true, 'example' => '{"env.shell": "/bin/sh"}'], + ], 'required' => false, + 'example' => '{"env.home": "/root", "env.shell": "/bin/sh"}', ], ], [ - 'name' => 'PageSize', + 'name' => 'Description', 'in' => 'query', - 'schema' => [ - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - ], + 'schema' => ['description' => '描述信息,不可输入空格,且不超过255个字符。', 'type' => 'string', 'required' => false, 'example' => 'test-desc'], ], ], 'responses' => [ @@ -10662,1359 +3406,503 @@ 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '调用结果的附加信息。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], 'Data' => [ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'CurrentPage' => [ - 'type' => 'integer', - 'format' => 'int32', - ], - 'TotalSize' => [ - 'type' => 'integer', - 'format' => 'int32', - ], - 'PageSize' => [ - 'type' => 'integer', - 'format' => 'int32', - ], - 'IngressList' => [ - 'description' => '路由规则列表。', - 'type' => 'array', - 'items' => [ - 'description' => '路由规则信息。', - 'type' => 'object', - 'properties' => [ - 'SlbId' => [ - 'description' => 'SLB ID。', - 'type' => 'string', - 'example' => 'lb-uf62****6d13tq2u5', - ], - 'NamespaceId' => [ - 'description' => '命名空间ID。', - 'type' => 'string', - 'example' => 'cn-shanghai', - ], - 'Description' => [ - 'description' => '路由规则名称。', - 'type' => 'string', - 'example' => 'test', - ], - 'ListenerPort' => [ - 'description' => 'SLB监听端口。', - 'type' => 'string', - 'example' => '80', - ], - 'SlbType' => [ - 'description' => 'SLB类型。取值说明如下:'."\n" - ."\n" - .'- **internet**:公网。'."\n" - .'- **intranet**:私网。', - 'type' => 'string', - 'example' => 'internet', - ], - 'CertId' => [ - 'description' => '**CLB**证书ID。', - 'type' => 'string', - 'example' => '13624*****73809_16f8e549a20_1175189789_12****3210', - ], - 'CertIds' => [ - 'description' => '**ALB**多证书ID。', - 'type' => 'string', - 'example' => '87***35-cn-hangzhou,812***3-cn-hangzhou', - ], - 'Name' => [ - 'description' => '路由规则名称。', - 'type' => 'string', - 'example' => 'lb-uf6jt0nu4z6ior943****-80-f5****', - ], - 'Id' => [ - 'description' => '路由规则ID。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '18', - ], - 'LoadBalanceType' => [ - 'description' => '负载均衡SLB的类型。取值说明如下:'."\n" - ."\n" - .'- **clb**:传统型负载均衡CLB(原SLB)。'."\n" - .'- **alb**:应用型负载均衡ALB。', - 'type' => 'string', - 'example' => 'clb', - ], - 'ListenerProtocol' => [ - 'description' => '负载均衡SLB支持的请求转发协议。取值说明如下:'."\n" - ."\n" - .'- **HTTP**:适用于需要对数据内容进行识别的应用。'."\n" - .'- **HTTPS**:适用于需要加密传输的应用。'."\n" - ."\n" - .'在**CreateIngress**和**UpadateIngress**中,该参数非必填项,如果创建或更新网关路由规则时未填写该参数,则调用该API时不返回。', - 'type' => 'string', - 'example' => 'HTTP', - ], - 'MseGatewayId' => [ - 'description' => 'MSE云原生网关实例ID。', - 'type' => 'string', - 'example' => 'gw-d5df01a1bae748f1a7c4e325d2fd****', - ], - 'MseGatewayPort' => [ - 'description' => '服务对应的端口。', - 'type' => 'string', - 'example' => '80', - ], - 'MseGatewayProtocol' => [ - 'description' => 'MSE云原生网关支持的请求转发协议。取值说明如下:'."\n" - ."\n" - .'- **HTTP**:适用于需要对数据内容进行识别的应用。'."\n" - .'- **HTTPS**:适用于需要加密传输的应用。', - 'type' => 'string', - 'example' => 'HTTP', - ], - 'RequestTimeout' => [ - 'type' => 'integer', - 'format' => 'int64', - ], - 'IdleTimeout' => [ - 'type' => 'integer', - 'format' => 'int64', - ], - 'CreateTime' => [ - 'type' => 'integer', - 'format' => 'int64', - ], - 'DefaultRule' => [ - 'type' => 'object', - 'properties' => [ - 'ContainerPort' => [ - 'type' => 'integer', - 'format' => 'int32', - ], - 'AppName' => [ - 'type' => 'string', - ], - 'AppId' => [ - 'type' => 'string', - ], - 'BackendProtocol' => [ - 'type' => 'string', - ], - ], - ], - 'Rules' => [ - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'AppName' => [ - 'type' => 'string', - ], - 'ContainerPort' => [ - 'type' => 'integer', - 'format' => 'int32', - ], - 'Domain' => [ - 'type' => 'string', - ], - 'AppId' => [ - 'type' => 'string', - ], - 'Path' => [ - 'type' => 'string', - ], - 'BackendProtocol' => [ - 'type' => 'string', - ], - 'RewritePath' => [ - 'type' => 'string', - ], - 'RuleActions' => [ - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'ActionType' => [ - 'type' => 'string', - ], - 'ActionConfig' => [ - 'type' => 'string', - ], - ], - ], - ], - ], - ], - ], - 'CorsConfig' => [ - 'type' => 'object', - 'properties' => [ - 'Enable' => [ - 'type' => 'string', - ], - 'ExposeHeaders' => [ - 'type' => 'string', - ], - 'AllowHeaders' => [ - 'type' => 'string', - ], - 'AllowMethods' => [ - 'type' => 'string', - ], - 'AllowOrigin' => [ - 'type' => 'string', - ], - 'AllowCredentials' => [ - 'type' => 'string', - ], - 'MaxAge' => [ - 'type' => 'string', - ], - ], - ], - ], - ], - ], + 'ConfigMapId' => ['description' => '创建成功的ConfigMap实例ID。', 'type' => 'integer', 'format' => 'int64', 'example' => '1'], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '获取Ingress列表是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:获取成功。'."\n" - .'- **false**:获取失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '创建ConfigMap实例是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:创建成功。'."\n" + .'- **false**:创建失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], + ['errorCode' => 'Exceed.ConfigMap', 'errorMessage' => 'Too many ConfigMap objects have been created in the namespace.', 'description' => '命名空间中创建的ConfigMap对象过多。'], + ['errorCode' => 'TooMany.Configmap', 'errorMessage' => 'The maximum number of keys or the maximum length of Configmap is exceeded.', 'description' => 'Configmap的key数量,或者内容长度超过最大限制。'], ], - ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"CurrentPage\\": 0,\\n \\"TotalSize\\": 0,\\n \\"PageSize\\": 0,\\n \\"IngressList\\": [\\n {\\n \\"SlbId\\": \\"lb-uf62****6d13tq2u5\\",\\n \\"NamespaceId\\": \\"cn-shanghai\\",\\n \\"Description\\": \\"test\\",\\n \\"ListenerPort\\": \\"80\\",\\n \\"SlbType\\": \\"internet\\",\\n \\"CertId\\": \\"13624*****73809_16f8e549a20_1175189789_12****3210\\",\\n \\"CertIds\\": \\"87***35-cn-hangzhou,812***3-cn-hangzhou\\",\\n \\"Name\\": \\"lb-uf6jt0nu4z6ior943****-80-f5****\\",\\n \\"Id\\": 18,\\n \\"LoadBalanceType\\": \\"clb\\",\\n \\"ListenerProtocol\\": \\"HTTP\\",\\n \\"MseGatewayId\\": \\"gw-d5df01a1bae748f1a7c4e325d2fd****\\",\\n \\"MseGatewayPort\\": \\"80\\",\\n \\"MseGatewayProtocol\\": \\"HTTP\\",\\n \\"RequestTimeout\\": 0,\\n \\"IdleTimeout\\": 0,\\n \\"CreateTime\\": 0,\\n \\"DefaultRule\\": {\\n \\"ContainerPort\\": 0,\\n \\"AppName\\": \\"\\",\\n \\"AppId\\": \\"\\",\\n \\"BackendProtocol\\": \\"\\"\\n },\\n \\"Rules\\": [\\n {\\n \\"AppName\\": \\"\\",\\n \\"ContainerPort\\": 0,\\n \\"Domain\\": \\"\\",\\n \\"AppId\\": \\"\\",\\n \\"Path\\": \\"\\",\\n \\"BackendProtocol\\": \\"\\",\\n \\"RewritePath\\": \\"\\",\\n \\"RuleActions\\": [\\n {\\n \\"ActionType\\": \\"\\",\\n \\"ActionConfig\\": \\"\\"\\n }\\n ]\\n }\\n ],\\n \\"CorsConfig\\": {\\n \\"Enable\\": \\"\\",\\n \\"ExposeHeaders\\": \\"\\",\\n \\"AllowHeaders\\": \\"\\",\\n \\"AllowMethods\\": \\"\\",\\n \\"AllowOrigin\\": \\"\\",\\n \\"AllowCredentials\\": \\"\\",\\n \\"MaxAge\\": \\"\\"\\n }\\n }\\n ]\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<ListIngressesResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <IngressList>\\n <SlbId>lb-uf62****6d13tq2u5</SlbId>\\n <NamespaceId>cn-shanghai</NamespaceId>\\n <Description>test</Description>\\n <ListenerPort>80</ListenerPort>\\n <SlbType>internet</SlbType>\\n <CertId>13624*****73809_16f8e549a20_1175189789_12****3210</CertId>\\n <CertIds>87***35-cn-hangzhou,812***3-cn-hangzhou</CertIds>\\n <Name>lb-uf6jt0nu4z6ior943****-80-f5****</Name>\\n <Id>18</Id>\\n <LoadBalanceType>clb</LoadBalanceType>\\n <ListenerProtocol>HTTP</ListenerProtocol>\\n <MseGatewayId>gw-d5df01a1bae748f1a7c4e325d2fd****</MseGatewayId>\\n <MseGatewayPort>80</MseGatewayPort>\\n <MseGatewayProtocol>HTTP</MseGatewayProtocol>\\n </IngressList>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</ListIngressesResponse>","errorExample":""}]', - 'title' => '获取ingress列表', - 'summary' => '调用ListIngresses接口获取Ingress列表。', - ], - 'DescribePipeline' => [ - 'summary' => '查看批次信息。', - 'path' => '/pop/v1/sam/changeorder/DescribePipeline', - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ - [ - 'AK' => [], + 500 => [ + ['errorCode' => 'OperationFailed.RPCError', 'errorMessage' => 'Internal RPC request processing error.', 'description' => '内部RPC请求处理报错。'], ], ], - 'operationType' => 'read', - 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '6343', - 'abilityTreeNodes' => [ - 'FEATUREsaeD9PL61', - ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"ConfigMapId\\": 1\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<CreateConfigMapResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <ConfigMapId>1</ConfigMapId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</CreateConfigMapResponse>","errorExample":""}]', + 'title' => '创建ConfigMap实例', + 'summary' => '创建命名空间中的ConfigMap实例。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:25.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2021-11-25T02:53:56.000Z', 'description' => '请求参数发生变更'], ], - 'parameters' => [ - [ - 'name' => 'PipelineId', - 'in' => 'query', - 'schema' => [ - 'description' => '批次ID。通过调用[DescribeChangeOrder](~~126617~~)接口获取。', - 'type' => 'string', - 'required' => true, - 'example' => '917660ba-5092-44ca-b8e0-80012c96****', - ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateConfigMap'], ], ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'description' => '批次信息响应体。', - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '559B4247-C41C-4D9E-B866-B55D360B****', - ], - 'Message' => [ - 'description' => '调用结果的附加信息。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0be3e0c316390414649128666e****', - ], - 'Data' => [ - 'description' => '批次信息。', - 'type' => 'object', - 'properties' => [ - 'ShowBatch' => [ - 'description' => '是否可以开始下一批次执行。取值说明如下:'."\n" - ."\n" - .'- **false**:不可以开始下一批次执行。'."\n" - .'- **true**:可以开始下一批次执行。', - 'type' => 'boolean', - 'example' => 'false', - ], - 'PipelineStatus' => [ - 'description' => '批次状态,取值说明如下:'."\n" - ."\n" - .'- **0**:准备就绪。'."\n" - .'- **1**:执行中。'."\n" - .'- **2**:执行成功。'."\n" - .'- **3**:执行失败。'."\n" - .'- **6**:中止。'."\n" - .'- **10**:系统异常执行失败。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '2', - ], - 'CurrentStageId' => [ - 'description' => '该批次正在执行的阶段ID。', - 'type' => 'string', - 'example' => 'c3a55592-4c30-4d84-ac2d-e98c18ec****', - ], - 'PipelineName' => [ - 'description' => '批次名称。', - 'type' => 'string', - 'example' => '第1批变更', - ], - 'StageList' => [ - 'description' => '批次的阶段信息列表。', - 'type' => 'array', - 'items' => [ - 'description' => '阶段信息列表的结构体。', - 'type' => 'object', - 'properties' => [ - 'Status' => [ - 'description' => '阶段的状态,取值说明如下:'."\n" - ."\n" - .'- **0**:准备就绪。'."\n" - .'- **1**:执行中。'."\n" - .'- **2**:执行成功。'."\n" - .'- **3**:执行失败。'."\n" - .'- **6**:中止。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '2', - ], - 'StageId' => [ - 'description' => '阶段ID。', - 'type' => 'string', - 'example' => 'c3a55592-4c30-4d84-ac2d-e98c18ec****', - ], - 'ExecutorType' => [ - 'description' => '阶段类型,取值说明如下:'."\n" - ."\n" - .'- **0**:串行。'."\n" - .'- **1**:并行。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '0', - ], - 'TaskList' => [ - 'description' => '状态信息列表。', - 'type' => 'array', - 'items' => [ - 'description' => '状态信息列表结构体。', - 'type' => 'object', - 'properties' => [ - 'Status' => [ - 'description' => '任务的状态,取值说明如下:'."\n" - ."\n" - .'- **0**:准备就绪。'."\n" - .'- **1**:执行中。'."\n" - .'- **2**:执行成功。'."\n" - .'- **3**:执行失败。'."\n" - .'- **5**:等待重试。'."\n" - .'- **6**:中止。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '2', - ], - 'StageId' => [ - 'description' => '阶段ID。', - 'type' => 'string', - 'example' => 'c3a55592-4c30-4d84-ac2d-e98c18ec****', - ], - 'ErrorMessage' => [ - 'description' => '任务执行的报错信息。如果任务执行成功,则不会返回该信息。', - 'type' => 'string', - 'example' => 'EDAS-10022 ', - ], - 'ErrorCode' => [ - 'description' => '任务执行失败的错误码。如果任务执行成功,则不会返回该信息。', - 'type' => 'string', - 'example' => 'EDAS-10022', - ], - 'TaskName' => [ - 'description' => '任务名称。', - 'type' => 'string', - 'example' => '初始化环境', - ], - 'ErrorIgnore' => [ - 'description' => '是否支持失败后执行后面任务,取值说明如下:'."\n" - ."\n" - .'- **0**:不支持。'."\n" - .'- **1**:支持。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '0', - ], - 'Message' => [ - 'description' => '任务执行信息。', - 'type' => 'string', - 'example' => 'init Namespace success', - ], - 'ShowManualIgnore' => [ - 'description' => '是否支持手动跳过正在执行的任务,取值说明如下:'."\n" - .'- **true**:支持。'."\n" - .'- **false**:不支持。', - 'type' => 'boolean', - 'example' => 'false', - ], - 'TaskId' => [ - 'description' => '任务ID。', - 'type' => 'string', - 'example' => 'bef0122f-de9a-4ab0-8223-b88bf8ad****', - ], - ], - ], - ], - 'StageName' => [ - 'description' => '阶段的名称。', - 'type' => 'string', - 'example' => '部署应用', - ], - ], - ], - ], - 'NextPipelineId' => [ - 'description' => '下一批次ID。', - 'type' => 'string', - 'example' => 'b77b1c98-5772-4f05-95fc-c7bee5fa****', - ], - 'PipelineId' => [ - 'description' => '批次ID。', - 'type' => 'string', - 'example' => '917660ba-5092-44ca-b8e0-80012c96****', - ], - 'CoStatus' => [ - 'description' => '该批次所在的变更单的状态。', - 'type' => 'string', - 'example' => '执行成功', - ], - ], - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '查询批次信息是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:查询成功。'."\n" - .'- **false**:查询失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'sae:CreateConfigMap', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], ], - 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.NoPermission', - 'errorMessage' => 'Resource no permission', - ], - ], - ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"559B4247-C41C-4D9E-B866-B55D360B****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0be3e0c316390414649128666e****\\",\\n \\"Data\\": {\\n \\"ShowBatch\\": false,\\n \\"PipelineStatus\\": 2,\\n \\"CurrentStageId\\": \\"c3a55592-4c30-4d84-ac2d-e98c18ec****\\",\\n \\"PipelineName\\": \\"第1批变更\\",\\n \\"StageList\\": [\\n {\\n \\"Status\\": 2,\\n \\"StageId\\": \\"c3a55592-4c30-4d84-ac2d-e98c18ec****\\",\\n \\"ExecutorType\\": 0,\\n \\"TaskList\\": [\\n {\\n \\"Status\\": 2,\\n \\"StageId\\": \\"c3a55592-4c30-4d84-ac2d-e98c18ec****\\",\\n \\"ErrorMessage\\": \\"EDAS-10022 \\",\\n \\"ErrorCode\\": \\"EDAS-10022\\",\\n \\"TaskName\\": \\"初始化环境\\",\\n \\"ErrorIgnore\\": 0,\\n \\"Message\\": \\"init Namespace success\\",\\n \\"ShowManualIgnore\\": false,\\n \\"TaskId\\": \\"bef0122f-de9a-4ab0-8223-b88bf8ad****\\"\\n }\\n ],\\n \\"StageName\\": \\"部署应用\\"\\n }\\n ],\\n \\"NextPipelineId\\": \\"b77b1c98-5772-4f05-95fc-c7bee5fa****\\",\\n \\"PipelineId\\": \\"917660ba-5092-44ca-b8e0-80012c96****\\",\\n \\"CoStatus\\": \\"执行成功\\"\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribePipelineResponse>\\n <RequestId>559B4247-C41C-4D9E-B866-B55D360B****</RequestId>\\n <Message>success</Message>\\n <TraceId>1344643016148440313321061f****</TraceId>\\n <Data>\\n <ShowBatch>false</ShowBatch>\\n <PipelineStatus>2</PipelineStatus>\\n <CurrentStageId>c3a55592-4c30-4d84-ac2d-e98c18ec****</CurrentStageId>\\n <PipelineName>第1批变更</PipelineName>\\n <StageList>\\n <Status>2</Status>\\n <StageId>c3a55592-4c30-4d84-ac2d-e98c18ec****</StageId>\\n <ExecutorType>0</ExecutorType>\\n <TaskList>\\n <Status>2</Status>\\n <StageId>c3a55592-4c30-4d84-ac2d-e98c18ec****</StageId>\\n <ErrorMessage>EDAS-10022 <a target=\'_blank\' href=\'https://help.aliyun.com/knowledge_detail/106573.html#EDAS-10022\'>应用启动时 READINESS 检查失败</a></ErrorMessage>\\n <ErrorCode>EDAS-10022</ErrorCode>\\n <TaskName>初始化环境</TaskName>\\n <ErrorIgnore>0</ErrorIgnore>\\n <Message>init Namespace success</Message>\\n <ShowManualIgnore>false</ShowManualIgnore>\\n <TaskId>bef0122f-de9a-4ab0-8223-b88bf8ad****</TaskId>\\n </TaskList>\\n <StageName>部署应用</StageName>\\n </StageList>\\n <NextPipelineId>b77b1c98-5772-4f05-95fc-c7bee5fa****</NextPipelineId>\\n <PipelineId>917660ba-5092-44ca-b8e0-80012c96****</PipelineId>\\n <CoStatus>执行成功</CoStatus>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribePipelineResponse>","errorExample":""}]', - 'title' => '获取Logstash实例的管道信息', - 'requestParamsDescription' => ' ', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', ], - 'GetArmsTopNMetric' => [ - 'path' => '/pop/v1/sam/getArmsTopNMetric', - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'CreateGreyTagRoute' => [ + 'summary' => '为Spring Cloud或Dubbo应用创建灰度规则。', + 'path' => '/pop/v1/sam/tagroute/greyTagRoute', + 'methods' => ['post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'produces' => [], + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'none', - 'abilityTreeCode' => '16756', - 'abilityTreeNodes' => [ - 'FEATUREsaeK7DHH9', - ], + 'operationType' => 'create', + 'abilityTreeCode' => '10251', + 'abilityTreeNodes' => ['FEATUREsaeETR3ZD'], ], 'parameters' => [ [ - 'name' => 'RegionId', - 'in' => 'query', - 'schema' => [ - 'description' => '地域ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], - ], - [ - 'name' => 'OrderBy', + 'name' => 'AppId', 'in' => 'query', - 'schema' => [ - 'description' => '排序字段,根据查询返回字段中的某个字段排序。', - 'type' => 'string', - 'required' => true, - 'example' => 'count', - ], + 'schema' => ['title' => '应用ID', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => '7802c49a-67bc-4167-8369-9a9c003c****'], ], [ - 'name' => 'Limit', + 'name' => 'Name', 'in' => 'query', - 'schema' => [ - 'description' => '返回数据条数,取值范围[0,100]。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'example' => '10', - ], + 'schema' => ['title' => '规则名称', 'description' => '规则名称。支持以小写字母开头,以数字或小写字母结尾,仅可包含小写字母、中文字符、数字及短划线(-)。不超过64个字符。', 'type' => 'string', 'required' => true, 'example' => 'dubbo-echo'], ], [ - 'name' => 'StartTime', + 'name' => 'Description', 'in' => 'query', - 'schema' => [ - 'description' => '查询起始时间。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'example' => '1675823135951', - ], + 'schema' => ['title' => '规则名称', 'description' => '规则描述。不超过64个字符。', 'type' => 'string', 'required' => false, 'example' => 'Canary Release - Regions'], ], [ - 'name' => 'EndTime', + 'name' => 'ScRules', 'in' => 'query', - 'schema' => [ - 'description' => '查询终止时间。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'example' => '1675824035951', - ], + 'schema' => ['title' => 'SpringCloud规则', 'description' => '为Spring Cloud应用创建的灰度规则。当您的应用为Spring Cloud框架时必填,且无需填写**DubboRules**参数。', 'type' => 'string', 'required' => false, 'example' => '[{"condition":"OR","items":[{"cond":"==","name":"grey","operator":"rawvalue","type":"param","value":"true"},{"cond":"==","name":"grey","operator":"rawvalue","type":"cookie","value":"true"},{"cond":"==","name":"grey","operator":"rawvalue","type":"header","value":"true"}],"path":"/post-echo/hi"}]'], ], [ - 'name' => 'AppSource', + 'name' => 'DubboRules', 'in' => 'query', - 'schema' => [ - 'description' => 'SAE应用类型。'."\n" - ."\n" - .'- **micro_service。**'."\n" - .'- **web。**'."\n" - .'- **job。**', - 'type' => 'string', - 'required' => false, - 'example' => 'micro_service', - ], + 'schema' => ['title' => 'Dubbo规则', 'description' => '为Dubbo应用创建的灰度规则。当您的应用为Dubbo框架时必填,且无需填写**ScRules**参数。', 'type' => 'string', 'required' => false, 'example' => '[{"condition":"OR","group":"DUBBO","items":[{"cond":"==","expr":".key1","index":0,"operator":"rawvalue","value":"value1"},{"cond":"==","expr":".key2","index":0,"operator":"rawvalue","value":"value2"}],"methodName":"echo","serviceName":"com.alibaba.edas.boot.EchoService","version":"1.0.0"}]'], ], [ - 'name' => 'CpuStrategy', + 'name' => 'AlbRules', 'in' => 'query', - 'schema' => [ - 'description' => 'CPU分配策略。'."\n" - ."\n" - .'- **request**:仅在有请求时分配CPU。'."\n" - .'- **always**:始终分配固定CPU。', - 'type' => 'string', - 'required' => false, - 'example' => 'always', - ], + 'schema' => ['title' => 'Alb灰度规则', 'description' => '为配置好ALB网关路由的应用创建的灰度规则。', 'type' => 'string', 'required' => false, 'example' => '[{"condition":"AND","items":[{"cond":"==","name":"grey","operator":"rawvalue","type":"sourceIp","value":"127.0.0.1"},{"cond":"==","name":"grey","operator":"rawvalue","type":"cookie","value":"true"},{"cond":"==","name":"grey","operator":"rawvalue","type":"header","value":"true"}],"path":"/post-echo/hi"}]'], ], ], 'responses' => [ 200 => [ 'schema' => [ + 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '3B763F98-0BA2-5C23-B6B8-558568D2****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '9D29CBD0-45D3-410B-9826-52F86F90****'], + 'Message' => ['description' => '调用结果的附加信息。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], 'Data' => [ - 'description' => '应用信息列表。', - 'type' => 'array', - 'items' => [ - 'description' => '应用信息。', - 'type' => 'object', - 'properties' => [ - 'AppId' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****', - ], - 'Name' => [ - 'description' => '应用名称。', - 'type' => 'string', - 'example' => 'test', - ], - 'RegionId' => [ - 'description' => '命名空间ID。', - 'type' => 'string', - 'example' => 'cn-hangzhou', - ], - 'Count' => [ - 'description' => '总请求量,单位个。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '100', - ], - 'Error' => [ - 'description' => '错误数,单位个。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '0', - ], - 'Rt' => [ - 'description' => '平均响应时间,单位ms。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '100', - ], - ], + 'description' => '灰度规则信息。', + 'type' => 'object', + 'properties' => [ + 'GreyTagRouteId' => ['description' => '灰度规则ID,全局唯一。', 'type' => 'integer', 'format' => 'int64', 'example' => '16'], ], ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '获取应用列表。取值说明如下:'."\n" - ."\n" - .'- **true**:获取成功。'."\n" - .'- **false**:获取失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '查询变更单信息是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:查询成功。'."\n" + .'- **false**:查询失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], + ['errorCode' => 'Application.ChangerOrderRunning', 'errorMessage' => 'An application change process is in progress. Please try again later.', 'description' => '应用有变更流程正在执行,请稍后重试。'], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"3B763F98-0BA2-5C23-B6B8-558568D2****\\",\\n \\"Data\\": [\\n {\\n \\"AppId\\": \\"7171a6ca-d1cd-4928-8642-7d5cfe69****\\",\\n \\"Name\\": \\"test\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"Count\\": 100,\\n \\"Error\\": 0,\\n \\"Rt\\": 100\\n }\\n ],\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<GetArmsTopNMetricResponse>\\n <Message>success</Message>\\n <RequestId>3B763F98-0BA2-5C23-B6B8-558568D2C1C2</RequestId>\\n <Data>\\n <AppId>7171a6ca-d1cd-4928-8642-7d5cfe69****</AppId>\\n <Name>test</Name>\\n <RegionId>cn-hangzhou</RegionId>\\n <Count>100</Count>\\n <Error>0</Error>\\n <Rt>100</Rt>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</GetArmsTopNMetricResponse>","errorExample":""}]', - 'title' => 'GetArmsTopNMetric', - 'summary' => '调用GetArmsTopNMetric接口获取应用监控的Top N应用列表。', - ], - 'GetChangeOrderMetric' => [ - 'path' => '/pop/v1/sam/getChangeOrderMetric', - 'methods' => [ - 'get', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"9D29CBD0-45D3-410B-9826-52F86F90****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"GreyTagRouteId\\": 16\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<CreateGreyTagRouteResponse>\\n <RequestId>9D29CBD0-45D3-410B-9826-52F86F90****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <GreyTagRouteId>16</GreyTagRouteId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</CreateGreyTagRouteResponse>","errorExample":""}]', + 'title' => 'CreateGreyTagRoute', + 'description' => '> 目前一个应用只能配置一条灰度规则。', + 'requestParamsDescription' => '- **ScRules参数说明**'."\n" + ."\n" + .'|参数名称 |类型|示例 |描述 |'."\n" + .'| --- | --- | --- | --- |'."\n" + .'|condition|String|OR |灰度规则的条件模式,取值说明如下:<br />- **AND**:表示与,即同时满足条件列表中的所有条件。<br />- **OR**:表示或,即满足条件列表中的任一条件。|'."\n" + .'|path|String | /path|Spring Cloud应用灰度规则对应的路径。|'."\n" + .'|items |Array of items | |条件列表。|'."\n" + ."\n" + .'**items参数说明**'."\n" + ."\n" + .'|参数名称 |类型|示例 |描述 |'."\n" + .'| --- | --- | --- | --- |'."\n" + .'|name|String|test |参数名。|'."\n" + .'|cond |String | == |比较操作符。可取值:**>**、**<**、**>=**、**<=**、**==**以及**!=**。|'."\n" + .'|type | String| cookie |比较类型,取值说明如下:<br />- **param**:表示Parameter。<br />- **cookie**:表示Cookie。<br />- **header**:表示Header。 |'."\n" + .'|value|String | test|参数取值,根据**type**和**name**得到的值跟这个值进行比较。|'."\n" + .'|operator| String| rawvalue|运算符,取值说明如下:<br />- **rawvalue**:表示直接比较。<br />- **list**:表示白名单。<br />- **mod**:表示对100取模。<br />- **deterministic\\_proportional\\_steaming\\_division**:表示百分比。|'."\n" + ."\n" + .'- **DubboRules参数说明**'."\n" + ."\n" + .'|参数名称 |类型|示例 |描述 |'."\n" + .'| --- | --- | --- | --- |'."\n" + .'|condition|String|OR |灰度规则的条件模式,取值说明如下:<br />- **AND**:表示与,即同时满足条件列表中的所有条件。<br />- **OR**:表示或,即满足条件列表中的任一条件。|'."\n" + .'|methodName|String |echo|Dubbo服务的方法名。|'."\n" + .'|serviceName| String|com.alibaba.edas.boot.EchoService|Dubbo服务名称。|'."\n" + .'|version |String | 1.0.0|Dubbo服务版本。|'."\n" + .'|items |Array of items | |条件列表。|'."\n" + .'|group|String|DUBBO|灰度规则对应的Dubbo服务的分组。|'."\n" + ."\n" + .'**items参数说明**'."\n" + ."\n" + .'|参数名称 |类型|示例 |描述 |'."\n" + .'| --- | --- | --- | --- |'."\n" + .'|index|Integer|0 |参数编号,0表示第一个参数。|'."\n" + .'|expr|String|.name|参数值获取表达式。取值说明如下:<br />- **留空**:表示直接取当前参数的值。<br />- **.name**:表示取参数的name属性,相当于args0.getName()。<br />- **.isEnabled()** :表示取参数的enabled属性,相当于args0.isEnabled()。<br />- **[0]**:表示当前参数应是一个数组,取数组的第一个值,相当于args0[0],注意开始没有英文句点(.)。<br />- **.get(0) **:表示当前参数应是一个List,取List的第一个值,相当于args0.get(0)。<br />- **.get("key")**:表示当前参数是一个Map,获取key对应的值,相当于args0.get("key")。|'."\n" + .'|cond |String | == |比较操作符。可取值:**>**、**<**、**>=**、**<=**、**==**以及**!=**。|'."\n" + .'|value|String | test|参数取值,根据**expr**和**index**得到的值跟这个值进行比较。|'."\n" + .'|operator| String| rawvalue|运算符,取值说明如下:<br />- **rawvalue**:表示直接比较。<br />- **list**:表示白名单。<br />- **mod**:表示对100取模。<br />- **deterministic\\_proportional\\_steaming\\_division**:表示百分比。|', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:24.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2022-12-29T03:14:28.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2021-11-16T02:00:05.000Z', 'description' => '错误码发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateGreyTagRoute'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'sae:CreateGreyTagRoute', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + ], + 'CreateIngress' => [ + 'path' => '/pop/v1/sam/ingress/Ingress', + 'methods' => ['post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'none', - 'abilityTreeCode' => '14387', - 'abilityTreeNodes' => [ - 'FEATUREsaeRVPNSA', - ], + 'operationType' => 'create', + 'abilityTreeCode' => '6306', + 'abilityTreeNodes' => ['FEATUREsaeBRTWZ3'], ], 'parameters' => [ [ - 'name' => 'RegionId', + 'name' => 'NamespaceId', 'in' => 'query', - 'schema' => [ - 'description' => '地域ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => '应用所在命名空间ID,目前不支持跨命名空间的应用。', 'type' => 'string', 'required' => true, 'example' => 'cn-beijing:sae-test'], ], [ - 'name' => 'CreateTime', + 'name' => 'Description', 'in' => 'query', - 'schema' => [ - 'description' => '变更单创建的起始时间。', - 'type' => 'string', - 'required' => true, - 'example' => '1661152748883', - ], + 'schema' => ['description' => '路由规则名称。', 'type' => 'string', 'required' => false, 'example' => 'ingress-for-sae-test'], ], [ - 'name' => 'OrderBy', + 'name' => 'SlbId', 'in' => 'query', - 'schema' => [ - 'description' => '排序字段,根据查询返回字段中的某个字段排序。', - 'type' => 'string', - 'required' => true, - 'example' => 'errorPercent', - ], + 'schema' => ['description' => '路由规则所使用的SLB实例ID。'."\n" + ."\n" + .'> 负载均衡SLB包括CLB实例和ALB实例。', 'type' => 'string', 'required' => false, 'example' => 'lb-uf6hucc7inlqrtcq5****'], ], [ - 'name' => 'Limit', + 'name' => 'ListenerPort', 'in' => 'query', - 'schema' => [ - 'description' => '返回数据条数,取值范围[0,100]。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'example' => '10', - ], + 'schema' => ['description' => 'SLB监听端口,该端口不能被占用。', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '80'], ], [ - 'name' => 'AppSource', + 'name' => 'CertId', 'in' => 'query', - 'schema' => [ - 'description' => 'SAE应用类型。'."\n" - ."\n" - .'- **micro_service。**'."\n" - .'- **web。**'."\n" - .'- **job。**', - 'type' => 'string', - 'required' => false, - 'example' => 'micro_service', - ], + 'schema' => ['description' => '**CLB**证书ID。取值说明如下:'."\n" + ."\n" + .'- **LoadBalanceType**为**clb**时,使用该字段来配置HTTPS监听证书。'."\n" + ."\n" + .'CLB使用SSL证书ID的更多信息,请参见[管理证书(CLB)](~~90792~~)。', 'type' => 'string', 'required' => false, 'example' => '188077086902****_176993d****_181437****_108724****'], ], [ - 'name' => 'CpuStrategy', + 'name' => 'CertIds', 'in' => 'query', - 'schema' => [ - 'description' => 'CPU分配策略。'."\n" - ."\n" - .'- **request**:仅在有请求时分配CPU。'."\n" - .'- **always**:始终分配固定CPU。', - 'type' => 'string', - 'required' => false, - 'example' => 'always', - ], + 'schema' => ['description' => '**ALB**多证书ID。取值说明如下:'."\n" + ."\n" + .'- **LoadBalanceType**为**alb**时,使用该字段来配置HTTPS监听多证书,多个证书ID之间使用逗号分割。'."\n" + ."\n" + .'- ALB使用的SSL证书ID需要从数字证书产品获取。例如配置`756***-cn-hangzhou`,`756***`为产品页获取的证书ID, `-cn-hangzhou`为固定后缀。更多信息,请参见[管理证书(ALB)](~~209076~~)。', 'type' => 'string', 'required' => false, 'example' => '87***35-cn-hangzhou,812***3-cn-hangzhou'], ], [ - 'name' => 'AppId', + 'name' => 'DefaultRule', 'in' => 'query', - 'schema' => [ - 'type' => 'string', - 'required' => false, - ], + 'schema' => ['description' => '默认转发规则。按照IP地址,通过指定端口转发流量到指定应用。参数说明如下:'."\n" + ."\n" + .'- **appId**:应用ID。'."\n" + .'- **containerPort**:应用实例端口。'."\n" + ."\n" + .'> 所有未匹配或不满足**Rules**转发规则的请求都会转到该指定应用。', 'type' => 'string', 'required' => true, 'example' => '{"appId":"395b60e4-0550-458d-9c54-a265d036****","containerPort":8080}'], ], [ - 'name' => 'CoType', - 'in' => 'query', - 'schema' => [ - 'type' => 'string', - 'required' => false, - ], - ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '3B763F98-0BA2-5C23-B6B8-558568D2****', - ], - 'Data' => [ - 'description' => '应用信息列表。', - 'type' => 'array', - 'items' => [ - 'description' => '应用信息。', - 'type' => 'object', - 'properties' => [ - 'AppId' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****', - ], - 'Name' => [ - 'description' => '应用名称。', - 'type' => 'string', - 'example' => 'test', - ], - 'RegionId' => [ - 'description' => '命名空间ID。', - 'type' => 'string', - 'example' => 'cn-hangzhou', - ], - 'Total' => [ - 'description' => '变更单总数。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '4', - ], - 'Error' => [ - 'description' => '异常变更单数量。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1', - ], - 'ErrorPercent' => [ - 'description' => '变更失败的百分比。', - 'type' => 'number', - 'format' => 'float', - 'example' => '0.25', - ], - 'TaskTimeCostMsAvg' => [ - 'type' => 'string', - ], - 'OptimizeSuggestions' => [ - 'type' => 'string', - ], - 'MaxTimeCostMs' => [ - 'type' => 'number', - 'format' => 'float', - ], - 'AvgTimeCostMs' => [ - 'type' => 'number', - 'format' => 'float', - ], - ], - ], - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '获取服务列表是否成功。取值说明如下:'."\n" - ."\n" - .' - **true**:获取成功。'."\n" - .' - **false**:获取失败。', - 'type' => 'boolean', - 'example' => 'true', - ], - ], - ], - ], - ], - 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], + 'name' => 'Rules', + 'in' => 'formData', + 'schema' => ['description' => '转发规则。按照域名和请求路径,通过指定端口转发流量到指定应用。参数说明如下:'."\n" + ."\n" + .'- **appId**:应用ID。'."\n" + .'- **containerPort**:应用实例端口。'."\n" + .'- **domain**:域名。'."\n" + .'- **path**:请求路径。'."\n" + .'- **backendProtocol**:后端服务协议,支持http/https/grpc,默认值为http。'."\n" + .'- **rewritePath**:重写路径。'."\n" + ."\n" + .'> 目前仅有ALB支持设置URL路径重写(RewritePath)功能,CLB不支持此功能。', 'type' => 'string', 'required' => true, 'example' => '[{"appId":"395b60e4-0550-458d-9c54-a265d036****","containerPort":8080,"domain":"www.sae.site","path":"/path1"},{"appId":"666403ce-d25b-47cf-87fe-497565d2****","containerPort":8080,"domain":"sae.site","path":"/sys/(.*)/(.*)/aaa","backendProtocol":"http"}]'], ], - ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"3B763F98-0BA2-5C23-B6B8-558568D2****\\",\\n \\"Data\\": [\\n {\\n \\"AppId\\": \\"7171a6ca-d1cd-4928-8642-7d5cfe69****\\",\\n \\"Name\\": \\"test\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"Total\\": 4,\\n \\"Error\\": 1,\\n \\"ErrorPercent\\": 0.25,\\n \\"TaskTimeCostMsAvg\\": \\"\\",\\n \\"OptimizeSuggestions\\": \\"\\",\\n \\"MaxTimeCostMs\\": 0,\\n \\"AvgTimeCostMs\\": 0\\n }\\n ],\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<GetChangeOrderMetricResponse>\\n <Message>success</Message>\\n <RequestId>3B763F98-0BA2-5C23-B6B8-558568D2C1C2</RequestId>\\n <Data>\\n <AppId>7171a6ca-d1cd-4928-8642-7d5cfe69****</AppId>\\n <Name>test</Name>\\n <RegionId>cn-hangzhou</RegionId>\\n <Total>4</Total>\\n <Error>1</Error>\\n <ErrorPercent>0.25</ErrorPercent>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</GetChangeOrderMetricResponse>","errorExample":""}]', - 'title' => 'GetChangeOrderMetric', - 'summary' => '调用GetChangeOrderMetric接口获取异常变更单的Top N 应用列表。', - ], - 'GetScaleAppMetric' => [ - 'path' => '/pop/v1/sam/getScaleAppMetric', - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ [ - 'AK' => [], - ], - ], - 'operationType' => 'read', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'none', - 'abilityTreeCode' => '14220', - 'abilityTreeNodes' => [ - 'FEATUREsae5HLO11', + 'name' => 'LoadBalanceType', + 'in' => 'query', + 'schema' => ['description' => '负载均衡SLB的类型。取决于创建路由规则时填写的类型,更新时不可变更。取值说明如下:'."\n" + ."\n" + .'- **clb**:传统型负载均衡CLB(原SLB)。'."\n" + .'- **alb**:应用型负载均衡ALB。', 'type' => 'string', 'required' => false, 'example' => 'clb'], ], - ], - 'parameters' => [ [ - 'name' => 'RegionId', + 'name' => 'ListenerProtocol', 'in' => 'query', - 'schema' => [ - 'description' => '地域ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => '请求转发协议。取值说明如下:'."\n" + ."\n" + .'- **HTTP**:适用于需要对数据内容进行识别的应用。'."\n" + .'- **HTTPS**:适用于需要加密传输的应用。', 'type' => 'string', 'required' => false, 'example' => 'HTTP'], ], [ - 'name' => 'Limit', + 'name' => 'SecurityPolicyId', 'in' => 'query', - 'schema' => [ - 'description' => '返回数据条数。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'example' => '10', - ], + 'schema' => ['title' => '安全策略实例 ID', 'description' => '安全策略实例 ID。', 'type' => 'string', 'required' => false, 'example' => 'sp-bp1bpn0kn9****'], ], [ - 'name' => 'AppSource', + 'name' => 'RequestTimeout', 'in' => 'query', - 'schema' => [ - 'description' => 'SAE应用类型。'."\n" - ."\n" - .'- **micro_service。**'."\n" - .'- **web。**'."\n" - .'- **job。**', - 'type' => 'string', - 'required' => false, - 'example' => 'micro_service', - ], + 'schema' => ['title' => '指定请求超时时间。单位:秒。'."\n" + ."\n" + .'取值:1~180。'."\n" + ."\n" + .'默认值:60。'."\n" + ."\n" + .'如果在超时时间内后端服务器一直没有响应,负载均衡将放弃等待,并给客户端返回HTTP 504错误码。', 'description' => '指定请求超时时间。单位:秒。取值范围:1~180。'."\n" + .'如果在超时时间内后端服务器一直没有响应,负载均衡将放弃等待,给客户端返回HTTP 504错误码。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '3'], ], [ - 'name' => 'CpuStrategy', + 'name' => 'IdleTimeout', 'in' => 'query', - 'schema' => [ - 'description' => 'CPU分配策略。'."\n" - ."\n" - .'- **request**:仅在有请求时分配CPU。'."\n" - ."\n" - .'- a**lways**:始终分配固定CPU。', - 'type' => 'string', - 'required' => false, - 'example' => 'always', - ], + 'schema' => ['title' => '指定连接空闲超时时间。单位:秒。'."\n" + ."\n" + .'取值范围:1~60。'."\n" + ."\n" + .'默认值:15。'."\n" + ."\n" + .'如果在超时时间内一直没有访问请求,负载均衡会暂时中断当前连接,直到一下次请求来临时重新建立新的连接。', 'description' => '指定连接空闲超时时间。单位:秒。取值范围:1~60。'."\n" + .'如果在超时时间内一直没有访问请求,负载均衡会暂时中断当前连接,直到一下次请求来临时重新建立新的连接。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '15'], ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '3B763F98-0BA2-5C23-B6B8-558568D2****', - ], - 'Data' => [ - 'description' => '应用信息列表。', - 'type' => 'array', - 'items' => [ - 'description' => '应用信息。', - 'type' => 'object', - 'properties' => [ - 'AppId' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****', - ], - 'Name' => [ - 'description' => '应用名称。', - 'type' => 'string', - 'example' => 'test', - ], - 'RegionId' => [ - 'description' => '命名空间ID。', - 'type' => 'string', - 'example' => 'cn-hangzhou', - ], - 'Runnings' => [ - 'description' => '当前实例数。'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '10', - ], - 'MaxReplicas' => [ - 'description' => '设置的最大实例数。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '10', - ], - ], - ], - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '获取服务列表是否成功。取值说明如下:'."\n" - ."\n" - .' - **true**:获取成功。'."\n" - .' - **false**:获取失败。', - 'type' => 'boolean', - 'example' => 'true', - ], - ], - ], + [ + 'name' => 'EnableXForwardedFor', + 'in' => 'query', + 'schema' => ['description' => '是否开启通过X-Forwarded-For头字段获取来访者客户端IP。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], - ], - 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], + [ + 'name' => 'EnableXForwardedForClientSrcPort', + 'in' => 'query', + 'schema' => ['description' => '是否通过X-Forwarded-Port头字段获取负载均衡实例的监听端口。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], - ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"3B763F98-0BA2-5C23-B6B8-558568D2****\\",\\n \\"Data\\": [\\n {\\n \\"AppId\\": \\"7171a6ca-d1cd-4928-8642-7d5cfe69****\\",\\n \\"Name\\": \\"test\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"Runnings\\": 10,\\n \\"MaxReplicas\\": 10\\n }\\n ],\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<GetScaleAppMetricResponse>\\n <Message>success</Message>\\n <RequestId>3B763F98-0BA2-5C23-B6B8-558568D2C1C2</RequestId>\\n <Data>\\n <AppId>7171a6ca-d1cd-4928-8642-7d5cfe69****</AppId>\\n <Name>test</Name>\\n <RegionId>cn-hangzhou</RegionId>\\n <Runnings>10</Runnings>\\n <MaxReplicas>10</MaxReplicas>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</GetScaleAppMetricResponse>","errorExample":""}]', - 'title' => 'GetScaleAppMetric', - 'summary' => '调用GetScaleAppMetric接口获取弹性生效的Top N应用列表。', - ], - 'GetWarningEventMetric' => [ - 'path' => '/pop/v1/sam/getWarningEventMetric', - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ [ - 'AK' => [], + 'name' => 'EnableXForwardedForProto', + 'in' => 'query', + 'schema' => ['description' => '是否通过X-Forwarded-Proto头字段获取负载均衡实例的监听协议。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], - ], - 'operationType' => 'read', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'none', - 'abilityTreeCode' => '14386', - 'abilityTreeNodes' => [ - 'FEATUREsaeD9PL61', + [ + 'name' => 'EnableXForwardedForSlbId', + 'in' => 'query', + 'schema' => ['description' => '是否通过SLB-ID头字段获取负载均衡实例ID。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], - ], - 'parameters' => [ [ - 'name' => 'RegionId', + 'name' => 'EnableXForwardedForSlbPort', 'in' => 'query', - 'schema' => [ - 'description' => '地域ID。'."\n" - ."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => '是否通过X-Forwarded-Port头字段获取负载均衡实例的监听端口。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], [ - 'name' => 'StartTime', + 'name' => 'AddressType', 'in' => 'query', - 'schema' => [ - 'description' => '查询起始时间。'."\n" - ."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'example' => '1675823135951', - ], + 'schema' => ['description' => '地址类型:'."\n" + .'- Internet:公网地址。'."\n" + .'- Intranet:私网地址。', 'type' => 'string', 'required' => false, 'example' => 'Internet'], ], [ - 'name' => 'EndTime', + 'name' => 'LoadBalancerEdition', 'in' => 'query', - 'schema' => [ - 'description' => '查询终止时间。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'example' => '1675824035951', - ], + 'schema' => ['description' => '应用型负载均衡的版本,不同版本有不同功能限制和计费策略。取值:'."\n" + ."\n" + .'- **Standard**:标准版。'."\n" + ."\n" + .'- **StandardWithWaf**:WAF增强版。', 'type' => 'string', 'required' => false, 'example' => 'Standard'], ], [ - 'name' => 'Limit', + 'name' => 'ZoneMappings', 'in' => 'query', - 'schema' => [ - 'description' => '返回数据条数,取值范围[0,100]。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'example' => '10', - ], + 'schema' => ['description' => '可用区及交换机映射列表的JSON字符串。若当前地域支持 2 个及以上的可用区,至少需要添加 2 个可用区。一个ZoneMapping结构为:'."\n" + ."\n" + .'- VSwitchId,String类型,可用区对应的交换机,每个可用区只能使用一台交换机和一个子网。'."\n" + ."\n" + .'- ZoneId,String类型,网络型负载均衡实例的可用区 ID。', 'type' => 'string', 'required' => false, 'example' => '[{"VSwitchId":"vsw-wz9klui6icc08p6******","ZoneId":"cn-shenzhen-c"},{"VSwitchId":"vsw-wz9frrmoeuki2wp******","ZoneId":"cn-shenzhen-e"}]'], ], [ - 'name' => 'AppSource', + 'name' => 'CorsConfig', 'in' => 'query', - 'schema' => [ - 'description' => 'SAE应用类型。'."\n" - ."\n" - .'- **micro_service。**'."\n" - .'- **web。**'."\n" - .'- **job。**', - 'type' => 'string', - 'required' => false, - 'example' => 'micro_service', - ], + 'schema' => ['description' => '跨域配置', 'type' => 'string', 'required' => false, 'example' => '{"Enable":"true"}'], ], [ - 'name' => 'CpuStrategy', + 'name' => 'EnableGzip', 'in' => 'query', - 'schema' => [ - 'description' => 'CPU分配策略。'."\n" - ."\n" - .'- **request**:仅在有请求时分配CPU。'."\n" - .'- **always**:始终分配固定CPU。', - 'type' => 'string', - 'required' => false, - 'example' => 'always', - ], + 'schema' => ['description' => '是否开启数据压缩', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], ], 'responses' => [ 200 => [ 'schema' => [ + 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '3B763F98-0BA2-5C23-B6B8-558568D2****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], 'Data' => [ - 'description' => '应用信息列表。', - 'type' => 'array', - 'items' => [ - 'description' => '应用信息。', - 'type' => 'object', - 'properties' => [ - 'AppId' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****', - ], - 'Name' => [ - 'description' => '应用名称。', - 'type' => 'string', - 'example' => 'test', - ], - 'RegionId' => [ - 'description' => '命名空间ID。', - 'type' => 'string', - 'example' => 'cn-hangzhou', - ], - 'WarningCount' => [ - 'description' => 'Warning事件数量。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '10', - ], - ], + 'description' => '返回结果。', + 'type' => 'object', + 'properties' => [ + 'IngressId' => ['description' => '路由规则ID。', 'type' => 'integer', 'format' => 'int64', 'example' => '87'], ], ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '获取应用列表。取值说明如下:'."\n" - ."\n" - .'- **true**:获取成功。'."\n" - .'- **false**:获取失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '创建路由规则是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:创建成功。'."\n" + .'- **false**:创建失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], - [ - 'errorCode' => 'Sls.NotExist', - 'errorMessage' => 'SLS configuration does not exist.', + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], + ['errorCode' => 'Slb.NotFound', 'errorMessage' => 'The SLB instance does not exist: slbId [%s]', 'description' => 'SLB不存在:slbId[%s]。'], + ['errorCode' => 'Exceed.IngressRule', 'errorMessage' => 'The number of Ingress related rules must be less than or equal to 40.', 'description' => 'Ingress配置对应规则不可超过40条。'], + ['errorCode' => 'SlbListenerPort.NotAvailable', 'errorMessage' => 'The SLB listening port is unavailable: slbId [%s], port [%s]', 'description' => 'SLB监听端口被占用:slbId[%s], port[%s]。'], + ['errorCode' => 'SSLCert.NotFound', 'errorMessage' => 'The specified SSL certificate cannot be found.', 'description' => '找不到对应的SSL证书。'], + ], + 404 => [ + ['errorCode' => 'InvalidResponse.Api', 'errorMessage' => 'The response of API %s is empty.', 'description' => 'API返回数据为空。'], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"IngressId\\": 87\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<CreateIngressResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <IngressId>87</IngressId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</CreateIngressResponse>","errorExample":""}]', + 'title' => '创建一条路由规则', + 'summary' => '创建一条路由规则。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:25.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-10-24T08:31:05.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2025-03-21T02:11:42.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2025-01-10T02:30:23.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2024-10-29T08:50:17.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2024-09-11T08:44:35.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2024-08-21T01:31:17.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2022-12-02T02:40:58.000Z', 'description' => '请求参数发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateIngress'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'sae:CreateIngress', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"3B763F98-0BA2-5C23-B6B8-558568D2****\\",\\n \\"Data\\": [\\n {\\n \\"AppId\\": \\"7171a6ca-d1cd-4928-8642-7d5cfe69****\\",\\n \\"Name\\": \\"test\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"WarningCount\\": 10\\n }\\n ],\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<GetWarningEventMetricResponse>\\n <Message>success</Message>\\n <RequestId>3B763F98-0BA2-5C23-B6B8-558568D2C1C2</RequestId>\\n <Data>\\n <AppId>7171a6ca-d1cd-4928-8642-7d5cfe69****</AppId>\\n <Name>test</Name>\\n <RegionId>cn-hangzhou</RegionId>\\n <WarningCount>10</WarningCount>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</GetWarningEventMetricResponse>","errorExample":""}]', - 'title' => 'GetWarningEventMetric', - 'summary' => '调用GetWarningEventMetric接口获取Warning事件的Top N应用列表。', ], - 'CreateApplication' => [ - 'path' => '/pop/v1/sam/app/createApplication', - 'methods' => [ - 'post', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'CreateJob' => [ + 'path' => '/pop/v1/sam/job/createJob', + 'methods' => ['post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -12024,1448 +3912,1352 @@ 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', - 'abilityTreeCode' => '6303', - 'abilityTreeNodes' => [ - 'FEATUREsaeRVPNSA', - ], + 'abilityTreeCode' => '100729', + 'abilityTreeNodes' => ['FEATUREsaeN5OIM9'], ], 'parameters' => [ [ 'name' => 'AppName', 'in' => 'query', - 'schema' => [ - 'description' => '应用名称。允许数字、字母以及短划线(-)组合。必须以字母开始,不允许以短划线(-)结尾,不超过36个字符。', - 'type' => 'string', - 'required' => true, - 'example' => 'test', - ], + 'schema' => ['description' => '任务模板名称。允许数字、字母以及短划线(-)组合。必须以字母开始,不超过36个字符。', 'type' => 'string', 'required' => true, 'example' => 'test'], ], [ 'name' => 'NamespaceId', 'in' => 'query', - 'schema' => [ - 'description' => 'SAE命名空间ID。仅支持名称为小写字母加短划线(-)的命名空间,必须以字母开始。'."\n" - .'命名空间可通过调用[DescribeNamespaceList](~~126547~~)接口获取。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-beijing:test', - ], + 'schema' => ['description' => 'SAE命名空间ID。仅支持名称为小写字母加短划线(-)的命名空间,必须以字母开始。', 'type' => 'string', 'required' => false, 'example' => 'cn-beijing:test'], ], [ 'name' => 'AppDescription', 'in' => 'query', - 'schema' => [ - 'description' => '应用描述信息。不超过1024个字符。', - 'type' => 'string', - 'required' => false, - 'example' => 'This is a test description.', - ], + 'schema' => ['description' => '任务模板描述信息。不超过1024个字符。', 'type' => 'string', 'required' => false, 'example' => 'This is a test description.'], ], [ 'name' => 'VpcId', 'in' => 'query', - 'schema' => [ - 'description' => 'SAE命名空间对应的VPC。在SAE中,一个命名空间只能对应一个VPC,且不能修改。第一次在命名空间内创建SAE应用将形成绑定关系。多个命名空间可以对应一个VPC。不填则默认为命名空间绑定的VPC ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'vpc-bp1aevy8sofi8mh1q****', - ], + 'schema' => ['description' => 'SAE命名空间对应的VPC。在SAE中,一个命名空间只能对应一个VPC,且不能修改。第一次在命名空间内创建SAE任务模板将形成绑定关系。多个命名空间可以对应一个VPC。不填则默认为命名空间绑定的VPC ID。', 'type' => 'string', 'required' => false, 'example' => 'vpc-bp1aevy8sofi8mh1q****'], ], [ 'name' => 'VSwitchId', 'in' => 'query', - 'schema' => [ - 'description' => '应用实例弹性网卡所在的虚拟交换机。该交换机必须位于上述VPC内。该交换机与SAE命名空间同样存在绑定关系。不填则默认为命名空间绑定的vSwitch ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'vsw-bp12mw1f8k3jgygk9****', - ], + 'schema' => ['description' => '任务实例弹性网卡所在的虚拟交换机。该交换机必须位于上述VPC内。该交换机与SAE命名空间同样存在绑定关系。不填则默认为命名空间绑定的vSwitch ID。', 'type' => 'string', 'required' => false, 'example' => 'vsw-bp12mw1f8k3jgygk9****'], ], [ 'name' => 'PackageType', 'in' => 'query', - 'schema' => [ - 'description' => '应用包类型。取值说明如下:'."\n" - ."\n" - .'- 当您选择用Java部署时,支持**FatJar**、**War**和**Image**。'."\n" - .'- 当您选择用PHP部署时,支持类型如下:'."\n" - .' - **PhpZip**'."\n" - .' - **IMAGE\\_PHP\\_5\\_4**'."\n" - .' - **IMAGE\\_PHP\\_5\\_4\\_ALPINE**'."\n" - .' - **IMAGE\\_PHP\\_5\\_5**'."\n" - .' - **IMAGE\\_PHP\\_5\\_5\\_ALPINE**'."\n" - .' - **IMAGE\\_PHP\\_5\\_6**'."\n" - .' - **IMAGE\\_PHP\\_5\\_6\\_ALPINE**'."\n" - .' - **IMAGE\\_PHP\\_7\\_0**'."\n" - .' - **IMAGE\\_PHP\\_7\\_0\\_ALPINE**'."\n" - .' - **IMAGE\\_PHP\\_7\\_1**'."\n" - .' - **IMAGE\\_PHP\\_7\\_1\\_ALPINE**'."\n" - .' - **IMAGE\\_PHP\\_7\\_2**'."\n" - .' - **IMAGE\\_PHP\\_7\\_2\\_ALPINE**'."\n" - .' - **IMAGE\\_PHP\\_7\\_3**'."\n" - .' - **IMAGE\\_PHP\\_7\\_3\\_ALPINE**'."\n" - .'- 当您选择用Python部署时,支持**PythonZip**和**Image**。'."\n" - ."\n" - .'- 当您选用.NET Core部署时,支持**DotnetZip**和**Image**。'."\n" - .' > '."\n" - .' > 当选择DotnetZip时,Dotnet为.NET Core环境的版本号,支持.NET 3.1、.NET 5.0、.NET 6.0、.NET 7.0和.NET 8.0。同时Dotnet、Command和CommandArgs选项为必填项。', - 'type' => 'string', - 'required' => true, - 'example' => 'FatJar', - ], + 'schema' => ['description' => '任务包类型。取值说明如下:'."\n" + ."\n" + .'- 当您选择用Java部署时,支持**FatJar**、**War**和**Image**。'."\n" + .'- 当您选择用PHP部署时,支持类型如下:'."\n" + .' - **PhpZip**'."\n" + .' - **IMAGE\\_PHP\\_5\\_4**'."\n" + .' - **IMAGE\\_PHP\\_5\\_4\\_ALPINE**'."\n" + .' - **IMAGE\\_PHP\\_5\\_5**'."\n" + .' - **IMAGE\\_PHP\\_5\\_5\\_ALPINE**'."\n" + .' - **IMAGE\\_PHP\\_5\\_6**'."\n" + .' - **IMAGE\\_PHP\\_5\\_6\\_ALPINE**'."\n" + .' - **IMAGE\\_PHP\\_7\\_0**'."\n" + .' - **IMAGE\\_PHP\\_7\\_0\\_ALPINE**'."\n" + .' - **IMAGE\\_PHP\\_7\\_1**'."\n" + .' - **IMAGE\\_PHP\\_7\\_1\\_ALPINE**'."\n" + .' - **IMAGE\\_PHP\\_7\\_2**'."\n" + .' - **IMAGE\\_PHP\\_7\\_2\\_ALPINE**'."\n" + .' - **IMAGE\\_PHP\\_7\\_3**'."\n" + .' - **IMAGE\\_PHP\\_7\\_3\\_ALPINE**'."\n" + .'- 当您选择用**Python**部署时,支持**PythonZip**和**Image**。', 'type' => 'string', 'required' => true, 'example' => 'FatJar'], ], [ 'name' => 'PackageVersion', 'in' => 'query', - 'schema' => [ - 'description' => '部署包的版本号。当**Package Type**为**FatJar**、**War**或**PythonZip**时必填。', - 'type' => 'string', - 'required' => false, - 'example' => '1.0.0', - ], + 'schema' => ['description' => '部署包的版本号。当**Package Type**为**FatJar**、**War**或**PythonZip**时必填。'."\n", 'type' => 'string', 'required' => false, 'example' => '1.0.1'], ], [ 'name' => 'PackageUrl', 'in' => 'query', - 'schema' => [ - 'description' => '部署包地址。当**Package Type**为**FatJar**、**War**或**PythonZip**时必填。', - 'type' => 'string', - 'required' => false, - 'example' => 'http://myoss.oss-cn-****.aliyuncs.com/my-buc/2019-06-30/****.jar', - ], + 'schema' => ['description' => '部署包地址。当**Package Type**为**FatJar**、**War**或**PythonZip**时必填。'."\n", 'type' => 'string', 'required' => false, 'example' => 'http://myoss.oss-cn-hangzhou.aliyuncs.com/my-buc/2019-06-30/****.jar'], ], [ 'name' => 'ImageUrl', 'in' => 'query', - 'schema' => [ - 'description' => '镜像地址。当**Package Type**为**Image**时必填。', - 'type' => 'string', - 'required' => false, - 'example' => 'registry.cn-hangzhou.aliyuncs.com/sae_test/ali_sae_test:0.0.1', - ], + 'schema' => ['description' => '镜像地址。当**Package Type**为**Image**时必填。', 'type' => 'string', 'required' => false, 'example' => 'registry.cn-hangzhou.aliyuncs.com/sae_test/ali_sae_test:0.0.1'], ], [ 'name' => 'Jdk', 'in' => 'query', - 'schema' => [ - 'description' => '部署包依赖的JDK版本。支持版本如下:'."\n" - ."\n" - .'- **Open JDK 8**'."\n" - .'- **Open JDK 7**'."\n" - .'- **Dragonwell 11**'."\n" - .'- **Dragonwell 8**'."\n" - .'- **openjdk-8u191-jdk-alpine3.9**'."\n" - .'- **openjdk-7u201-jdk-alpine3.9**'."\n" - ."\n" - .'当**Package Type**为**Image**时不支持。', - 'type' => 'string', - 'required' => false, - 'example' => 'Open JDK 8', - ], + 'schema' => ['description' => '部署包依赖的JDK版本。支持版本如下:'."\n" + ."\n" + .'- **Open JDK 8**'."\n" + .'- **Open JDK 7**'."\n" + .'- **Dragonwell 11**'."\n" + .'- **Dragonwell 8**'."\n" + .'- **openjdk-8u191-jdk-alpine3.9**'."\n" + .'- **openjdk-7u201-jdk-alpine3.9**'."\n" + ."\n" + .'当**Package Type**为**Image**时不支持。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'Open JDK 8'], ], [ 'name' => 'WebContainer', 'in' => 'query', - 'schema' => [ - 'description' => 'WebContainer部署包依赖的Tomcat版本。支持版本如下:'."\n" - ."\n" - .'- **apache-tomcat-7.0.91**'."\n" - .'- **apache-tomcat-8.5.42**'."\n" - ."\n" - .'当**Package Type**为**Image**时不支持。', - 'type' => 'string', - 'required' => false, - 'example' => 'apache-tomcat-7.0.91', - ], + 'schema' => ['description' => '部署包依赖的Tomcat版本。支持版本如下:'."\n" + ."\n" + .'- **apache-tomcat-7.0.91**'."\n" + .'- **apache-tomcat-8.5.42**'."\n" + ."\n" + .'当**Package Type**为**Image**时不支持。', 'type' => 'string', 'required' => false, 'example' => 'apache-tomcat-7.0.91'], ], [ 'name' => 'Cpu', 'in' => 'query', - 'schema' => [ - 'description' => '每个实例所需的CPU,单位为毫核,不能为0。目前仅支持以下固定规格:'."\n" - ."\n" - .'- **500**'."\n" - .'- **1000**'."\n" - .'- **2000**'."\n" - .'- **4000**'."\n" - .'- **8000**'."\n" - .'- **16000**'."\n" - .'- **32000**', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1000', - ], + 'schema' => ['description' => '每个实例所需的CPU,单位为毫核,不能为0。目前仅支持以下固定规格:'."\n" + .'- **500**'."\n" + .'- **1000**'."\n" + .'- **2000**'."\n" + .'- **4000**'."\n" + .'- **8000**'."\n" + .'- **16000**'."\n" + .'- **32000**', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1000'], ], [ 'name' => 'Memory', 'in' => 'query', - 'schema' => [ - 'description' => '每个实例所需的内存,单位为MB,不能为0。与CPU为一一对应关系,目前仅支持以下固定规格:'."\n" - .'- **1024**:对应CPU为500毫核和1000毫核。'."\n" - .'- **2048**:对应CPU为500、1000毫核和2000毫核。'."\n" - .'- **4096**:对应CPU为1000、2000毫核和4000毫核。'."\n" - .'- **8192**:对应CPU为2000、4000毫核和8000毫核。'."\n" - .'- **12288**:对应CPU为12000毫核。'."\n" - .'- **16384**:对应CPU为4000、8000毫核和16000毫核。'."\n" - .'- **24576**:对应CPU为12000毫核。'."\n" - .'- **32768**:对应CPU为16000毫核。'."\n" - .'- **65536**:对应CPU为8000、16000和32000毫核。'."\n" - .'- **131072**:对应CPU为32000毫核。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1024', - ], + 'schema' => ['description' => '每个实例所需的内存,单位为MB,不能为0。与CPU为一一对应关系,目前仅支持以下固定规格:'."\n" + .'- **1024**:对应CPU为500毫核和1000毫核。'."\n" + .'- **2048**:对应CPU为500、1000毫核和2000毫核。'."\n" + .'- **4096**:对应CPU为1000、2000毫核和4000毫核。'."\n" + .'- **8192**:对应CPU为2000、4000毫核和8000毫核。'."\n" + .'- **12288**:对应CPU为12000毫核。'."\n" + .'- **16384**:对应CPU为4000、8000毫核和16000毫核。'."\n" + .'- **24576**:对应CPU为12000毫核。'."\n" + .'- **32768**:对应CPU为16000毫核。'."\n" + .'- **65536**:对应CPU为8000、16000和32000毫核。'."\n" + .'- **131072**:对应CPU为32000毫核。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1024'], ], [ 'name' => 'Replicas', 'in' => 'query', - 'schema' => [ - 'description' => '初始实例数。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => true, - 'example' => '1', - ], + 'schema' => ['description' => '任务并发实例数。', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '3'], ], [ 'name' => 'Command', 'in' => 'query', - 'schema' => [ - 'description' => '镜像启动命令。该命令必须为容器内存在的可执行的对象。示例如下:'."\n" - ."\n" - .'```'."\n" - .'command:'."\n" - .' - echo'."\n" - .' - abc'."\n" - .' - >'."\n" - .' - file0'."\n" - .'```'."\n" - .'根据上述示例,则`Command="echo", CommandArgs=["abc", ">", "file0"]`。'."\n" - ."\n\n" - .'><notice>当PackageType选择为DotnetZip时,此选项为必填项。></notice>', - 'type' => 'string', - 'required' => false, - 'example' => 'echo', - ], + 'schema' => ['description' => '镜像启动命令。该命令必须为容器内存在的可执行的对象。示例如下:'."\n" + ."\n" + .'```'."\n" + .'command:'."\n" + .' - echo'."\n" + .' - abc'."\n" + .' - >'."\n" + .' - file0'."\n" + .'```'."\n" + .'根据上述示例,则`Command="echo", CommandArgs=["abc", ">", "file0"]`。', 'type' => 'string', 'required' => false, 'example' => 'echo'], ], [ 'name' => 'CommandArgs', 'in' => 'query', - 'schema' => [ - 'description' => '镜像启动命令参数。上述启动命令**Command**所需参数。格式如下:'."\n" - ."\n" - .'`["a","b"]`'."\n" - ."\n" - .'在上述示例中,`CommandArgs=["abc", ">", "file0"]`,其中`["abc", ">", "file0"]`需要转成String类型,里面的格式为JSON数组。如果无此参数,则无需填写。'."\n" - .'><notice>当PackageType选择为DotnetZip时,此选项为必填项。></notice>', - 'type' => 'string', - 'required' => false, - 'example' => '["a","b"]', - ], + 'schema' => ['description' => '镜像启动命令参数。上述启动命令**Command**所需参数。格式如下:'."\n" + ."\n" + .'`["a","b"]`'."\n" + ."\n" + .'在上述示例中,`CommandArgs=["abc", ">", "file0"]`,其中`["abc", ">", "file0"]`需要转成String类型,里面的格式为JSON数组。如果无此参数,则无需填写。', 'type' => 'string', 'required' => false, 'example' => '["a","b"]'], ], [ 'name' => 'Envs', 'in' => 'query', - 'schema' => [ - 'description' => '容器环境变量参数。支持自定义或引用配置项。如需引用配置项,请先创建ConfigMap实例。更多信息,请参见[CreateConfigMap](~~176914~~)。取值说明如下:'."\n" - .'- 自定义配置'."\n" - .' - **name**:环境变量名称。'."\n" - .' - **value**:环境变量值。优先级高于valueFrom。'."\n" - .'- 引用配置项(valueFrom)'."\n" - .' - **name**:环境变量名称。支持引用单个或全部键,如果引用全部键,需输入`sae-sys-configmap-all-<配置项名称>`,例如`sae-sys-configmap-all-test1`。'."\n" - .' - **valueFrom**:环境变量引用。取值为`configMapRef`。'."\n" - .' - **configMapId**:配置项ID。'."\n" - .' - **key**:键。如果引用全部健值,则不设置该字段。', - 'type' => 'string', - 'required' => false, - 'example' => '['."\n" - .' {'."\n" - .' "name": "sae-sys-configmap-all-hello",'."\n" - .' "valueFrom": {'."\n" - .' "configMapRef": {'."\n" - .' "configMapId": 100,'."\n" - .' "key": ""'."\n" - .' }'."\n" - .' }'."\n" - .' },'."\n" - .' {'."\n" - .' "name": "hello",'."\n" - .' "valueFrom": {'."\n" - .' "configMapRef": {'."\n" - .' "configMapId": 101,'."\n" - .' "key": "php-fpm"'."\n" - .' }'."\n" - .' }'."\n" - .' },'."\n" - .' {'."\n" - .' "name": "envtmp",'."\n" - .' "value": "newenv"'."\n" - .' }'."\n" - .']', - ], + 'schema' => ['description' => '容器环境变量参数。支持自定义或引用配置项。如需引用配置项,请先创建ConfigMap实例。更多信息,请参见[CreateConfigMap](~~176914~~)。取值说明如下:'."\n" + .'- 自定义配置'."\n" + .' - **name**:环境变量名称。'."\n" + .' - **value**:环境变量值。'."\n" + .'- 引用配置项'."\n" + .' - **name**:环境变量名称。支持引用单个或全部键,如果引用全部键,需输入`sae-sys-configmap-all-<配置项名称>`,例如`sae-sys-configmap-all-test1`。'."\n" + .' - **valueFrom**:环境变量引用。取值为`configMapRef`。'."\n" + .' - **configMapId**:配置项ID。'."\n" + .' - **key**:键。如果引用全部健值,则不设置该字段。', 'type' => 'string', 'required' => false, 'example' => '[{"name":"envtmp","value":"0"}]'], ], [ 'name' => 'CustomHostAlias', 'in' => 'query', - 'schema' => [ - 'description' => '容器内自定义Host映射。取值说明如下:'."\n" - ."\n" - .'- **hostName**:域名或主机名。'."\n" - .'- **ip**:IP地址。', - 'type' => 'string', - 'required' => false, - 'example' => '[{"hostName":"samplehost","ip":"127.0.0.1"}]', - ], + 'schema' => ['description' => '容器内自定义Host映射。取值说明如下:'."\n" + ."\n" + .'- **hostName**:域名或主机名。'."\n" + .'- **ip**:IP地址。', 'type' => 'string', 'required' => false, 'example' => '[{"hostName":"samplehost","ip":"127.0.0.1"}]'], ], [ 'name' => 'JarStartOptions', 'in' => 'query', - 'schema' => [ - 'description' => 'JAR包启动应用选项。应用默认启动命令:`$JAVA_HOME/bin/java $JarStartOptions -jar $CATALINA_OPTS "$package_path" $JarStartArgs`', - 'type' => 'string', - 'required' => false, - 'example' => '-Xms4G -Xmx4G', - ], + 'schema' => ['description' => 'JAR包启动任务选项。任务默认启动命令:`$JAVA_HOME/bin/java $JarStartOptions -jar $CATALINA_OPTS "$package_path" $JarStartArgs`', 'type' => 'string', 'required' => false, 'example' => 'custom-option'], ], [ 'name' => 'JarStartArgs', 'in' => 'query', - 'schema' => [ - 'description' => 'JAR包启动应用参数。应用默认启动命令:`$JAVA_HOME/bin/java $JarStartOptions -jar $CATALINA_OPTS "$package_path" $JarStartArgs`', - 'type' => 'string', - 'required' => false, - 'example' => 'custom-args', - ], - ], - [ - 'name' => 'Liveness', - 'in' => 'query', - 'schema' => [ - 'description' => '容器健康检查,健康检查失败的容器将被关闭并恢复。支持方式如下:'."\n" - ."\n" - .'- **exec**:例如 `{"exec":{"command":\\["sh","-c","cat/home/admin/start.sh"]},"initialDelaySeconds":30,"periodSeconds":30,"timeoutSeconds":2}`'."\n" - .'- **httpGet**:例如`{"httpGet":{"path":"/","port":18091,"scheme":"HTTP","isContainKeyWord":true,"keyWord":"SAE"},"initialDelaySeconds":11,"periodSeconds":10,"timeoutSeconds":1}`'."\n" - .'- **tcpSocket**:例如`{"tcpSocket":{"port":18091},"initialDelaySeconds":11,"periodSeconds":10,"timeoutSeconds":1}`'."\n" - ."\n" - .'> 只能选择一种方式进行健康检查。'."\n" - ."\n" - .'参数说明如下:'."\n" - ."\n" - .'- **exec.command**:设置健康检查命令。'."\n" - .'- **httpGet.path**:访问路径。'."\n" - .'- **httpGet.scheme**:**HTTP**或**HTTPS**。'."\n" - .'- **httpGet.isContainKeyWord**:**true**表示包含关键字,**false**表示不包含关键字,缺失该字段表示不使用高级功能。'."\n" - .'- **httpGet.keyWord**:自定义的关键字,使用时不能缺失**isContainKeyWord**字段。'."\n" - .'- **tcpSocket.port**:tcp连接检测的端口 。'."\n" - .'- **initialDelaySeconds**:设置健康检查延迟检测时间,默认为10,单位为秒。'."\n" - .'- **periodSeconds**:设置健康检查周期,默认为30,单位为秒。'."\n" - .'- **timeoutSeconds**:设置健康检查超时等待时间,默认为1,单位为秒。如果设置为0或不设置,默认超时等待时间为1秒。'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '{"exec":{"command":["sh","-c","cat /home/admin/start.sh"]},"initialDelaySeconds":30,"periodSeconds":30,"timeoutSeconds":2}', - ], - ], - [ - 'name' => 'Readiness', - 'in' => 'query', - 'schema' => [ - 'description' => '应用启动状态检查,多次健康检查失败的容器将被关闭并重启。不通过健康检查的容器将不会有SLB流量进入。支持**exec**、**httpGet**和**tcpSocket**方式。具体示例,请参见**Liveness**参数。'."\n" - ."\n" - .'> 只能选择一种方式进行健康检查。', - 'type' => 'string', - 'required' => false, - 'example' => '{"exec":{"command":["sh","-c","cat /home/admin/start.sh"]},"initialDelaySeconds":30,"periodSeconds":30,"timeoutSeconds":2}', - ], - ], - [ - 'name' => 'Deploy', - 'in' => 'query', - 'schema' => [ - 'description' => '是否立即部署。取值说明如下:'."\n" - ."\n" - .'- **true**:默认值,立即部署。'."\n" - .'- **false**:稍后部署。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'schema' => ['description' => 'JAR包启动任务参数。任务默认启动命令:`$JAVA_HOME/bin/java $JarStartOptions -jar $CATALINA_OPTS "$package_path" $JarStartArgs`', 'type' => 'string', 'required' => false, 'example' => '-Xms4G -Xmx4G'], ], [ 'name' => 'EdasContainerVersion', 'in' => 'query', - 'schema' => [ - 'description' => 'HSF框架中应用运行环境版本,例如Ali-Tomcat容器。', - 'type' => 'string', - 'required' => false, - 'example' => '3.5.3', - ], + 'schema' => ['description' => 'HSF框架中任务运行环境版本,例如Ali-Tomcat容器。', 'type' => 'string', 'required' => false, 'example' => '3.5.3'], ], [ 'name' => 'Timezone', 'in' => 'query', - 'schema' => [ - 'description' => '时区,默认为**Asia/Shanghai**。', - 'type' => 'string', - 'required' => false, - 'example' => 'Asia/Shanghai', - ], + 'schema' => ['description' => '时区,默认为**Asia/Shanghai**。', 'type' => 'string', 'required' => false, 'example' => 'Asia/Shanghai'], ], [ 'name' => 'SlsConfigs', 'in' => 'query', - 'schema' => [ - 'description' => '日志采集到SLS的配置。'."\n" - ."\n" - .'- 使用SAE自动创建的SLS资源:`[{"logDir":"","logType":"stdout"},{"logDir":"/tmp/a.log"}]`。'."\n" - .'- 使用自定义的SLS资源:`[{"projectName":"test-sls","logType":"stdout","logDir":"","logstoreName":"sae","logtailName":""},{"projectName":"test","logDir":"/tmp/a.log","logstoreName":"sae","logtailName":""}]`。'."\n" - ."\n" - .'参数说明如下:'."\n" - ."\n" - .'- **projectName**:配置SLS上的Project名称。 '."\n" - .'- **logDir**:日志路径。'."\n" - .'- **logType**:日志类型。**stdout**表示容器标准输出日志,仅可设置1条;如果不设置,则表示收集文件日志。'."\n" - .'- **logstoreName**:配置SLS上的Logstore名称。'."\n" - .'- **logtailName**:配置SLS上的Logtail名称,如果不指定,则表示新建Logtail。'."\n" - ."\n" - .'多次部署时如果SLS采集配置没有变更,则不需要设置该参数(即请求中无需包含**SlsConfigs**字段);如果不再需要使用SLS采集功能,您需要在请求中将该字段的值设置为空字符串(即请求中**SlsConfigs**字段的值为"")。'."\n" - ."\n" - .'> 随应用自动创建的Project会随着应用删除而删除,因此在选择已有Project时,不能选择SAE自动创建的Project。', - 'type' => 'string', - 'required' => false, - 'example' => '[{"logDir":"","logType":"stdout"},{"logDir":"/tmp/a.log"}]', - ], + 'schema' => ['description' => '日志采集到SLS的配置。'."\n" + ."\n" + .'- 使用SAE自动创建的SLS资源:`[{"logDir":"","logType":"stdout"},{"logDir":"/tmp/a.log"}]`。'."\n" + .'- 使用自定义的SLS资源:`[{"projectName":"test-sls","logType":"stdout","logDir":"","logstoreName":"sae","logtailName":""},{"projectName":"test","logDir":"/tmp/a.log","logstoreName":"sae","logtailName":""}]`。'."\n" + ."\n" + .'参数说明如下:'."\n" + ."\n" + .'- **projectName**:配置SLS上的Project名称。 '."\n" + .'- **logDir**:日志路径。'."\n" + .'- **logType**:日志类型。**stdout**表示容器标准输出日志,仅可设置1条;如果不设置,则表示收集文件日志。'."\n" + .'- **logstoreName**:配置SLS上的Logstore名称。'."\n" + .'- **logtailName**:配置SLS上的Logtail名称,如果不指定,则表示新建Logtail。'."\n" + ."\n" + .'多次部署时如果SLS采集配置没有变更,则不需要设置该参数(即请求中无需包含**SlsConfigs**字段);如果不再需要使用SLS采集功能,您需要在请求中将该字段的值设置为空字符串(即请求中**SlsConfigs**字段的值为"")。'."\n" + ."\n" + .'> 随任务模板自动创建的Project会随着任务模板删除而删除,因此在选择已有Project时,不能选择SAE自动创建的Project。', 'type' => 'string', 'required' => false, 'example' => '[{"logDir":"","logType":"stdout"},{"logDir":"/tmp/a.log"}]'], ], [ 'name' => 'NasId', 'in' => 'query', - 'schema' => [ - 'description' => '不推荐配置该字段,推荐配置**NasConfigs**。挂载的NAS的ID,必须与集群处在同一个地域。它必须有可用的挂载点创建额度,或者其挂载点已经在VPC内的交换机上。如果不填,且存在**mountDescs**字段,则默认将自动购买一个NAS并挂载至VPC内的交换机上。'."\n" - ."\n" - .'部署时如果配置没有变更,则不需要设置该参数(即请求中无需包含**NASId**字段);如果需要清除NAS配置,您需要在请求中将该字段的值设置为空字符串(即请求中**NASId**字段的值为"")。', - 'type' => 'string', - 'required' => false, - 'example' => 'KSAK****', - ], + 'schema' => ['description' => 'NAS文件系统的ID。部署时如果配置没有变更,则不需要设置该参数(即请求中无需包含**NasId**字段);如果需要清除NAS配置,您需要在请求中将该字段的值设置为空字符串(即请求中**NasId**字段的值为"")。', 'type' => 'string', 'required' => false, 'example' => '10d3b4****'], ], [ 'name' => 'MountHost', 'in' => 'query', - 'schema' => [ - 'description' => '不推荐配置该字段,推荐配置**NasConfigs**。NAS在应用VPC内的挂载点。部署时如果配置没有变更,则不需要设置该参数(即请求中无需包含**MountHost**字段);如果需要清除NAS配置,您需要在请求中将该字段的值设置为空字符串(即请求中**MountHost**字段的值为"")。', - 'type' => 'string', - 'required' => false, - 'example' => 'example.com', - ], + 'schema' => ['description' => 'NAS在任务模板VPC内的挂载点。部署时如果配置没有变更,则不需要设置该参数(即请求中无需包含**MountHost**字段);如果需要清除NAS配置,您需要在请求中将该字段的值设置为空字符串(即请求中**MountHost**字段的值为"")。', 'type' => 'string', 'required' => false, 'example' => '10d3b4bc9****.com'], ], [ 'name' => 'MountDesc', 'in' => 'query', - 'schema' => [ - 'description' => '不推荐配置该字段,推荐配置**NasConfigs**。NAS挂载描述。部署时如果配置没有变更,则不需要设置该参数(即请求中无需包含**MountDesc**字段);如果需要清除NAS配置,您需要在请求中将该字段的值设置为空字符串(即请求中**MountDesc**字段的值为"")。', - 'type' => 'string', - 'required' => false, - 'example' => '[{mountPath: "/tmp", nasPath: "/"}]', - ], + 'schema' => ['description' => 'NAS挂载描述。部署时如果配置没有变更,则不需要设置该参数(即请求中无需包含**MountDesc**字段);如果需要清除NAS配置,您需要在请求中将该字段的值设置为空字符串(即请求中**MountDesc**字段的值为"")。', 'type' => 'string', 'required' => false, 'example' => '[{mountPath: "/tmp", nasPath: "/"}]'], ], [ 'name' => 'PreStop', 'in' => 'query', - 'schema' => [ - 'description' => '容器停止前执行脚本。在容器被删除前触发执行一段脚本,格式如:`{"exec":{"command":\\["cat","/etc/group"]}}`', - 'type' => 'string', - 'required' => false, - 'example' => '{"exec":{"command":["cat","/etc/group"]}}', - ], + 'schema' => ['description' => '容器停止前执行脚本。在容器被删除前触发执行一段脚本,格式如:`{"exec":{"command":\\["sh","-c","echo hello"\\]}}`', 'type' => 'string', 'required' => false, 'example' => '{"exec":{"command":["sh","-c","echo hello"]}}'], ], [ 'name' => 'PostStart', 'in' => 'query', - 'schema' => [ - 'description' => '容器启动后执行脚本。在容器被创建后立刻触发执行一段脚本,格式如:`{"exec":{"command":\\["cat","/etc/group"]}}`', - 'type' => 'string', - 'required' => false, - 'example' => '{"exec":{"command":["cat","/etc/group"]}}', - ], + 'schema' => ['description' => '容器启动后执行脚本。在容器被创建后立刻触发执行一段脚本,格式如:`{"exec":{"command":\\["sh","-c","echo hello"\\]}}`', 'type' => 'string', 'required' => false, 'example' => '{"exec":{"command":["sh","-c","echo hello"]}}'], ], [ 'name' => 'WarStartOptions', 'in' => 'query', - 'schema' => [ - 'description' => '设置WAR包部署应用的启动命令,操作步骤与镜像部署的启动命令配置操作相同。更多信息,请参见[设置启动命令](~~96677~~)。', - 'type' => 'string', - 'required' => false, - 'example' => 'CATALINA_OPTS=\\"$CATALINA_OPTS $Options\\" catalina.sh run', - ], + 'schema' => ['description' => '设置WAR包部署任务的启动命令,操作步骤与镜像部署的启动命令配置操作相同。更多信息,请参见[设置启动命令](~~96677~~)。', 'type' => 'string', 'required' => false, 'example' => 'CATALINA_OPTS=\\"$CATALINA_OPTS $Options\\" catalina.sh run'], ], [ 'name' => 'ConfigMapMountDesc', 'in' => 'formData', - 'schema' => [ - 'description' => '**ConfigMap**挂载描述。使用在命名空间配置项页面创建的配置项来向容器中注入配置信息。参数说明如下:'."\n" - ."\n" - .'- **configMapId**:ConfigMap实例ID。可通过调用[ListNamespacedConfigMaps](~~176917~~)接口获取。'."\n" - .'- **key**:键值。'."\n" - ."\n" - .'> 可通过传递`sae-sys-configmap-all`参数挂载所有键。'."\n" - ."\n" - .'- **mountPath**:挂载路径。'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '[{"configMapId":16,"key":"test","mountPath":"/tmp"}]', - ], + 'schema' => ['description' => '**ConfigMap**挂载描述。使用在命名空间配置项页面创建的配置项来向容器中注入配置信息。参数说明如下:'."\n" + ."\n" + .'- **congfigMapId**:ConfigMap实例ID。可通过调用[ListNamespacedConfigMaps](~~176917~~)接口获取。'."\n" + .'- **key**:键值。'."\n" + ."\n" + .'> 可通过传递`sae-sys-configmap-all`参数挂载所有键。'."\n" + ."\n" + .'- **mountPath**:挂载路径。', 'type' => 'string', 'required' => false, 'example' => '[{"configMapId":16,"key":"test","mountPath":"/tmp"}]'], ], [ 'name' => 'SecurityGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '安全组ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'sg-wz969ngg2e49q5i4****', - ], + 'schema' => ['description' => '安全组ID。', 'type' => 'string', 'required' => false, 'example' => 'sg-wz969ngg2e49q5i4****'], ], [ 'name' => 'AutoConfig', 'in' => 'query', - 'schema' => [ - 'description' => '是否自动配置网络环境。取值说明如下:'."\n" - ."\n" - .'- **true**:创建应用时SAE自动配置网络环境。**NamespaceId**、**VpcId**、**vSwitchId**和**SecurityGroupId**的取值将被忽略。'."\n" - .'- **false**:创建应用时SAE手动配置网络环境。'."\n" - ."\n" - .'> 如果选择为**true**,则传其他的**NamespaceId**会被忽略。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'schema' => ['description' => '是否自动配置网络环境。取值说明如下:'."\n" + ."\n" + .'- **true**:创建任务模板时SAE自动配置网络环境。**NamespaceId**、**VpcId**、**vSwitchId**和**SecurityGroupId**的取值将被忽略。'."\n" + .'- **false**:创建任务模板时SAE手动配置网络环境。', 'type' => 'boolean', 'required' => false, 'example' => 'false'], ], [ 'name' => 'TerminationGracePeriodSeconds', 'in' => 'query', - 'schema' => [ - 'description' => '优雅下线超时时间,默认为30,单位为秒。取值范围为1~300。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'maximum' => '6000', - 'minimum' => '0', - 'example' => '30', - 'default' => '30', - ], - ], - [ - 'name' => 'PhpArmsConfigLocation', - 'in' => 'query', - 'schema' => [ - 'description' => 'PHP应用监控挂载路径,需要您保证PHP服务器一定会加载这个路径的配置文件。'."\n" - .'您无需关注配置内容,SAE会自动渲染正确的配置文件。', - 'type' => 'string', - 'required' => false, - 'example' => '/usr/local/etc/php/conf.d/arms.ini', - ], + 'schema' => ['description' => '优雅下线超时时间,默认为30,单位为秒。取值范围为1~300。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '6000', 'minimum' => '0', 'example' => '10', 'default' => '30'], ], [ 'name' => 'PhpConfigLocation', 'in' => 'query', - 'schema' => [ - 'description' => 'PHP应用启动配置挂载路径,需要您保证PHP服务器会使用这个配置文件启动。', - 'type' => 'string', - 'required' => false, - 'example' => '/usr/local/etc/php/php.ini', - ], + 'schema' => ['description' => 'PHP任务启动配置挂载路径,需要您保证PHP服务器会使用这个配置文件启动。', 'type' => 'string', 'required' => false, 'example' => '/usr/local/etc/php/php.ini'], ], [ 'name' => 'PhpConfig', 'in' => 'formData', - 'schema' => [ - 'description' => 'PHP配置文件内容。', - 'type' => 'string', - 'required' => false, - 'example' => 'k1=v1', - ], + 'schema' => ['description' => 'PHP配置文件内容。', 'type' => 'string', 'required' => false, 'example' => 'k1=v1'], ], [ 'name' => 'TomcatConfig', 'in' => 'query', - 'schema' => [ - 'description' => 'Tomcat文件配置,设置为""或"{}"表示删除配置:'."\n" - ."\n" - .'- **port**:端口范围为1024~65535,小于1024的端口需要Root权限才能操作。因为容器配置的是Admin权限,所以请填写大于1024的端口。如果不配置,则默认为8080。'."\n" - .'- **contextPath**:访问路径,默认为根目录"/"。'."\n" - .'- **maxThreads**:配置连接池的连接数大小,默认大小为400。'."\n" - .'- **uriEncoding**:Tomcat的编码格式,包括**UTF-8**、**ISO-8859-1**、**GBK和GB2312**。如果不设置,则默认为**ISO-8859-1**。'."\n" - .'- **useBodyEncodingForUri**:是否使用**BodyEncoding for URL**,默认为**true**。'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '{"port":8080,"contextPath":"/","maxThreads":400,"uriEncoding":"ISO-8859-1","useBodyEncodingForUri":true}', - ], + 'schema' => ['description' => 'Tomcat文件配置,设置为""或"{}"表示删除配置。取值说明如下:'."\n" + ."\n" + .'- **port**:端口范围为1024~65535,小于1024的端口需要Root权限才能操作。因为容器配置的是Admin权限,所以请填写大于1024的端口。如果不配置,则默认为8080。'."\n" + .'- **contextPath**:访问路径,默认为根目录"/"。'."\n" + .'- **maxThreads**:配置连接池的连接数大小,默认大小为400。'."\n" + .'- **uriEncoding**:Tomcat的编码格式,包括**UTF-8**、**ISO-8859-1**、**GBK和GB2312**。如果不设置,则默认为**ISO-8859-1**。'."\n" + .'- **useBodyEncoding**:是否使用**BodyEncoding for URL**,默认为**true**。', 'type' => 'string', 'required' => false, 'example' => '{"port":8080,"contextPath":"/","maxThreads":400,"uriEncoding":"ISO-8859-1","useBodyEncodingForUri":true}'], ], [ 'name' => 'OssMountDescs', 'in' => 'formData', - 'schema' => [ - 'title' => 'OSS挂载描述信息', - 'description' => 'OSS挂载描述信息。参数说明如下:'."\n" - ."\n" - .'- **bucketName**:Bucket名称。'."\n" - .'- **bucketPath**:您在OSS创建的目录或OSS对象,如果OSS挂载目录不存在,会触发异常。'."\n" - .'- **mountPath**:您在SAE的容器路径。如果路径已存在,为覆盖关系;如果路径不存在,会新建。'."\n" - .'- **readOnly**:容器路径是否对挂载目录资源有可读权限,取值说明如下:'."\n" - .' - **true**:只读权限。'."\n" - .' - **false**:读写权限。', - 'type' => 'string', - 'required' => false, - 'example' => '[{"bucketName": "oss-bucket", "bucketPath": "data/user.data", "mountPath": "/usr/data/user.data", "readOnly": true}]', - ], + 'schema' => ['title' => 'OSS挂载描述信息', 'description' => 'OSS挂载描述信息。参数说明如下:'."\n" + ."\n" + .'- **bucketName**:Bucket名称。'."\n" + .'- **bucketPath**:您在OSS创建的目录或OSS对象,如果OSS挂载目录不存在,会触发异常。'."\n" + .'- **mountPath**:您在SAE的容器路径。如果路径已存在,为覆盖关系;如果路径不存在,会新建。'."\n" + .'- **readOnly**:容器路径是否对挂载目录资源有可读权限,取值说明如下:'."\n" + .' - **true**:只读权限。'."\n" + .' - **false**:读写权限。', 'type' => 'string', 'required' => false, 'example' => '[{"bucketName": "oss-bucket", "bucketPath": "data/user.data", "mountPath": "/usr/data/user.data", "readOnly": true}]'], ], [ 'name' => 'OssAkId', 'in' => 'formData', - 'schema' => [ - 'title' => 'OSS使用的AKID', - 'description' => 'OSS读写的AccessKey ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'xxxxxx', - ], + 'schema' => ['title' => 'OSS使用的AKID', 'description' => 'OSS读写的AccessKey ID。', 'type' => 'string', 'required' => false, 'example' => 'xxxxxx'], ], [ 'name' => 'OssAkSecret', 'in' => 'formData', - 'schema' => [ - 'title' => 'OSS AKID对应的secret', - 'description' => 'OSS读写的AccessKey Secret。', - 'type' => 'string', - 'required' => false, - 'example' => 'xxxxxx', - ], - ], - [ - 'name' => 'Php', - 'in' => 'formData', - 'schema' => [ - 'title' => 'PHP部署包依赖的PHP版本。镜像不支持', - 'description' => 'PHP部署包依赖的PHP版本。镜像不支持。', - 'type' => 'string', - 'required' => false, - 'example' => 'PHP-FPM 7.0', - ], + 'schema' => ['title' => 'OSS AKID对应的secret', 'description' => 'OSS读写的AccessKey Secret。', 'type' => 'string', 'required' => false, 'example' => 'xxxxxx'], ], [ 'name' => 'AcrInstanceId', 'in' => 'formData', - 'schema' => [ - 'title' => 'ACR 企业版实例 ID', - 'description' => '容器镜像服务ACR企业版实例ID。当**ImageUrl**为容器镜像服务企业版时必填。', - 'type' => 'string', - 'required' => false, - 'docRequired' => false, - 'example' => 'cri-xxxxxx', - ], + 'schema' => ['title' => 'ACR 企业版实例 ID', 'description' => 'ACR企业版实例ID。当**ImageUrl**为容器镜像服务企业版时必填。', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'cri-xxxxxx'], ], [ 'name' => 'AcrAssumeRoleArn', 'in' => 'query', - 'schema' => [ - 'description' => '跨账号拉取镜像时所需的RAM角色的ARN。更多信息,请参见[通过RAM角色实现跨云账号授权](~~223585~~)。', - 'type' => 'string', - 'required' => false, - 'example' => 'acs:ram::123456789012****:role/adminrole', - ], + 'schema' => ['description' => '跨账号拉取镜像时所需的RAM角色的ARN。更多信息,请参见[通过RAM角色实现跨云账号授权](~~223585~~)。', 'type' => 'string', 'required' => false, 'example' => 'acs:ram::123456789012****:role/adminrole'], ], [ 'name' => 'ImagePullSecrets', 'in' => 'query', - 'schema' => [ - 'description' => '对应保密字典ID。', - 'type' => 'string', - 'required' => false, - 'example' => '10', - ], + 'schema' => ['description' => '对应保密字典ID。', 'type' => 'string', 'required' => false, 'example' => '10'], ], [ - 'name' => 'AssociateEip', + 'name' => 'EnableImageAccl', 'in' => 'formData', - 'schema' => [ - 'title' => '是否绑定EIP', - 'description' => '是否绑定EIP。取值说明如下:'."\n" - ."\n" - .'- **true**:绑定。'."\n" - .'- **false**:不绑定。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'schema' => ['title' => '是否开启镜像加速', 'description' => '是否开启镜像加速。取值说明如下:'."\n" + ."\n" + .'- **true**:开启。'."\n" + .'- **false**:关闭。', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'default' => 'false'], ], [ - 'name' => 'ProgrammingLanguage', + 'name' => 'Workload', 'in' => 'query', - 'schema' => [ - 'description' => '创建应用的技术栈语言。取值说明如下:'."\n" - ."\n" - .'- **java**:Java语言。'."\n" - .'- **php**:PHP语言。'."\n" - .'- **python**:Python语言'."\n" - .'- **dotnet**:.NET Core语言'."\n" - .'- **other**:多语言,例如C++、Go和Node.js等。', - 'type' => 'string', - 'required' => false, - 'example' => 'java', - ], + 'allowEmptyValue' => false, + 'schema' => ['description' => 'Workload需指定为`job`。', 'type' => 'string', 'required' => true, 'example' => 'job'], ], [ - 'name' => 'KafkaConfigs', + 'name' => 'TriggerConfig', 'in' => 'query', - 'schema' => [ - 'description' => '日志采集到Kafka的配置汇总信息。取值说明如下:'."\n" - ."\n" - .'- **kafkaEndpoint**:Kafka API的服务接入地址。'."\n" - .'- **kafkaInstanceId**:Kafka实例ID。'."\n" - .'- **kafkaConfigs**:单条或多条日志的配置汇总信息。取值说明,请参见本文的请求参数**kafkaConfigs**。', - 'type' => 'string', - 'required' => false, - 'example' => '{"kafkaEndpoint":"10.0.X.XXX:XXXX,10.0.X.XXX:XXXX,10.0.X.XXX:XXXX","kafkaInstanceId":"alikafka_pre-cn-7pp2l8kr****","kafkaConfigs":[{"logType":"file_log","logDir":"/tmp/a.log","kafkaTopic":"test2"},{"logType":"stdout","logDir":"","kafkaTopic":"test"}]}', - ], + 'schema' => ['description' => '任务触发配置,根据任务类型进行配置。'."\n" + .'- **定时任务**:**type**字段设为time,**config**字段为具体Cron表达式,**timezone**字段为指定时区。'."\n" + .'配置示例:`{"type":"time","config":"0 1 */1 * ?","timezone":"GMT+8:00"}`'."\n" + .'- **一次性任务**:**type**字段设为http,**config**配置具体的HTTP触发规则。更多信息,请参见[请求参数SourceHttpEventParameters](https://help.aliyun.com/document_detail/347586.html#section-lp1-vq0-ho3)。'."\n" + .'配置示例:`{"type":"http","config":{"type":"HTTPS","method"、["GET"],"ip":[],"referer":[],"securityConfig":"none"}}`', 'type' => 'string', 'required' => false, 'example' => '{"type":"time","config":"0 1 */1 * ?","timezone":"GMT+8:00"}'], ], [ - 'name' => 'PvtzDiscoverySvc', + 'name' => 'ConcurrencyPolicy', 'in' => 'query', - 'schema' => [ - 'description' => '开启K8s Service服务注册发现。取值说明如下:'."\n" - ."\n" - .'- **serviceName**:服务名称。格式为`自定义-命名空间ID`,其中后缀`-命名空间ID`不支持自定义,需根据应用所在命名空间填写。例如,选择华北2(北京)地域的默认命名空间,则为`-cn-beijing-default`。'."\n" - .'- **namespaceId**:命名空间ID。'."\n" - .'- **portProtocols**:端口与协议。端口取值范围为\\[1,65535],协议支持**TCP**和**UDP**。'."\n" - .'- **portAndProtocol**:端口与协议。端口取值范围为\\[1,65535],协议支持**TCP**和**UDP**。**优先推荐portProtocols,如果设置了portProtocols,仅portProtocols生效**。'."\n" - .'- **enable**:开启K8s Service服务注册发现。', - 'type' => 'string', - 'required' => false, - 'example' => '{"serviceName":"bwm-poc-sc-gateway-cn-beijing-front","namespaceId":"cn-beijing:front","portAndProtocol":{"18012":"TCP"},"enable":true,"portProtocols":[{"port":18012,"protocol":"TCP"}]}', - ], + 'schema' => ['description' => '任务并发策略。取值说明如下:'."\n" + ."\n" + .'- **Forbid**:禁止并发运行,在前一个任务未完成时,不创建新任务。'."\n" + .'- **Allow**:允许并发运行任务。'."\n" + .'- **Replace**:当到达新任务创建时间点,而前一个任务未完成时,新的任务会取代前一个任务。', 'type' => 'string', 'required' => false, 'example' => 'Allow'], ], [ - 'name' => 'MicroRegistration', + 'name' => 'Timeout', 'in' => 'query', - 'schema' => [ - 'description' => '选择Nacos注册中心,取值说明如下:'."\n" - .'- **0**:SAE内置Nacos。'."\n" - .'- **1**:用户自建Nacos。'."\n" - .'- **2**:MSE商业版Nacos。', - 'type' => 'string', - 'required' => false, - 'example' => '"0"', - ], + 'schema' => ['description' => '任务超时时间,单位为秒。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '3600'], ], [ - 'name' => 'MicroRegistrationConfig', - 'in' => 'formData', - 'schema' => [ - 'title' => '注册中心配置信息', - 'description' => '注册中心配置信息。', - 'type' => 'string', - 'required' => false, - 'example' => '{\\"instanceId\\":\\"mse-cn-zvp2bh6h70r\\",\\"namespace\\":\\"4c0aa74f-57cb-423c-b6af-5d9f2d0e3dbd\\"}', - ], + 'name' => 'BackoffLimit', + 'in' => 'query', + 'schema' => ['description' => '任务重试次数。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '3'], ], [ - 'name' => 'NasConfigs', + 'name' => 'Slice', 'in' => 'query', - 'schema' => [ - 'description' => '挂载NAS的配置。取值说明如下:'."\n" - ."\n" - .'- **mountPath**:容器挂载路径。'."\n" - .'- **readOnly**:取值为**false**时,表示拥有读写权限。'."\n" - .'- **nasId**:NAS ID。'."\n" - .'- **mountDomain**:容器挂载点地址。更多信息,请参见[DescribeMountTargets](~~62626~~)。'."\n" - .'- **nasPath**:NAS相对文件目录。', - 'type' => 'string', - 'required' => false, - 'example' => '[{"mountPath":"/test1","readOnly":false,"nasId":"nasId1","mountDomain":"nasId1.cn-shenzhen.nas.aliyuncs.com","nasPath":"/test1"},{"nasId":"nasId2","mountDomain":"nasId2.cn-shenzhen.nas.aliyuncs.com","readOnly":false,"nasPath":"/test2","mountPath":"/test2"}]', - ], + 'schema' => ['description' => '启用任务分片。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], + ], + [ + 'name' => 'SliceEnvs', + 'in' => 'query', + 'schema' => ['description' => '任务分片参数。', 'type' => 'string', 'required' => false, 'example' => '[0,1,2]'], + ], + [ + 'name' => 'RefAppId', + 'in' => 'query', + 'schema' => ['description' => '引用的任务目标ID。', 'type' => 'string', 'required' => false, 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****'], + ], + [ + 'name' => 'ProgrammingLanguage', + 'in' => 'query', + 'schema' => ['description' => '程序编程语言。支持**java**、**php**、**python**和**shell**。', 'type' => 'string', 'required' => false, 'example' => 'java'], ], [ 'name' => 'Python', 'in' => 'query', - 'schema' => [ - 'description' => 'Python环境。支持**PYTHON 3.9.15**。', - 'type' => 'string', - 'required' => false, - 'example' => 'PYTHON 3.9.15', - ], + 'schema' => ['description' => 'Python环境。支持**PYTHON 3.9.15**。', 'type' => 'string', 'required' => false, 'example' => 'PYTHON 3.9.15'], ], [ 'name' => 'PythonModules', 'in' => 'query', - 'schema' => [ - 'description' => '自定义安装模块依赖。默认安装根目录下requirements.txt定义的依赖项。如果未配置或自定义软件包,可以指定安装的依赖。', - 'type' => 'string', - 'required' => false, - 'example' => 'Flask==2.0', - ], + 'schema' => ['description' => '自定义安装模块依赖。默认安装根目录下requirements.txt定义的依赖项。如果未配置或自定义软件包,可以指定安装的依赖。', 'type' => 'string', 'required' => false, 'example' => 'Flask==2.0'], ], [ - 'name' => 'Dotnet', + 'name' => 'NasConfigs', 'in' => 'query', - 'schema' => [ - 'description' => '.NET 框架的版本号:'."\n" - ."\n" - .'- .NET 3.1'."\n" - .'- .NET 5.0'."\n" - .'- .NET 6.0'."\n" - .'- .NET 7.0'."\n" - .'- .NET 8.0', - 'type' => 'string', - 'required' => false, - 'example' => '.NET 3.1', - ], + 'schema' => ['description' => '挂载NAS的配置。', 'type' => 'string', 'required' => false], ], [ - 'name' => 'EnableEbpf', + 'name' => 'BestEffortType', 'in' => 'query', + 'schema' => ['description' => 'BestEffort策略。', 'type' => 'string', 'required' => false], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '基于eBPF技术,对非Java应用开启应用监控能力。取值说明如下:'."\n" - .'- **true**:开启。'."\n" - .'- **false**:关闭。默认值。', - 'type' => 'string', - 'required' => false, - 'example' => 'false', + 'description' => '创建的任务模板信息。', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '01CF26C7-00A3-4AA6-BA76-7E95F2A3***'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => 'ac1a0b2215622246421415014e****'], + 'Data' => [ + 'description' => '返回结果。', + 'type' => 'object', + 'properties' => [ + 'ChangeOrderId' => ['description' => '返回的发布单ID,用于查询任务执行状态。', 'type' => 'string', 'example' => '01db03d3-3ee9-48b3-b3d0-dfce2d88****'], + 'AppId' => ['description' => '任务模板ID。'."\n", 'type' => 'string', 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****'], + ], + ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '创建任务模板是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:创建成功。'."\n" + .'- **false**:创建失败。', 'type' => 'boolean', 'example' => 'true'], + ], ], ], - [ - 'name' => 'SaeVersion', - 'in' => 'query', - 'schema' => [ - 'description' => 'SAE版本。支持版本如下:'."\n" - ."\n" - .'- **v1**'."\n" - .'- **v2**', - 'type' => 'string', - 'required' => false, - 'example' => 'v1', - 'enum' => [ - 'v1', - 'v2', + ], + 'errorCodes' => [ + 400 => [ + ['errorCode' => 'Application.MissingJdk', 'errorMessage' => 'Your application must at least contain a JDK component.', 'description' => '应用必须至少包含JDK组件。'], + ['errorCode' => 'InvalidPackageType.NotFound', 'errorMessage' => 'The package type must be War, FatJar, or Image.', 'description' => '包类型必须为WAR、FatJAR或Image。'], + ['errorCode' => 'InvalidParameter.FileName', 'errorMessage' => 'The application deployment package name is invalid. This name can contain only alphanumeric characters, hyphens (-), and underscores (_). In addition, you can upload JAR files only if the selected deployment version supports JAR file. Otherwise, upload WAR files only.', 'description' => ''], + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'JarApplication.MissingJdk', 'errorMessage' => 'A FatJar application must contain JDK.', 'description' => 'FatJar类型应用必须包含JDK。'], + ['errorCode' => 'NoAvailableCluster.NotFound', 'errorMessage' => 'No clusters are available for the current region.', 'description' => '当前地域没有可用集群。'], + ['errorCode' => 'NoComputeResourceQuota.Exceed', 'errorMessage' => 'Your compute resource is insufficient. Please contact us to raise the quota.', 'description' => ''], + ['errorCode' => 'PandoraApplication.MissingJdk', 'errorMessage' => 'The Pandora application is missing a JDK component.', 'description' => 'Pandora应用缺少JDK组件。'], + ['errorCode' => 'PandoraApplication.OnlyJdk', 'errorMessage' => 'A Pandora application only requires JDK component.', 'description' => 'Pandora应用只需要JDK组件。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], + ['errorCode' => 'InvalidComponent.NotFound', 'errorMessage' => 'The current component (such as JDK, Tomcat, or EDASWebContainer) does not exist.', 'description' => '找不到当前组件(JDK、Tomcat、EDASWebContainer等)。'], + ['errorCode' => 'InvalidHostnameIp.Invalid', 'errorMessage' => 'The hostname and/or IP is invalid: Hostname [%s], IP [%s].', 'description' => '主机名或IP不合法:主机名[%s],IP[%s]。'], + ['errorCode' => 'InvalidInstanceSpecification.Unsupported', 'errorMessage' => 'The instance specification is not supported: CPU [%s], memory [%s].', 'description' => '不支持的实例规格。CPU[%s],Memory[%s]。'], + ['errorCode' => 'InvalidServerlessRegion.Unsupported', 'errorMessage' => 'The current region is not supported: %s', 'description' => '不支持当前地域:%s。'], + ['errorCode' => 'WarApplication.MissingJdkWebcontainer', 'errorMessage' => 'A War application must contain JDK and Tomcat.', 'description' => 'WAR类型应用必须包含JDK和Tomcat。'], + ['errorCode' => 'InvalidNamespace.WithUppercase', 'errorMessage' => 'This namespace does not support creating SAE apps because it contains uppercase letters.', 'description' => '命名空间不支持创建SAE应用,因为它带有大写字母。'], + ['errorCode' => 'LogService.ConfigQuotaExceed', 'errorMessage' => 'The maximum number of Log Service configs is exceeded.', 'description' => '日志服务配置个数超过配额限制,请加入钉群32874633联系技术产品专家进行咨询。'], + ['errorCode' => 'LogService.InternalError', 'errorMessage' => 'An exception occurred while calling Log Service. Please submit a ticket to solve the problem.', 'description' => '调用日志服务异常,请加入钉群32874633联系技术产品专家进行咨询。'], + ['errorCode' => 'LogService.LogDirInvalid', 'errorMessage' => 'The log collection path is invalid.', 'description' => '日志采集路径不合法。'], + ['errorCode' => 'LogService.NotAvailable', 'errorMessage' => 'Log Service is unavailable. Please activate Log Service first.', 'description' => '日志服务不可用,请先开通日志服务。'], + ['errorCode' => 'LogService.ProjectNumQuotaExceed', 'errorMessage' => 'The maximum number of Log Service projects is exceeded.', 'description' => '日志服务项目个数超过配额限制,请加入钉群32874633联系技术产品专家进行咨询。'], + ['errorCode' => 'vswitch.not.exist', 'errorMessage' => 'The specified VSwitch does not exist.', 'description' => ''], + ['errorCode' => 'user.indebt', 'errorMessage' => 'The user has an outstanding payment.', 'description' => '当前用户处于欠费状态。'], + ['errorCode' => 'NoComputeResourceQuota.App.Exceed', 'errorMessage' => 'You can create %s instances for each application. Please submit a ticket to raise the quota.', 'description' => '每个应用只允许创建%s个实例,请加入钉群32874633联系技术产品专家进行咨询。'], + ['errorCode' => 'NoComputeResourceQuota.User.Exceed', 'errorMessage' => 'Your account is limited to create %s instances. Please submit a ticket to raise the quota.', 'description' => '您的账户限额%s个实例,请加入钉群32874633联系技术产品专家进行咨询。'], + ['errorCode' => 'System.Upgrading', 'errorMessage' => 'The system is being upgraded. Please try again later.', 'description' => '系统正在升级,请稍后操作。'], + ['errorCode' => 'VolumnPath.Conflict', 'errorMessage' => 'Conflict between log collection directory and persistent storage directory.', 'description' => '日志采集目录与持久化存储目录冲突。'], + ['errorCode' => 'MountConflict.ConfigMap', 'errorMessage' => 'Conflict detected for ConfigMap path %s.', 'description' => 'ConfigMap挂载路径%s存在冲突。'], + ['errorCode' => 'NotFound.ConfigMap', 'errorMessage' => 'The ConfigMap object (ID: %s) does not exist.', 'description' => '找不到ConfigMap对象(ID=%s)。'], + ['errorCode' => 'NotFound.ConfigMapKey', 'errorMessage' => 'The key %s of ConfigMap object (ID: %s) does not exist.', 'description' => '找不到ConfigMap对象(ID=%s)的Key %s。'], + ['errorCode' => 'Sls.Config.Mixed.Multi.Project', 'errorMessage' => 'The specified Config contains multiple projects.', 'description' => '您输入的SLS Config中指定了多个Project。'], + ['errorCode' => 'Sls.Config.User.Defined.Missing.Logstore.Info', 'errorMessage' => 'The specified Config is invalid. Both Project and Logstore must be specified.', 'description' => '您输入的SLS Config为自定义SLS配置,但是只有Project配置,缺失Logstore配置。'], + ['errorCode' => 'Sls.Config.User.Defined.Missing.Project.Info', 'errorMessage' => 'The specified Config is invalid. Both Project and Logstore must be specified.', 'description' => '您输入的SLS Config为自定义SLS配置,但是只有Logstore配置,缺失Project配置。'], + ['errorCode' => 'Sls.Logstore.Name.Invalid', 'errorMessage' => 'The specified name of Logstore is invalid. The Logstore name must not contain the prefix "sae-".', 'description' => '您输入的SLS Logstore名称不合法,前缀包含了"sae-",会与SAE自动创建的Logstore混淆。'], + ['errorCode' => 'Sls.Logstore.User.Defined.Not.Exist', 'errorMessage' => 'The user defined Logstore does not exist.', 'description' => '您输入的自建Logstore不存在。'], + ['errorCode' => 'Sls.Project.Name.Invalid', 'errorMessage' => 'The specified project name is invalid. The project name must not contain the prefix "sae-".', 'description' => '您输入的SLS Project名称不合法,前缀包含了"sae-",会与SAE自动创建的Project混淆。'], + ['errorCode' => 'Sls.Project.User.Defined.Not.Exist', 'errorMessage' => 'The user defined project does not exist.', 'description' => '您输入的自建Project不存在。'], + ['errorCode' => 'InvalidImageUrl.AcrInstanceId.Domain.NotMatch', 'errorMessage' => 'The specified domain of ImageUrl does not match AcrInstanceId domains.', 'description' => '指定的镜像地址ImageUrl域名与AcrInstanceId域名不匹配。'], + ['errorCode' => 'PhpApplication.MissingPhpRuntime', 'errorMessage' => 'A PHP application must contain PHP Runtime.', 'description' => 'PHP类型应用必须包含PHP运行时。'], + ], + 404 => [ + ['errorCode' => 'Associate.Eip.Not.Enough', 'errorMessage' => 'No sufficient EIPs are available.', 'description' => '绑定EIP时,EIP不足,需要您购买。'], + ['errorCode' => 'InvalidNamespaceId.NotFound', 'errorMessage' => 'The specified NamespaceId does not exist.', 'description' => '指定的NamespaceId不存在。'], + ['errorCode' => 'InvalidVpcId.NotFound', 'errorMessage' => 'The specified VpcId does not exist.', 'description' => '指定的VpcId不存在。'], + ['errorCode' => 'InvalidAcrInstanceId.NotFound', 'errorMessage' => 'The specified AcrInstanceId does not exist.', 'description' => '指定的 AcrInstanceId 不存在。'], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"01CF26C7-00A3-4AA6-BA76-7E95F2A3***\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"ac1a0b2215622246421415014e****\\",\\n \\"Data\\": {\\n \\"ChangeOrderId\\": \\"01db03d3-3ee9-48b3-b3d0-dfce2d88****\\",\\n \\"AppId\\": \\"7171a6ca-d1cd-4928-8642-7d5cfe69****\\"\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<UpdateJobResponse>\\n <RequestId>01CF26C7-00A3-4AA6-BA76-7E95F2A3***</RequestId>\\n <Message>success</Message>\\n <TraceId>ac1a0b2215622246421415014e****</TraceId>\\n <Data>\\n <ChangeOrderId>01db03d3-3ee9-48b3-b3d0-dfce2d88****</ChangeOrderId>\\n <AppId>7171a6ca-d1cd-4928-8642-7d5cfe69****</AppId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</UpdateJobResponse>","errorExample":""}]', + 'title' => '创建任务模板', + 'summary' => '创建任务模板。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:30.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-09-08T05:48:07.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2022-12-26T09:19:37.000Z', 'description' => '错误码发生变更'], + ['createdAt' => '2022-11-22T13:03:51.000Z', 'description' => '请求参数发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '40', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateJob'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'sae:CreateJob', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], + ], + ], + 'CreateNamespace' => [ + 'path' => '/pop/v1/paas/namespace', + 'methods' => ['post'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'AppSource', - 'in' => 'query', - 'schema' => [ - 'description' => '选择micro_service,即为微服务应用。', - 'type' => 'string', - 'required' => false, - 'example' => 'micro_service', - ], + 'AK' => [], ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'abilityTreeCode' => '6307', + 'abilityTreeNodes' => ['FEATUREsaeD9PL61'], + ], + 'parameters' => [ [ - 'name' => 'BaseAppId', - 'in' => 'formData', - 'schema' => [ - 'description' => '基础应用ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'ee99cce6-1c8e-4bfa-96c3-3e2fa9de8a41', - ], + 'name' => 'NamespaceId', + 'in' => 'query', + 'schema' => ['description' => '长版命名空间ID。如果设置了该参数会继续生效而忽略NameSpaceShortId,为了兼容保留,推荐使用短版命名空间ID;格式为`<RegionId>:<NamespaceId>`,`NamespaceId`仅允许小写英文字母和数字,例如`cn-beijing:test`,不超过32个字符。SAE支持的**RegionId**,请参见[DescribeRegions](~~126213~~)。', 'type' => 'string', 'required' => false, 'example' => 'cn-beijing:test'], ], [ - 'name' => 'ServiceTags', - 'in' => 'formData', - 'schema' => [ - 'description' => '应用配置的灰度标签', - 'type' => 'string', - 'required' => false, - 'example' => '{\\"alicloud.service.tag\\":\\"g1\\"}', - ], + 'name' => 'NamespaceName', + 'in' => 'query', + 'schema' => ['description' => '命名空间名称。不超过64个字符。', 'type' => 'string', 'required' => true, 'example' => 'name'], ], [ - 'name' => 'EnableNewArms', + 'name' => 'NamespaceDescription', 'in' => 'query', - 'schema' => [ - 'description' => '是否启用新的ARMS功能:'."\n" - ."\n" - .'- true:启用'."\n" - .'- false:不启用', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], + 'schema' => ['description' => '命名空间描述信息,不超过100个字符。', 'type' => 'string', 'required' => false, 'example' => 'desc'], ], [ - 'name' => 'EnableCpuBurst', + 'name' => 'NameSpaceShortId', 'in' => 'query', - 'schema' => [ - 'description' => '是否启用CPU Burst功能:'."\n" - ."\n" - .'- true:启用'."\n" - .'- false:不启用', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'schema' => ['description' => '短版命名空间ID,不需要带上region,推荐;不超过20个字符,仅允许小写英文字母和数字。'."\n", 'type' => 'string', 'required' => false, 'example' => 'test'], ], [ - 'name' => 'OidcRoleName', + 'name' => 'EnableMicroRegistration', 'in' => 'query', + 'schema' => ['description' => '是否启用SAE内置注册中心:'."\n" + .'- **true**'."\n" + .'- **false**'."\n" + ."\n" + .'默认为true,若不使用内置注册中心,填false可加快命名空间创建速度。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '设置身份认证服务RAM角色。'."\n" - .'> 需要提前创建同地域的OIDC身份供应商和身份供应商角色。具体信息,请参见<props="china">[创建OIDC身份供应商](https://help.aliyun.com/zh/ram/developer-reference/api-ims-2019-08-15-createoidcprovider?spm=a2c4g.11186623.help-menu-28625.d_4_1_0_3_2_7.7f0443efmdpxa3)和[创建角色SSO身份提供商](https://help.aliyun.com/zh/ram/developer-reference/api-ims-2019-08-15-createsamlprovider?spm=a2c4g.11186623.help-menu-28625.d_4_1_0_3_2_2.632244b1s8QbQt)</props><props="intl">[创建OIDC身份供应商](https://www.alibabacloud.com/help/zh/ram/developer-reference/api-ims-2019-08-15-createoidcprovider)和[创建角色SSO身份提供商](https://www.alibabacloud.com/help/zh/ram/developer-reference/api-ims-2019-08-15-createsamlprovider)</props>。', - 'type' => 'string', - 'required' => false, - 'example' => 'sae-test', + 'description' => '返回数据。', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '调用结果的附加信息。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a981dd515966966104121683d****'], + 'Data' => [ + 'description' => '命名空间信息。', + 'type' => 'object', + 'properties' => [ + 'NamespaceDescription' => ['description' => '命名空间描述信息。', 'type' => 'string', 'example' => 'desc'], + 'NamespaceId' => ['description' => '命名空间ID。', 'type' => 'string', 'example' => 'cn-beijing:test'], + 'NamespaceName' => ['description' => '命名空间名称。', 'type' => 'string', 'example' => 'name'], + 'RegionId' => ['description' => '命名空间所在地域。', 'type' => 'string', 'example' => 'cn-beijing'], + 'NameSpaceShortId' => ['description' => '短版命名空间ID。', 'type' => 'string', 'example' => 'test'], + 'EnableMicroRegistration' => ['description' => '是否已启用SAE内置注册中心:'."\n" + .'- **true**'."\n" + .'- **false**', 'type' => 'boolean', 'example' => 'true'], + ], + ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '创建命名空间是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:创建成功。'."\n" + .'- **false**:创建失败。', 'type' => 'boolean', 'example' => 'true'], + ], ], ], - [ - 'name' => 'SidecarContainersConfig', - 'in' => 'formData', - 'style' => 'json', - 'schema' => [ - 'description' => '容器配置信息。', - 'type' => 'array', - 'items' => [ - 'description' => '容器配置信息。', - 'required' => false, - '$ref' => '#/components/schemas/SidecarContainerConfig', + ], + 'errorCodes' => [ + 400 => [ + ['errorCode' => 'InstanceExist.NamespaceId', 'errorMessage' => 'The specified namespace ID already exists.', 'description' => '指定的命名空间ID已存在。'], + ['errorCode' => 'InvalidNamespace.WithUppercase', 'errorMessage' => 'This namespace does not support creating SAE apps because it contains uppercase letters.', 'description' => '命名空间不支持创建SAE应用,因为它带有大写字母。'], + ['errorCode' => 'InvalidNamespaceId.Format', 'errorMessage' => 'The specified NamespaceId is invalid.', 'description' => '指定的NamespaceId不合法。正确格式为[所属regionId]:[命名空间标识],例如cn-beijing:test,并且长度不能超过32个字符。'], + ['errorCode' => 'InvalidNamespaceIdSuffix.Format', 'errorMessage' => 'The specified NamespaceId is invalid. NamespaceId can only contain alphabetical letters or numbers.', 'description' => '指定的NamespaceId不合法。命名空间ID只能由字母或数字组成。'], + ['errorCode' => 'InvalidNamespaceName.Format', 'errorMessage' => 'The specified NamespaceName is invalid. The name of the namespace cannot exceed 63 characters in length.', 'description' => '指定的NamespaceName不合法。命名空间名称的长度不能超过63个字符。'], + ['errorCode' => 'InvalidOperation.NamespaceClusterNotDeleted', 'errorMessage' => 'The specified NamespaceId contains clusters.', 'description' => '指定的NamespaceId下还有集群。'], + ['errorCode' => 'Namespace.AppExists', 'errorMessage' => 'Please delete the application first.', 'description' => '请先删除应用。'], + ['errorCode' => 'System.Upgrading', 'errorMessage' => 'The system is being upgraded. Please try again later.', 'description' => '系统正在升级,请稍后操作。'], + ['errorCode' => 'Exceed.Namespace', 'errorMessage' => 'Too many namespaces have been created.', 'description' => '创建的命名空间过多。'], + ], + 500 => [ + ['errorCode' => 'OperationFailed.DauthHttpRequest', 'errorMessage' => 'request dauth failed.', 'description' => '请求认证系统失败。'], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a981dd515966966104121683d****\\",\\n \\"Data\\": {\\n \\"NamespaceDescription\\": \\"desc\\",\\n \\"NamespaceId\\": \\"cn-beijing:test\\",\\n \\"NamespaceName\\": \\"name\\",\\n \\"RegionId\\": \\"cn-beijing\\",\\n \\"NameSpaceShortId\\": \\"test\\",\\n \\"EnableMicroRegistration\\": true\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<CreateNamespaceResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a981dd515966966104121683d****</TraceId>\\n <Data>\\n <NamespaceDescription>desc</NamespaceDescription>\\n <NamespaceId>cn-beijing:test</NamespaceId>\\n <NamespaceName>name</NamespaceName>\\n <RegionId>cn-beijing</RegionId>\\n <NameSpaceShortId>test</NameSpaceShortId>\\n <EnableMicroRegistration>true</EnableMicroRegistration>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</CreateNamespaceResponse>","errorExample":""}]', + 'title' => '创建命名空间', + 'summary' => '创建命名空间', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:24.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2023-03-10T06:42:07.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2022-12-29T03:14:27.000Z', 'description' => '请求参数发生变更、响应参数发生变更'], + ['createdAt' => '2021-11-30T12:59:35.000Z', 'description' => '请求参数发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateNamespace'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'sae:CreateNamespace', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], - 'required' => false, ], ], + ], + ], + 'CreateOrUpdateSwimmingLane' => [ + 'summary' => '创建或者更新泳道。', + 'path' => '/pop/v1/cas/gray/createOrUpdateSwimmingLane', + 'methods' => ['post'], + 'schemes' => ['https'], + 'security' => [ [ - 'name' => 'SecretMountDesc', + 'AK' => [], + ], + ], + 'consumes' => ['application/x-www-form-urlencoded'], + 'produces' => ['application/json'], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'abilityTreeCode' => '221506', + 'abilityTreeNodes' => ['FEATUREsaeX255DA'], + ], + 'parameters' => [ + [ + 'name' => 'LaneId', 'in' => 'query', - 'schema' => [ - 'description' => '**Secret**挂载描述。使用在命名空间保密字典页面创建的保密字典来向容器中注入保密信息。参数说明如下:'."\n" - ."\n" - .'- **secretId**:secret实例ID。可通过ListSecrets接口获取。'."\n" - .'- **key**:键值。'."\n" - ."\n" - .'> 可通过传递`sae-sys-secret-all`参数挂载所有键。'."\n" - ."\n" - .'- **mountPath**:挂载路径。', - 'type' => 'string', - 'required' => false, - 'example' => '[{“secretId":10,”key":"test","mountPath":"/tmp"}]', - ], + 'schema' => ['description' => '泳道ID。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '13857'], ], [ - 'name' => 'EnableSidecarResourceIsolated', - 'in' => 'formData', - 'schema' => [ - 'description' => '是否启用Sidecar资源隔离:'."\n" - ."\n" - .'- true:进行隔离'."\n" - .'- false:不进行隔离', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'name' => 'LaneName', + 'in' => 'query', + 'schema' => ['description' => '泳道名称。', 'type' => 'string', 'required' => false, 'example' => 'test'], ], [ - 'name' => 'CustomImageNetworkType', + 'name' => 'LaneTag', 'in' => 'query', - 'schema' => [ - 'description' => '自定义镜像类型,如果非自定义镜像,需要设置为空字符串:'."\n" - ."\n" - .'- internet:公网镜像'."\n" - .'- intranet:私网镜像', - 'type' => 'string', - 'required' => false, - 'example' => 'internet', - ], + 'schema' => ['description' => '泳道标签。', 'type' => 'string', 'required' => false, 'example' => 'g1'], ], [ - 'name' => 'ResourceType', + 'name' => 'GroupId', 'in' => 'query', - 'schema' => [ - 'description' => '资源类型。支持NULL(默认)、default(默认)和haiguang(海光服务器)类型。', - 'type' => 'string', - 'required' => false, - 'example' => 'NULL', - ], + 'schema' => ['description' => '所属泳道组ID。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => 'b2a8a925-477a-eswa-b823-d5e22500****'], ], [ - 'name' => 'NewSaeVersion', + 'name' => 'NamespaceId', + 'in' => 'query', + 'schema' => ['description' => '命名空间ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-beijing:test'], + ], + [ + 'name' => 'CanaryModel', + 'in' => 'query', + 'schema' => ['description' => '全链路灰度模式:'."\n" + ."\n" + .'- 0: 按请求内容路由'."\n" + ."\n" + .'- 1: 按比例路由', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0'], + ], + [ + 'name' => 'Enable', + 'in' => 'query', + 'schema' => ['description' => '泳道状态:'."\n" + ."\n" + .'- true:开启'."\n" + .'- false:关闭', 'type' => 'boolean', 'required' => false, 'example' => 'true'], + ], + [ + 'name' => 'AppEntryRule', 'in' => 'query', + 'style' => 'json', 'schema' => [ - 'description' => '应用版本:'."\n" + 'description' => '网关路由配置。'."\n" ."\n" - .'- lite:轻量版'."\n" - .'- std:标准版'."\n" - .'- pro:专业版', - 'type' => 'string', + .'> 泳道组网关入口为 Java 时,此字段为必填项。', + 'type' => 'object', + 'properties' => [ + 'Paths' => [ + 'description' => '匹配的请求路径。', + 'type' => 'array', + 'items' => ['description' => '请求路径。', 'type' => 'string', 'required' => false, 'example' => '/A'], + 'required' => false, + ], + 'Percentage' => ['description' => '流量比例,按比例路由使用,取值0-100。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '50'], + 'ConditionJoiner' => ['description' => '条件之间的逻辑连接符:'."\n" + ."\n" + .'- AND:同时满足所有条件'."\n" + .'- OR:满足任意条件', 'type' => 'string', 'required' => false, 'example' => 'AND'], + 'Conditions' => [ + 'description' => '匹配条件。', + 'type' => 'array', + 'items' => [ + 'description' => '条件项。', + 'type' => 'object', + 'properties' => [ + 'Type' => ['description' => '参数类型:'."\n" + ."\n" + .'- header:Header'."\n" + .'- param:Parameter'."\n" + ."\n" + .'- cookie:Cookie', 'type' => 'string', 'required' => false, 'example' => 'Header'], + 'Name' => ['description' => '参数名称。', 'type' => 'string', 'required' => false, 'example' => 't'], + 'Condition' => ['description' => '匹配规则:'."\n" + ."\n" + .'- ==:精确匹配,流量值与条件值需要完全相等。'."\n" + .'- !=:精确匹配,流量值与条件值需要完全相等。'."\n" + .'- in:包含匹配,流量值需要在指定的列表中时满足条件。'."\n" + .'- 百分比:百分比匹配,原理:满足`hash(get(key)) % 100 < value` 成立时满足条件。'."\n" + .'- 正则匹配:正则表达式匹配,按照正则表达式规则匹配时满足条件。', 'type' => 'string', 'required' => false, 'example' => '=='], + 'Value' => ['description' => '条件的匹配值。', 'type' => 'string', 'required' => false, 'example' => 'g1'], + ], + 'required' => false, + ], + 'required' => false, + ], + 'IndependentPercentageEnable' => ['description' => '是否启用按比例灰度。'."\n" + ."\n" + .'- true:启用,启用后需要配置PercentageByPath。'."\n" + .'- false:不启用。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], + 'PercentageByPath' => [ + 'description' => '流量配置。', + 'type' => 'object', + 'required' => false, + 'additionalProperties' => ['type' => 'integer', 'format' => 'int32', 'description' => '为所配置的路径配置流量比例,范围为1~100。', 'example' => '50'], + ], + ], 'required' => false, - 'example' => 'pro', ], ], [ - 'name' => 'MicroserviceEngineConfig', + 'name' => 'MseGatewayEntryRule', 'in' => 'query', + 'style' => 'json', 'schema' => [ - 'description' => '配置微服务治理功能。'."\n" - ."\n" - .'- 是否开启微服务治理(enable):'."\n" - ."\n" - .' - ture:开启'."\n" - ."\n" - .' - false:不开启'."\n" - ."\n" - .'- 配置无损上下线(mseLosslessRule):'."\n" - ."\n" - .' - delayTime:延迟时间'."\n" - ."\n" - .' - enable:是否启用无损上线功能,ture为开启,false为不开启。'."\n" - ."\n" - .' - notice:是否启用通知功能,ture为启用,false为启用。'."\n" + 'description' => 'MSE网关路由配置。'."\n" ."\n" - .' - warmupTime:小流量预热时长,单位为秒。', - 'type' => 'string', + .'> 当**EntryAppType**配置为**apig**或**mse-gw**时,为必填字段。', + 'type' => 'object', + 'properties' => [ + 'RouteIds' => [ + 'description' => '路由ID。', + 'type' => 'array', + 'items' => ['description' => '网关路由ID。调用[ListGatewayRoute](~~409437~~)获取。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '78830'], + 'required' => false, + ], + 'Percentage' => ['description' => '流量复制比例(%),取值 0-100。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '100'], + 'ConditionJoiner' => ['description' => '条件之间的逻辑连接符:'."\n" + ."\n" + .'- AND:同时满足所有条件'."\n" + .'- OR:满足任意条件', 'type' => 'string', 'required' => false, 'example' => 'AND'], + 'Conditions' => [ + 'description' => '路由条件。', + 'type' => 'array', + 'items' => [ + 'description' => '配置路由条件。', + 'type' => 'object', + 'properties' => [ + 'Type' => ['description' => '参数类型:'."\n" + ."\n" + .'- header:Header'."\n" + ."\n" + .'- param:Parameter'."\n" + ."\n" + .'- cookie:Cookie', 'type' => 'string', 'required' => false, 'example' => 'header '], + 'Name' => ['description' => '条件参数名称。', 'type' => 'string', 'required' => false, 'example' => 'test'], + 'Condition' => ['description' => '匹配规则。'."\n" + ."\n" + .'- ==:精确匹配。'."\n" + .'- !=:精确匹配。'."\n" + .'- in:包含匹配。'."\n" + .'- 百分比:百分比匹配。'."\n" + .'- 正则匹配:正则表达式匹配。', 'type' => 'string', 'required' => false, 'example' => '=='], + 'Value' => ['description' => '条件的匹配值。', 'type' => 'string', 'required' => false, 'example' => 'g1'], + ], + 'required' => false, + ], + 'required' => false, + ], + 'IndependentPercentageEnable' => ['description' => '是否启用按比例灰度。'."\n" + ."\n" + .'- true:启用,启用后需要配置PercentageByPath。'."\n" + .'- false:不启用。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], + 'PercentageByRoute' => [ + 'description' => '流量配置。', + 'type' => 'object', + 'required' => false, + 'additionalProperties' => ['type' => 'integer', 'format' => 'int32', 'example' => '100', 'description' => '配置流量比例,范围为1~100。'], + ], + ], 'required' => false, - 'example' => '{"enable": true,"mseLosslessRule": {"delayTime": 0,"enable": false,"notice": false,"warmupTime": 120}}', ], ], - [ - 'name' => 'DiskSize', - 'in' => 'query', + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '磁盘存储大小(单位GB)。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '50', + 'title' => 'Schema of Response', + 'description' => '创建或更新的泳道结果。', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求 ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回 success。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链 ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], + 'Data' => [ + 'description' => '返回信息。', + 'type' => 'object', + 'properties' => [ + 'LaneId' => ['description' => '泳道ID。', 'type' => 'integer', 'format' => 'int64', 'example' => '22318'], + ], + ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '是否成功创建或更新。取值说明如下:'."\n" + ."\n" + .'- true:创建成功'."\n" + .'- false:创建失败', 'type' => 'boolean', 'example' => 'true'], + ], ], ], + ], + 'errorCodes' => [ + 400 => [ + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], + ['errorCode' => 'MseGatewayRule.CreateFailed', 'errorMessage' => 'Create MSE Gateway rule failed.', 'description' => '创建MSE微服务网关路由失败。'], + ['errorCode' => 'InternalApiError', 'errorMessage' => 'An exception occurred when calling mse:%s, error message: %s.', 'description' => '调用 mse:%s 接口异常,%s'], + ], + ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"LaneId\\": 22318\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => '创建或更新泳道', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:29.000Z', 'description' => 'OpenAPI 下线'], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ [ - 'name' => 'InitContainersConfig', - 'in' => 'formData', - 'style' => 'json', - 'schema' => [ - 'description' => '初始化容器配置。', - 'type' => 'array', - 'items' => [ - 'description' => '初始化容器配置', - 'required' => false, - '$ref' => '#/components/schemas/InitContainerConfig', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'sae:CreateOrUpdateSwimmingLane', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], - 'required' => false, ], ], + ], + ], + 'CreateOrUpdateSwimmingLaneGroup' => [ + 'summary' => '创建或者更新泳道组。', + 'path' => '/pop/v1/cas/gray/createOrUpdateSwimmingLaneGroup', + 'methods' => ['post'], + 'schemes' => ['https'], + 'security' => [ [ - 'name' => 'GpuConfig', + 'AK' => [], + ], + ], + 'consumes' => ['application/x-www-form-urlencoded'], + 'produces' => ['application/json'], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'abilityTreeCode' => '221430', + 'abilityTreeNodes' => ['FEATUREsaeX255DA'], + ], + 'parameters' => [ + [ + 'name' => 'GroupId', 'in' => 'query', - 'schema' => [ - 'description' => 'Gpu配置', - 'type' => 'string', - 'required' => false, - 'example' => '{\\n\\"gpuType\\":\\"PPU810E\\",\\n\\"gpuCount\\":\\"1\\"\\n}', - ], + 'schema' => ['description' => '属泳道组ID。更新泳道组时为必填。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '110272'], ], [ - 'name' => 'StartupProbe', + 'name' => 'GroupName', 'in' => 'query', - 'schema' => [ - 'description' => '启用应用启动探测。'."\n" - ."\n" - .'- 检查成功:表示应用启动成功,如果您配置了Liveness检查和Readiness检查,应用启动成功后会执行Liveness检查和Readiness检查。'."\n" - .'- 检查失败:表示应用启动失败,会上报异常并自动重启。'."\n" - .'> '."\n" - .'> - 支持 exec、httpGet 和 tcpSocket 方式。具体示例,请参见 Liveness 参数。'."\n" - .'> - 只能选择一种方式进行健康检查。', - 'type' => 'string', - 'required' => false, - 'example' => '{"exec":{"command":["sh","-c","cat /home/admin/start.sh"]},"initialDelaySeconds":30,"periodSeconds":30,"timeoutSeconds":2}', - ], + 'schema' => ['description' => '泳道组名称。', 'type' => 'string', 'required' => false, 'example' => 'mse-test'], ], [ - 'name' => 'IsStateful', + 'name' => 'NamespaceId', 'in' => 'query', - 'schema' => [ - 'description' => '是否有状态应用', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'schema' => ['description' => '命名空间ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-beijing:test'], ], [ - 'name' => 'EnablePrometheus', + 'name' => 'AppIds', 'in' => 'query', + 'style' => 'json', 'schema' => [ - 'description' => '是否开启Prometheus自定义指标采集', - 'type' => 'boolean', + 'description' => '基线应用ID。', + 'type' => 'array', + 'items' => ['description' => '基线应用ID。可单击**添加**,已添加多个基线应用。', 'type' => 'string', 'required' => false, 'example' => '00893b3a-0e24-45ed-be0c-1f20e07b****'], 'required' => false, - 'example' => 'false', ], ], [ - 'name' => 'HeadlessPvtzDiscoverySvc', + 'name' => 'EntryAppType', 'in' => 'query', - 'schema' => [ - 'description' => 'K8s Headless Service服务注册发现'."\n" - .'- serviceName:服务名称'."\n" - .'- namespaceId: 命名空间ID', - 'type' => 'string', - 'required' => false, - 'example' => '{\\"serviceName\\":\\"leaf-test-headless\\",\\"namespaceId\\":\\"cn-zhangjiakou:prod\\"}', - ], + 'schema' => ['description' => '应用入口类型(网关类型)。'."\n" + ."\n" + .'- **apig:** 云原生 API 网关'."\n" + ."\n" + .'- **mse:** Java 服务网关'."\n" + ."\n" + .'- **mse-gw:** MSE 云原生网关', 'type' => 'string', 'required' => false, 'example' => 'mse-gw'], ], [ - 'name' => 'Html', + 'name' => 'EntryAppId', 'in' => 'query', - 'schema' => [ - 'description' => 'Nginx版本'."\n" - .'- nginx 1.20'."\n" - .'- nginx 1.22'."\n" - .'- nginx 1.24'."\n" - .'- nginx 1.26'."\n" - .'- nginx 1.28', - 'type' => 'string', - 'required' => false, - 'example' => 'nginx 1.28', - ], + 'schema' => ['description' => '对应网关唯一 ID。', 'type' => 'string', 'required' => false, 'example' => 'gw-ea43f648ac46485aa8c894ba1b******'], ], [ - 'name' => 'EmptyDirDesc', - 'in' => 'formData', + 'name' => 'SwimVersion', + 'in' => 'query', + 'schema' => ['description' => '全链路灰度版本,取值范围:0,2(推荐使用)。', 'type' => 'string', 'required' => false, 'example' => '2'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '共享临时存储配置。', - 'type' => 'string', - 'required' => false, - 'example' => '[{\\"name\\":\\"workdir\\",\\"mountPath\\":\\"/usr/local/tomcat/webapps\\"}]', + 'title' => 'Schema of Response', + 'description' => '返回信息。', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求 ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回 **success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链 ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], + 'Data' => [ + 'description' => '应用信息。', + 'type' => 'object', + 'properties' => [ + 'GroupId' => ['description' => '泳道组ID。', 'type' => 'integer', 'format' => 'int64', 'example' => '110272'], + ], + ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '泳道组是否创建成功。取值说明如下:'."\n" + ."\n" + .'- **true**:创建成功。'."\n" + .'- **false**:创建失败。', 'type' => 'boolean', 'example' => 'true'], + ], ], ], + ], + 'errorCodes' => [ + 400 => [ + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], + ['errorCode' => 'MseGatewayRule.CreateFailed', 'errorMessage' => 'Create MSE Gateway rule failed.', 'description' => '创建MSE微服务网关路由失败。'], + ['errorCode' => 'InternalApiError', 'errorMessage' => 'An exception occurred when calling mse:%s, error message: %s.', 'description' => '调用 mse:%s 接口异常,%s'], + ], + ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"GroupId\\": 110272\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => '创建或更新泳道组', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:29.000Z', 'description' => 'OpenAPI 下线'], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ [ - 'name' => 'AgentVersion', - 'in' => 'query', - 'schema' => [ - 'description' => 'AliyunAgent版本', - 'type' => 'string', - 'required' => false, - 'example' => '4.4.2', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'sae:CreateOrUpdateSwimmingLaneGroup', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], + ], + ], + 'CreateSecret' => [ + 'summary' => '创建命名空间中的Secret实例。', + 'path' => '/pop/v1/sam/secret/secret', + 'methods' => ['post'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'EnableNamespaceAgentVersion', + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'abilityTreeCode' => '159985', + 'abilityTreeNodes' => ['FEATUREsaeD9PL61'], + ], + 'parameters' => [ + [ + 'name' => 'NamespaceId', 'in' => 'query', - 'schema' => [ - 'description' => '是否复用命名空间Agent版本配置', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'schema' => ['description' => 'Secret实例所在命名空间ID。如果所在命名空间为默认命名空间,则只需填写RegionId,例如`cn-beijing`。', 'type' => 'string', 'required' => true, 'example' => 'cn-beijing:test'], ], [ - 'name' => 'EnableNamespaceSlsConfig', + 'name' => 'SecretName', 'in' => 'query', - 'schema' => [ - 'description' => '是否复用命名空间SLS日志配置', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'schema' => ['description' => 'Secret实例名称。允许数字、字母和下划线(_)组合,仅允许以字母开头。', 'type' => 'string', 'required' => true, 'example' => 'registry-auth-acree'], ], [ - 'name' => 'SlsLogEnvTags', + 'name' => 'SecretType', 'in' => 'query', 'schema' => [ - 'title' => 'sls log tags', - 'description' => 'sls log tags', + 'description' => '当前支持的Secret实例类型。取值说明如下:'."\n" + ."\n" + .'- **kubernetes.io/dockerconfigjson**:存储镜像仓库用户名和密码的保密字典,用于部署时拉取镜像鉴权。', 'type' => 'string', - 'required' => false, - 'example' => '[]', + 'required' => true, + 'example' => 'kubernetes.io/dockerconfigjson', + 'enum' => ['Opaque', 'kubernetes.io/dockerconfigjson', 'kubernetes.io/tls'], ], ], [ - 'name' => 'LokiConfigs', + 'name' => 'SecretData', 'in' => 'query', + 'style' => 'json', 'schema' => [ - 'description' => 'LokiConfigs', - 'type' => 'string', - 'required' => false, - 'example' => '[]', + 'description' => 'Secret数据。', + 'type' => 'object', + 'properties' => [ + 'SecretData' => ['description' => 'Secret键值对数据,为必填项。格式如下:'."\n" + ."\n" + .'{"Data":"{\\"k1\\":\\"v1\\", \\"k2\\":\\"v2\\"}"}'."\n" + ."\n" + .'k表示键,v表示值。', 'type' => 'string', 'required' => true, 'example' => '{".dockerconfigjson":"eyJhdXRocyI6eyJyZWdpc3RyeS12cGMuY24tYmVpamluZy5hbGl5dW5jcy5jb20iOnsidXNlcm5hbWUiOiJ1c2VybmFtZSIsInBhc3N3b3JkIjoicGFzc3dvcmQiLCJhdXRoIjoiZFhObGNtNWhiV1U2Y0dGemMzZHZjbVE9In0sInJlZ2lzdHJ5LmNuLWJlaWppbmcuYWxpeXVuY3MuY29tIjp7InVzZXJuYW1lIjoidXNlcm5hbWUiLCJwYXNzd29yZCI6InBhc3N3b3JkIiwiYXV0aCI6ImRYTmxjbTVoYldVNmNHRnpjM2R2Y21RPSJ9fX0="}'], + ], + 'required' => true, ], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'description' => '创建的应用信息。', + 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '调用结果的附加信息。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], 'Data' => [ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'ChangeOrderId' => [ - 'description' => '返回的发布单ID,用于查询任务执行状态。', - 'type' => 'string', - 'example' => '01db03d3-3ee9-48b3-b3d0-dfce2d88****', - ], - 'AppId' => [ - 'description' => '创建成功的应用ID。', - 'type' => 'string', - 'example' => '017f39b8-dfa4-4e16-a84b-1dcee4b1****', - ], + 'SecretId' => ['description' => '创建成功的Secret实例ID。', 'type' => 'integer', 'format' => 'int64', 'example' => '16'], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '创建应用是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:创建成功。'."\n" - .'- **false**:创建失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '创建Secret实例是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:创建成功。'."\n" + .'- **false**:创建失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'Application.MissingJdk', - 'errorMessage' => 'Your application must at least contain a JDK component.', - ], - [ - 'errorCode' => 'InvalidPackageType.NotFound', - 'errorMessage' => 'The package type must be War, FatJar, or Image.', - ], - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'JarApplication.MissingJdk', - 'errorMessage' => 'A FatJar application must contain JDK.', - ], - [ - 'errorCode' => 'NoAvailableCluster.NotFound', - 'errorMessage' => 'No clusters are available for the current region.', - ], - [ - 'errorCode' => 'NoComputeResourceQuota.Exceed', - 'errorMessage' => 'Your compute resource is insufficient. Please contact us to raise the quota.', - ], - [ - 'errorCode' => 'PandoraApplication.MissingJdk', - 'errorMessage' => 'The Pandora application is missing a JDK component.', - ], - [ - 'errorCode' => 'PandoraApplication.OnlyJdk', - 'errorMessage' => 'A Pandora application only requires JDK component.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], - [ - 'errorCode' => 'InvalidComponent.NotFound', - 'errorMessage' => 'The current component (such as JDK, Tomcat, or EDASWebContainer) does not exist.', - ], - [ - 'errorCode' => 'InvalidHostnameIp.Invalid', - 'errorMessage' => 'The hostname and/or IP is invalid: Hostname [%s], IP [%s].', - ], - [ - 'errorCode' => 'InvalidInstanceSpecification.Unsupported', - 'errorMessage' => 'The instance specification is not supported: CPU [%s], memory [%s].', - ], - [ - 'errorCode' => 'InvalidServerlessRegion.Unsupported', - 'errorMessage' => 'The current region is not supported: %s', - ], - [ - 'errorCode' => 'WarApplication.MissingJdkWebcontainer', - 'errorMessage' => 'A War application must contain JDK and Tomcat.', - ], - [ - 'errorCode' => 'InvalidNamespace.WithUppercase', - 'errorMessage' => 'This namespace does not support creating SAE apps because it contains uppercase letters.', - ], - [ - 'errorCode' => 'LogService.ConfigQuotaExceed', - 'errorMessage' => 'The maximum number of Log Service configs is exceeded.', - ], - [ - 'errorCode' => 'LogService.InternalError', - 'errorMessage' => 'An exception occurred while calling Log Service. Please submit a ticket to solve the problem.', - ], - [ - 'errorCode' => 'LogService.LogDirInvalid', - 'errorMessage' => 'The log collection path is invalid.', - ], - [ - 'errorCode' => 'LogService.NotAvailable', - 'errorMessage' => 'Log Service is unavailable. Please activate Log Service first.', - ], - [ - 'errorCode' => 'LogService.ProjectNumQuotaExceed', - 'errorMessage' => 'The maximum number of Log Service projects is exceeded.', - ], - [ - 'errorCode' => 'user.indebt', - 'errorMessage' => 'The user has an outstanding payment.', - ], - [ - 'errorCode' => 'NoComputeResourceQuota.App.Exceed', - 'errorMessage' => 'You can create %s instances for each application. Please submit a ticket to raise the quota.', - ], - [ - 'errorCode' => 'NoComputeResourceQuota.User.Exceed', - 'errorMessage' => 'Your account is limited to create %s instances. Please submit a ticket to raise the quota.', - ], - [ - 'errorCode' => 'System.Upgrading', - 'errorMessage' => 'The system is being upgraded. Please try again later.', - ], - [ - 'errorCode' => 'VolumnPath.Conflict', - 'errorMessage' => 'Conflict between log collection directory and persistent storage directory.', - ], - [ - 'errorCode' => 'MountConflict.ConfigMap', - 'errorMessage' => 'Conflict detected for ConfigMap path %s.', - ], - [ - 'errorCode' => 'NotFound.ConfigMap', - 'errorMessage' => 'The ConfigMap object (ID: %s) does not exist.', - ], - [ - 'errorCode' => 'NotFound.ConfigMapKey', - 'errorMessage' => 'The key %s of ConfigMap object (ID: %s) does not exist.', - ], - [ - 'errorCode' => 'Sls.Config.Mixed.Multi.Project', - 'errorMessage' => 'The specified Config contains multiple projects.', - ], - [ - 'errorCode' => 'Sls.Config.User.Defined.Missing.Logstore.Info', - 'errorMessage' => 'The specified Config is invalid. Both Project and Logstore must be specified.', - ], - [ - 'errorCode' => 'Sls.Config.User.Defined.Missing.Project.Info', - 'errorMessage' => 'The specified Config is invalid. Both Project and Logstore must be specified.', - ], - [ - 'errorCode' => 'Sls.Logstore.Name.Invalid', - 'errorMessage' => 'The specified name of Logstore is invalid. The Logstore name must not contain the prefix "sae-".', - ], - [ - 'errorCode' => 'Sls.Logstore.User.Defined.Not.Exist', - 'errorMessage' => 'The user defined Logstore does not exist.', - ], - [ - 'errorCode' => 'Sls.Project.Name.Invalid', - 'errorMessage' => 'The specified project name is invalid. The project name must not contain the prefix "sae-".', - ], - [ - 'errorCode' => 'Sls.Project.User.Defined.Not.Exist', - 'errorMessage' => 'The user defined project does not exist.', - ], - [ - 'errorCode' => 'InvalidImageUrl.AcrInstanceId.Domain.NotMatch', - 'errorMessage' => 'The specified domain of ImageUrl does not match AcrInstanceId domains.', - ], - [ - 'errorCode' => 'PhpApplication.MissingPhpRuntime', - 'errorMessage' => 'A PHP application must contain PHP Runtime.', - ], - [ - 'errorCode' => 'InvalidParameter.FileName', - 'errorMessage' => 'The application deployment package name is invalid. This name can contain only alphanumeric characters, hyphens (-), and underscores (_). For deploying java package, you can upload JAR files only if the selected deployment version supports JAR file. Otherwise, upload WAR files only. For deploying php package, you can upload ZIP files only if the selected deployment version supports ZIP file.', - ], - [ - 'errorCode' => 'Sls.Logtail.Name.Invalid', - 'errorMessage' => 'The specified name of Logtail is invalid. The Logtail name must not contain the prefix sae-.', - ], - [ - 'errorCode' => 'vswitch.not.exist', - 'errorMessage' => 'The specified vSwitch does not exist.', - ], - [ - 'errorCode' => 'InvalidImageUrl.MissingAcrInstanceId', - 'errorMessage' => 'The specified domain of ImageUrl is from ACREE, but you are not specified AcrInstanceId.', - ], - [ - 'errorCode' => 'EnvFromSecretIdConflict.AlreadyExist', - 'errorMessage' => 'The specified SecretId [%s] already exist in the specified Envs.', - ], - [ - 'errorCode' => 'MountConflict.Secret', - 'errorMessage' => 'Conflict detected for Secret path %s.', - ], + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], + ['errorCode' => 'SecretNameConflict.AlreadyExist', 'errorMessage' => 'The specified SecretName [%s] already exist in this namespace.', 'description' => '指定的保密字典名称已经存在与当前命名空间中。'], + ['errorCode' => 'QuotaExceeded.SecretInNamespace', 'errorMessage' => 'The specified secret exceeded quota [%s].', 'description' => '超过保密字典上限 [%s]。 '], + ['errorCode' => 'QuotaExceeded.SecretDataKey', 'errorMessage' => 'The specified key in SecretData exceeded quota [%s].', 'description' => '保密字典字段数量超过上限 [%s].'], + ['errorCode' => 'InvalidSecretType.NotAvailable', 'errorMessage' => 'The specified SecretType [%s] is not supported.', 'description' => '指定的保密字典类型不支持。'], + ['errorCode' => 'InvalidSecretDataKey.NotFound', 'errorMessage' => 'The specified Key [%s] does not exist in the specified Secret [%s].', 'description' => '指定的保密字典Key不存在于当前保密字典[%s]中'], ], 404 => [ - [ - 'errorCode' => 'Associate.Eip.Not.Enough', - 'errorMessage' => 'No sufficient EIPs are available.', - ], - [ - 'errorCode' => 'InvalidNamespaceId.NotFound', - 'errorMessage' => 'The specified NamespaceId does not exist.', + ['errorCode' => 'InvalidNamespaceId.NotFound', 'errorMessage' => 'The specified NamespaceId does not exist.', 'description' => '指定的NamespaceId不存在。'], + ], + 500 => [ + ['errorCode' => 'OperationFailed.RPCError', 'errorMessage' => 'Internal RPC request processing error.', 'description' => '内部RPC请求处理报错。'], + ], + ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"SecretId\\": 16\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<CreateSecretResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <SecretId>16</SecretId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</CreateSecretResponse>","errorExample":""}]', + 'title' => 'CreateSecret', + 'requestParamsDescription' => '**示例:使用用户名密码,跨账号内网拉取容器镜像服务ACR的镜像** '."\n" + ."\n" + .'- 请同时填写公网与内网域名。'."\n" + .'- 请同时填写**username**、**password**与**auth**字段,避免鉴权失败。**auth**字段格式`base64Encode($username:$password)`。'."\n" + ."\n" + .'字段值默认格式如下。'."\n" + ."\n" + .'```'."\n" + .'SecretData[".dockerconfigjson"]=base64Encode('."\n" + .'{'."\n" + .' "auths": {'."\n" + .' "registry-vpc.cn-beijing.aliyuncs.com": { // $内网域名'."\n" + .' "username": "username",'."\n" + .' "password": "password",'."\n" + .' "auth": "dXNlcm5hbWU6cGFzc3dvcmQ="'."\n" + .' },'."\n" + .' "registry.cn-beijing.aliyuncs.com": { // $公网域名'."\n" + .' "username": "username", // $用户名'."\n" + .' "password": "password", // $密码'."\n" + .' "auth": "dXNlcm5hbWU6cGFzc3dvcmQ=" // base64Encode($用户名:$密码)'."\n" + .' }'."\n" + .' }'."\n" + .'} )'."\n" + .'```', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:25.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2023-05-24T05:53:44.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2022-11-22T13:28:09.000Z', 'description' => 'OpenAPI 下线'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateSecret'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => '', + 'ramAction' => [ + 'action' => 'sae:CreateSecret', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], - [ - 'errorCode' => 'InvalidVpcId.NotFound', - 'errorMessage' => 'The specified VpcId does not exist.', + ], + ], + ], + 'CreateWebApplication' => [ + 'summary' => '创建Web应用。', + 'path' => '/pop/v2/api/web/applications', + 'methods' => ['post'], + 'schemes' => ['http', 'https'], + 'tags' => [], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'consumes' => ['application/json'], + 'produces' => ['application/json'], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + 'operationType' => 'create', + 'abilityTreeCode' => '181739', + 'abilityTreeNodes' => ['FEATUREsaeUWY6ZL'], + ], + 'parameters' => [ + [ + 'name' => 'NamespaceId', + 'in' => 'query', + 'allowEmptyValue' => false, + 'schema' => ['title' => '命名空间ID', 'description' => '命名空间ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-beijing:test'], + ], + [ + 'name' => 'body', + 'in' => 'body', + 'allowEmptyValue' => false, + 'schema' => ['title' => '应用信息', 'description' => '应用信息。', 'required' => true, '$ref' => '#/components/schemas/CreateWebApplicationInput'], + ], + ], + 'responses' => [ + 200 => [ + 'description' => '返回信息', + 'schema' => ['title' => '返回信息', 'description' => '返回信息。', 'required' => false, '$ref' => '#/components/schemas/WebApplicationBody'], + 'examples' => [], + ], + ], + 'title' => '创建Web应用', + 'description' => '调用CreateWebApplication接口创建Web应用。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:22.000Z', 'description' => 'OpenAPI 下线'], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'sae:CreateWebApplication', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], - [ - 'errorCode' => 'InvalidAcrInstanceId.NotFound', - 'errorMessage' => 'The specified AcrInstanceId does not exist.', + ], + ], + ], + 'CreateWebCustomDomain' => [ + 'summary' => '创建Web应用自定义域名。', + 'path' => '/pop/v2/api/web/custom-domains', + 'methods' => ['post'], + 'schemes' => ['http', 'https'], + 'tags' => [], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'consumes' => ['application/json'], + 'produces' => ['application/json'], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + 'operationType' => 'create', + 'abilityTreeCode' => '225938', + 'abilityTreeNodes' => ['FEATUREsae5U7VP0'], + ], + 'parameters' => [ + [ + 'name' => 'NamespaceId', + 'in' => 'query', + 'allowEmptyValue' => false, + 'schema' => ['title' => '命名空间ID', 'description' => '命名空间ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], + ], + [ + 'name' => 'body', + 'in' => 'body', + 'allowEmptyValue' => false, + 'schema' => ['title' => '自定义域名信息', 'description' => '自定义域名信息。', 'required' => true, '$ref' => '#/components/schemas/CreateWebCustomDomainInput'], + ], + ], + 'responses' => [ + 200 => [ + 'description' => '返回信息', + 'schema' => ['title' => '返回信息', 'description' => '返回信息。', 'required' => false, '$ref' => '#/components/schemas/WebCustomDomainBody'], + 'examples' => [], + ], + ], + 'title' => '创建自定义域名', + 'description' => '创建Web应用自定义域名。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:20.000Z', 'description' => 'OpenAPI 下线'], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'sae:CreateWebCustomDomain', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => 'Namespace', 'arn' => 'acs:sae:{#regionId}:{#accountId}:namespace/{#NamespaceId}'], + ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"ChangeOrderId\\": \\"01db03d3-3ee9-48b3-b3d0-dfce2d88****\\",\\n \\"AppId\\": \\"017f39b8-dfa4-4e16-a84b-1dcee4b1****\\"\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<CreateApplicationResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <ChangeOrderId>01db03d3-3ee9-48b3-b3d0-dfce2d88****</ChangeOrderId>\\n <AppId>017f39b8-dfa4-4e16-a84b-1dcee4b1****</AppId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</CreateApplicationResponse>","errorExample":""}]', - 'title' => '创建一个SAE应用', - 'summary' => '创建一个应用。', ], 'DeleteApplication' => [ 'path' => '/pop/v1/sam/app/deleteApplication', - 'methods' => [ - 'delete', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'methods' => ['delete'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -13476,20 +5268,13 @@ 'systemTags' => [ 'operationType' => 'delete', 'abilityTreeCode' => '6310', - 'abilityTreeNodes' => [ - 'FEATUREsaeD9PL61', - ], + 'abilityTreeNodes' => ['FEATUREsaeD9PL61'], ], 'parameters' => [ [ 'name' => 'AppId', 'in' => 'query', - 'schema' => [ - 'description' => '要删除的应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '017f39b8-dfa4-4e16-a84b-1dcee4b1****', - ], + 'schema' => ['description' => '要删除的应用ID。', 'type' => 'string', 'required' => true, 'example' => '017f39b8-dfa4-4e16-a84b-1dcee4b1****'], ], ], 'responses' => [ @@ -13498,136 +5283,97 @@ 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], 'Data' => [ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'ChangeOrderId' => [ - 'description' => '返回的发布单ID,用于查询任务执行状态。', - 'type' => 'string', - 'example' => '01db03d3-3ee9-48b3-b3d0-dfce2d88****', - ], + 'ChangeOrderId' => ['description' => '返回的发布单ID,用于查询任务执行状态。', 'type' => 'string', 'example' => '01db03d3-3ee9-48b3-b3d0-dfce2d88****'], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '删除应用是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:获取成功。'."\n" - .'- **false**:获取失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '删除应用是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:获取成功。'."\n" + .'- **false**:获取失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidApplication.NotFound', - 'errorMessage' => 'The current application does not exist.', - ], - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], - [ - 'errorCode' => 'Application.ChangerOrderRunning', - 'errorMessage' => 'An application change process is in progress. Please try again later.', - ], + ['errorCode' => 'InvalidApplication.NotFound', 'errorMessage' => 'The current application does not exist.', 'description' => '找不到当前应用。'], + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], + ['errorCode' => 'Application.ChangerOrderRunning', 'errorMessage' => 'An application change process is in progress. Please try again later.', 'description' => '应用有变更流程正在执行,请稍后重试。'], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"ChangeOrderId\\": \\"01db03d3-3ee9-48b3-b3d0-dfce2d88****\\"\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeleteApplicationResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <ChangeOrderId>01db03d3-3ee9-48b3-b3d0-dfce2d88****</ChangeOrderId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DeleteApplicationResponse>","errorExample":""}]', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"ChangeOrderId\\": \\"01db03d3-3ee9-48b3-b3d0-dfce2d88****\\"\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeleteApplicationResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <ChangeOrderId>01db03d3-3ee9-48b3-b3d0-dfce2d88****</ChangeOrderId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DeleteApplicationResponse>","errorExample":""}]', 'title' => '删除应用', 'summary' => '调用DeleteApplication接口删除应用。', - ], - 'DeleteInstances' => [ - 'summary' => '删除应用实例。', - 'path' => '/pop/v1/sam/app/deleteInstances', - 'methods' => [ - 'put', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:24.000Z', 'description' => 'OpenAPI 下线'], ], - 'schemes' => [ - 'http', - 'https', + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '20', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteApplication'], + ], ], + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'sae:DeleteApplication', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], + ], + ], + 'DeleteApplicationScalingRule' => [ + 'path' => '/pop/v1/sam/scale/applicationScalingRule', + 'methods' => ['delete'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ - 'abilityTreeCode' => '9211', - 'abilityTreeNodes' => [ - 'FEATUREsaeD9PL61', - ], + 'operationType' => 'delete', + 'abilityTreeCode' => '6311', + 'abilityTreeNodes' => ['FEATUREsae5HLO11'], ], 'parameters' => [ [ 'name' => 'AppId', 'in' => 'query', - 'schema' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '017f39b8-dfa4-4e16-a84b-1dcee4b1****', - ], + 'schema' => ['description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****'], ], [ - 'name' => 'InstanceIds', + 'name' => 'ScalingRuleName', 'in' => 'query', - 'schema' => [ - 'description' => '需要删除的实例ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'demo-aaed579c-1f8a-431e-8705-97d18e91c7b4******', - ], + 'schema' => ['description' => '弹性伸缩策略名称。', 'type' => 'string', 'required' => true, 'example' => 'timer-0800-2100'], ], ], 'responses' => [ @@ -13636,126 +5382,65 @@ 'description' => '返回信息。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求 ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '调用结果的附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回success。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。'."\n" - ."\n", - 'type' => 'string', - 'example' => '0a981dd515966966104121683d****', - ], - 'Data' => [ - 'description' => '返回结果。', - 'type' => 'object', - 'properties' => [ - 'ChangeOrderId' => [ - 'description' => '发布单ID。', - 'type' => 'string', - 'example' => '01db03d3-3ee9-48b3-b3d0-dfce2d88****', - ], - ], - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '删除实例是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:表示删除成功。'."\n" - .'- **false**:表示删除失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '删除应用弹性伸缩策略是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:删除成功。'."\n" + .'- **false**:删除失败。'."\n", 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidApplication.NotFound', - 'errorMessage' => 'The current application does not exist.', - ], - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], - [ - 'errorCode' => 'NoComputeResourceQuota.Exceed', - 'errorMessage' => 'Your compute resource is insufficient. Please submit a ticket to raise the quota.', - ], - [ - 'errorCode' => 'NoComputeResourceQuota.App.Exceed', - 'errorMessage' => 'You can create %s instances for each application. Please submit a ticket to raise the quota.', - ], - [ - 'errorCode' => 'NoComputeResourceQuota.User.Exceed', - 'errorMessage' => 'Your account is limited to create %s instances. Please submit a ticket to raise the quota.', - ], - [ - 'errorCode' => 'System.Upgrading', - 'errorMessage' => 'The system is being upgraded. Please try again later.', - ], - [ - 'errorCode' => 'Application.ChangerOrderRunning', - 'errorMessage' => 'An application change process is in progress. Please try again later.', - ], - [ - 'errorCode' => 'Application.InvalidStatus', - 'errorMessage' => 'The application status is abnormal. Please try again later.', - ], - [ - 'errorCode' => 'Application.NotDeployYet', - 'errorMessage' => 'The application has not been deployed. Please deploy it and try again.', - ], + ['errorCode' => 'System.Upgrading', 'errorMessage' => 'The system is being upgraded. Please try again later.', 'description' => '系统正在升级,请稍后操作。'], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a981dd515966966104121683d****\\",\\n \\"Data\\": {\\n \\"ChangeOrderId\\": \\"01db03d3-3ee9-48b3-b3d0-dfce2d88****\\"\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => '删除实例', - ], - 'StopApplication' => [ - 'path' => '/pop/v1/sam/app/stopApplication', - 'methods' => [ - 'put', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Message\\": \\"success\\",\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeleteApplicationScalingRuleResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Message>success</Message>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DeleteApplicationScalingRuleResponse>","errorExample":""}]', + 'title' => 'DeleteApplicationScalingRule', + 'summary' => '调用CreateApplicationScalingRule接口删除应用弹性伸缩策略。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:24.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2022-12-19T02:15:04.000Z', 'description' => '响应参数发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteApplicationScalingRule'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'sae:DeleteApplicationScalingRule', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + ], + 'DeleteConfigMap' => [ + 'path' => '/pop/v1/sam/configmap/configMap', + 'methods' => ['delete'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -13764,22 +5449,15 @@ 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '6391', - 'abilityTreeNodes' => [ - 'FEATUREsaeD9PL61', - ], + 'operationType' => 'delete', + 'abilityTreeCode' => '6312', + 'abilityTreeNodes' => ['FEATUREsaeD9PL61'], ], 'parameters' => [ [ - 'name' => 'AppId', + 'name' => 'ConfigMapId', 'in' => 'query', - 'schema' => [ - 'description' => '目标应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****', - ], + 'schema' => ['description' => '需要删除的ConfigMap实例ID。需要调用[ListNamespacedConfigMaps](~~176917~~)接口查看。', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1'], ], ], 'responses' => [ @@ -13788,138 +5466,100 @@ 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0bc3b6e215637275918588187d****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], 'Data' => [ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'ChangeOrderId' => [ - 'description' => '发布单ID。', - 'type' => 'string', - 'example' => '4a815998-b468-4bea-b7d8-59f52a44****', - ], + 'ConfigMapId' => ['description' => '被删除的ConfigMap实例ID。', 'type' => 'integer', 'format' => 'int64', 'example' => '1'], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '停止应用是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:停止成功。'."\n" - .'- **false**:停止失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '删除ConfigMap实例是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:删除实例成功。'."\n" + .'- **false**:删除实例失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidApplication.NotFound', - 'errorMessage' => 'The current application does not exist.', - ], - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], - [ - 'errorCode' => 'System.Upgrading', - 'errorMessage' => 'The system is being upgraded. Please try again later.', - ], - [ - 'errorCode' => 'Application.ChangerOrderRunning', - 'errorMessage' => 'An application change process is in progress. Please try again later.', - ], - [ - 'errorCode' => 'Application.InvalidStatus', - 'errorMessage' => 'The application status is abnormal. Please try again later.', - ], - [ - 'errorCode' => 'Application.NotDeployYet', - 'errorMessage' => 'The application has not been deployed. Please deploy it and try again.', - ], + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], + ['errorCode' => 'MountConflict.ConfigMap', 'errorMessage' => 'Conflict detected for ConfigMap path %s.', 'description' => 'ConfigMap挂载路径%s存在冲突。'], + ['errorCode' => 'NotFound.ConfigMap', 'errorMessage' => 'The ConfigMap object (ID: %s) does not exist.', 'description' => '找不到ConfigMap对象(ID=%s)。'], + ['errorCode' => 'NotFound.ConfigMapKey', 'errorMessage' => 'The key %s of ConfigMap object (ID: %s) does not exist.', 'description' => '找不到ConfigMap对象(ID=%s)的Key %s。'], + ['errorCode' => 'DeleteFail.ConfigMapReferenced', 'errorMessage' => 'Failed to delete the ConfigMap. It has been used by other applications.', 'description' => '删除ConfigMap失败,ConfigMap已被其他应用使用。'], + ], + 404 => [ + ['errorCode' => 'InvalidNamespaceId.NotFound', 'errorMessage' => 'The specified NamespaceId does not exist.', 'description' => '指定的NamespaceId不存在。'], + ], + 500 => [ + ['errorCode' => 'OperationFailed.RPCError', 'errorMessage' => 'Internal RPC request processing error.', 'description' => '内部RPC请求处理报错。'], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0bc3b6e215637275918588187d****\\",\\n \\"Data\\": {\\n \\"ChangeOrderId\\": \\"4a815998-b468-4bea-b7d8-59f52a44****\\"\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<StopApplicationResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0bc3b6e215637275918588187d****</TraceId>\\n <Data>\\n <ChangeOrderId>4a815998-b468-4bea-b7d8-59f52a44****</ChangeOrderId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</StopApplicationResponse>","errorExample":""}]', - 'title' => '停止应用', - 'summary' => '停止应用。', - ], - 'StartApplication' => [ - 'path' => '/pop/v1/sam/app/startApplication', - 'methods' => [ - 'put', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"ConfigMapId\\": 1\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeleteConfigMapResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <ConfigMapId>1</ConfigMapId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DeleteConfigMapResponse>","errorExample":""}]', + 'title' => '删除ConfigMap实例', + 'summary' => '调用DeleteConfigMap接口删除ConfigMap实例。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:24.000Z', 'description' => 'OpenAPI 下线'], ], - 'schemes' => [ - 'http', - 'https', + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteConfigMap'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'sae:DeleteConfigMap', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + ], + 'DeleteGreyTagRoute' => [ + 'summary' => '根据规则ID删除灰度规则。', + 'path' => '/pop/v1/sam/tagroute/greyTagRoute', + 'methods' => ['delete'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '6390', - 'abilityTreeNodes' => [ - 'FEATUREsaeRVPNSA', - ], + 'operationType' => 'delete', + 'abilityTreeCode' => '10484', + 'abilityTreeNodes' => ['FEATUREsaeETR3ZD'], ], 'parameters' => [ [ - 'name' => 'AppId', + 'name' => 'GreyTagRouteId', 'in' => 'query', - 'schema' => [ - 'description' => '目标应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****', - ], + 'schema' => ['title' => '规则ID', 'description' => '规则ID。', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1'], ], ], 'responses' => [ @@ -13928,135 +5568,73 @@ 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '7BD8F4C7-D84C-4D46-9885-8212997E****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0bc3b6e215637275918588187d****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '9D29CBD0-45D3-410B-9826-52F86F90****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], 'Data' => [ - 'description' => '返回结果。', + 'description' => '灰度规则信息。', 'type' => 'object', 'properties' => [ - 'ChangeOrderId' => [ - 'description' => '发布单ID。', - 'type' => 'string', - 'example' => '4a815998-b468-4bea-b7d8-59f52a44****', - ], + 'GreyTagRouteId' => ['description' => '灰度规则ID,全局唯一。', 'type' => 'integer', 'format' => 'int64', 'example' => '16'], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '启动应用是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:启动成功。'."\n" - .'- **false**:启动失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '查询变更单信息是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:表示查询成功。'."\n" + .'- **false**:表示查询失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidApplication.NotFound', - 'errorMessage' => 'The current application does not exist.', - ], - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], - [ - 'errorCode' => 'NoComputeResourceQuota.Exceed', - 'errorMessage' => 'Your compute resource is insufficient. Please contact us to raise the quota.', - ], - [ - 'errorCode' => 'vswitch.not.exist', - 'errorMessage' => 'The specified vSwitch does not exist.', - ], - [ - 'errorCode' => 'user.indebt', - 'errorMessage' => 'The user has an outstanding payment.', - ], - [ - 'errorCode' => 'NoComputeResourceQuota.App.Exceed', - 'errorMessage' => 'You can create %s instances for each application. Please submit a ticket to raise the quota.', - ], - [ - 'errorCode' => 'NoComputeResourceQuota.User.Exceed', - 'errorMessage' => 'Your account is limited to create %s instances. Please submit a ticket to raise the quota.', - ], - [ - 'errorCode' => 'System.Upgrading', - 'errorMessage' => 'The system is being upgraded. Please try again later.', - ], - [ - 'errorCode' => 'Application.ChangerOrderRunning', - 'errorMessage' => 'An application change process is in progress. Please try again later.', - ], - [ - 'errorCode' => 'Application.InvalidStatus', - 'errorMessage' => 'The application status is abnormal. Please try again later.', - ], - [ - 'errorCode' => 'Application.NotDeployYet', - 'errorMessage' => 'The application has not been deployed. Please deploy it and try again.', - ], + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"7BD8F4C7-D84C-4D46-9885-8212997E****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0bc3b6e215637275918588187d****\\",\\n \\"Data\\": {\\n \\"ChangeOrderId\\": \\"4a815998-b468-4bea-b7d8-59f52a44****\\"\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<StartApplicationResponse>\\n <RequestId>7BD8F4C7-D84C-4D46-9885-8212997E****</RequestId>\\n <Message>success</Message>\\n <TraceId>0bc3b6e215637275918588187d****</TraceId>\\n <Data>\\n <ChangeOrderId>4a815998-b468-4bea-b7d8-59f52a44****</ChangeOrderId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</StartApplicationResponse>","errorExample":""}]', - 'title' => '启动应用', - 'summary' => '调用StartApplication接口启动应用。', - ], - 'ReduceApplicationCapacityByInstanceIds' => [ - 'summary' => '根据实例ID缩容。', - 'path' => '/pop/v1/sam/app/ScaleInApplicationWithInstanceIds', - 'methods' => [ - 'put', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"9D29CBD0-45D3-410B-9826-52F86F90****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"GreyTagRouteId\\": 16\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeleteGreyTagRouteResponse>\\n <RequestId>9D29CBD0-45D3-410B-9826-52F86F90****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <GreyTagRouteId>16</GreyTagRouteId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DeleteGreyTagRouteResponse>","errorExample":""}]', + 'title' => 'DeleteGreyTagRoute', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:24.000Z', 'description' => 'OpenAPI 下线'], ], - 'schemes' => [ - 'http', - 'https', + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteGreyTagRoute'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'sae:DeleteGreyTagRoute', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + ], + 'DeleteHistoryJob' => [ + 'summary' => '删除任务。', + 'path' => '/pop/v1/sam/job/deleteHistoryJob', + 'methods' => ['delete'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -14065,31 +5643,19 @@ 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'abilityTreeCode' => '22522', - 'abilityTreeNodes' => [ - 'FEATUREsae5HLO11', - ], + 'abilityTreeCode' => '104054', + 'abilityTreeNodes' => ['FEATUREsaeD9PL61'], ], 'parameters' => [ [ 'name' => 'AppId', 'in' => 'query', - 'schema' => [ - 'description' => '目标应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****', - ], + 'schema' => ['description' => '要删除的任务模板ID。', 'type' => 'string', 'required' => true, 'example' => '017f39b8-dfa4-4e16-a84b-1dcee4b1****'], ], [ - 'name' => 'InstanceIds', + 'name' => 'JobId', 'in' => 'query', - 'schema' => [ - 'description' => '实例ID。可填写多个实例ID,用英文逗号(,)分隔。', - 'type' => 'string', - 'required' => true, - 'example' => 'b2a8a925-477a-4ed7-b825-d5e22500****', - ], + 'schema' => ['description' => '任务ID。', 'type' => 'string', 'required' => true, 'example' => 'manual-3db7a8fa-5d40-4edc-92e4-49d50eab****'], ], ], 'responses' => [ @@ -14098,372 +5664,259 @@ 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A8E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], - 'Data' => [ - 'description' => '变更单信息。', - 'type' => 'object', - 'properties' => [ - 'ChangeOrderId' => [ - 'description' => '变更单ID。', - 'type' => 'string', - 'example' => '76fa5c0-9ebb-4bb4-b383-1f885447****', - ], - ], - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码,取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '查询变更单信息是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:查询成功。'."\n" - .'- **false**:查询失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], + 'Data' => ['description' => '返回结果。', 'type' => 'string', 'example' => '{"msg": "","code": 200,"success": true}'], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '删除任务是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:删除成功。'."\n" + .'- **false**:删除失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'InvalidApplication.NotFound', - 'errorMessage' => 'The current application does not exist.', - ], - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], - [ - 'errorCode' => 'NoComputeResourceQuota.Exceed', - 'errorMessage' => 'Your compute resource is insufficient. Please contact us to raise the quota.', - ], - [ - 'errorCode' => 'NoComputeResourceQuota.App.Exceed', - 'errorMessage' => 'You can create %s instances for each application. Please submit a ticket to raise the quota.', - ], - [ - 'errorCode' => 'NoComputeResourceQuota.User.Exceed', - 'errorMessage' => 'Your account is limited to create %s instances. Please submit a ticket to raise the quota.', - ], - [ - 'errorCode' => 'System.Upgrading', - 'errorMessage' => 'The system is being upgraded. Please try again later.', - ], - [ - 'errorCode' => 'Application.ChangerOrderRunning', - 'errorMessage' => 'An application change process is in progress. Please try again later.', - ], - [ - 'errorCode' => 'Application.InvalidStatus', - 'errorMessage' => 'The application status is abnormal. Please try again later.', - ], - [ - 'errorCode' => 'Application.NotDeployYet', - 'errorMessage' => 'The application has not been deployed. Please deploy it and try again.', - ], - [ - 'errorCode' => 'unsupported.workload', - 'errorMessage' => 'The specified instances to scale in application does not support the workload', - ], + 404 => [ + ['errorCode' => 'InvalidAppId.NotFound', 'errorMessage' => 'The specified AppId does not exist.', 'description' => '指定的AppId不存在。'], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A8E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"ChangeOrderId\\": \\"76fa5c0-9ebb-4bb4-b383-1f885447****\\"\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<ReduceApplicationCapacityByInstanceIdsResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A8E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <ChangeOrderId>76fa5c0-9ebb-4bb4-b383-1f885447****</ChangeOrderId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</ReduceApplicationCapacityByInstanceIdsResponse>","errorExample":""}]', - 'title' => '应用缩容', - ], - 'UpdateApplicationDescription' => [ - 'summary' => '更新应用描述。', - 'path' => '/pop/v1/sam/app/updateAppDescription', - 'methods' => [ - 'put', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": \\"{\\\\\\"msg\\\\\\": \\\\\\"\\\\\\",\\\\\\"code\\\\\\": 200,\\\\\\"success\\\\\\": true}\\",\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeleteHistoryJobResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>{msg: \\"\\", code: 200, success: true}</Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DeleteHistoryJobResponse>","errorExample":""}]', + 'title' => 'DeleteHistoryJob', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:29.000Z', 'description' => 'OpenAPI 下线'], ], - 'schemes' => [ - 'http', - 'https', + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '20', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteHistoryJob'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => '', + 'ramAction' => [ + 'action' => 'sae:DeleteHistoryJob', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + ], + 'DeleteIngress' => [ + 'path' => '/pop/v1/sam/ingress/Ingress', + 'methods' => ['delete'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'abilityTreeCode' => '10540', - 'abilityTreeNodes' => [ - 'FEATUREsaeD9PL61', - ], + 'operationType' => 'delete', + 'abilityTreeCode' => '6313', + 'abilityTreeNodes' => ['FEATUREsaeD9PL61'], ], 'parameters' => [ [ - 'name' => 'AppId', - 'in' => 'query', - 'schema' => [ - 'description' => '需要更新的应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****', - ], - ], - [ - 'name' => 'AppDescription', + 'name' => 'IngressId', 'in' => 'query', - 'schema' => [ - 'description' => '更新的应用描述信息。不超过1024个字符。', - 'type' => 'string', - 'required' => true, - 'example' => 'newdesc', - ], + 'schema' => ['description' => '需要删除的路由规则ID。通过调用[ListIngresses](~~153934~~)接口获取。', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '87'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'description' => '响应信息。', + 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '01CF26C7-00A3-4AA6-BA76-7E95F2A3***', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => 'ac1a0b2215622246421415014e****', - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '部署应用是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:部署成功。'."\n" - .'- **false**:部署失败。', - 'type' => 'boolean', - 'example' => 'true', + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '调用结果的附加信息。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], + 'Data' => [ + 'description' => '返回结果。', + 'type' => 'object', + 'properties' => [ + 'IngressId' => ['description' => '删除的路由规则ID。', 'type' => 'integer', 'format' => 'int64', 'example' => '87'], + ], ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '删除Ingress实例是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:删除成功。'."\n" + .'- **false**:删除失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidApplication.NotFound', - 'errorMessage' => 'The current application does not exist.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], ], - 404 => [ - [ - 'errorCode' => 'InvalidAppId.NotFound', - 'errorMessage' => 'The specified AppId does not exist.', - ], + 500 => [ + ['errorCode' => 'OperationFailed.RPCError', 'errorMessage' => 'Internal RPC request processing error.', 'description' => '内部RPC请求处理报错。'], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"01CF26C7-00A3-4AA6-BA76-7E95F2A3***\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"ac1a0b2215622246421415014e****\\",\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<UpdateApplicationDescriptionResponse>\\n <RequestId>01CF26C7-00A3-4AA6-BA76-7E95F2A3***</RequestId>\\n <Message>success</Message>\\n <TraceId>ac1a0b2215622246421415014e****</TraceId>\\n <Code>200</Code>\\n <Success>true</Success>\\n</UpdateApplicationDescriptionResponse>","errorExample":""}]', - 'title' => '更新应用描述', - ], - 'UpdateAppSecurityGroup' => [ - 'path' => '/pop/v1/sam/app/updateAppSecurityGroup', - 'methods' => [ - 'put', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"IngressId\\": 87\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeleteIngressResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <IngressId>87</IngressId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DeleteIngressResponse>","errorExample":""}]', + 'title' => '删除 ingress 实例', + 'summary' => '删除ingress实例。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:24.000Z', 'description' => 'OpenAPI 下线'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteIngress'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'sae:DeleteIngress', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + ], + 'DeleteInstances' => [ + 'summary' => '删除应用实例。', + 'path' => '/pop/v1/sam/app/deleteInstances', + 'methods' => ['put'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '6399', - 'abilityTreeNodes' => [ - 'FEATUREsaeD9PL61', - ], + 'abilityTreeCode' => '9211', + 'abilityTreeNodes' => ['FEATUREsaeD9PL61'], ], 'parameters' => [ [ 'name' => 'AppId', 'in' => 'query', - 'schema' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '017f39b8-dfa4-4e16-a84b-1dcee4b1****', - ], + 'schema' => ['description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => '017f39b8-dfa4-4e16-a84b-1dcee4b1****'], ], [ - 'name' => 'SecurityGroupId', + 'name' => 'InstanceIds', 'in' => 'query', - 'schema' => [ - 'description' => '安全组ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'sg-wz969ngg2e49q5i4****', - ], + 'schema' => ['description' => '需要删除的实例ID。', 'type' => 'string', 'required' => true, 'example' => 'demo-aaed579c-1f8a-431e-8705-97d18e91c7b4******'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'description' => '返回数据。', + 'description' => '返回信息。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '更新应用安全组是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:更新成功。'."\n" - .'- **false**:更新失败。', - 'type' => 'boolean', - 'example' => 'true', + 'RequestId' => ['description' => '请求 ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '调用结果的附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回success。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。'."\n" + ."\n", 'type' => 'string', 'example' => '0a981dd515966966104121683d****'], + 'Data' => [ + 'description' => '返回结果。', + 'type' => 'object', + 'properties' => [ + 'ChangeOrderId' => ['description' => '发布单ID。', 'type' => 'string', 'example' => '01db03d3-3ee9-48b3-b3d0-dfce2d88****'], + ], ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '删除实例是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:表示删除成功。'."\n" + .'- **false**:表示删除失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidApplication.NotFound', - 'errorMessage' => 'The current application does not exist.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', + ['errorCode' => 'InvalidApplication.NotFound', 'errorMessage' => 'The current application does not exist.', 'description' => '找不到当前应用。'], + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], + ['errorCode' => 'NoComputeResourceQuota.Exceed', 'errorMessage' => 'Your compute resource is insufficient. Please submit a ticket to raise the quota.', 'description' => ''], + ['errorCode' => 'NoComputeResourceQuota.App.Exceed', 'errorMessage' => 'You can create %s instances for each application. Please submit a ticket to raise the quota.', 'description' => '每个应用只允许创建%s个实例,请加入钉群32874633联系技术产品专家进行咨询。'], + ['errorCode' => 'NoComputeResourceQuota.User.Exceed', 'errorMessage' => 'Your account is limited to create %s instances. Please submit a ticket to raise the quota.', 'description' => '您的账户限额%s个实例,请加入钉群32874633联系技术产品专家进行咨询。'], + ['errorCode' => 'System.Upgrading', 'errorMessage' => 'The system is being upgraded. Please try again later.', 'description' => '系统正在升级,请稍后操作。'], + ['errorCode' => 'Application.ChangerOrderRunning', 'errorMessage' => 'An application change process is in progress. Please try again later.', 'description' => '应用有变更流程正在执行,请稍后重试。'], + ['errorCode' => 'Application.InvalidStatus', 'errorMessage' => 'The application status is abnormal. Please try again later.', 'description' => '应用状态异常,请稍后重试。'], + ['errorCode' => 'Application.NotDeployYet', 'errorMessage' => 'The application has not been deployed. Please deploy it and try again.', 'description' => '应用没有部署,请部署后重试。'], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a981dd515966966104121683d****\\",\\n \\"Data\\": {\\n \\"ChangeOrderId\\": \\"01db03d3-3ee9-48b3-b3d0-dfce2d88****\\"\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => '删除实例', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:24.000Z', 'description' => 'OpenAPI 下线'], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => '', + 'ramAction' => [ + 'action' => 'sae:DeleteInstances', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<UpdateAppSecurityGroupResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Code>200</Code>\\n <Success>true</Success>\\n</UpdateAppSecurityGroupResponse>","errorExample":""}]', - 'title' => '更新应用安全组', - 'summary' => '调用UpdateAppSecurityGroup接口更新应用安全组。', ], - 'DescribeApplicationStatus' => [ - 'path' => '/pop/v1/sam/app/describeApplicationStatus', - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'DeleteJob' => [ + 'path' => '/pop/v1/sam/job/deleteJob', + 'methods' => ['delete'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -14472,22 +5925,14 @@ 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '6324', - 'abilityTreeNodes' => [ - 'FEATUREsaeD9PL61', - ], + 'abilityTreeCode' => '100737', + 'abilityTreeNodes' => ['FEATUREsaeD9PL61'], ], 'parameters' => [ [ 'name' => 'AppId', 'in' => 'query', - 'schema' => [ - 'description' => '目标应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****', - ], + 'schema' => ['description' => '要删除的任务模板ID。', 'type' => 'string', 'required' => true, 'example' => '017f39b8-dfa4-4e16-a84b-1dcee4b1****'], ], ], 'responses' => [ @@ -14496,304 +5941,182 @@ 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], - 'Data' => [ - 'description' => '返回结果。', - 'type' => 'object', - 'properties' => [ - 'ArmsAdvancedEnabled' => [ - 'description' => '是否开通ARMS高级版。取值说明如下:'."\n" - ."\n" - .'- **true**:开通ARMS高级版。'."\n" - .'- **false**:不开通ARMS高级版。', - 'type' => 'string', - 'example' => 'false', - ], - 'LastChangeOrderId' => [ - 'description' => '最近一次执行的发布单ID,未执行过或发布单信息过期则为空。', - 'type' => 'string', - 'example' => '1ccc2339-fc19-49aa-bda0-1e7b8497****', - ], - 'ArmsApmInfo' => [ - 'description' => '该应用在ARMS侧元数据信息。', - 'type' => 'string', - 'example' => '{"appId":"0099b7be-5f5b-4512-a7fc-56049ef1****","licenseKey":"d5cgdt5pu0@7303f55292a****"}', - ], - 'CreateTime' => [ - 'description' => '应用创建时间。', - 'type' => 'string', - 'example' => '1563373372746', - ], - 'CurrentStatus' => [ - 'description' => '应用当前状态。取值说明如下:'."\n" - ."\n" - .'- **RUNNING**:应用正在运行。'."\n" - .'- **STOPPED**:应用停止运行。'."\n" - .'- **UNKNOWN**:应用状态未知。', - 'type' => 'string', - 'example' => 'RUNNING', - ], - 'AppId' => [ - 'description' => '当前应用ID。', - 'type' => 'string', - 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****', - ], - 'LastChangeOrderRunning' => [ - 'description' => '最近一次发布单是否处于执行中。取值说明如下:'."\n" - ."\n" - .'- **true**:最近一次发布单处于执行中。'."\n" - .'- **false**:最近一次发布单不处于执行中。', - 'type' => 'boolean', - 'example' => 'false', - ], - 'RunningInstances' => [ - 'description' => '当前应用运行中的实例数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'LastChangeOrderStatus' => [ - 'description' => '最近一次发布单状态。取值说明如下:'."\n" - ."\n" - .'- **READY**:最近一次发布单准备就绪。'."\n" - .'- **RUNNING**:最近一次发布单处于执行中。'."\n" - .'- **SUCCESS**:最近一次发布单发布成功。'."\n" - .'- **FAIL**:最近一次发布单发布失败。'."\n" - .'- **ABORT**:最近一次发布单中止运行。'."\n" - .'- **WAIT\\_BATCH\\_CONFIRM**:最近一次发布单等待手工批量确认。'."\n" - .'- **AUTO\\_BATCH\\_WAIT**:最近一次发布单处于自动批量等待状态。'."\n" - .'- **SYSTEM\\_FAIL**:系统故障。'."\n" - .'- **WAIT\\_APPROVAL**:最近一次发布单等待审批。'."\n" - .'- **APPROVED**:最近一次发布单处于审批通过的待执行状态。', - 'type' => 'string', - 'example' => 'SUCCESS', - ], - 'SubStatus' => [ - 'description' => '发布单子状态,用于判断发布单是否在发布过程中存在异常。取值说明如下:'."\n" - ."\n" - .'- **NORMAL**:发布正常。'."\n" - .'- **RUNNING\\_BUT\\_HAS\\_ERROR**:发布异常。例如分批发布时出错,需要您手动回滚,此时发布单虽然出错,但因不能完结而依然处于执行中。', - 'type' => 'string', - 'example' => 'NORMAL', - ], - 'EnableAgent' => [ - 'description' => '是否启用SAE Agent。'."\n" - ."\n" - .'- **true**:启用。'."\n" - .'- **false**:不启用。', - 'type' => 'boolean', - 'example' => 'false', - ], - 'FileSizeLimit' => [ - 'description' => '文件大小限制。取值范围\\[0,10240\\],单位为KB。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '10240', - ], - ], - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '获取应用状态信息是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:获取成功。'."\n" - .'- **false**:获取失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], + 'Data' => ['description' => '返回结果。', 'type' => 'string', 'example' => '{"msg": "","code": 200,"success": true}'], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '删除任务模板是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:删除成功。'."\n" + .'- **false**:删除失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'InvalidApplication.NotFound', - 'errorMessage' => 'The current application does not exist.', - ], - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - ], 404 => [ - [ - 'errorCode' => 'InvalidAppId.NotFound', - 'errorMessage' => 'The specified AppId does not exist.', - ], + ['errorCode' => 'InvalidAppId.NotFound', 'errorMessage' => 'The specified AppId does not exist.', 'description' => '指定的AppId不存在。'], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"ArmsAdvancedEnabled\\": \\"false\\",\\n \\"LastChangeOrderId\\": \\"1ccc2339-fc19-49aa-bda0-1e7b8497****\\",\\n \\"ArmsApmInfo\\": \\"{\\\\\\"appId\\\\\\":\\\\\\"0099b7be-5f5b-4512-a7fc-56049ef1****\\\\\\",\\\\\\"licenseKey\\\\\\":\\\\\\"d5cgdt5pu0@7303f55292a****\\\\\\"}\\",\\n \\"CreateTime\\": \\"1563373372746\\",\\n \\"CurrentStatus\\": \\"RUNNING\\",\\n \\"AppId\\": \\"0099b7be-5f5b-4512-a7fc-56049ef1****\\",\\n \\"LastChangeOrderRunning\\": false,\\n \\"RunningInstances\\": 1,\\n \\"LastChangeOrderStatus\\": \\"SUCCESS\\",\\n \\"SubStatus\\": \\"NORMAL\\",\\n \\"EnableAgent\\": false,\\n \\"FileSizeLimit\\": 10240\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeApplicationStatusResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <ArmsAdvancedEnabled>false</ArmsAdvancedEnabled>\\n <LastChangeOrderId>1ccc2339-fc19-49aa-bda0-1e7b8497****</LastChangeOrderId>\\n <ArmsApmInfo>{\\"appId\\":\\"0099b7be-5f5b-4512-a7fc-56049ef1****\\",\\"licenseKey\\":\\"d5cgdt5pu0@7303f55292a****\\"}</ArmsApmInfo>\\n <CreateTime>1563373372746</CreateTime>\\n <CurrentStatus>RUNNING</CurrentStatus>\\n <AppId>0099b7be-5f5b-4512-a7fc-56049ef1****</AppId>\\n <LastChangeOrderRunning>false</LastChangeOrderRunning>\\n <RunningInstances>1</RunningInstances>\\n <LastChangeOrderStatus>SUCCESS</LastChangeOrderStatus>\\n <SubStatus>NORMAL</SubStatus>\\n <EnableAgent>false</EnableAgent>\\n <FileSizeLimit>10240</FileSizeLimit>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeApplicationStatusResponse>","errorExample":""}]', - 'title' => '获取应用的状态信息', - 'summary' => '调用DescribeApplicationStatus接口获取应用的状态信息。', - ], - 'ListChangeOrders' => [ - 'path' => '/pop/v1/sam/changeorder/ListChangeOrders', - 'methods' => [ - 'get', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": \\"{\\\\\\"msg\\\\\\": \\\\\\"\\\\\\",\\\\\\"code\\\\\\": 200,\\\\\\"success\\\\\\": true}\\",\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeleteJobResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>{msg: \\"\\", code: 200, success: true}</Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DeleteJobResponse>","errorExample":""}]', + 'title' => 'DeleteJob', + 'summary' => '删除任务模板。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:29.000Z', 'description' => 'OpenAPI 下线'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '40', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteJob'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => '', + 'ramAction' => [ + 'action' => 'sae:DeleteJob', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + ], + 'DeleteNamespace' => [ + 'path' => '/pop/v1/paas/namespace', + 'methods' => ['delete'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '6372', - 'abilityTreeNodes' => [ - 'FEATUREsaeRVPNSA', - ], + 'operationType' => 'delete', + 'abilityTreeCode' => '6314', + 'abilityTreeNodes' => ['FEATUREsaeD9PL61'], ], 'parameters' => [ [ - 'name' => 'AppId', + 'name' => 'NamespaceId', 'in' => 'query', - 'schema' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '145341c-9708-4967-b3ec-24933767****', - ], + 'schema' => ['description' => '长版命名空间ID。如果设置了该参数会继续生效而忽略NameSpaceShortId,该参数是为了兼容保留,推荐使用短版命名空间ID,简化参数。', 'type' => 'string', 'required' => false, 'example' => 'cn-beijing:test'], ], [ - 'name' => 'CurrentPage', + 'name' => 'NameSpaceShortId', 'in' => 'query', - 'schema' => [ - 'description' => '当前分页。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], + 'schema' => ['description' => '短版命名空间ID,不需要带上Region。推荐使用该参数。', 'type' => 'string', 'required' => false, 'example' => 'test'], ], - [ - 'name' => 'PageSize', - 'in' => 'query', + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '分页大小。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '20', + 'description' => '返回数据。', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '调用结果的附加信息。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a981dd515966966104121683d****'], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '删除命名空间是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:表示删除成功。'."\n" + .'- **false**:表示删除失败。', 'type' => 'boolean', 'example' => 'true'], + ], ], ], - [ - 'name' => 'Key', - 'in' => 'query', - 'schema' => [ - 'description' => '发布单描述信息模糊查询(包含这此**key**的都会返回)。', - 'type' => 'string', - 'required' => false, - 'example' => 'test', - ], + ], + 'errorCodes' => [ + 400 => [ + ['errorCode' => 'InvalidOperation.NamespaceClusterNotDeleted', 'errorMessage' => 'The specified NamespaceId contains clusters.', 'description' => '指定的NamespaceId下还有集群。'], + ['errorCode' => 'Namespace.AppExists', 'errorMessage' => 'Please delete the application first.', 'description' => '请先删除应用。'], + ['errorCode' => 'System.Upgrading', 'errorMessage' => 'The system is being upgraded. Please try again later.', 'description' => '系统正在升级,请稍后操作。'], ], + 404 => [ + ['errorCode' => 'InvalidNamespaceId.NotFound', 'errorMessage' => 'The specified NamespaceId does not exist.', 'description' => '指定的NamespaceId不存在。'], + ], + 500 => [ + ['errorCode' => 'OperationFailed.DauthHttpRequest', 'errorMessage' => 'request dauth failed.', 'description' => '请求认证系统失败。'], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a981dd515966966104121683d****\\",\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeleteNamespaceResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a981dd515966966104121683d****</TraceId>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DeleteNamespaceResponse>","errorExample":""}]', + 'title' => '删除命名空间', + 'summary' => '删除命名空间。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:24.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2023-01-04T08:04:03.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2022-12-29T03:14:26.000Z', 'description' => '请求参数发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteNamespace'], + ], + ], + 'ramActions' => [ [ - 'name' => 'CoType', - 'in' => 'query', - 'schema' => [ - 'description' => '变更单类型。取值说明如下:'."\n" - ."\n" - .'- **CoBindSlb**:绑定SLB。'."\n" - .'- **CoUnbindSlb**:解绑SLB。'."\n" - .'- **CoCreateApp**:创建应用。'."\n" - .'- **CoDeleteApp**:删除应用。'."\n" - .'- **CoDeploy**:部署应用。'."\n" - .'- **CoRestartApplication**:重启应用。'."\n" - .'- **CoRollback**:回滚应用。'."\n" - .'- **CoScaleIn**:应用缩容。'."\n" - .'- **CoScaleOut**:应用扩容。'."\n" - .'- **CoStartApplication**:启动应用。'."\n" - .'- **CoStopApplication**:停止应用。'."\n" - .'- **CoRescaleApplicationVertically**:修改实例规格。'."\n" - .'- **CoDeployHistroy**:回退历史版本。'."\n" - .'- **CoBindNas**:绑定NAS。'."\n" - .'- **CoUnbindNas**:解绑NAS。'."\n" - .'- **CoBatchStartApplication**:批量启动应用。'."\n" - .'- **CoBatchStopApplication**:批量停止应用。'."\n" - .'- **CoRestartInstances**:重启实例。'."\n" - .'- **CoDeleteInstances**:删除实例。'."\n" - .'- **CoScaleInAppWithInstances**:指定实例缩容。', - 'type' => 'string', - 'required' => false, - 'example' => 'CoCreateApp', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'sae:DeleteNamespace', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], + ], + ], + 'DeleteSecret' => [ + 'summary' => '调用DeleteSecret接口删除Secret实例。', + 'path' => '/pop/v1/sam/secret/secret', + 'methods' => ['delete'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'CoStatus', - 'in' => 'query', - 'schema' => [ - 'description' => '变更单状态。取值说明如下:'."\n" - ."\n" - .'- **0**:准备。'."\n" - .'- **1**:执行中。'."\n" - .'- **2**:执行成功。'."\n" - .'- **3**:执行失败。'."\n" - .'- **6**:终止。'."\n" - .'- **8**:等待手工确认分批。'."\n" - .'- **9**:等待自动确认分批。'."\n" - .'- **10**:系统异常执行失败。'."\n" - .'- **11**:等待审批。'."\n" - .'- **12**:审批通过,等待执行。', - 'type' => 'string', - 'required' => false, - 'example' => '2', - ], + 'AK' => [], ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'abilityTreeCode' => '159989', + 'abilityTreeNodes' => ['FEATUREsaeD9PL61'], + ], + 'parameters' => [ [ - 'name' => 'OrderBy', + 'name' => 'NamespaceId', 'in' => 'query', - 'schema' => [ - 'type' => 'string', - 'required' => false, - ], + 'schema' => ['description' => 'Secret实例所在命名空间ID。如果所在命名空间为默认命名空间,则只需填写RegionId,例如`cn-beijing`。', 'type' => 'string', 'required' => true, 'example' => 'cn-beijing:test'], ], [ - 'name' => 'Reverse', + 'name' => 'SecretId', 'in' => 'query', - 'schema' => [ - 'type' => 'boolean', - 'required' => false, - ], + 'schema' => ['description' => '需要删除的Secret实例ID。需要调用[ListSecrets](~~466929~~)接口查看。', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'maximum' => '1000000000', 'minimum' => '1', 'example' => '16'], ], ], 'responses' => [ @@ -14802,670 +6125,366 @@ 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '65E1F-43BA-4D0C-8E61-E4D1337F****', - ], - 'Message' => [ - 'description' => '调用结果的附加信息。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0bb6f815638568884597879d****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], 'Data' => [ - 'description' => '变更单列表信息。', + 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'CurrentPage' => [ - 'description' => '当前分页。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'TotalSize' => [ - 'description' => '变更单总数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'ChangeOrderList' => [ - 'description' => '变更单列表。', - 'type' => 'array', - 'items' => [ - 'description' => '变更单列表信息。', - 'type' => 'object', - 'properties' => [ - 'Status' => [ - 'description' => '变更单状态。取值说明如下:'."\n" - ."\n" - .'- **0**:准备。'."\n" - .'- **1**:执行中。'."\n" - .'- **2**:执行成功。'."\n" - .'- **3**:执行失败。'."\n" - .'- **6**:终止。'."\n" - .'- **8**:等待手工确认分批。'."\n" - .'- **9**:等待自动确认分批。'."\n" - .'- **10**:系统异常执行失败。'."\n" - .'- **11**:等待审批。'."\n" - .'- **12**:审批通过,等待执行。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '2', - ], - 'FinishTime' => [ - 'description' => '结束时间。', - 'type' => 'string', - 'example' => '2019-07-11 20:12:58', - ], - 'CreateTime' => [ - 'description' => '创建时间。', - 'type' => 'string', - 'example' => '2019-07-11 15:54:49', - ], - 'UserId' => [ - 'description' => '用户ID。', - 'type' => 'string', - 'example' => 'sae-beta-test', - ], - 'Source' => [ - 'description' => '变更单操作入口来源。', - 'type' => 'string', - 'example' => 'console', - ], - 'BatchCount' => [ - 'description' => '分批数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'CreateUserId' => [ - 'description' => '创建用户ID。', - 'type' => 'string', - 'example' => 'sae-beta-test', - ], - 'CoTypeCode' => [ - 'description' => '变更类型Code。取值说明如下:'."\n" - .' '."\n" - .'- **CoBindSlb**:绑定SLB。'."\n" - .'- **CoUnbindSlb**:解绑SLB。'."\n" - .'- **CoCreateApp**:创建应用。'."\n" - .'- **CoDeleteApp**:删除应用。'."\n" - .'- **CoDeploy**:部署应用。'."\n" - .'- **CoRestartApplication**:重启应用。'."\n" - .'- **CoRollback**:回滚应用。'."\n" - .'- **CoScaleIn**:应用缩容。'."\n" - .'- **CoScaleOut**:应用扩容。'."\n" - .'- **CoStartApplication**:启动应用。'."\n" - .'- **CoStopApplication**:停止应用。'."\n" - .'- **CoRescaleApplicationVertically**:修改实例规格。'."\n" - .'- **CoDeployHistroy**:回退历史版本。'."\n" - .'- **CoBindNas**:绑定NAS。'."\n" - .'- **CoUnbindNas**:解绑NAS。'."\n" - .'- **CoBatchStartApplication**:批量启动应用。'."\n" - .'- **CoBatchStopApplication**:批量停止应用。'."\n" - .'- **CoRestartInstances**:重启实例。'."\n" - .'- **CoDeleteInstances**:删除实例。'."\n" - .'- **CoScaleInAppWithInstances**:指定实例缩容。', - 'type' => 'string', - 'example' => 'CoCreateApp', - ], - 'ChangeOrderId' => [ - 'description' => '变更单ID。', - 'type' => 'string', - 'example' => '7fa5c0-9ebb-4bb4-b383-1f885447****', - ], - 'BatchType' => [ - 'description' => '分批类型。取值说明如下:'."\n" - .' - **auto**:自动。'."\n" - .' - **manual**:手动。', - 'type' => 'string', - 'example' => 'auto', - ], - 'GroupId' => [ - 'description' => '分组ID。', - 'type' => 'string', - 'example' => 'c9ecd2-cf6c-46c3-9f20-525de202****', - ], - 'Description' => [ - 'description' => '描述信息。', - 'type' => 'string', - 'example' => '版本:1.0 | 镜像名称:nginx', - ], - 'CoType' => [ - 'description' => '变更类型,是对**CoTypeCode**的描述。', - 'type' => 'string', - 'example' => '创建应用', - ], - 'AppId' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'example' => '164341c-9708-4967-b3ec-24933767****', - ], - ], - ], - ], - 'PageSize' => [ - 'description' => '分页大小。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '20', - ], + 'SecretId' => ['description' => '被删除的Secret实例ID。', 'type' => 'integer', 'format' => 'int64', 'example' => '16'], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '获取变更单列表是否成功。取值说明如下:'."\n" - .'- **true**:获取成功。'."\n" - .'- **false**:获取失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '删除Secret实例是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:删除实例成功。'."\n" + .'- **false**:删除实例失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'Resouce.no.permission', - 'errorMessage' => 'You are not authorized to operate on the specified resources.', - ], + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], + ['errorCode' => 'InvalidSecretId.NotFound', 'errorMessage' => 'The specified SecretId [%s] does not exist in our records.', 'description' => '指定的保密字典ID[%s]不存在。'], + ['errorCode' => 'DependencyViolation.Job', 'errorMessage' => 'The specified resource of secret is dependent on job [%s], so the operation cannot be completed.', 'description' => '保密字典[%s]被任务模板[%s]使用中,删除操作无法完成。'], + ['errorCode' => 'DependencyViolation.Application', 'errorMessage' => 'The specified resource of secret is dependent on application [%s], so the operation cannot be completed.', 'description' => '保密字典[%s]被应用[%s]使用中,删除操作无法完成。'], ], 404 => [ - [ - 'errorCode' => 'InvalidAppId.NotFound', - 'errorMessage' => 'The specified AppId does not exist.', - ], + ['errorCode' => 'InvalidNamespaceId.NotFound', 'errorMessage' => 'The specified NamespaceId does not exist.', 'description' => '指定的NamespaceId不存在。'], + ], + 500 => [ + ['errorCode' => 'OperationFailed.RPCError', 'errorMessage' => 'Internal RPC request processing error.', 'description' => '内部RPC请求处理报错。'], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"65E1F-43BA-4D0C-8E61-E4D1337F****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0bb6f815638568884597879d****\\",\\n \\"Data\\": {\\n \\"CurrentPage\\": 1,\\n \\"TotalSize\\": 1,\\n \\"ChangeOrderList\\": [\\n {\\n \\"Status\\": 2,\\n \\"FinishTime\\": \\"2019-07-11 20:12:58\\",\\n \\"CreateTime\\": \\"2019-07-11 15:54:49\\",\\n \\"UserId\\": \\"sae-beta-test\\",\\n \\"Source\\": \\"console\\",\\n \\"BatchCount\\": 1,\\n \\"CreateUserId\\": \\"sae-beta-test\\",\\n \\"CoTypeCode\\": \\"CoCreateApp\\",\\n \\"ChangeOrderId\\": \\"7fa5c0-9ebb-4bb4-b383-1f885447****\\",\\n \\"BatchType\\": \\"auto\\",\\n \\"GroupId\\": \\"c9ecd2-cf6c-46c3-9f20-525de202****\\",\\n \\"Description\\": \\"版本:1.0 | 镜像名称:nginx\\",\\n \\"CoType\\": \\"创建应用\\",\\n \\"AppId\\": \\"164341c-9708-4967-b3ec-24933767****\\"\\n }\\n ],\\n \\"PageSize\\": 20\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<ListChangeOrdersResponse>\\n <RequestId>65E1F-43BA-4D0C-8E61-E4D1337F****</RequestId>\\n <Message>success</Message>\\n <TraceId>0bb6f815638568884597879d****</TraceId>\\n <Data>\\n <CurrentPage>1</CurrentPage>\\n <TotalSize>1</TotalSize>\\n <ChangeOrderList>\\n <Status>2</Status>\\n <FinishTime>2019-07-11 20:12:58</FinishTime>\\n <CreateTime>2019-07-11 15:54:49</CreateTime>\\n <UserId>sae-beta-test</UserId>\\n <Source>console</Source>\\n <BatchCount>1</BatchCount>\\n <CreateUserId>sae-beta-test</CreateUserId>\\n <CoTypeCode>CoCreateApp</CoTypeCode>\\n <ChangeOrderId>7fa5c0-9ebb-4bb4-b383-1f885447****</ChangeOrderId>\\n <BatchType>auto</BatchType>\\n <GroupId>c9ecd2-cf6c-46c3-9f20-525de202****</GroupId>\\n <Description>版本:1.0 | 镜像名称:nginx</Description>\\n <CoType>创建应用</CoType>\\n <AppId>164341c-9708-4967-b3ec-24933767****</AppId>\\n </ChangeOrderList>\\n <PageSize>20</PageSize>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</ListChangeOrdersResponse>","errorExample":""}]', - 'title' => '获取变更单列表', - 'summary' => '获取变更单列表。', - 'requestParamsDescription' => ' ', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', - ], - 'DescribeChangeOrder' => [ - 'path' => '/pop/v1/sam/changeorder/DescribeChangeOrder', - 'methods' => [ - 'get', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"SecretId\\": 16\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeleteSecretResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <SecretId>16</SecretId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DeleteSecretResponse>","errorExample":""}]', + 'title' => 'DeleteSecret', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:24.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2022-11-22T13:28:09.000Z', 'description' => 'OpenAPI 下线'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteSecret'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => '', + 'ramAction' => [ + 'action' => 'sae:DeleteSecret', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + ], + 'DeleteSwimmingLaneGroup' => [ + 'summary' => '删除泳道组。', + 'path' => '/pop/v1/cas/gray/deleteSwimmingLaneGroup', + 'methods' => ['post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'consumes' => ['application/x-www-form-urlencoded'], + 'produces' => ['application/json'], + 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '6325', - 'abilityTreeNodes' => [ - 'FEATUREsaeRVPNSA', - ], + 'operationType' => 'delete', + 'abilityTreeCode' => '221434', + 'abilityTreeNodes' => ['FEATUREsaeX255DA'], ], 'parameters' => [ [ - 'name' => 'ChangeOrderId', + 'name' => 'NamespaceId', 'in' => 'query', - 'schema' => [ - 'description' => '变更单ID。通过调用[ListChangeOrders](~~126615~~)接口获取。', - 'type' => 'string', - 'required' => true, - 'example' => '76fa5c0-9ebb-4bb4-b383-1f885447****', - ], + 'schema' => ['description' => '命名空间ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-beijing:demo'], + ], + [ + 'name' => 'GroupId', + 'in' => 'query', + 'schema' => ['description' => '泳道组ID。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '2074'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'description' => '返回数据。', + 'title' => 'Schema of Response', + 'description' => '返回信息。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '调用结果的附加信息。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], - 'Data' => [ - 'description' => '变更单信息。', - 'type' => 'object', - 'properties' => [ - 'Status' => [ - 'description' => '批次状态。取值说明如下:'."\n" - ."\n" - .'- **0**:准备。'."\n" - .'- **1**:执行中。'."\n" - .'- **2**:执行成功。'."\n" - .'- **3**:执行失败。'."\n" - .'- **6**:终止。'."\n" - .'- **8**:等待手工确认分批。'."\n" - .'- **9**:等待自动确认分批。'."\n" - .'- **10**:系统异常执行失败。'."\n" - .'- **11**:等待审批。'."\n" - .'- **12**:审批通过,等待执行。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '2', - ], - 'SubStatus' => [ - 'description' => '发布单子状态,用于判断发布单是否在发布过程中存在异常。取值说明如下:'."\n" - ."\n" - .'- **0**:发布正常。'."\n" - .'- **1**:发布异常。例如分批发布时出错,需要您手动回滚,此时发布单虽然出错,但因不能完结而依然处于执行中。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '0', - ], - 'ApprovalId' => [ - 'description' => '操作审批ID。', - 'type' => 'string', - 'example' => '67de0b39-a9d4-4c09-a170-cf438208****', - ], - 'ErrorMessage' => [ - 'description' => '错误信息。', - 'type' => 'string', - 'example' => 'success', - ], - 'BatchWaitTime' => [ - 'description' => '自动分批方式时,开始下一批次前的等待时间。单位:分钟。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '0', - ], - 'CreateTime' => [ - 'description' => '创建时间。', - 'type' => 'string', - 'example' => '2020-12-17 21:06:45', - ], - 'BatchCount' => [ - 'description' => '分批数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'CoTypeCode' => [ - 'description' => '变更类型Code。取值说明如下:'."\n" - ."\n" - .'- **CoBindSlb**:绑定SLB。'."\n" - .'- **CoUnbindSlb**:解绑SLB。'."\n" - .'- **CoCreateApp**:创建应用。'."\n" - .'- **CoDeleteApp**:删除应用。'."\n" - .'- **CoDeploy**:部署应用。'."\n" - .'- **CoRestartApplication**:重启应用。'."\n" - .'- **CoRollback**:回滚应用。'."\n" - .'- **CoScaleIn**:应用缩容。'."\n" - .'- **CoScaleOut**:应用扩容。'."\n" - .'- **CoStart**:启动应用。'."\n" - .'- **CoStop**:停止应用。'."\n" - .'- **CoRescaleApplicationVertically**:修改实例规格。'."\n" - .'- **CoDeployHistroy**:回退历史版本。'."\n" - .'- **CoBindNas**:绑定NAS。'."\n" - .'- **CoUnbindNas**:解绑NAS。'."\n" - .'- **CoBatchStartApplication**:批量启动应用。'."\n" - .'- **CoBatchStopApplication**:批量停止应用。'."\n" - .'- **CoRestartInstances**:重启实例。'."\n" - .'- **CoDeleteInstances**:删除实例。'."\n" - .'- **CoScaleInAppWithInstances**:指定实例缩容。', - 'type' => 'string', - 'example' => 'CoRestartInstances', - ], - 'SupportRollback' => [ - 'description' => '是否支持回滚。取值说明如下:'."\n" - ."\n" - .'- **true**:支持回滚。'."\n" - .'- **false**:不支持回滚。', - 'type' => 'boolean', - 'example' => 'false', - ], - 'ChangeOrderId' => [ - 'description' => '变更单ID。', - 'type' => 'string', - 'example' => '765fa5c0-9ebb-4bb4-b383-1f885447**', - ], - 'AppName' => [ - 'description' => '应用名称。', - 'type' => 'string', - 'example' => 'app-test', - ], - 'BatchType' => [ - 'description' => '分批类型。取值说明如下:'."\n" - ."\n" - .'- **auto**:自动。'."\n" - .'- **manual**:手动。', - 'type' => 'string', - 'example' => 'auto', - ], - 'Description' => [ - 'description' => '变更单描述信息。', - 'type' => 'string', - 'example' => 'description', - ], - 'CoType' => [ - 'description' => '变更类型,是对**CoTypeCode**的描述。', - 'type' => 'string', - 'example' => '批量重启实例', - ], - 'Auto' => [ - 'description' => '是否为自动分批。取值说明如下:'."\n" - ."\n" - .'- **true**:自动分批变更。'."\n" - .'- **false**:不是自动分批变更。', - 'type' => 'boolean', - 'example' => 'true', - ], - 'CurrentPipelineId' => [ - 'description' => '当前批次ID。', - 'type' => 'string', - 'example' => '0e4acf82-c9b1-4c1e-ac28-55776338****', - ], - 'Pipelines' => [ - 'description' => '批次信息。', - 'type' => 'array', - 'items' => [ - 'description' => '批次信息。', - 'type' => 'object', - 'properties' => [ - 'Status' => [ - 'description' => '批次状态。取值说明如下:'."\n" - ."\n" - .'- **0**:准备。'."\n" - .'- **1**:执行中。'."\n" - .'- **2**:执行成功。'."\n" - .'- **3**:执行失败。'."\n" - .'- **6**:终止。'."\n" - .'- **8**:等待手工确认分批。'."\n" - .'- **9**:等待自动确认分批。'."\n" - .'- **10**:系统异常执行失败。'."\n" - .'- **11**:等待审批。'."\n" - .'- **12**:审批通过,等待执行。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '2', - ], - 'StartTime' => [ - 'description' => '开始时间。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1562831689704', - ], - 'UpdateTime' => [ - 'description' => '最近更新时间。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1562847178007', - ], - 'BatchType' => [ - 'description' => '分批类型。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '0', - ], - 'ParallelCount' => [ - 'description' => '分批内并行任务数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '0', - ], - 'PipelineName' => [ - 'description' => '批次名称。', - 'type' => 'string', - 'example' => 'Batch 1 Change', - ], - 'PipelineId' => [ - 'description' => '批次ID。', - 'type' => 'string', - 'example' => '0e4acf82-c9b1-4c1e-ac28-55776338****', - ], - ], - ], - ], - 'AppId' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'example' => 'bbbbb-3fd370b2-3646-4ba6-91f9-9423e19ab0cd-*****', - ], - 'ApplicationUpdateStrategy' => [ - 'type' => 'string', - ], - 'ApplicationEnableGreyTagRoute' => [ - 'type' => 'boolean', - ], - ], - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '是否成功查询变更单信息。取值说明如下:'."\n" - ."\n" - .'- **true**:查询成功。'."\n" - .'- **false**:查询失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求 ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => 'ac1a0b2215622920113732501e****'], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:删除成功。'."\n" + .'- **false**:删除失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'Resouce.no.permission', - 'errorMessage' => 'You are not authorized to operate on the specified resources.', - ], - [ - 'errorCode' => 'InvalidChangeOrder.NotFound', - 'errorMessage' => 'The current change order does not exist.', + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], + ['errorCode' => 'MseGatewayRule.CreateFailed', 'errorMessage' => 'Create MSE Gateway rule failed.', 'description' => '创建MSE微服务网关路由失败。'], + ['errorCode' => 'InternalApiError', 'errorMessage' => 'An exception occurred when calling mse:%s, error message: %s.', 'description' => '调用 mse:%s 接口异常,%s'], + ], + ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"ac1a0b2215622920113732501e****\\",\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => '删除泳道组', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:29.000Z', 'description' => 'OpenAPI 下线'], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'sae:DeleteSwimmingLaneGroup', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], - 404 => [ - [ - 'errorCode' => 'InvalidAppId.NotFound', - 'errorMessage' => 'The specified AppId does not exist.', + ], + ], + 'DeleteWebApplication' => [ + 'summary' => '删除Web应用。', + 'path' => '/pop/v2/api/web/applications/{ApplicationId}', + 'methods' => ['delete'], + 'schemes' => ['http', 'https'], + 'tags' => [], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'consumes' => ['application/json'], + 'produces' => ['application/json'], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + 'operationType' => 'delete', + 'abilityTreeCode' => '181737', + 'abilityTreeNodes' => ['FEATUREsaeUWY6ZL'], + ], + 'parameters' => [ + [ + 'name' => 'NamespaceId', + 'in' => 'query', + 'allowEmptyValue' => false, + 'schema' => ['title' => '命名空间ID', 'description' => '命名空间ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-beijing:test'], + ], + [ + 'name' => 'ApplicationId', + 'in' => 'path', + 'allowEmptyValue' => false, + 'schema' => ['title' => '应用ID', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****'], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => ['description' => '返回信息。', '$ref' => '#/components/schemas/WebApplicationBody'], + ], + ], + 'title' => '删除Web应用', + 'description' => '调用DeleteWebApplication接口删除Web应用。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:18.000Z', 'description' => 'OpenAPI 下线'], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'sae:DeleteWebApplication', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"Status\\": 2,\\n \\"SubStatus\\": 0,\\n \\"ApprovalId\\": \\"67de0b39-a9d4-4c09-a170-cf438208****\\",\\n \\"ErrorMessage\\": \\"success\\",\\n \\"BatchWaitTime\\": 0,\\n \\"CreateTime\\": \\"2020-12-17 21:06:45\\",\\n \\"BatchCount\\": 1,\\n \\"CoTypeCode\\": \\"CoRestartInstances\\",\\n \\"SupportRollback\\": false,\\n \\"ChangeOrderId\\": \\"765fa5c0-9ebb-4bb4-b383-1f885447**\\",\\n \\"AppName\\": \\"app-test\\",\\n \\"BatchType\\": \\"auto\\",\\n \\"Description\\": \\"description\\",\\n \\"CoType\\": \\"批量重启实例\\",\\n \\"Auto\\": true,\\n \\"CurrentPipelineId\\": \\"0e4acf82-c9b1-4c1e-ac28-55776338****\\",\\n \\"Pipelines\\": [\\n {\\n \\"Status\\": 2,\\n \\"StartTime\\": 1562831689704,\\n \\"UpdateTime\\": 1562847178007,\\n \\"BatchType\\": 0,\\n \\"ParallelCount\\": 0,\\n \\"PipelineName\\": \\"Batch 1 Change\\",\\n \\"PipelineId\\": \\"0e4acf82-c9b1-4c1e-ac28-55776338****\\"\\n }\\n ],\\n \\"AppId\\": \\"bbbbb-3fd370b2-3646-4ba6-91f9-9423e19ab0cd-*****\\",\\n \\"ApplicationUpdateStrategy\\": \\"\\",\\n \\"ApplicationEnableGreyTagRoute\\": true\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeChangeOrderResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <Status>2</Status>\\n <SubStatus>0</SubStatus>\\n <ApprovalId>67de0b39-a9d4-4c09-a170-cf438208****</ApprovalId>\\n <ErrorMessage>success</ErrorMessage>\\n <BatchWaitTime>0</BatchWaitTime>\\n <CreateTime>2020-12-17 21:06:45</CreateTime>\\n <BatchCount>1</BatchCount>\\n <CoTypeCode>CoRestartInstances</CoTypeCode>\\n <SupportRollback>false</SupportRollback>\\n <ChangeOrderId>765fa5c0-9ebb-4bb4-b383-1f885447**</ChangeOrderId>\\n <AppName>app-test</AppName>\\n <BatchType>auto</BatchType>\\n <Description>description</Description>\\n <CoType>批量重启实例</CoType>\\n <Auto>true</Auto>\\n <CurrentPipelineId>0e4acf82-c9b1-4c1e-ac28-55776338****</CurrentPipelineId>\\n <Pipelines>\\n <Status>2</Status>\\n <StartTime>1562831689704</StartTime>\\n <UpdateTime>1562847178007</UpdateTime>\\n <BatchType>0</BatchType>\\n <ParallelCount>0</ParallelCount>\\n <PipelineName>Batch 1 Change</PipelineName>\\n <PipelineId>0e4acf82-c9b1-4c1e-ac28-55776338****</PipelineId>\\n </Pipelines>\\n <AppId>bbbbb-3fd370b2-3646-4ba6-91f9-9423e19ab0cd-*****</AppId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeChangeOrderResponse>","errorExample":""}]', - 'title' => '查询变更单信息', - 'summary' => '调用DescribeChangeOrder接口查询变更单信息。', ], - 'DescribeInstanceSpecifications' => [ - 'path' => '/pop/v1/paas/quota/instanceSpecifications', - 'methods' => [ - 'get', + 'DeleteWebApplicationRevision' => [ + 'path' => '/pop/v2/api/web/application-revisions/{ApplicationId}/revisions/{RevisionId}', + 'methods' => ['delete'], + 'schemes' => ['http', 'https'], + 'tags' => [], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'consumes' => ['application/json'], + 'produces' => ['application/json'], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + 'operationType' => 'delete', + 'abilityTreeCode' => '225939', + 'abilityTreeNodes' => ['FEATUREsae37J6Z9'], + ], + 'parameters' => [ + [ + 'name' => 'NamespaceId', + 'in' => 'query', + 'allowEmptyValue' => false, + 'schema' => ['title' => 'namespace id', 'description' => '命名空间ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-shanghai'], + ], + [ + 'name' => 'ApplicationId', + 'in' => 'path', + 'allowEmptyValue' => false, + 'schema' => ['title' => 'application id', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => '7e41aff0-9eca-45c9-ac48-675e09******'], + ], + [ + 'name' => 'RevisionId', + 'in' => 'path', + 'allowEmptyValue' => false, + 'schema' => ['title' => 'revision id', 'description' => '修订版本ID。', 'type' => 'string', 'required' => true, 'example' => '001'], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => ['description' => '指定更新的管道信息。', '$ref' => '#/components/schemas/WebApplicationRevisionBody'], + 'examples' => [], + ], ], - 'schemes' => [ - 'http', - 'https', + 'title' => '删除Web应用版本', + 'summary' => '删除Web应用版本。', + 'description' => '删除Web应用版本。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:18.000Z', 'description' => 'OpenAPI 下线'], ], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'sae:DeleteWebApplicationRevision', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], + ], + ], + 'DeleteWebCustomDomain' => [ + 'summary' => '删除自定义域名。', + 'path' => '/pop/v2/api/web/custom-domains/{DomainName}', + 'methods' => ['delete'], + 'schemes' => ['http', 'https'], + 'tags' => [], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', - 'deprecated' => false, + 'consumes' => ['application/json'], + 'produces' => ['application/json'], + 'operationType' => 'readAndWrite', 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '6337', - 'abilityTreeNodes' => [ - 'FEATUREsaeD9PL61', + 'operationType' => 'delete', + 'abilityTreeCode' => '225941', + 'abilityTreeNodes' => ['FEATUREsae5U7VP0'], + ], + 'parameters' => [ + [ + 'name' => 'NamespaceId', + 'in' => 'query', + 'allowEmptyValue' => false, + 'schema' => ['title' => '命名空间ID', 'description' => '命名空间ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-shanghai'], + ], + [ + 'name' => 'DomainName', + 'in' => 'path', + 'allowEmptyValue' => false, + 'schema' => ['title' => '自定义域名名称', 'description' => '自定义域名名称。', 'type' => 'string', 'required' => true, 'example' => 'admin.pupumall.com'], ], ], - 'parameters' => [], 'responses' => [ 200 => [ - 'schema' => [ - 'description' => '返回数据。', - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], - 'Data' => [ - 'description' => '实例规格信息。', - 'type' => 'array', - 'items' => [ - 'description' => '实例规格信息。', - 'type' => 'object', - 'properties' => [ - 'Cpu' => [ - 'description' => 'CPU大小,规格为微核。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '2000', - ], - 'Version' => [ - 'description' => '规格配置版本号。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '0', - ], - 'Memory' => [ - 'description' => '内存规格,单位为MB。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '4096', - ], - 'SpecInfo' => [ - 'description' => '规格配置名称。', - 'type' => 'string', - 'example' => '通用型4', - ], - 'Id' => [ - 'description' => '规格配置ID。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '4', - ], - 'Enable' => [ - 'description' => '实例是否可用。取值说明如下:'."\n" - ."\n" - .'- **true**:可用。'."\n" - .'- **false**:不可用。', - 'type' => 'boolean', - 'example' => 'true', - ], - ], - ], - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**目录。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '获取实例规格是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:获取成功。'."\n" - .'- **false**:获取失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'description' => 'No Content', + 'schema' => ['description' => '请求消息体。', '$ref' => '#/components/schemas/WebCustomDomainBody'], + 'examples' => [], + ], + ], + 'title' => '删除自定义域名', + 'description' => '删除自定义域名。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:17.000Z', 'description' => 'OpenAPI 下线'], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'sae:DeleteWebCustomDomain', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => 'Namespace', 'arn' => 'acs:sae:{#regionId}:{#accountId}:namespace/{#NamespaceId}'], ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": [\\n {\\n \\"Cpu\\": 2000,\\n \\"Version\\": 0,\\n \\"Memory\\": 4096,\\n \\"SpecInfo\\": \\"通用型4\\",\\n \\"Id\\": 4,\\n \\"Enable\\": true\\n }\\n ],\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeInstanceSpecificationsResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <Cpu>2000</Cpu>\\n <Version>0</Version>\\n <Memory>4096</Memory>\\n <SpecInfo>通用型4</SpecInfo>\\n <Id>4</Id>\\n <Enable>true</Enable>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeInstanceSpecificationsResponse>","errorExample":""}]', - 'title' => '获取应用实例规格信息', - 'summary' => '调用DescribeInstanceSpecifications接口获取应用实例规格信息。', ], 'DeployApplication' => [ 'path' => '/pop/v1/sam/app/deployApplication', - 'methods' => [ - 'post', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'methods' => ['post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -15475,896 +6494,553 @@ 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', 'abilityTreeCode' => '6316', - 'abilityTreeNodes' => [ - 'FEATUREsaeRVPNSA', - ], + 'abilityTreeNodes' => ['FEATUREsaeRVPNSA'], ], 'parameters' => [ [ 'name' => 'AppId', 'in' => 'query', - 'schema' => [ - 'description' => '需要部署的应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****', - ], + 'schema' => ['description' => '需要部署的应用ID。', 'type' => 'string', 'required' => true, 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****'], ], [ 'name' => 'Jdk', 'in' => 'query', - 'schema' => [ - 'description' => '部署包依赖的JDK版本。支持版本如下:'."\n" - ."\n" - .'- **Open JDK 8**'."\n" - .'- **Open JDK 7**'."\n" - .'- **Dragonwell 11**'."\n" - .'- **Dragonwell 8**'."\n" - .'- **openjdk-8u191-jdk-alpine3.9**'."\n" - .'- **openjdk-7u201-jdk-alpine3.9**'."\n" - ."\n" - .'当**Package Type**为**Image**时不支持。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'Open JDK 8', - ], + 'schema' => ['description' => '部署包依赖的JDK版本。支持版本如下:'."\n" + ."\n" + .'- **Open JDK 8**'."\n" + .'- **Open JDK 7**'."\n" + .'- **Dragonwell 11**'."\n" + .'- **Dragonwell 8**'."\n" + .'- **openjdk-8u191-jdk-alpine3.9**'."\n" + .'- **openjdk-7u201-jdk-alpine3.9**'."\n" + ."\n" + .'当**Package Type**为**Image**时不支持。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'Open JDK 8'], ], [ 'name' => 'WebContainer', 'in' => 'query', - 'schema' => [ - 'description' => '部署包依赖的Tomcat版本。支持版本如下:'."\n" - ."\n" - .'- **apache-tomcat-7.0.91**'."\n" - .'- **apache-tomcat-8.5.42**'."\n" - ."\n" - .'当**Package Type**为**Image**时不支持。', - 'type' => 'string', - 'required' => false, - 'example' => 'apache-tomcat-7.0.91', - ], + 'schema' => ['description' => '部署包依赖的Tomcat版本。支持版本如下:'."\n" + ."\n" + .'- **apache-tomcat-7.0.91**'."\n" + .'- **apache-tomcat-8.5.42**'."\n" + ."\n" + .'当**Package Type**为**Image**时不支持。', 'type' => 'string', 'required' => false, 'example' => 'apache-tomcat-7.0.91'], ], [ 'name' => 'PackageVersion', 'in' => 'query', - 'schema' => [ - 'description' => '部署包的版本号。当**Package Type**为**FatJar**、**War**或**PythonZip**时必填。'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '1.0.1', - ], + 'schema' => ['description' => '部署包的版本号。当**Package Type**为**FatJar**、**War**或**PythonZip**时必填。'."\n", 'type' => 'string', 'required' => false, 'example' => '1.0.1'], ], [ 'name' => 'PackageUrl', 'in' => 'query', - 'schema' => [ - 'description' => '部署包地址。当**Package Type**为**FatJar**、**War**或**PythonZip**时必填。'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'http://myoss.oss-cn-hangzhou.aliyuncs.com/my-buc/2019-06-30/****.jar', - ], + 'schema' => ['description' => '部署包地址。当**Package Type**为**FatJar**、**War**或**PythonZip**时必填。'."\n", 'type' => 'string', 'required' => false, 'example' => 'http://myoss.oss-cn-hangzhou.aliyuncs.com/my-buc/2019-06-30/****.jar'], ], [ 'name' => 'ImageUrl', 'in' => 'query', - 'schema' => [ - 'description' => '镜像地址。当**Package Type**为**Image**时必填。', - 'type' => 'string', - 'required' => false, - 'example' => 'registry.cn-hangzhou.aliyuncs.com/sae_test/ali_sae_test:0.0.1', - ], + 'schema' => ['description' => '镜像地址。当**Package Type**为**Image**时必填。', 'type' => 'string', 'required' => false, 'example' => 'registry.cn-hangzhou.aliyuncs.com/sae_test/ali_sae_test:0.0.1'], ], [ 'name' => 'Command', 'in' => 'query', - 'schema' => [ - 'description' => '镜像启动命令。该命令必须为容器内存在的可执行的对象。示例如下:'."\n" - ."\n" - .'```'."\n" - .'command:'."\n" - .' - echo'."\n" - .' - abc'."\n" - .' - >'."\n" - .' - file0'."\n" - .'```'."\n" - .'根据上述示例,则`Command="echo", CommandArgs=["abc", ">", "file0"]`。', - 'type' => 'string', - 'required' => false, - 'example' => 'echo', - ], + 'schema' => ['description' => '镜像启动命令。该命令必须为容器内存在的可执行的对象。示例如下:'."\n" + ."\n" + .'```'."\n" + .'command:'."\n" + .' - echo'."\n" + .' - abc'."\n" + .' - >'."\n" + .' - file0'."\n" + .'```'."\n" + .'根据上述示例,则`Command="echo", CommandArgs=["abc", ">", "file0"]`。', 'type' => 'string', 'required' => false, 'example' => 'echo'], ], [ 'name' => 'CommandArgs', 'in' => 'query', - 'schema' => [ - 'description' => '镜像启动命令参数。上述启动命令**Command**所需参数。格式如下:'."\n" - ."\n" - .'`["a","b"]`'."\n" - ."\n" - .'在上述示例中,`CommandArgs=["abc", ">", "file0"]`,其中`["abc", ">", "file0"]`需要转成String类型,里面的格式为JSON数组。如果无此参数,则无需填写。', - 'type' => 'string', - 'required' => false, - 'example' => '["a","b"]', - ], + 'schema' => ['description' => '镜像启动命令参数。上述启动命令**Command**所需参数。格式如下:'."\n" + ."\n" + .'`["a","b"]`'."\n" + ."\n" + .'在上述示例中,`CommandArgs=["abc", ">", "file0"]`,其中`["abc", ">", "file0"]`需要转成String类型,里面的格式为JSON数组。如果无此参数,则无需填写。', 'type' => 'string', 'required' => false, 'example' => '["a","b"]'], ], [ 'name' => 'Envs', 'in' => 'query', - 'schema' => [ - 'description' => '容器环境变量参数。支持自定义或引用配置项。如需引用配置项,请先创建ConfigMap实例。更多信息,请参见[CreateConfigMap](~~176914~~)。取值说明如下:'."\n" - .'- 自定义配置'."\n" - .' - **name**:环境变量名称。'."\n" - .' - **value**:环境变量值。优先级高于valueFrom。'."\n" - .'- 引用配置项(valueFrom)'."\n" - .' - **name**:环境变量名称。支持引用单个或全部键,如果引用全部键,需输入`sae-sys-configmap-all-<配置项名称>`,例如`sae-sys-configmap-all-test1`。'."\n" - .' - **valueFrom**:环境变量引用。取值为`configMapRef`。'."\n" - .' - **configMapId**:配置项ID。'."\n" - .' - **key**:键。如果引用全部健值,则不设置该字段。'."\n" - .'- 引用保密字典(valueFrom)'."\n" - .' - **name**:环境变量名称。支持引用单个或全部键,如果引用全部键,需输入`sae-sys-secret-all-<保密字典名称>`,例如`sae-sys-secret-all-test1`。'."\n" - .' - **valueFrom**:环境变量引用。取值为`secretRef`。'."\n" - .' - **secretId**:保密字典ID。'."\n" - .' - **key**:键。如果引用全部健值,则不设置该字段。', - 'type' => 'string', - 'required' => false, - 'example' => '[ { "name": "sae-sys-configmap-all-hello", "valueFrom": { "configMapRef": { "configMapId": 100, "key": "" } } }, { "name": "hello", "valueFrom": { "configMapRef": { "configMapId": 101, "key": "php-fpm" } } }, { "name": "sae-sys-secret-all-hello", "valueFrom": { “secretRef": { “secretId": 100, "key": "" } } }, { "name": “password”, "valueFrom": { “secretRef": { “secretId": 101, "key": “password” } } }, { "name": "envtmp", "value": "newenv" } ]', - ], + 'schema' => ['description' => '容器环境变量参数。支持自定义或引用配置项。如需引用配置项,请先创建ConfigMap实例。更多信息,请参见[CreateConfigMap](~~176914~~)。取值说明如下:'."\n" + .'- 自定义配置'."\n" + .' - **name**:环境变量名称。'."\n" + .' - **value**:环境变量值。优先级高于valueFrom。'."\n" + .'- 引用配置项(valueFrom)'."\n" + .' - **name**:环境变量名称。支持引用单个或全部键,如果引用全部键,需输入`sae-sys-configmap-all-<配置项名称>`,例如`sae-sys-configmap-all-test1`。'."\n" + .' - **valueFrom**:环境变量引用。取值为`configMapRef`。'."\n" + .' - **configMapId**:配置项ID。'."\n" + .' - **key**:键。如果引用全部健值,则不设置该字段。'."\n" + .'- 引用保密字典(valueFrom)'."\n" + .' - **name**:环境变量名称。支持引用单个或全部键,如果引用全部键,需输入`sae-sys-secret-all-<保密字典名称>`,例如`sae-sys-secret-all-test1`。'."\n" + .' - **valueFrom**:环境变量引用。取值为`secretRef`。'."\n" + .' - **secretId**:保密字典ID。'."\n" + .' - **key**:键。如果引用全部健值,则不设置该字段。', 'type' => 'string', 'required' => false, 'example' => '[ { "name": "sae-sys-configmap-all-hello", "valueFrom": { "configMapRef": { "configMapId": 100, "key": "" } } }, { "name": "hello", "valueFrom": { "configMapRef": { "configMapId": 101, "key": "php-fpm" } } }, { "name": "sae-sys-secret-all-hello", "valueFrom": { “secretRef": { “secretId": 100, "key": "" } } }, { "name": “password”, "valueFrom": { “secretRef": { “secretId": 101, "key": “password” } } }, { "name": "envtmp", "value": "newenv" } ]'], ], [ 'name' => 'CustomHostAlias', 'in' => 'query', - 'schema' => [ - 'description' => '容器内自定义Host映射。取值说明如下:'."\n" - ."\n" - .'- **hostName**:域名或主机名。'."\n" - .'- **ip**:IP地址。', - 'type' => 'string', - 'required' => false, - 'example' => '[{"hostName":"samplehost","ip":"127.0.0.1"}]', - ], + 'schema' => ['description' => '容器内自定义Host映射。取值说明如下:'."\n" + ."\n" + .'- **hostName**:域名或主机名。'."\n" + .'- **ip**:IP地址。', 'type' => 'string', 'required' => false, 'example' => '[{"hostName":"samplehost","ip":"127.0.0.1"}]'], ], [ 'name' => 'JarStartOptions', 'in' => 'query', - 'schema' => [ - 'description' => 'JAR包启动应用选项。应用默认启动命令:`$JAVA_HOME/bin/java $JarStartOptions -jar $CATALINA_OPTS "$package_path" $JarStartArgs`', - 'type' => 'string', - 'required' => false, - 'example' => 'custom-option', - ], + 'schema' => ['description' => 'JAR包启动应用选项。应用默认启动命令:`$JAVA_HOME/bin/java $JarStartOptions -jar $CATALINA_OPTS "$package_path" $JarStartArgs`', 'type' => 'string', 'required' => false, 'example' => 'custom-option'], ], [ 'name' => 'JarStartArgs', 'in' => 'query', - 'schema' => [ - 'description' => 'JAR包启动应用参数。应用默认启动命令:`$JAVA_HOME/bin/java $JarStartOptions -jar $CATALINA_OPTS "$package_path" $JarStartArgs`', - 'type' => 'string', - 'required' => false, - 'example' => '-Xms4G -Xmx4G', - ], + 'schema' => ['description' => 'JAR包启动应用参数。应用默认启动命令:`$JAVA_HOME/bin/java $JarStartOptions -jar $CATALINA_OPTS "$package_path" $JarStartArgs`', 'type' => 'string', 'required' => false, 'example' => '-Xms4G -Xmx4G'], ], [ 'name' => 'Liveness', 'in' => 'query', - 'schema' => [ - 'description' => '容器健康检查,健康检查失败的容器将被关闭并恢复。支持方式如下:'."\n" - ."\n" - .'- **exec**:例如 `{"exec":{"command":\\["sh","-c","cat/home/admin/start.sh"]},"initialDelaySeconds":30,"periodSeconds":30,"timeoutSeconds":2}`'."\n" - .'- **httpGet**:例如`{"httpGet":{"path":"/","port":18091,"scheme":"HTTP","isContainKeyWord":true,"keyWord":"SAE"},"initialDelaySeconds":11,"periodSeconds":10,"timeoutSeconds":1}`'."\n" - .'- **tcpSocket**:例如`{"tcpSocket":{"port":18091},"initialDelaySeconds":11,"periodSeconds":10,"timeoutSeconds":1}`'."\n" - ."\n" - .'> 只能选择一种方式进行健康检查。'."\n" - ."\n" - .'参数说明如下:'."\n" - ."\n" - .'- **exec.command**:设置健康检查命令。'."\n" - .'- **httpGet.path**:访问路径。'."\n" - .'- **httpGet.scheme**:**HTTP**或**HTTPS**。'."\n" - .'- **httpGet.isContainKeyWord**:**true**表示包含关键字,**false**表示不包含关键字,缺失该字段表示不使用高级功能。'."\n" - .'- **httpGet.keyWord**:自定义的关键字,使用时不能缺失**isContainKeyWord**字段。'."\n" - .'- **tcpSocket.port**:tcp连接检测的端口 。'."\n" - .'- **initialDelaySeconds**:设置健康检查延迟检测时间,默认为10,单位为秒。'."\n" - .'- **periodSeconds**:设置健康检查周期,默认为30,单位为秒。'."\n" - .'- **timeoutSeconds**:设置健康检查超时等待时间,默认为1,单位为秒。如果设置为0或不设置,默认超时等待时间为1秒。', - 'type' => 'string', - 'required' => false, - 'example' => '{"exec":{"command":["sleep","5s"]},"initialDelaySeconds":10,"timeoutSeconds":11}', - ], + 'schema' => ['description' => '容器健康检查,健康检查失败的容器将被关闭并恢复。支持方式如下:'."\n" + ."\n" + .'- **exec**:例如 `{"exec":{"command":\\["sh","-c","cat/home/admin/start.sh"]},"initialDelaySeconds":30,"periodSeconds":30,"timeoutSeconds":2}`'."\n" + .'- **httpGet**:例如`{"httpGet":{"path":"/","port":18091,"scheme":"HTTP","isContainKeyWord":true,"keyWord":"SAE"},"initialDelaySeconds":11,"periodSeconds":10,"timeoutSeconds":1}`'."\n" + .'- **tcpSocket**:例如`{"tcpSocket":{"port":18091},"initialDelaySeconds":11,"periodSeconds":10,"timeoutSeconds":1}`'."\n" + ."\n" + .'> 只能选择一种方式进行健康检查。'."\n" + ."\n" + .'参数说明如下:'."\n" + ."\n" + .'- **exec.command**:设置健康检查命令。'."\n" + .'- **httpGet.path**:访问路径。'."\n" + .'- **httpGet.scheme**:**HTTP**或**HTTPS**。'."\n" + .'- **httpGet.isContainKeyWord**:**true**表示包含关键字,**false**表示不包含关键字,缺失该字段表示不使用高级功能。'."\n" + .'- **httpGet.keyWord**:自定义的关键字,使用时不能缺失**isContainKeyWord**字段。'."\n" + .'- **tcpSocket.port**:tcp连接检测的端口 。'."\n" + .'- **initialDelaySeconds**:设置健康检查延迟检测时间,默认为10,单位为秒。'."\n" + .'- **periodSeconds**:设置健康检查周期,默认为30,单位为秒。'."\n" + .'- **timeoutSeconds**:设置健康检查超时等待时间,默认为1,单位为秒。如果设置为0或不设置,默认超时等待时间为1秒。', 'type' => 'string', 'required' => false, 'example' => '{"exec":{"command":["sleep","5s"]},"initialDelaySeconds":10,"timeoutSeconds":11}'], ], [ 'name' => 'Readiness', 'in' => 'query', - 'schema' => [ - 'description' => '应用启动状态检查,多次健康检查失败的容器将被关闭并重启。不通过健康检查的容器将不会有SLB流量进入。支持**exec**、**httpGet**和**tcpSocket**方式。具体示例,请参见**Liveness**参数。'."\n" - ."\n" - .'> 只能选择一种方式进行健康检查。', - 'type' => 'string', - 'required' => false, - 'example' => '{"exec":{"command":["sleep","6s"]},"initialDelaySeconds":15,"timeoutSeconds":12}', - ], + 'schema' => ['description' => '应用启动状态检查,多次健康检查失败的容器将被关闭并重启。不通过健康检查的容器将不会有SLB流量进入。支持**exec**、**httpGet**和**tcpSocket**方式。具体示例,请参见**Liveness**参数。'."\n" + ."\n" + .'> 只能选择一种方式进行健康检查。', 'type' => 'string', 'required' => false, 'example' => '{"exec":{"command":["sleep","6s"]},"initialDelaySeconds":15,"timeoutSeconds":12}'], ], [ 'name' => 'MinReadyInstances', 'in' => 'query', - 'schema' => [ - 'description' => '最小存活实例数。取值说明如下:'."\n" - ."\n" - .'- 如果设置为**0**,应用在升级过程中将会中断业务。'."\n" - .'- 如果设置为**-1**,最小存活实例数将使用系统推荐值,即取现有实例数的25%。如果当前为5个实例,5×25%=1.25,向上取整后,最小存活实例数为2。'."\n" - ."\n" - .'> 每次滚动部署最小存活的实例数建议≥1,保证业务不中断。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], + 'schema' => ['description' => '最小存活实例数。取值说明如下:'."\n" + ."\n" + .'- 如果设置为**0**,应用在升级过程中将会中断业务。'."\n" + .'- 如果设置为**-1**,最小存活实例数将使用系统推荐值,即取现有实例数的25%。如果当前为5个实例,5×25%=1.25,向上取整后,最小存活实例数为2。'."\n" + ."\n" + .'> 每次滚动部署最小存活的实例数建议≥1,保证业务不中断。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ 'name' => 'MinReadyInstanceRatio', 'in' => 'query', - 'schema' => [ - 'description' => '最小存活实例数百分比。取值说明如下:'."\n" - ."\n" - .' - **-1**:初始化值,表示不采用百分比。'."\n" - .' - **0~100**:单位为百分比,向上取整。例如设置为**50**%,如果当前为5个实例,则最小存活实例数为3。'."\n" - ."\n" - .'> 当**MinReadyInstance**和**MinReadyInstanceRatio**同时传递时,且**MinReadyInstanceRatio**的取值非**-1**时,以**MinReadyInstanceRatio**参数为准。假设**MinReadyInstances**取值为**5**,**MinReadyInstanceRatio**取值为**50**,则会用**50**来计算最小存活实例数。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '-1', - ], + 'schema' => ['description' => '最小存活实例数百分比。取值说明如下:'."\n" + ."\n" + .' - **-1**:初始化值,表示不采用百分比。'."\n" + .' - **0~100**:单位为百分比,向上取整。例如设置为**50**%,如果当前为5个实例,则最小存活实例数为3。'."\n" + ."\n" + .'> 当**MinReadyInstance**和**MinReadyInstanceRatio**同时传递时,且**MinReadyInstanceRatio**的取值非**-1**时,以**MinReadyInstanceRatio**参数为准。假设**MinReadyInstances**取值为**5**,**MinReadyInstanceRatio**取值为**50**,则会用**50**来计算最小存活实例数。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '-1'], ], [ 'name' => 'BatchWaitTime', 'in' => 'query', - 'schema' => [ - 'description' => '批次内部署间隔,单位为秒。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', - ], + 'schema' => ['description' => '批次内部署间隔,单位为秒。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], ], [ 'name' => 'EdasContainerVersion', 'in' => 'query', - 'schema' => [ - 'description' => 'HSF框架中应用运行环境版本,例如Ali-Tomcat容器。', - 'type' => 'string', - 'required' => false, - 'example' => '3.5.3', - ], + 'schema' => ['description' => 'HSF框架中应用运行环境版本,例如Ali-Tomcat容器。', 'type' => 'string', 'required' => false, 'example' => '3.5.3'], ], [ 'name' => 'UpdateStrategy', 'in' => 'query', - 'schema' => [ - 'description' => '部署策略。当最小存活实例数等于1时,**UpdateStrategy**字段的值为""。当最小存活实例数大于1时,示例如下:'."\n" - .' '."\n" - .' - 灰度1台+后续分2批+自动分批+分批间隔1分钟:`{"type":"GrayBatchUpdate","batchUpdate":{"batch":2,"releaseType":"auto","batchWaitTime":1},"grayUpdate":{"gray":1}}`'."\n" - .' - 灰度1台+后续分2批+手动分批:`{"type":"GrayBatchUpdate","batchUpdate":{"batch":2,"releaseType":"manual"},"grayUpdate":{"gray":1}}`'."\n" - .' - 分2批+自动分批+分批间隔0分钟:`{"type":"BatchUpdate","batchUpdate":{"batch":2,"releaseType":"auto","batchWaitTime":0}}`'."\n" - ."\n" - .'参数说明如下:'."\n" - .' - **type**:发布策略类型,可选灰度发布**GrayBatchUpdate**或分批发布**BatchUpdate**。'."\n" - .' - **batchUpdate**:分批发布策略。'."\n" - .' - **batch**:发布批次。'."\n" - .' - **releaseType**:分批间处理方式,可选自动**auto**或手动**manual**。'."\n" - .' - **batchWaitTime**:分批间隔时间,单位为分钟。'."\n" - ."\n" - .' - **grayUpdate**:灰度实例数量,当**type**为**GrayBatchUpdate**时必填。', - 'type' => 'string', - 'required' => false, - 'example' => '{"type":"GrayBatchUpdate","batchUpdate":{"batch":2,"releaseType":"auto","batchWaitTime":1},"grayUpdate":{"gray":1}}', - ], + 'schema' => ['description' => '部署策略。当最小存活实例数等于1时,**UpdateStrategy**字段的值为""。当最小存活实例数大于1时,示例如下:'."\n" + .' '."\n" + .' - 灰度1台+后续分2批+自动分批+分批间隔1分钟:`{"type":"GrayBatchUpdate","batchUpdate":{"batch":2,"releaseType":"auto","batchWaitTime":1},"grayUpdate":{"gray":1}}`'."\n" + .' - 灰度1台+后续分2批+手动分批:`{"type":"GrayBatchUpdate","batchUpdate":{"batch":2,"releaseType":"manual"},"grayUpdate":{"gray":1}}`'."\n" + .' - 分2批+自动分批+分批间隔0分钟:`{"type":"BatchUpdate","batchUpdate":{"batch":2,"releaseType":"auto","batchWaitTime":0}}`'."\n" + ."\n" + .'参数说明如下:'."\n" + .' - **type**:发布策略类型,可选灰度发布**GrayBatchUpdate**或分批发布**BatchUpdate**。'."\n" + .' - **batchUpdate**:分批发布策略。'."\n" + .' - **batch**:发布批次。'."\n" + .' - **releaseType**:分批间处理方式,可选自动**auto**或手动**manual**。'."\n" + .' - **batchWaitTime**:分批间隔时间,单位为分钟。'."\n" + ."\n" + .' - **grayUpdate**:灰度实例数量,当**type**为**GrayBatchUpdate**时必填。', 'type' => 'string', 'required' => false, 'example' => '{"type":"GrayBatchUpdate","batchUpdate":{"batch":2,"releaseType":"auto","batchWaitTime":1},"grayUpdate":{"gray":1}}'], ], [ 'name' => 'SlsConfigs', 'in' => 'query', - 'schema' => [ - 'description' => '日志采集到SLS的配置。'."\n" - ."\n" - .'- 使用SAE自动创建的SLS资源:`[{"logDir":"","logType":"stdout"},{"logDir":"/tmp/a.log"}]`。'."\n" - .'- 使用自定义的SLS资源:`[{"projectName":"test-sls","logType":"stdout","logDir":"","logstoreName":"sae","logtailName":""},{"projectName":"test","logDir":"/tmp/a.log","logstoreName":"sae","logtailName":""}]`。'."\n" - ."\n" - .'参数说明如下:'."\n" - ."\n" - .'- **projectName**:配置SLS上的Project名称。 '."\n" - .'- **logDir**:日志路径。'."\n" - .'- **logType**:日志类型。**stdout**表示容器标准输出日志,仅可设置1条;如果不设置,则表示收集文件日志。'."\n" - .'- **logstoreName**:配置SLS上的Logstore名称。'."\n" - .'- **logtailName**:配置SLS上的Logtail名称,如果不指定,则表示新建Logtail。'."\n" - ."\n" - .'多次部署时如果SLS采集配置没有变更,则不需要设置该参数(即请求中无需包含**SlsConfigs**字段);如果不再需要使用SLS采集功能,您需要在请求中将该字段的值设置为空字符串(即请求中**SlsConfigs**字段的值为"")。'."\n" - ."\n" - .'> 随应用自动创建的Project会随着应用删除而删除,因此在选择已有Project时,不能选择SAE自动创建的Project。', - 'type' => 'string', - 'required' => false, - 'example' => '[{"logDir":"","logType":"stdout"},{"logDir":"/tmp/a.log"}]', - ], + 'schema' => ['description' => '日志采集到SLS的配置。'."\n" + ."\n" + .'- 使用SAE自动创建的SLS资源:`[{"logDir":"","logType":"stdout"},{"logDir":"/tmp/a.log"}]`。'."\n" + .'- 使用自定义的SLS资源:`[{"projectName":"test-sls","logType":"stdout","logDir":"","logstoreName":"sae","logtailName":""},{"projectName":"test","logDir":"/tmp/a.log","logstoreName":"sae","logtailName":""}]`。'."\n" + ."\n" + .'参数说明如下:'."\n" + ."\n" + .'- **projectName**:配置SLS上的Project名称。 '."\n" + .'- **logDir**:日志路径。'."\n" + .'- **logType**:日志类型。**stdout**表示容器标准输出日志,仅可设置1条;如果不设置,则表示收集文件日志。'."\n" + .'- **logstoreName**:配置SLS上的Logstore名称。'."\n" + .'- **logtailName**:配置SLS上的Logtail名称,如果不指定,则表示新建Logtail。'."\n" + ."\n" + .'多次部署时如果SLS采集配置没有变更,则不需要设置该参数(即请求中无需包含**SlsConfigs**字段);如果不再需要使用SLS采集功能,您需要在请求中将该字段的值设置为空字符串(即请求中**SlsConfigs**字段的值为"")。'."\n" + ."\n" + .'> 随应用自动创建的Project会随着应用删除而删除,因此在选择已有Project时,不能选择SAE自动创建的Project。', 'type' => 'string', 'required' => false, 'example' => '[{"logDir":"","logType":"stdout"},{"logDir":"/tmp/a.log"}]'], ], [ 'name' => 'Timezone', 'in' => 'query', - 'schema' => [ - 'description' => '时区,默认为**Asia/Shanghai**。', - 'type' => 'string', - 'required' => false, - 'example' => 'Asia/Shanghai', - ], + 'schema' => ['description' => '时区,默认为**Asia/Shanghai**。', 'type' => 'string', 'required' => false, 'example' => 'Asia/Shanghai'], ], [ 'name' => 'NasId', 'in' => 'query', - 'schema' => [ - 'description' => '不推荐配置该字段,推荐配置**NasConfigs**。NAS文件系统的ID。部署时如果配置没有变更,则不需要设置该参数(即请求中无需包含**NasId**字段);如果需要清除NAS配置,您需要在请求中将该字段的值设置为空字符串(即请求中**NasId**字段的值为"")。', - 'type' => 'string', - 'required' => false, - 'example' => '10d3b4****', - ], + 'schema' => ['description' => '不推荐配置该字段,推荐配置**NasConfigs**。NAS文件系统的ID。部署时如果配置没有变更,则不需要设置该参数(即请求中无需包含**NasId**字段);如果需要清除NAS配置,您需要在请求中将该字段的值设置为空字符串(即请求中**NasId**字段的值为"")。', 'type' => 'string', 'required' => false, 'example' => '10d3b4****'], ], [ 'name' => 'MountHost', 'in' => 'query', - 'schema' => [ - 'description' => '不推荐配置该字段,推荐配置**NasConfigs**。NAS在应用VPC内的挂载点。部署时如果配置没有变更,则不需要设置该参数(即请求中无需包含**MountHost**字段);如果需要清除NAS配置,您需要在请求中将该字段的值设置为空字符串(即请求中**MountHost**字段的值为"")。', - 'type' => 'string', - 'required' => false, - 'example' => '10d3b4bc9****.com', - ], + 'schema' => ['description' => '不推荐配置该字段,推荐配置**NasConfigs**。NAS在应用VPC内的挂载点。部署时如果配置没有变更,则不需要设置该参数(即请求中无需包含**MountHost**字段);如果需要清除NAS配置,您需要在请求中将该字段的值设置为空字符串(即请求中**MountHost**字段的值为"")。', 'type' => 'string', 'required' => false, 'example' => '10d3b4bc9****.com'], ], [ 'name' => 'MountDesc', 'in' => 'query', - 'schema' => [ - 'description' => '不推荐配置该字段,推荐配置**NasConfigs**。NAS挂载描述。部署时如果配置没有变更,则不需要设置该参数(即请求中无需包含**MountDesc**字段);如果需要清除NAS配置,您需要在请求中将该字段的值设置为空字符串(即请求中**MountDesc**字段的值为"")。', - 'type' => 'string', - 'required' => false, - 'example' => '[{mountPath: "/tmp", nasPath: "/"}]', - ], + 'schema' => ['description' => '不推荐配置该字段,推荐配置**NasConfigs**。NAS挂载描述。部署时如果配置没有变更,则不需要设置该参数(即请求中无需包含**MountDesc**字段);如果需要清除NAS配置,您需要在请求中将该字段的值设置为空字符串(即请求中**MountDesc**字段的值为"")。', 'type' => 'string', 'required' => false, 'example' => '[{mountPath: "/tmp", nasPath: "/"}]'], ], [ 'name' => 'PostStart', 'in' => 'query', - 'schema' => [ - 'description' => '容器启动后执行脚本。在容器被创建后立刻触发执行一段脚本,格式如:`{"exec":{"command":\\["sh","-c","echo hello"\\]}}`', - 'type' => 'string', - 'required' => false, - 'example' => '{"exec":{"command":["sh","-c","echo hello"]}}', - ], + 'schema' => ['description' => '容器启动后执行脚本。在容器被创建后立刻触发执行一段脚本,格式如:`{"exec":{"command":\\["sh","-c","echo hello"\\]}}`', 'type' => 'string', 'required' => false, 'example' => '{"exec":{"command":["sh","-c","echo hello"]}}'], ], [ 'name' => 'PreStop', 'in' => 'query', - 'schema' => [ - 'description' => '容器停止前执行脚本。在容器被删除前触发执行一段脚本,格式如:`{"exec":{"command":\\["sh","-c","echo hello"\\]}}`', - 'type' => 'string', - 'required' => false, - 'example' => '{"exec":{"command":["sh","-c","echo hello"]}}', - ], + 'schema' => ['description' => '容器停止前执行脚本。在容器被删除前触发执行一段脚本,格式如:`{"exec":{"command":\\["sh","-c","echo hello"\\]}}`', 'type' => 'string', 'required' => false, 'example' => '{"exec":{"command":["sh","-c","echo hello"]}}'], ], [ 'name' => 'ChangeOrderDesc', 'in' => 'query', - 'schema' => [ - 'description' => '发布单描述信息。', - 'type' => 'string', - 'required' => false, - 'example' => '启动应用', - ], + 'schema' => ['description' => '发布单描述信息。', 'type' => 'string', 'required' => false, 'example' => 'Start application'], ], [ 'name' => 'WarStartOptions', 'in' => 'query', - 'schema' => [ - 'description' => '设置WAR包部署应用的启动命令,操作步骤与镜像部署的启动命令配置操作相同。更多信息,请参见[设置启动命令](~~96677~~)。', - 'type' => 'string', - 'required' => false, - 'example' => 'CATALINA_OPTS=\\"$CATALINA_OPTS $Options\\" catalina.sh run', - ], + 'schema' => ['description' => '设置WAR包部署应用的启动命令,操作步骤与镜像部署的启动命令配置操作相同。更多信息,请参见[设置启动命令](~~96677~~)。', 'type' => 'string', 'required' => false, 'example' => 'CATALINA_OPTS=\\"$CATALINA_OPTS $Options\\" catalina.sh run'], ], [ 'name' => 'AutoEnableApplicationScalingRule', 'in' => 'query', - 'schema' => [ - 'description' => '是否自动启用应用弹性伸缩策略。取值说明如下:'."\n" - .'- **true**:开启。'."\n" - .'- **false**:关闭。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'schema' => ['description' => '是否自动启用应用弹性伸缩策略。取值说明如下:'."\n" + .'- **true**:开启。'."\n" + .'- **false**:关闭。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], [ 'name' => 'ConfigMapMountDesc', 'in' => 'formData', - 'schema' => [ - 'description' => '**ConfigMap**挂载描述。使用在命名空间配置项页面创建的配置项来向容器中注入配置信息。参数说明如下:'."\n" - ."\n" - .'- **configMapId**:ConfigMap实例ID。可通过调用[ListNamespacedConfigMaps](~~176917~~)接口获取。'."\n" - .'- **key**:键值。'."\n" - ."\n" - .'> 可通过传递`sae-sys-configmap-all`参数挂载所有键。'."\n" - ."\n" - .'- **mountPath**:挂载路径。', - 'type' => 'string', - 'required' => false, - 'example' => '[{"configMapId":16,"key":"test","mountPath":"/tmp"}]', - ], + 'schema' => ['description' => '**ConfigMap**挂载描述。使用在命名空间配置项页面创建的配置项来向容器中注入配置信息。参数说明如下:'."\n" + ."\n" + .'- **configMapId**:ConfigMap实例ID。可通过调用[ListNamespacedConfigMaps](~~176917~~)接口获取。'."\n" + .'- **key**:键值。'."\n" + ."\n" + .'> 可通过传递`sae-sys-configmap-all`参数挂载所有键。'."\n" + ."\n" + .'- **mountPath**:挂载路径。', 'type' => 'string', 'required' => false, 'example' => '[{"configMapId":16,"key":"test","mountPath":"/tmp"}]'], ], [ 'name' => 'TerminationGracePeriodSeconds', 'in' => 'query', - 'schema' => [ - 'description' => '优雅下线超时时间,默认为30,单位为秒。取值范围为1~300。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'maximum' => '6000', - 'minimum' => '0', - 'example' => '10', - 'default' => '30', - ], + 'schema' => ['description' => '优雅下线超时时间,默认为30,单位为秒。取值范围为1~300。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '6000', 'minimum' => '0', 'example' => '10', 'default' => '30'], ], [ 'name' => 'EnableAhas', 'in' => 'query', - 'schema' => [ - 'description' => '是否接入AHAS。取值说明如下:'."\n" - ."\n" - .'- **true**:接入AHAS。'."\n" - .'- **false**:不接入AHAS。', - 'type' => 'string', - 'required' => false, - 'example' => 'false', - ], + 'schema' => ['description' => '是否接入AHAS。取值说明如下:'."\n" + ."\n" + .'- **true**:接入AHAS。'."\n" + .'- **false**:不接入AHAS。', 'type' => 'string', 'required' => false, 'example' => 'false'], ], [ 'name' => 'PhpArmsConfigLocation', 'in' => 'query', - 'schema' => [ - 'description' => 'PHP应用监控挂载路径,需要您保证PHP服务器一定会加载这个路径的配置文件。您无需关注配置内容,SAE会自动渲染正确的配置文件。', - 'type' => 'string', - 'required' => false, - 'example' => '/usr/local/etc/php/conf.d/arms.ini', - ], + 'schema' => ['description' => 'PHP应用监控挂载路径,需要您保证PHP服务器一定会加载这个路径的配置文件。您无需关注配置内容,SAE会自动渲染正确的配置文件。', 'type' => 'string', 'required' => false, 'example' => '/usr/local/etc/php/conf.d/arms.ini'], ], [ 'name' => 'PhpConfigLocation', 'in' => 'query', - 'schema' => [ - 'description' => 'PHP应用启动配置挂载路径,需要您保证PHP服务器会使用这个配置文件启动。', - 'type' => 'string', - 'required' => false, - 'example' => '/usr/local/etc/php/php.ini', - ], + 'schema' => ['description' => 'PHP应用启动配置挂载路径,需要您保证PHP服务器会使用这个配置文件启动。', 'type' => 'string', 'required' => false, 'example' => '/usr/local/etc/php/php.ini'], ], [ 'name' => 'PhpConfig', 'in' => 'formData', - 'schema' => [ - 'description' => 'PHP配置文件内容。', - 'type' => 'string', - 'required' => false, - 'example' => 'k1=v1', - ], + 'schema' => ['description' => 'PHP配置文件内容。', 'type' => 'string', 'required' => false, 'example' => 'k1=v1'], ], [ 'name' => 'TomcatConfig', 'in' => 'query', - 'schema' => [ - 'description' => 'Tomcat文件配置,设置为""或"{}"表示删除配置。取值说明如下:'."\n" - ."\n" - .'- **port**:端口范围为1024~65535,小于1024的端口需要Root权限才能操作。因为容器配置的是Admin权限,所以请填写大于1024的端口。如果不配置,则默认为8080。'."\n" - .'- **contextPath**:访问路径,默认为根目录"/"。'."\n" - .'- **maxThreads**:配置连接池的连接数大小,默认大小为400。'."\n" - .'- **uriEncoding**:Tomcat的编码格式,包括**UTF-8**、**ISO-8859-1**、**GBK和GB2312**。如果不设置,则默认为**ISO-8859-1**。'."\n" - .'- **useBodyEncodingForUri**:是否使用**BodyEncoding for URL**,默认为**true**。', - 'type' => 'string', - 'required' => false, - 'example' => '{"port":8080,"contextPath":"/","maxThreads":400,"uriEncoding":"ISO-8859-1","useBodyEncodingForUri":true}', - ], + 'schema' => ['description' => 'Tomcat文件配置,设置为""或"{}"表示删除配置。取值说明如下:'."\n" + ."\n" + .'- **port**:端口范围为1024~65535,小于1024的端口需要Root权限才能操作。因为容器配置的是Admin权限,所以请填写大于1024的端口。如果不配置,则默认为8080。'."\n" + .'- **contextPath**:访问路径,默认为根目录"/"。'."\n" + .'- **maxThreads**:配置连接池的连接数大小,默认大小为400。'."\n" + .'- **uriEncoding**:Tomcat的编码格式,包括**UTF-8**、**ISO-8859-1**、**GBK和GB2312**。如果不设置,则默认为**ISO-8859-1**。'."\n" + .'- **useBodyEncodingForUri**:是否使用**BodyEncoding for URL**,默认为**true**。', 'type' => 'string', 'required' => false, 'example' => '{"port":8080,"contextPath":"/","maxThreads":400,"uriEncoding":"ISO-8859-1","useBodyEncodingForUri":true}'], ], [ 'name' => 'OssMountDescs', 'in' => 'formData', - 'schema' => [ - 'title' => 'OSS挂载描述信息', - 'description' => 'OSS挂载描述信息。参数说明如下:'."\n" - ."\n" - .'- **bucketName**:Bucket名称。'."\n" - .'- **bucketPath**:您在OSS创建的目录或OSS对象,如果OSS挂载目录不存在,会触发异常。'."\n" - .'- **mountPath**:您在SAE的容器路径。如果路径已存在,为覆盖关系;如果路径不存在,会新建。'."\n" - .'- **readOnly**:容器路径是否对挂载目录资源有可读权限,取值说明如下:'."\n" - .' - **true**:只读权限。'."\n" - .' - **false**:读写权限。', - 'type' => 'string', - 'required' => false, - 'example' => '[{"bucketName": "oss-bucket", "bucketPath": "data/user.data", "mountPath": "/usr/data/user.data", "readOnly": true}]', - ], + 'schema' => ['title' => 'OSS挂载描述信息', 'description' => 'OSS挂载描述信息。参数说明如下:'."\n" + ."\n" + .'- **bucketName**:Bucket名称。'."\n" + .'- **bucketPath**:您在OSS创建的目录或OSS对象,如果OSS挂载目录不存在,会触发异常。'."\n" + .'- **mountPath**:您在SAE的容器路径。如果路径已存在,为覆盖关系;如果路径不存在,会新建。'."\n" + .'- **readOnly**:容器路径是否对挂载目录资源有可读权限,取值说明如下:'."\n" + .' - **true**:只读权限。'."\n" + .' - **false**:读写权限。', 'type' => 'string', 'required' => false, 'example' => '[{"bucketName": "oss-bucket", "bucketPath": "data/user.data", "mountPath": "/usr/data/user.data", "readOnly": true}]'], ], [ 'name' => 'OssAkId', 'in' => 'formData', - 'schema' => [ - 'title' => 'OSS使用的AKID', - 'description' => 'OSS读写的AccessKey ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'xxxxxx', - ], + 'schema' => ['title' => 'OSS使用的AKID', 'description' => 'OSS读写的AccessKey ID。', 'type' => 'string', 'required' => false, 'example' => 'xxxxxx'], ], [ 'name' => 'OssAkSecret', 'in' => 'formData', - 'schema' => [ - 'title' => 'OSS AKID对应的secret', - 'description' => 'OSS读写的AccessKey Secret。', - 'type' => 'string', - 'required' => false, - 'example' => 'xxxxxx', - ], + 'schema' => ['title' => 'OSS AKID对应的secret', 'description' => 'OSS读写的AccessKey Secret。', 'type' => 'string', 'required' => false, 'example' => 'xxxxxx'], ], [ 'name' => 'EnableGreyTagRoute', 'in' => 'query', - 'schema' => [ - 'title' => '是否开启发布流量灰度规则', - 'description' => '是否启用流量灰度规则。该规则仅适用于Spring Cloud和Dubbo框架的应用。取值说明如下:'."\n" - ."\n" - .'- **true**:启用灰度规则。'."\n" - .'- **false**:禁用灰度规则。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], + 'schema' => ['title' => '是否开启发布流量灰度规则', 'description' => '是否启用流量灰度规则。该规则仅适用于Spring Cloud和Dubbo框架的应用。取值说明如下:'."\n" + ."\n" + .'- **true**:启用灰度规则。'."\n" + .'- **false**:禁用灰度规则。', 'type' => 'boolean', 'required' => false, 'example' => 'false'], ], [ 'name' => 'Php', 'in' => 'formData', - 'schema' => [ - 'title' => 'PHP部署包依赖的PHP版本。镜像不支持', - 'description' => 'PHP部署包依赖的PHP版本。镜像不支持。', - 'type' => 'string', - 'required' => false, - 'example' => 'PHP-FPM 7.0', - ], + 'schema' => ['title' => 'PHP部署包依赖的PHP版本。镜像不支持', 'description' => 'PHP部署包依赖的PHP版本。镜像不支持。', 'type' => 'string', 'required' => false, 'example' => 'PHP-FPM 7.0'], ], [ 'name' => 'AcrInstanceId', 'in' => 'formData', - 'schema' => [ - 'title' => 'ACR 企业版实例 ID', - 'description' => 'ACR企业版实例ID。当**ImageUrl**为容器镜像服务企业版时必填。', - 'type' => 'string', - 'required' => false, - 'example' => 'cri-xxxxxx', - ], + 'schema' => ['title' => 'ACR 企业版实例 ID', 'description' => 'ACR企业版实例ID。当**ImageUrl**为容器镜像服务企业版时必填。', 'type' => 'string', 'required' => false, 'example' => 'cri-xxxxxx'], ], [ 'name' => 'AcrAssumeRoleArn', 'in' => 'query', - 'schema' => [ - 'description' => '跨账号拉取镜像时所需的RAM角色的ARN。更多信息,请参见[通过RAM角色实现跨云账号授权](~~223585~~)。', - 'type' => 'string', - 'required' => false, - 'example' => 'acs:ram::123456789012****:role/adminrole', - ], + 'schema' => ['description' => '跨账号拉取镜像时所需的RAM角色的ARN。更多信息,请参见[通过RAM角色实现跨云账号授权](~~223585~~)。', 'type' => 'string', 'required' => false, 'example' => 'acs:ram::123456789012****:role/adminrole'], ], [ 'name' => 'ImagePullSecrets', 'in' => 'query', - 'schema' => [ - 'description' => '对应保密字典ID。', - 'type' => 'string', - 'required' => false, - 'example' => '10', - ], + 'schema' => ['description' => '对应保密字典ID。', 'type' => 'string', 'required' => false, 'example' => '10'], ], [ 'name' => 'AssociateEip', 'in' => 'formData', - 'schema' => [ - 'title' => '是否绑定EIP', - 'description' => '是否绑定EIP。取值说明如下:'."\n" - ."\n" - .'- **true**:绑定。'."\n" - .'- **false**:不绑定。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'schema' => ['title' => '是否绑定EIP', 'description' => '是否绑定EIP。取值说明如下:'."\n" + ."\n" + .'- **true**:绑定。'."\n" + .'- **false**:不绑定。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], [ 'name' => 'KafkaConfigs', 'in' => 'query', - 'schema' => [ - 'description' => '日志采集到Kafka的配置汇总信息。取值说明如下:'."\n" - ."\n" - .'- **kafkaEndpoint**:Kafka API的服务接入地址。'."\n" - .'- **kafkaInstanceId**:Kafka实例ID。'."\n" - .'- **kafkaConfigs**:单条或多条日志的配置汇总信息。示例值与参数说明,请参见本文的请求参数** kafkaConfigs**。', - 'type' => 'string', - 'required' => false, - 'example' => '{"kafkaEndpoint":"10.0.X.XXX:XXXX,10.0.X.XXX:XXXX,10.0.X.XXX:XXXX","kafkaInstanceId":"alikafka_pre-cn-7pp2l8kr****","kafkaConfigs":[{"logType":"file_log","logDir":"/tmp/a.log","kafkaTopic":"test2"},{"logType":"stdout","logDir":"","kafkaTopic":"test"}]}', - ], + 'schema' => ['description' => '日志采集到Kafka的配置汇总信息。取值说明如下:'."\n" + ."\n" + .'- **kafkaEndpoint**:Kafka API的服务接入地址。'."\n" + .'- **kafkaInstanceId**:Kafka实例ID。'."\n" + .'- **kafkaConfigs**:单条或多条日志的配置汇总信息。示例值与参数说明,请参见本文的请求参数** kafkaConfigs**。', 'type' => 'string', 'required' => false, 'example' => '{"kafkaEndpoint":"10.0.X.XXX:XXXX,10.0.X.XXX:XXXX,10.0.X.XXX:XXXX","kafkaInstanceId":"alikafka_pre-cn-7pp2l8kr****","kafkaConfigs":[{"logType":"file_log","logDir":"/tmp/a.log","kafkaTopic":"test2"},{"logType":"stdout","logDir":"","kafkaTopic":"test"}]}'], ], [ 'name' => 'PvtzDiscoverySvc', 'in' => 'query', - 'schema' => [ - 'description' => '开启K8s Service服务注册发现。取值说明如下:'."\n" - ."\n" - .'- **portProtocols**:端口与协议。端口取值范围为\\[1,65535],协议支持**TCP**和**UDP**。'."\n" - .'- **portAndProtocol**:端口与协议。端口取值范围为\\[1,65535],协议支持**TCP**和**UDP**。**优先推荐portProtocols,如果设置了portProtocols,仅portProtocols生效**。'."\n" - .'- **enable**:开启K8s Service服务注册发现。', - 'type' => 'string', - 'required' => false, - 'example' => '{"portProtocols":[{"port":18012,"protocol":"TCP"}],"portAndProtocol":{"18012":"TCP"},"enable":true}', - ], + 'schema' => ['description' => '开启K8s Service服务注册发现。取值说明如下:'."\n" + ."\n" + .'- **portProtocols**:端口与协议。端口取值范围为\\[1,65535],协议支持**TCP**和**UDP**。'."\n" + .'- **portAndProtocol**:端口与协议。端口取值范围为\\[1,65535],协议支持**TCP**和**UDP**。**优先推荐portProtocols,如果设置了portProtocols,仅portProtocols生效**。'."\n" + .'- **enable**:开启K8s Service服务注册发现。', 'type' => 'string', 'required' => false, 'example' => '{"portProtocols":[{"port":18012,"protocol":"TCP"}],"portAndProtocol":{"18012":"TCP"},"enable":true}'], ], [ 'name' => 'SwimlanePvtzDiscoverySvc', 'in' => 'formData', - 'schema' => [ - 'description' => '配置基于K8s Service服务注册发现和全链路灰度功能:'."\n" - ."\n" - .'- enable:是否开启基于K8s Service配置全链路灰度功能'."\n" - .' - true:开启'."\n" - .' - false:关闭'."\n" - .'- namespaceId:命名空间ID。'."\n" - .'- portAndProtocol:监听端口及协议,格式:{"端口:协议类型":"容器端口"}'."\n" - .'- portProtocols:定义服务的端口及协议'."\n" - .' - port:端口'."\n" - .' - protocol:协议'."\n" - .' - targetPort:容器端口'."\n" - .'- pvtzDiscoveryName:服务发现名称'."\n" - .'- serviceId:服务ID'."\n" - .'- serviceName:服务名称', - 'type' => 'string', - 'required' => false, - 'example' => '{\\"enable\\":\\"false\\",\\"namespaceId\\":\\"cn-beijing:test\\",\\"portAndProtocol\\":{\\"2000:TCP\\":\\"18081\\"},\\"portProtocols\\":[{\\"port\\":2000,\\"protocol\\":\\"TCP\\",\\"targetPort\\":18081}],\\"pvtzDiscoveryName\\":\\"cn-beijing-1421801774382676\\",\\"serviceId\\":\\"3513\\",\\"serviceName\\":\\"demo-gray.test\\"}', - ], + 'schema' => ['description' => '配置基于K8s Service服务注册发现和全链路灰度功能:'."\n" + ."\n" + .'- enable:是否开启基于K8s Service配置全链路灰度功能'."\n" + .' - true:开启'."\n" + .' - false:关闭'."\n" + .'- namespaceId:命名空间ID。'."\n" + .'- portAndProtocol:监听端口及协议,格式:{"端口:协议类型":"容器端口"}'."\n" + .'- portProtocols:定义服务的端口及协议'."\n" + .' - port:端口'."\n" + .' - protocol:协议'."\n" + .' - targetPort:容器端口'."\n" + .'- pvtzDiscoveryName:服务发现名称'."\n" + .'- serviceId:服务ID'."\n" + .'- serviceName:服务名称', 'type' => 'string', 'required' => false, 'example' => '{\\"enable\\":\\"false\\",\\"namespaceId\\":\\"cn-beijing:test\\",\\"portAndProtocol\\":{\\"2000:TCP\\":\\"18081\\"},\\"portProtocols\\":[{\\"port\\":2000,\\"protocol\\":\\"TCP\\",\\"targetPort\\":18081}],\\"pvtzDiscoveryName\\":\\"cn-beijing-1421801774382676\\",\\"serviceId\\":\\"3513\\",\\"serviceName\\":\\"demo-gray.test\\"}'], ], [ 'name' => 'MicroRegistration', 'in' => 'query', - 'schema' => [ - 'description' => '选择Nacos注册中心,取值说明如下:'."\n" - .'- **0**:SAE内置Nacos。'."\n" - .'- **1**:用户自建Nacos。'."\n" - .'- **2**:MSE商业版Nacos。'."\n" - ."\n" - .'> 如果选择SAE内置Nacos,则无法获取到内置Nacos的配置。', - 'type' => 'string', - 'required' => false, - 'example' => '"0"', - ], + 'schema' => ['description' => '选择Nacos注册中心,取值说明如下:'."\n" + .'- **0**:SAE内置Nacos。'."\n" + .'- **1**:用户自建Nacos。'."\n" + .'- **2**:MSE商业版Nacos。'."\n" + ."\n" + .'> 如果选择SAE内置Nacos,则无法获取到内置Nacos的配置。', 'type' => 'string', 'required' => false, 'example' => '"0"'], ], [ 'name' => 'MicroRegistrationConfig', 'in' => 'formData', - 'schema' => [ - 'title' => '注册中心配置,仅在注册中心类型为MSE Nacos企业版时生效', - 'description' => '注册中心配置,仅在注册中心类型为MSE Nacos企业版时生效', - 'type' => 'string', - 'required' => false, - 'example' => '{\\"instanceId\\":\\"mse-cn-zvp2bh6h70r\\",\\"namespace\\":\\"4c0aa74f-57cb-423c-b6af-5d9f2d0e3dbd\\"}', - ], + 'schema' => ['title' => '注册中心配置,仅在注册中心类型为MSE Nacos企业版时生效', 'description' => '注册中心配置,仅在注册中心类型为MSE Nacos企业版时生效', 'type' => 'string', 'required' => false, 'example' => '{\\"instanceId\\":\\"mse-cn-zvp2bh6h70r\\",\\"namespace\\":\\"4c0aa74f-57cb-423c-b6af-5d9f2d0e3dbd\\"}'], ], [ 'name' => 'NasConfigs', 'in' => 'query', - 'schema' => [ - 'description' => '挂载NAS的配置。取值说明如下:'."\n" - .'- **mountPath**:容器挂载路径。'."\n" - .'- **readOnly**:取值为**false**时,表示拥有读写权限。'."\n" - .'- **nasId**:NAS ID。'."\n" - .'- **mountDomain**:容器挂载点地址。更多信息,请参见[DescribeMountTargets](~~62626~~)。'."\n" - .'- **nasPath**:NAS相对文件目录。', - 'type' => 'string', - 'required' => false, - 'example' => '[{"mountPath":"/test1","readOnly":false,"nasId":"nasId1","mountDomain":"nasId1.cn-shenzhen.nas.aliyuncs.com","nasPath":"/test1"},{"nasId":"nasId2","mountDomain":"nasId2.cn-shenzhen.nas.aliyuncs.com","readOnly":false,"nasPath":"/test2","mountPath":"/test2"}]', - ], + 'schema' => ['description' => '挂载NAS的配置。取值说明如下:'."\n" + .'- **mountPath**:容器挂载路径。'."\n" + .'- **readOnly**:取值为**false**时,表示拥有读写权限。'."\n" + .'- **nasId**:NAS ID。'."\n" + .'- **mountDomain**:容器挂载点地址。更多信息,请参见[DescribeMountTargets](~~62626~~)。'."\n" + .'- **nasPath**:NAS相对文件目录。', 'type' => 'string', 'required' => false, 'example' => '[{"mountPath":"/test1","readOnly":false,"nasId":"nasId1","mountDomain":"nasId1.cn-shenzhen.nas.aliyuncs.com","nasPath":"/test1"},{"nasId":"nasId2","mountDomain":"nasId2.cn-shenzhen.nas.aliyuncs.com","readOnly":false,"nasPath":"/test2","mountPath":"/test2"}]'], ], [ 'name' => 'Python', 'in' => 'query', - 'schema' => [ - 'description' => 'Python环境。支持**PYTHON 3.9.15**。', - 'type' => 'string', - 'required' => false, - 'example' => 'PYTHON 3.9.15', - ], + 'schema' => ['description' => 'Python环境。支持**PYTHON 3.9.15**。', 'type' => 'string', 'required' => false, 'example' => 'PYTHON 3.9.15'], ], [ 'name' => 'PythonModules', 'in' => 'query', - 'schema' => [ - 'description' => '自定义安装模块依赖。默认安装根目录下requirements.txt定义的依赖项。如果未配置或自定义软件包,可以指定安装的依赖。', - 'type' => 'string', - 'required' => false, - 'example' => 'Flask==2.0', - ], + 'schema' => ['description' => '自定义安装模块依赖。默认安装根目录下requirements.txt定义的依赖项。如果未配置或自定义软件包,可以指定安装的依赖。', 'type' => 'string', 'required' => false, 'example' => 'Flask==2.0'], ], [ 'name' => 'Dotnet', 'in' => 'query', - 'schema' => [ - 'description' => '.NET 框架的版本号: '."\n" - ."\n" - .'- .NET 3.1'."\n" - .'- .NET 5.0'."\n" - .'- .NET 6.0'."\n" - .'- .NET 7.0'."\n" - .'- .NET 8.0', - 'type' => 'string', - 'required' => false, - 'example' => '.NET 3.1', - ], + 'schema' => ['description' => '.NET 框架的版本号: '."\n" + ."\n" + .'- .NET 3.1'."\n" + .'- .NET 5.0'."\n" + .'- .NET 6.0'."\n" + .'- .NET 7.0'."\n" + .'- .NET 8.0', 'type' => 'string', 'required' => false, 'example' => '.NET 3.1'], ], [ 'name' => 'Deploy', 'in' => 'query', - 'schema' => [ - 'description' => '该参数仅对停止状态的应用生效。如果运行中的应用调用**DeployApplication**接口,会立即重新部署。'."\n" - .'- **true**:默认值。表示立即部署,生效新的部署配置,并立即拉起实例。'."\n" - .'- **false**:表示仅生效新的部署配置,不会拉起应用实例。', - 'type' => 'string', - 'required' => false, - 'example' => 'true', - ], + 'schema' => ['description' => '该参数仅对停止状态的应用生效。如果运行中的应用调用**DeployApplication**接口,会立即重新部署。'."\n" + .'- **true**:默认值。表示立即部署,生效新的部署配置,并立即拉起实例。'."\n" + .'- **false**:表示仅生效新的部署配置,不会拉起应用实例。', 'type' => 'string', 'required' => false, 'example' => 'true'], ], [ 'name' => 'PackageType', 'in' => 'query', - 'schema' => [ - 'description' => '应用包类型。取值说明如下:'."\n" - ."\n" - .'- 当您选择用Java部署时,支持**FatJar**、**War**和**Image**。'."\n" - .'- 当您选择用PHP部署时,支持类型如下:'."\n" - .' - **PhpZip**'."\n" - .' - **IMAGE\\_PHP\\_5\\_4**'."\n" - .' - **IMAGE\\_PHP\\_5\\_4\\_ALPINE**'."\n" - .' - **IMAGE\\_PHP\\_5\\_5**'."\n" - .' - **IMAGE\\_PHP\\_5\\_5\\_ALPINE**'."\n" - .' - **IMAGE\\_PHP\\_5\\_6**'."\n" - .' - **IMAGE\\_PHP\\_5\\_6\\_ALPINE**'."\n" - .' - **IMAGE\\_PHP\\_7\\_0**'."\n" - .' - **IMAGE\\_PHP\\_7\\_0\\_ALPINE**'."\n" - .' - **IMAGE\\_PHP\\_7\\_1**'."\n" - .' - **IMAGE\\_PHP\\_7\\_1\\_ALPINE**'."\n" - .' - **IMAGE\\_PHP\\_7\\_2**'."\n" - .' - **IMAGE\\_PHP\\_7\\_2\\_ALPINE**'."\n" - .' - **IMAGE\\_PHP\\_7\\_3**'."\n" - .' - **IMAGE\\_PHP\\_7\\_3\\_ALPINE**'."\n" - .'- 当您选择用Python部署时,支持**PythonZip**和**Image**。', - 'type' => 'string', - 'required' => false, - 'example' => 'FatJar', - ], + 'schema' => ['description' => '应用包类型。取值说明如下:'."\n" + ."\n" + .'- 当您选择用Java部署时,支持**FatJar**、**War**和**Image**。'."\n" + .'- 当您选择用PHP部署时,支持类型如下:'."\n" + .' - **PhpZip**'."\n" + .' - **IMAGE\\_PHP\\_5\\_4**'."\n" + .' - **IMAGE\\_PHP\\_5\\_4\\_ALPINE**'."\n" + .' - **IMAGE\\_PHP\\_5\\_5**'."\n" + .' - **IMAGE\\_PHP\\_5\\_5\\_ALPINE**'."\n" + .' - **IMAGE\\_PHP\\_5\\_6**'."\n" + .' - **IMAGE\\_PHP\\_5\\_6\\_ALPINE**'."\n" + .' - **IMAGE\\_PHP\\_7\\_0**'."\n" + .' - **IMAGE\\_PHP\\_7\\_0\\_ALPINE**'."\n" + .' - **IMAGE\\_PHP\\_7\\_1**'."\n" + .' - **IMAGE\\_PHP\\_7\\_1\\_ALPINE**'."\n" + .' - **IMAGE\\_PHP\\_7\\_2**'."\n" + .' - **IMAGE\\_PHP\\_7\\_2\\_ALPINE**'."\n" + .' - **IMAGE\\_PHP\\_7\\_3**'."\n" + .' - **IMAGE\\_PHP\\_7\\_3\\_ALPINE**'."\n" + .'- 当您选择用Python部署时,支持**PythonZip**和**Image**。', 'type' => 'string', 'required' => false, 'example' => 'FatJar'], ], [ 'name' => 'Cpu', 'in' => 'query', - 'schema' => [ - 'description' => '每个实例所需的CPU,单位为毫核,不能为0。目前仅支持以下固定规格:'."\n" - .'- **500**'."\n" - .'- **1000**'."\n" - .'- **2000**'."\n" - .'- **4000**'."\n" - .'- **8000**'."\n" - .'- **12000**'."\n" - .'- **16000**'."\n" - .'- **32000**', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1000', - ], + 'schema' => ['description' => '每个实例所需的CPU,单位为毫核,不能为0。目前仅支持以下固定规格:'."\n" + .'- **500**'."\n" + .'- **1000**'."\n" + .'- **2000**'."\n" + .'- **4000**'."\n" + .'- **8000**'."\n" + .'- **12000**'."\n" + .'- **16000**'."\n" + .'- **32000**', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1000'], ], [ 'name' => 'Memory', 'in' => 'query', - 'schema' => [ - 'description' => '每个实例所需的内存,单位为MB,不能为0。与CPU为一一对应关系,目前仅支持以下固定规格:'."\n" - .'- **1024**:对应CPU为500毫核和1000毫核。'."\n" - .'- **2048**:对应CPU为500、1000毫核和2000毫核。'."\n" - .'- **4096**:对应CPU为1000、2000毫核和4000毫核。'."\n" - .'- **8192**:对应CPU为2000、4000毫核和8000毫核。'."\n" - .'- **12288**:对应CPU为12000毫核。'."\n" - .'- **16384**:对应CPU为4000、8000毫核和16000毫核。'."\n" - .'- **24576**:对应CPU为12000毫核。'."\n" - .'- **32768**:对应CPU为16000毫核。'."\n" - .'- **65536**:对应CPU为8000、16000和32000毫核。'."\n" - .'- **131072**:对应CPU为32000毫核。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1024', - ], + 'schema' => ['description' => '每个实例所需的内存,单位为MB,不能为0。与CPU为一一对应关系,目前仅支持以下固定规格:'."\n" + .'- **1024**:对应CPU为500毫核和1000毫核。'."\n" + .'- **2048**:对应CPU为500、1000毫核和2000毫核。'."\n" + .'- **4096**:对应CPU为1000、2000毫核和4000毫核。'."\n" + .'- **8192**:对应CPU为2000、4000毫核和8000毫核。'."\n" + .'- **12288**:对应CPU为12000毫核。'."\n" + .'- **16384**:对应CPU为4000、8000毫核和16000毫核。'."\n" + .'- **24576**:对应CPU为12000毫核。'."\n" + .'- **32768**:对应CPU为16000毫核。'."\n" + .'- **65536**:对应CPU为8000、16000和32000毫核。'."\n" + .'- **131072**:对应CPU为32000毫核。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1024'], ], [ 'name' => 'Replicas', 'in' => 'query', - 'schema' => [ - 'description' => '实例数。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], + 'schema' => ['description' => '实例数。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ 'name' => 'SecurityGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '安全组ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'sg-wz969ngg2e49q5i4****', - ], + 'schema' => ['description' => '安全组ID。', 'type' => 'string', 'required' => false, 'example' => 'sg-wz969ngg2e49q5i4****'], ], [ 'name' => 'VSwitchId', 'in' => 'query', - 'schema' => [ - 'description' => '应用实例弹性网卡所在的虚拟交换机。该交换机必须位于上述VPC内。', - 'type' => 'string', - 'required' => false, - 'example' => 'vsw-bp12mw1f8k3jgygk9****', - ], + 'schema' => ['description' => '应用实例弹性网卡所在的虚拟交换机。该交换机必须位于上述VPC内。', 'type' => 'string', 'required' => false, 'example' => 'vsw-bp12mw1f8k3jgygk9****'], ], [ 'name' => 'ServiceTags', 'in' => 'formData', - 'schema' => [ - 'description' => '应用配置的灰度标签', - 'type' => 'string', - 'required' => false, - 'example' => '{\\"alicloud.service.tag\\":\\"g1\\"}', - ], + 'schema' => ['description' => '应用配置的灰度标签', 'type' => 'string', 'required' => false, 'example' => '{\\"alicloud.service.tag\\":\\"g1\\"}'], ], [ 'name' => 'EnableNewArms', 'in' => 'query', - 'schema' => [ - 'description' => '是否启用新的ARMS功能:'."\n" - ."\n" - .'- true:启用'."\n" - .'- false:不启用', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'schema' => ['description' => '是否启用新的ARMS功能:'."\n" + ."\n" + .'- true:启用'."\n" + .'- false:不启用', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], [ 'name' => 'EnableCpuBurst', 'in' => 'query', - 'schema' => [ - 'description' => '是否启用CPU Burst功能:'."\n" - ."\n" - .'- true:启用'."\n" - .'- false:不启用', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'schema' => ['description' => '是否启用CPU Burst功能:'."\n" + ."\n" + .'- true:启用'."\n" + .'- false:不启用', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], [ 'name' => 'OidcRoleName', 'in' => 'query', - 'schema' => [ - 'description' => '设置身份认证服务RAM角色。'."\n" - ."\n\n" - .'> 需要提前创建同地域的OIDC身份供应商和身份供应商角色。具体信息,请参见[创建OIDC身份供应商](~~2331022~~)和[创建角色SSO身份提供商](~~2331016~~)。', - 'type' => 'string', - 'required' => false, - 'example' => 'sae-test', - ], + 'schema' => ['description' => '设置身份认证服务RAM角色。'."\n" + ."\n\n" + .'> 需要提前创建同地域的OIDC身份供应商和身份供应商角色。具体信息,请参见[创建OIDC身份供应商](~~2331022~~)和[创建角色SSO身份提供商](~~2331016~~)。', 'type' => 'string', 'required' => false, 'example' => 'sae-test'], ], [ 'name' => 'SidecarContainersConfig', @@ -16373,96 +7049,67 @@ 'schema' => [ 'description' => '容器配置信息。', 'type' => 'array', - 'items' => [ - 'description' => '容器配置信息。', - 'required' => false, - '$ref' => '#/components/schemas/SidecarContainerConfig', - ], + 'items' => ['description' => '容器配置信息。', 'required' => false, '$ref' => '#/components/schemas/SidecarContainerConfig'], 'required' => false, ], ], [ 'name' => 'SecretMountDesc', 'in' => 'query', - 'schema' => [ - 'description' => '**Secret**挂载描述。使用在命名空间保密字典页面创建的保密字典来向容器中注入保密信息。参数说明如下:'."\n" - ."\n" - .'- **secretId**:secret实例ID。可通过ListSecrets接口获取。'."\n" - .'- **key**:键值。'."\n" - ."\n" - .'> 可通过传递`sae-sys-secret-all`参数挂载所有键。'."\n" - ."\n" - .'- **mountPath**:挂载路径。', - 'type' => 'string', - 'required' => false, - 'example' => '[{“secretId":10,”key":"test","mountPath":"/tmp"}]', - ], + 'schema' => ['description' => '**Secret**挂载描述。使用在命名空间保密字典页面创建的保密字典来向容器中注入保密信息。参数说明如下:'."\n" + ."\n" + .'- **secretId**:secret实例ID。可通过ListSecrets接口获取。'."\n" + .'- **key**:键值。'."\n" + ."\n" + .'> 可通过传递`sae-sys-secret-all`参数挂载所有键。'."\n" + ."\n" + .'- **mountPath**:挂载路径。', 'type' => 'string', 'required' => false, 'example' => '[{“secretId":10,”key":"test","mountPath":"/tmp"}]'], ], [ 'name' => 'EnableSidecarResourceIsolated', 'in' => 'formData', - 'schema' => [ - 'description' => '是否启用Sidecar资源隔离:'."\n" - ."\n" - .'- true:进行隔离'."\n" - .'- false:不进行隔离', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'schema' => ['description' => '是否启用Sidecar资源隔离:'."\n" + ."\n" + .'- true:进行隔离'."\n" + .'- false:不进行隔离', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], [ 'name' => 'CustomImageNetworkType', 'in' => 'query', - 'schema' => [ - 'description' => '自定义镜像类型,如果非自定义镜像,需要设置为空字符串:'."\n" - ."\n" - .'- internet:公网镜像'."\n" - .'- intranet:私网镜像', - 'type' => 'string', - 'required' => false, - 'example' => 'internet', - ], + 'schema' => ['description' => '自定义镜像类型,如果非自定义镜像,需要设置为空字符串:'."\n" + ."\n" + .'- internet:公网镜像'."\n" + .'- intranet:私网镜像', 'type' => 'string', 'required' => false, 'example' => 'internet'], ], [ 'name' => 'MicroserviceEngineConfig', 'in' => 'query', - 'schema' => [ - 'description' => '配置微服务治理功能。'."\n" - ."\n" - .'- 是否开启微服务治理(enable):'."\n" - ."\n" - .' - ture:开启'."\n" - ."\n" - .' - false:不开启'."\n" - ."\n" - .'- 配置无损上下线(mseLosslessRule):'."\n" - ."\n" - .' - delayTime:延迟事件'."\n" - ."\n" - .' - enable:是否启用无损上线功能,ture为开启,false为不开启。'."\n" - ."\n" - .' - notice:是否启用通知功能,ture为启用,false为启用。'."\n" - ."\n" - .' - warmupTime:小流量预热时长,单位为秒。', - 'type' => 'string', - 'required' => false, - 'example' => '{"enable": true,"mseLosslessRule": {"delayTime": 0,"enable": false,"notice": false,"warmupTime": 120}}', - ], + 'schema' => ['description' => '配置微服务治理功能。'."\n" + ."\n" + .'- 是否开启微服务治理(enable):'."\n" + ."\n" + .' - ture:开启'."\n" + ."\n" + .' - false:不开启'."\n" + ."\n" + .'- 配置无损上下线(mseLosslessRule):'."\n" + ."\n" + .' - delayTime:延迟事件'."\n" + ."\n" + .' - enable:是否启用无损上线功能,ture为开启,false为不开启。'."\n" + ."\n" + .' - notice:是否启用通知功能,ture为启用,false为启用。'."\n" + ."\n" + .' - warmupTime:小流量预热时长,单位为秒。', 'type' => 'string', 'required' => false, 'example' => '{"enable": true,"mseLosslessRule": {"delayTime": 0,"enable": false,"notice": false,"warmupTime": 120}}'], ], [ 'name' => 'NewSaeVersion', 'in' => 'query', - 'schema' => [ - 'description' => '应用版本:'."\n" - ."\n" - .'- lite:轻量版'."\n" - .'- std:标准版'."\n" - .'- pro:专业版', - 'type' => 'string', - 'required' => false, - 'example' => 'pro', - ], + 'schema' => ['description' => '应用版本:'."\n" + ."\n" + .'- lite:轻量版'."\n" + .'- std:标准版'."\n" + .'- pro:专业版', 'type' => 'string', 'required' => false, 'example' => 'pro'], ], [ 'name' => 'InitContainersConfig', @@ -16471,147 +7118,107 @@ 'schema' => [ 'description' => '初始化容器配置。', 'type' => 'array', - 'items' => [ - 'description' => '初始化容器配置。', - 'required' => false, - '$ref' => '#/components/schemas/InitContainerConfig', - ], + 'items' => ['description' => '初始化容器配置。', 'required' => false, '$ref' => '#/components/schemas/InitContainerConfig'], 'required' => false, ], ], [ 'name' => 'GpuConfig', 'in' => 'query', - 'schema' => [ - 'type' => 'string', - 'required' => false, - ], + 'schema' => ['type' => 'string', 'required' => false, 'description' => ''], ], [ 'name' => 'StartupProbe', 'in' => 'query', - 'schema' => [ - 'description' => '启用应用启动探测。'."\n" - ."\n" - .'- 检查成功:表示应用启动成功,如果您配置了 Liveness 检查和 Readiness 检查,应用启动成功后会执行 Liveness 检查和 Readiness 检查。'."\n" - .'- 检查失败:表示应用启动失败,会上报异常并自动重启。'."\n" - ."\n" - .'> 这是说明的内容'."\n" - .'> - 支持 exec、httpGet 和 tcpSocket 方式。具体示例,请参见 Liveness 参数。'."\n" - .'> - 只能选择一种方式进行健康检查。', - 'type' => 'string', - 'required' => false, - 'example' => '{"exec":{"command":["sh","-c","cat /home/admin/start.sh"]},"initialDelaySeconds":30,"periodSeconds":30,"timeoutSeconds":2}', - ], + 'schema' => ['description' => '启用应用启动探测。'."\n" + ."\n" + .'- 检查成功:表示应用启动成功,如果您配置了 Liveness 检查和 Readiness 检查,应用启动成功后会执行 Liveness 检查和 Readiness 检查。'."\n" + .'- 检查失败:表示应用启动失败,会上报异常并自动重启。'."\n" + ."\n" + .'> 这是说明的内容'."\n" + .'> - 支持 exec、httpGet 和 tcpSocket 方式。具体示例,请参见 Liveness 参数。'."\n" + .'> - 只能选择一种方式进行健康检查。', 'type' => 'string', 'required' => false, 'example' => '{"exec":{"command":["sh","-c","cat /home/admin/start.sh"]},"initialDelaySeconds":30,"periodSeconds":30,"timeoutSeconds":2}'], ], [ 'name' => 'EnablePrometheus', 'in' => 'query', - 'schema' => [ - 'description' => '是否开启Prometheus自定义指标采集', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], + 'schema' => ['description' => '是否开启Prometheus自定义指标采集', 'type' => 'boolean', 'required' => false, 'example' => 'false'], ], [ 'name' => 'Html', 'in' => 'query', - 'schema' => [ - 'description' => 'Nginx版本'."\n" - .'- nginx 1.20'."\n" - .'- nginx 1.22'."\n" - .'- nginx 1.24'."\n" - .'- nginx 1.26'."\n" - .'- nginx 1.28', - 'type' => 'string', - 'required' => false, - 'example' => 'nginx 1.28', - ], + 'schema' => ['description' => 'Nginx版本'."\n" + .'- nginx 1.20'."\n" + .'- nginx 1.22'."\n" + .'- nginx 1.24'."\n" + .'- nginx 1.26'."\n" + .'- nginx 1.28', 'type' => 'string', 'required' => false, 'example' => 'nginx 1.28'], ], [ 'name' => 'EmptyDirDesc', 'in' => 'formData', - 'schema' => [ - 'description' => '共享临时存储配置。', - 'type' => 'string', - 'required' => false, - 'example' => '[{\\"name\\":\\"workdir\\",\\"mountPath\\":\\"/usr/local/tomcat/webapps\\"}]', - ], + 'schema' => ['description' => '共享临时存储配置。', 'type' => 'string', 'required' => false, 'example' => '[{\\"name\\":\\"workdir\\",\\"mountPath\\":\\"/usr/local/tomcat/webapps\\"}]'], ], [ 'name' => 'AlbIngressReadinessGate', 'in' => 'query', - 'schema' => [ - 'description' => 'ALB网关就绪门控(ReadinessGate)配置', - 'type' => 'string', - 'required' => false, - 'example' => 'default', - ], + 'schema' => ['description' => 'ALB网关就绪门控(ReadinessGate)配置', 'type' => 'string', 'required' => false, 'example' => 'default'], ], [ 'name' => 'MaxSurgeInstances', 'in' => 'query', - 'schema' => [ - 'description' => '最大峰值实例数。取值说明如下:'."\n" - ."\n" - .'如果最小存活实例数为100%,则最大峰值不能设置为0。'."\n" - .'如果设置为**-1**,最大峰值实例数将使用最大峰值比例系统推荐值30%,取现有实例数的30%。如果当前为10个实例,则为10×30%=3。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '-1', - ], + 'schema' => ['description' => '最大峰值实例数。取值说明如下:'."\n" + ."\n" + .'如果最小存活实例数为100%,则最大峰值不能设置为0。'."\n" + .'如果设置为**-1**,最大峰值实例数将使用最大峰值比例系统推荐值30%,取现有实例数的30%。如果当前为10个实例,则为10×30%=3。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '-1'], ], [ 'name' => 'MaxSurgeInstanceRatio', 'in' => 'query', - 'schema' => [ - 'description' => '最大峰值实例数比例。取值说明如下:'."\n" - ."\n" - .'如果最小存活实例数为100%,则最大峰值不能设置为0。 如果设置为**-1**,将使用系统推荐值30%,取现有实例数的30%。如果当前为10个实例,则为10×30%=3。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '-1', - ], + 'schema' => ['description' => '最大峰值实例数比例。取值说明如下:'."\n" + ."\n" + .'如果最小存活实例数为100%,则最大峰值不能设置为0。 如果设置为**-1**,将使用系统推荐值30%,取现有实例数的30%。如果当前为10个实例,则为10×30%=3。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '-1'], ], [ 'name' => 'AgentVersion', 'in' => 'query', - 'schema' => [ - 'description' => 'AliyunAgent版本', - 'type' => 'string', - 'required' => false, - 'example' => '4.4.2', - ], + 'schema' => ['description' => 'AliyunAgent版本', 'type' => 'string', 'required' => false, 'example' => '4.4.2'], ], [ 'name' => 'EnableNamespaceAgentVersion', 'in' => 'query', - 'schema' => [ - 'description' => '是否复用命名空间Agent版本配置', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'schema' => ['description' => '是否复用命名空间Agent版本配置', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], [ 'name' => 'SlsLogEnvTags', 'in' => 'query', + 'schema' => ['title' => 'sls log tags', 'description' => 'sls log tags', 'type' => 'string', 'required' => false], + ], + [ + 'name' => 'LokiConfigs', + 'in' => 'query', + 'schema' => ['type' => 'string'], + ], + [ + 'name' => 'Labels', + 'in' => 'query', + 'style' => 'json', 'schema' => [ - 'title' => 'sls log tags', - 'description' => 'sls log tags', - 'type' => 'string', - 'required' => false, + 'type' => 'object', + 'additionalProperties' => ['type' => 'string'], ], ], [ - 'name' => 'LokiConfigs', + 'name' => 'RaspConfig', 'in' => 'query', + 'style' => 'json', 'schema' => [ - 'type' => 'string', - 'required' => false, + 'type' => 'object', + 'properties' => [ + 'EnableRasp' => ['type' => 'boolean'], + 'RaspAppName' => ['type' => 'string'], + 'RaspAppKey' => ['type' => 'string'], + ], ], ], ], @@ -16621,685 +7228,1259 @@ 'description' => '部署的应用信息。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '01CF26C7-00A3-4AA6-BA76-7E95F2A3***', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => 'ac1a0b2215622246421415014e****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '01CF26C7-00A3-4AA6-BA76-7E95F2A3***'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => 'ac1a0b2215622246421415014e****'], 'Data' => [ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'ChangeOrderId' => [ - 'description' => '返回的发布单ID,用于查询任务执行状态。', - 'type' => 'string', - 'example' => '01db03d3-3ee9-48b3-b3d0-dfce2d88****', - ], - 'AppId' => [ - 'description' => '应用ID。'."\n", - 'type' => 'string', - 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****', - ], - 'IsNeedApproval' => [ - 'description' => 'RAM用户发布变更是否需要审批。取值说明如下:'."\n" - ."\n" - .'- **true**:需审批。'."\n" - .'- **false**:无需审批。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ChangeOrderId' => ['description' => '返回的发布单ID,用于查询任务执行状态。', 'type' => 'string', 'example' => '01db03d3-3ee9-48b3-b3d0-dfce2d88****'], + 'AppId' => ['description' => '应用ID。'."\n", 'type' => 'string', 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****'], + 'IsNeedApproval' => ['description' => 'RAM用户发布变更是否需要审批。取值说明如下:'."\n" + ."\n" + .'- **true**:需审批。'."\n" + .'- **false**:无需审批。', 'type' => 'boolean', 'example' => 'true'], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '部署应用是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:部署成功。'."\n" - .'- **false**:部署失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string', 'example' => '空'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '部署应用是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:部署成功。'."\n" + .'- **false**:部署失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'Application.MissingJdk', - 'errorMessage' => 'Your application must at least contain a JDK component.', - ], - [ - 'errorCode' => 'InvalidApplication.NotFound', - 'errorMessage' => 'The current application does not exist.', - ], - [ - 'errorCode' => 'InvalidComponent.NotFound', - 'errorMessage' => 'The current component (such as JDK, Tomcat, or EDASWebContainer) does not exist.', - ], - [ - 'errorCode' => 'InvalidHostnameIp.Invalid', - 'errorMessage' => 'The hostname and/or IP is invalid: Hostname [%s], IP [%s].', - ], - [ - 'errorCode' => 'InvalidInstanceSpecification.Unsupported', - 'errorMessage' => 'The instance specification is not supported: CPU [%s], memory [%s].', - ], - [ - 'errorCode' => 'InvalidPackageType.NotFound', - 'errorMessage' => 'The package type must be War, FatJar, or Image.', - ], - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], - [ - 'errorCode' => 'JarApplication.MissingJdk', - 'errorMessage' => 'A FatJar application must contain JDK.', - ], - [ - 'errorCode' => 'NoComputeResourceQuota.Exceed', - 'errorMessage' => 'Your compute resource is insufficient. Please contact us to raise the quota.', - ], - [ - 'errorCode' => 'PandoraApplication.MissingJdk', - 'errorMessage' => 'The Pandora application is missing a JDK component.', - ], - [ - 'errorCode' => 'PandoraApplication.OnlyJdk', - 'errorMessage' => 'A Pandora application only requires JDK component.', - ], - [ - 'errorCode' => 'WarApplication.MissingJdkWebcontainer', - 'errorMessage' => 'A War application must contain JDK and Tomcat.', - ], - [ - 'errorCode' => 'LogService.ConfigQuotaExceed', - 'errorMessage' => 'The maximum number of Log Service configs is exceeded.', - ], - [ - 'errorCode' => 'LogService.InternalError', - 'errorMessage' => 'An exception occurred while calling Log Service. Please submit a ticket to solve the problem.', - ], - [ - 'errorCode' => 'LogService.LogDirInvalid', - 'errorMessage' => 'The log collection path is invalid.', - ], - [ - 'errorCode' => 'LogService.NotAvailable', - 'errorMessage' => 'Log Service is unavailable. Please activate Log Service first.', - ], - [ - 'errorCode' => 'LogService.ProjectNumQuotaExceed', - 'errorMessage' => 'The maximum number of Log Service projects is exceeded.', - ], - [ - 'errorCode' => 'user.indebt', - 'errorMessage' => 'The user has an outstanding payment.', - ], - [ - 'errorCode' => 'NoComputeResourceQuota.App.Exceed', - 'errorMessage' => 'You can create %s instances for each application. Please submit a ticket to raise the quota.', - ], - [ - 'errorCode' => 'NoComputeResourceQuota.User.Exceed', - 'errorMessage' => 'Your account is limited to create %s instances. Please submit a ticket to raise the quota.', - ], - [ - 'errorCode' => 'System.Upgrading', - 'errorMessage' => 'The system is being upgraded. Please try again later.', - ], - [ - 'errorCode' => 'VolumnPath.Conflict', - 'errorMessage' => 'Conflict between log collection directory and persistent storage directory.', - ], - [ - 'errorCode' => 'Application.ChangerOrderRunning', - 'errorMessage' => 'An application change process is in progress. Please try again later.', - ], - [ - 'errorCode' => 'Application.InvalidStatus', - 'errorMessage' => 'The application status is abnormal. Please try again later.', - ], - [ - 'errorCode' => 'MountConflict.ConfigMap', - 'errorMessage' => 'Conflict detected for ConfigMap path %s.', - ], - [ - 'errorCode' => 'NotFound.ConfigMap', - 'errorMessage' => 'The ConfigMap object (ID: %s) does not exist.', - ], - [ - 'errorCode' => 'NotFound.ConfigMapKey', - 'errorMessage' => 'The key %s of ConfigMap object (ID: %s) does not exist.', - ], - [ - 'errorCode' => 'Package.Version.Too.Long', - 'errorMessage' => 'The maximum length of package version is exceeded.', - ], - [ - 'errorCode' => 'App.Package.Version.Exists', - 'errorMessage' => 'The package version of application already exists.', - ], - [ - 'errorCode' => 'Slb.Occupied', - 'errorMessage' => 'The SLB instance is occupied.', - ], - [ - 'errorCode' => 'Slb.Tag.Not.Qualified', - 'errorMessage' => 'The current SLB instance cannot be reused because it may have been occupied by %s.', - ], - [ - 'errorCode' => 'MinReadyInstances.Not.Smaller.Replicas', - 'errorMessage' => 'The minimum number of available instances must be less than the number of application instances.', - ], - [ - 'errorCode' => 'MinReadyInstanceRatio.Invalid', - 'errorMessage' => 'The ratio of minimum available instances must be between 0 and 100.', - ], - [ - 'errorCode' => 'BatchWaitTime.Not.Smaller.Zero', - 'errorMessage' => 'BatchWaitTime must not be smaller than zero.', - ], - [ - 'errorCode' => 'Sls.Config.Mixed.Multi.Project', - 'errorMessage' => 'The specified Config contains multiple projects.', - ], - [ - 'errorCode' => 'Sls.Config.User.Defined.Missing.Logstore.Info', - 'errorMessage' => 'The specified Config is invalid. Both Project and Logstore must be specified.', - ], - [ - 'errorCode' => 'Sls.Config.User.Defined.Missing.Project.Info', - 'errorMessage' => 'The specified Config is invalid. Both Project and Logstore must be specified.', - ], - [ - 'errorCode' => 'Sls.Logstore.Name.Invalid', - 'errorMessage' => 'The specified name of Logstore is invalid. The Logstore name must not contain the prefix "sae-".', - ], - [ - 'errorCode' => 'Sls.Logstore.User.Defined.Not.Exist', - 'errorMessage' => 'The user defined Logstore does not exist.', - ], - [ - 'errorCode' => 'Sls.Project.Name.Invalid', - 'errorMessage' => 'The specified project name is invalid. The project name must not contain the prefix "sae-".', - ], - [ - 'errorCode' => 'Sls.Project.User.Defined.Not.Exist', - 'errorMessage' => 'The user defined project does not exist.', - ], - [ - 'errorCode' => 'Sae.Errorcode.Ahas.Create.Error.Message', - 'errorMessage' => 'Failed to create AHAS.', - ], - [ - 'errorCode' => 'InvalidImageUrl.AcrInstanceId.Domain.NotMatch', - 'errorMessage' => 'The specified domain of ImageUrl does not match AcrInstanceId domains.', - ], - [ - 'errorCode' => 'PhpApplication.MissingPhpRuntime', - 'errorMessage' => 'A PHP application must contain PHP Runtime.', - ], - [ - 'errorCode' => 'InvalidParameter.FileName', - 'errorMessage' => 'The application deployment package name is invalid. This name can contain only alphanumeric characters, hyphens (-), and underscores (_). For deploying java package, you can upload JAR files only if the selected deployment version supports JAR file. Otherwise, upload WAR files only. For deploying php package, you can upload ZIP files only if the selected deployment version supports ZIP file.', - ], - [ - 'errorCode' => 'Sls.Logtail.Name.Invalid', - 'errorMessage' => 'The specified name of Logtail is invalid. The Logtail name must not contain the prefix sae-.', - ], - [ - 'errorCode' => 'InvalidImageUrl.MissingAcrInstanceId', - 'errorMessage' => 'The specified domain of ImageUrl is from ACREE, but you are not specified AcrInstanceId.', - ], - [ - 'errorCode' => 'EnvFromSecretIdConflict.AlreadyExist', - 'errorMessage' => 'The specified SecretId [%s] already exist in the specified Envs.', - ], - [ - 'errorCode' => 'MountConflict.Secret', - 'errorMessage' => 'Conflict detected for Secret path %s.', - ], + ['errorCode' => 'Application.MissingJdk', 'errorMessage' => 'Your application must at least contain a JDK component.', 'description' => '应用必须至少包含JDK组件。'], + ['errorCode' => 'InvalidApplication.NotFound', 'errorMessage' => 'The current application does not exist.', 'description' => '找不到当前应用。'], + ['errorCode' => 'InvalidComponent.NotFound', 'errorMessage' => 'The current component (such as JDK, Tomcat, or EDASWebContainer) does not exist.', 'description' => '找不到当前组件(JDK、Tomcat、EDASWebContainer等)。'], + ['errorCode' => 'InvalidHostnameIp.Invalid', 'errorMessage' => 'The hostname and/or IP is invalid: Hostname [%s], IP [%s].', 'description' => '主机名或IP不合法:主机名[%s],IP[%s]。'], + ['errorCode' => 'InvalidInstanceSpecification.Unsupported', 'errorMessage' => 'The instance specification is not supported: CPU [%s], memory [%s].', 'description' => '不支持的实例规格。CPU[%s],Memory[%s]。'], + ['errorCode' => 'InvalidPackageType.NotFound', 'errorMessage' => 'The package type must be War, FatJar, or Image.', 'description' => '包类型必须为WAR、FatJAR或Image。'], + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], + ['errorCode' => 'JarApplication.MissingJdk', 'errorMessage' => 'A FatJar application must contain JDK.', 'description' => 'FatJar类型应用必须包含JDK。'], + ['errorCode' => 'NoComputeResourceQuota.Exceed', 'errorMessage' => 'Your compute resource is insufficient. Please contact us to raise the quota.', 'description' => ''], + ['errorCode' => 'PandoraApplication.MissingJdk', 'errorMessage' => 'The Pandora application is missing a JDK component.', 'description' => 'Pandora应用缺少JDK组件。'], + ['errorCode' => 'PandoraApplication.OnlyJdk', 'errorMessage' => 'A Pandora application only requires JDK component.', 'description' => 'Pandora应用只需要JDK组件。'], + ['errorCode' => 'WarApplication.MissingJdkWebcontainer', 'errorMessage' => 'A War application must contain JDK and Tomcat.', 'description' => 'WAR类型应用必须包含JDK和Tomcat。'], + ['errorCode' => 'LogService.ConfigQuotaExceed', 'errorMessage' => 'The maximum number of Log Service configs is exceeded.', 'description' => '日志服务配置个数超过配额限制,请加入钉群32874633联系技术产品专家进行咨询。'], + ['errorCode' => 'LogService.InternalError', 'errorMessage' => 'An exception occurred while calling Log Service. Please submit a ticket to solve the problem.', 'description' => '调用日志服务异常,请加入钉群32874633联系技术产品专家进行咨询。'], + ['errorCode' => 'LogService.LogDirInvalid', 'errorMessage' => 'The log collection path is invalid.', 'description' => '日志采集路径不合法。'], + ['errorCode' => 'LogService.NotAvailable', 'errorMessage' => 'Log Service is unavailable. Please activate Log Service first.', 'description' => '日志服务不可用,请先开通日志服务。'], + ['errorCode' => 'LogService.ProjectNumQuotaExceed', 'errorMessage' => 'The maximum number of Log Service projects is exceeded.', 'description' => '日志服务项目个数超过配额限制,请加入钉群32874633联系技术产品专家进行咨询。'], + ['errorCode' => 'user.indebt', 'errorMessage' => 'The user has an outstanding payment.', 'description' => '当前用户处于欠费状态。'], + ['errorCode' => 'NoComputeResourceQuota.App.Exceed', 'errorMessage' => 'You can create %s instances for each application. Please submit a ticket to raise the quota.', 'description' => '每个应用只允许创建%s个实例,请加入钉群32874633联系技术产品专家进行咨询。'], + ['errorCode' => 'NoComputeResourceQuota.User.Exceed', 'errorMessage' => 'Your account is limited to create %s instances. Please submit a ticket to raise the quota.', 'description' => '您的账户限额%s个实例,请加入钉群32874633联系技术产品专家进行咨询。'], + ['errorCode' => 'System.Upgrading', 'errorMessage' => 'The system is being upgraded. Please try again later.', 'description' => '系统正在升级,请稍后操作。'], + ['errorCode' => 'VolumnPath.Conflict', 'errorMessage' => 'Conflict between log collection directory and persistent storage directory.', 'description' => '日志采集目录与持久化存储目录冲突。'], + ['errorCode' => 'Application.ChangerOrderRunning', 'errorMessage' => 'An application change process is in progress. Please try again later.', 'description' => '应用有变更流程正在执行,请稍后重试。'], + ['errorCode' => 'Application.InvalidStatus', 'errorMessage' => 'The application status is abnormal. Please try again later.', 'description' => '应用状态异常,请稍后重试。'], + ['errorCode' => 'MountConflict.ConfigMap', 'errorMessage' => 'Conflict detected for ConfigMap path %s.', 'description' => 'ConfigMap挂载路径%s存在冲突。'], + ['errorCode' => 'NotFound.ConfigMap', 'errorMessage' => 'The ConfigMap object (ID: %s) does not exist.', 'description' => '找不到ConfigMap对象(ID=%s)。'], + ['errorCode' => 'NotFound.ConfigMapKey', 'errorMessage' => 'The key %s of ConfigMap object (ID: %s) does not exist.', 'description' => '找不到ConfigMap对象(ID=%s)的Key %s。'], + ['errorCode' => 'Package.Version.Too.Long', 'errorMessage' => 'The maximum length of package version is exceeded.', 'description' => '应用部署包版本号长度超过限制。'], + ['errorCode' => 'App.Package.Version.Exists', 'errorMessage' => 'The package version of application already exists.', 'description' => '应用部署包版本号已经存在。'], + ['errorCode' => 'Slb.Occupied', 'errorMessage' => 'The SLB instance is occupied.', 'description' => 'SLB实例被占用。'], + ['errorCode' => 'Slb.Tag.Not.Qualified', 'errorMessage' => 'The current SLB instance cannot be reused because it may have been occupied by %s.', 'description' => 'SLB实例正在被%s使用,不建议复用。'], + ['errorCode' => 'MinReadyInstances.Not.Smaller.Replicas', 'errorMessage' => 'The minimum number of available instances must be less than the number of application instances.', 'description' => '最小可用实例数必须小于应用实例数。'], + ['errorCode' => 'MinReadyInstanceRatio.Invalid', 'errorMessage' => 'The ratio of minimum available instances must be between 0 and 100.', 'description' => '最小存活实例数比例值必须在0~100之间。'], + ['errorCode' => 'BatchWaitTime.Not.Smaller.Zero', 'errorMessage' => 'BatchWaitTime must not be smaller than zero.', 'description' => '分批间隔时间必须大于零。'], + ['errorCode' => 'Sls.Config.Mixed.Multi.Project', 'errorMessage' => 'The specified Config contains multiple projects.', 'description' => '您输入的SLS Config中指定了多个Project。'], + ['errorCode' => 'Sls.Config.User.Defined.Missing.Logstore.Info', 'errorMessage' => 'The specified Config is invalid. Both Project and Logstore must be specified.', 'description' => '您输入的SLS Config为自定义SLS配置,但是只有Project配置,缺失Logstore配置。'], + ['errorCode' => 'Sls.Config.User.Defined.Missing.Project.Info', 'errorMessage' => 'The specified Config is invalid. Both Project and Logstore must be specified.', 'description' => '您输入的SLS Config为自定义SLS配置,但是只有Logstore配置,缺失Project配置。'], + ['errorCode' => 'Sls.Logstore.Name.Invalid', 'errorMessage' => 'The specified name of Logstore is invalid. The Logstore name must not contain the prefix "sae-".', 'description' => '您输入的SLS Logstore名称不合法,前缀包含了"sae-",会与SAE自动创建的Logstore混淆。'], + ['errorCode' => 'Sls.Logstore.User.Defined.Not.Exist', 'errorMessage' => 'The user defined Logstore does not exist.', 'description' => '您输入的自建Logstore不存在。'], + ['errorCode' => 'Sls.Project.Name.Invalid', 'errorMessage' => 'The specified project name is invalid. The project name must not contain the prefix "sae-".', 'description' => '您输入的SLS Project名称不合法,前缀包含了"sae-",会与SAE自动创建的Project混淆。'], + ['errorCode' => 'Sls.Project.User.Defined.Not.Exist', 'errorMessage' => 'The user defined project does not exist.', 'description' => '您输入的自建Project不存在。'], + ['errorCode' => 'Sae.Errorcode.Ahas.Create.Error.Message', 'errorMessage' => 'Failed to create AHAS.', 'description' => '创建AHAS失败。'], + ['errorCode' => 'InvalidImageUrl.AcrInstanceId.Domain.NotMatch', 'errorMessage' => 'The specified domain of ImageUrl does not match AcrInstanceId domains.', 'description' => '指定的镜像地址ImageUrl域名与AcrInstanceId域名不匹配。'], + ['errorCode' => 'PhpApplication.MissingPhpRuntime', 'errorMessage' => 'A PHP application must contain PHP Runtime.', 'description' => 'PHP类型应用必须包含PHP运行时。'], + ['errorCode' => 'InvalidParameter.FileName', 'errorMessage' => 'The application deployment package name is invalid. This name can contain only alphanumeric characters, hyphens (-), and underscores (_). For deploying java package, you can upload JAR files only if the selected deployment version supports JAR file. Otherwise, upload WAR files only. For deploying php package, you can upload ZIP files only if the selected deployment version supports ZIP file.', 'description' => '应用部署程序包名称无效。名称只能包含字母、数字和特殊字符“-”“_”。Java 软件包部署,仅当选择的部署版本支持JAR部署时方可上传JAR包,否则只能上传WAR包;PHP 软件包部署,仅当选择的部署版本支持ZIP部署时方可上传ZIP包'], + ['errorCode' => 'Sls.Logtail.Name.Invalid', 'errorMessage' => 'The specified name of Logtail is invalid. The Logtail name must not contain the prefix sae-.', 'description' => '您输入的SLS Logtail名称不合法,前缀包含了"sae-",会与SAE自动创建的Logtail混淆。'], + ['errorCode' => 'InvalidImageUrl.MissingAcrInstanceId', 'errorMessage' => 'The specified domain of ImageUrl is from ACREE, but you are not specified AcrInstanceId.', 'description' => '指定的镜像地址 ImageUrl 域名为容器镜像服务企业版 ACREE,但未指定实例 AcrInstanceId。'], + ['errorCode' => 'EnvFromSecretIdConflict.AlreadyExist', 'errorMessage' => 'The specified SecretId [%s] already exist in the specified Envs.', 'description' => '指定的保密字典[%s]已经存在于环境变量中。'], + ['errorCode' => 'MountConflict.Secret', 'errorMessage' => 'Conflict detected for Secret path %s.', 'description' => 'Secret挂载路径%s存在冲突。'], ], 404 => [ - [ - 'errorCode' => 'InvalidNamespaceId.NotFound', - 'errorMessage' => 'The specified NamespaceId does not exist.', - ], - [ - 'errorCode' => 'InvalidAcrInstanceId.NotFound', - 'errorMessage' => 'The specified AcrInstanceId does not exist.', - ], - [ - 'errorCode' => 'Associate.Eip.Not.Enough', - 'errorMessage' => 'No sufficient EIPs are available.', - ], + ['errorCode' => 'InvalidNamespaceId.NotFound', 'errorMessage' => 'The specified NamespaceId does not exist.', 'description' => '指定的NamespaceId不存在。'], + ['errorCode' => 'InvalidAcrInstanceId.NotFound', 'errorMessage' => 'The specified AcrInstanceId does not exist.', 'description' => '指定的 AcrInstanceId 不存在。'], + ['errorCode' => 'Associate.Eip.Not.Enough', 'errorMessage' => 'No sufficient EIPs are available.', 'description' => '绑定EIP时,EIP不足,需要您购买。'], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"01CF26C7-00A3-4AA6-BA76-7E95F2A3***\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"ac1a0b2215622246421415014e****\\",\\n \\"Data\\": {\\n \\"ChangeOrderId\\": \\"01db03d3-3ee9-48b3-b3d0-dfce2d88****\\",\\n \\"AppId\\": \\"7171a6ca-d1cd-4928-8642-7d5cfe69****\\",\\n \\"IsNeedApproval\\": true\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeployApplicationResponse>\\n <RequestId>01CF26C7-00A3-4AA6-BA76-7E95F2A3***</RequestId>\\n <Message>success</Message>\\n <TraceId>ac1a0b2215622246421415014e****</TraceId>\\n <Data>\\n <ChangeOrderId>01db03d3-3ee9-48b3-b3d0-dfce2d88****</ChangeOrderId>\\n <AppId>7171a6ca-d1cd-4928-8642-7d5cfe69****</AppId>\\n <IsNeedApproval>true</IsNeedApproval>\\n </Data>\\n <ErrorCode>空</ErrorCode>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DeployApplicationResponse>","errorExample":""}]', 'title' => '部署应用', 'summary' => '部署应用。', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', - ], - 'RescaleApplicationVertically' => [ - 'path' => '/pop/v1/sam/app/rescaleApplicationVertically', - 'methods' => [ - 'post', - ], - 'schemes' => [ - 'http', - 'https', + 'changeSet' => [ + ['createdAt' => '2026-03-04T05:50:19.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-03-04T03:39:36.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-03-04T03:39:22.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-02-25T06:15:36.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2026-02-25T06:10:11.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-02-25T01:45:40.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-02-25T01:42:15.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-02-24T12:42:16.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-02-24T12:38:11.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-02-24T11:44:48.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-02-24T11:14:28.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-02-24T11:09:18.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-02-24T11:05:14.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-02-24T11:00:07.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-02-24T10:52:23.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-02-04T02:09:06.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-02-03T03:18:29.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-02-03T02:36:32.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-01-30T08:18:01.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-01-30T02:56:42.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-01-15T02:33:54.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-01-13T13:03:43.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-01-13T12:45:23.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-01-13T12:31:59.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-01-13T09:00:01.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-01-13T08:52:39.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-12-25T03:02:51.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-12-22T05:47:30.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2025-11-27T05:52:40.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2025-11-04T03:34:35.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2025-10-24T09:36:12.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2025-10-13T09:40:49.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2025-09-18T11:30:36.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2025-07-29T05:33:46.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2025-07-04T06:12:37.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2025-05-26T08:50:05.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2025-05-22T02:32:04.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2025-04-25T11:26:58.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2025-03-13T11:48:39.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2025-01-20T11:42:06.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2024-12-26T08:38:32.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2024-12-17T11:33:09.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2024-12-10T09:29:00.000Z', 'description' => '错误码发生变更、请求参数发生变更'], + ['createdAt' => '2024-11-08T03:11:30.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2024-10-11T03:29:13.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2024-09-12T03:24:21.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2024-08-28T07:04:48.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2024-05-21T02:16:45.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2023-06-07T08:48:32.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2023-06-05T02:22:27.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2022-12-26T09:19:38.000Z', 'description' => '错误码发生变更'], + ['createdAt' => '2022-12-02T02:42:53.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2022-11-22T13:03:50.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2022-08-02T05:52:24.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2022-03-03T12:42:21.000Z', 'description' => '错误码发生变更'], + ['createdAt' => '2022-03-03T12:42:21.000Z', 'description' => '错误码发生变更'], + ['createdAt' => '2022-03-03T12:42:21.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2022-01-18T04:01:16.000Z', 'description' => '错误码发生变更'], + ['createdAt' => '2021-11-17T11:35:05.000Z', 'description' => '错误码发生变更'], + ['createdAt' => '2021-11-17T02:28:51.000Z', 'description' => '响应参数发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '40', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeployApplication'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'sae:DeployApplication', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"01CF26C7-00A3-4AA6-BA76-7E95F2A3***\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"ac1a0b2215622246421415014e****\\",\\n \\"Data\\": {\\n \\"ChangeOrderId\\": \\"01db03d3-3ee9-48b3-b3d0-dfce2d88****\\",\\n \\"AppId\\": \\"7171a6ca-d1cd-4928-8642-7d5cfe69****\\",\\n \\"IsNeedApproval\\": true\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeployApplicationResponse>\\n <RequestId>01CF26C7-00A3-4AA6-BA76-7E95F2A3***</RequestId>\\n <Message>success</Message>\\n <TraceId>ac1a0b2215622246421415014e****</TraceId>\\n <Data>\\n <ChangeOrderId>01db03d3-3ee9-48b3-b3d0-dfce2d88****</ChangeOrderId>\\n <AppId>7171a6ca-d1cd-4928-8642-7d5cfe69****</AppId>\\n <IsNeedApproval>true</IsNeedApproval>\\n </Data>\\n <ErrorCode>空</ErrorCode>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DeployApplicationResponse>","errorExample":""}]', + ], + 'DescribeAppServiceDetail' => [ + 'summary' => '获取应用服务的元数据详情。', + 'path' => '/pop/v1/sam/service/describeAppServiceDetail', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'none', - 'abilityTreeCode' => '6386', - 'abilityTreeNodes' => [ - 'FEATUREsaeRVPNSA', - ], + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '101579', + 'abilityTreeNodes' => ['FEATUREsaeUDWJ2L'], ], 'parameters' => [ [ 'name' => 'AppId', 'in' => 'query', - 'schema' => [ - 'description' => '目标应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****', - ], + 'schema' => ['title' => 'mse 的 appId', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => '6dcc8c9e-d3da-478a-a066-86dcf820****'], ], [ - 'name' => 'Cpu', + 'name' => 'ServiceType', 'in' => 'query', - 'schema' => [ - 'description' => '目标CPU规格,单位为毫核。', - 'type' => 'string', - 'required' => true, - 'example' => '1000', - ], + 'schema' => ['description' => '服务类型。取值说明如下:'."\n" + ."\n" + .'- **dubbo**'."\n" + .'- **springCloud**', 'type' => 'string', 'required' => false, 'example' => 'springCloud'], ], [ - 'name' => 'Memory', + 'name' => 'ServiceGroup', 'in' => 'query', - 'schema' => [ - 'description' => '目标内存规格,单位为MB。', - 'type' => 'string', - 'required' => true, - 'example' => '2048', - ], + 'schema' => ['description' => '服务分组。自定义。', 'type' => 'string', 'required' => false, 'example' => 'springCloud'], ], [ - 'name' => 'minReadyInstances', + 'name' => 'ServiceVersion', 'in' => 'query', - 'schema' => [ - 'description' => '最小就绪实例数', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], + 'schema' => ['description' => '服务版本。自定义。', 'type' => 'string', 'required' => false, 'example' => '1.0.0'], ], [ - 'name' => 'minReadyInstanceRatio', + 'name' => 'ServiceName', 'in' => 'query', - 'schema' => [ - 'description' => '最小就绪实例数占比', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '50', - ], + 'schema' => ['description' => '服务名称。', 'type' => 'string', 'required' => false, 'example' => 'edas.service.provider'], ], [ - 'name' => 'autoEnableApplicationScalingRule', + 'name' => 'NacosInstanceId', 'in' => 'query', - 'schema' => [ - 'description' => '是否自动启用弹性扩缩规则', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'schema' => ['description' => 'MseNacos实例ID。', 'type' => 'string', 'required' => false, 'example' => 'mse-cn-sco3r0u****'], ], [ - 'name' => 'DiskSize', + 'name' => 'NacosNamespaceId', 'in' => 'query', + 'schema' => ['description' => 'MseNacos 命名空间ID。', 'type' => 'string', 'required' => false, 'example' => 'public'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '磁盘存储大小。(每节点,单位:GB)', - 'type' => 'string', - 'required' => false, - 'example' => '20', + 'description' => '返回数据。', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'B2C7874F-F109-5B34-8618-2C10BBA2****'], + 'Message' => ['description' => '调用结果的附加信息。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0b16399316402420740034918e****'], + 'Data' => [ + 'description' => '返回数据。', + 'type' => 'object', + 'properties' => [ + 'Group' => ['description' => '服务分组。自定义。', 'type' => 'string', 'example' => 'springCloud'], + 'ServiceName' => ['description' => '服务名称。', 'type' => 'string', 'example' => 'service-provider'], + 'Version' => ['description' => '服务版本。自定义。', 'type' => 'string', 'example' => '1.0.0'], + 'ServiceType' => ['description' => '服务类型。取值说明如下:'."\n" + ."\n" + .'- **dubbo**'."\n" + .'- **springCloud**', 'type' => 'string', 'example' => 'springCloud'], + 'ServiceProtocol' => ['description' => '该服务使用的协议。', 'type' => 'string', 'example' => 'HTTP'], + 'ServicePorts' => [ + 'description' => '该服务使用的端口。', + 'type' => 'array', + 'items' => ['description' => '端口值。', 'type' => 'integer', 'format' => 'int64', 'example' => '8000'], + ], + 'ServiceTags' => [ + 'description' => '该服务的标签。', + 'type' => 'array', + 'items' => ['description' => '该服务的标签值。', 'type' => 'string', 'example' => 'tag1'], + ], + 'EdasAppName' => ['description' => '应用名称。', 'type' => 'string', 'example' => 'cn-zhangjiakou-micro-service-******'], + 'Metadata' => ['description' => '元数据。示例如下:`{side: "provider", port: "18081", preserved: {register: {source: "SPRING_CLOUD"}},…}`', 'type' => 'object', 'example' => '{side: "provider", port: "18081", preserved: {register: {source: "SPRING_CLOUD"}},…}'], + 'SpringApplicationName' => ['description' => 'Spring Cloud应用名称。', 'type' => 'string', 'example' => 'service-provider'], + 'DubboApplicationName' => ['description' => 'Dubbo应用名称。', 'type' => 'string', 'example' => 'service-consumer'], + 'Methods' => [ + 'description' => '方法列表。', + 'type' => 'array', + 'items' => [ + 'description' => '方法列表。', + 'type' => 'object', + 'properties' => [ + 'MethodController' => ['description' => '所属类。', 'type' => 'string', 'example' => 'com.serverless.sae.controller.EchoController'], + 'ReturnType' => ['description' => '返回类型。', 'type' => 'string', 'example' => 'java.lang.String'], + 'ReturnDetails' => ['description' => '返回详情。', 'type' => 'string', 'example' => 'test'], + 'Name' => ['description' => '方法名。', 'type' => 'string', 'example' => 'echo'], + 'NameDetail' => ['description' => '方法详情。', 'type' => 'string', 'example' => 'description'], + 'ParameterDetails' => [ + 'description' => '参数详情。', + 'type' => 'array', + 'items' => ['description' => '参数详情。', 'type' => 'string', 'example' => 'description'], + ], + 'RequestMethods' => [ + 'description' => '请求方法。', + 'type' => 'array', + 'items' => ['description' => '请求方法。取值说明如下:'."\n" + ."\n" + .'- **GET**'."\n" + .'- **ALL**', 'type' => 'string', 'example' => 'ALL'], + ], + 'ParameterTypes' => [ + 'description' => '参数类型。', + 'type' => 'array', + 'items' => ['description' => '参数类型。', 'type' => 'string', 'example' => '["java.lang.String"]'], + ], + 'Paths' => [ + 'description' => '请求路径。', + 'type' => 'array', + 'items' => ['description' => '请求路径。格式如下:'."\n" + ."\n" + .'`/path`', 'type' => 'string', 'example' => '["/echo/{str}"]'], + ], + 'ParameterDefinitions' => [ + 'description' => '参数定义。', + 'type' => 'array', + 'items' => [ + 'description' => '参数定义。', + 'type' => 'object', + 'properties' => [ + 'Type' => ['description' => '参数类型。', 'type' => 'string', 'example' => 'java.lang.String'], + 'Description' => ['description' => '参数描述。', 'type' => 'string', 'example' => 'description'], + 'Name' => ['description' => '参数名称。', 'type' => 'string', 'example' => 'arg0'], + ], + ], + ], + ], + ], + ], + ], + ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '是否成功获取元数据。取值说明如下:'."\n" + ."\n" + .'- **true**:获取成功。'."\n" + .'- **false**:获取失败。', 'type' => 'boolean', 'example' => 'true'], + ], ], ], - [ - 'name' => 'ResourceType', - 'in' => 'query', - 'schema' => [ - 'type' => 'string', - 'required' => false, + ], + 'errorCodes' => [ + 400 => [ + ['errorCode' => 'Micro.Service.MetaData.NotFound', 'errorMessage' => 'The micro service metadata not found {%s}.', 'description' => '微服务原信息不存在'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"B2C7874F-F109-5B34-8618-2C10BBA2****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0b16399316402420740034918e****\\",\\n \\"Data\\": {\\n \\"Group\\": \\"springCloud\\",\\n \\"ServiceName\\": \\"service-provider\\",\\n \\"Version\\": \\"1.0.0\\",\\n \\"ServiceType\\": \\"springCloud\\",\\n \\"ServiceProtocol\\": \\"HTTP\\",\\n \\"ServicePorts\\": [\\n 8000\\n ],\\n \\"ServiceTags\\": [\\n \\"tag1\\"\\n ],\\n \\"EdasAppName\\": \\"cn-zhangjiakou-micro-service-******\\",\\n \\"Metadata\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"SpringApplicationName\\": \\"service-provider\\",\\n \\"DubboApplicationName\\": \\"service-consumer\\",\\n \\"Methods\\": [\\n {\\n \\"MethodController\\": \\"com.serverless.sae.controller.EchoController\\",\\n \\"ReturnType\\": \\"java.lang.String\\",\\n \\"ReturnDetails\\": \\"test\\",\\n \\"Name\\": \\"echo\\",\\n \\"NameDetail\\": \\"description\\",\\n \\"ParameterDetails\\": [\\n \\"description\\"\\n ],\\n \\"RequestMethods\\": [\\n \\"ALL\\"\\n ],\\n \\"ParameterTypes\\": [\\n \\"[\\\\\\"java.lang.String\\\\\\"]\\"\\n ],\\n \\"Paths\\": [\\n \\"[\\\\\\"/echo/{str}\\\\\\"]\\"\\n ],\\n \\"ParameterDefinitions\\": [\\n {\\n \\"Type\\": \\"java.lang.String\\",\\n \\"Description\\": \\"description\\",\\n \\"Name\\": \\"arg0\\"\\n }\\n ]\\n }\\n ]\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeAppServiceDetailResponse>\\n <RequestId>B2C7874F-F109-5B34-8618-2C10BBA2****</RequestId>\\n <Message>success</Message>\\n <TraceId>0b16399316402420740034918e****</TraceId>\\n <Data>\\n <Group>springCloud</Group>\\n <ServiceName>service-provider</ServiceName>\\n <Version>1.0.0</Version>\\n <ServiceType>springCloud</ServiceType>\\n <EdasAppName>cn-zhangjiakou-micro-service-******</EdasAppName>\\n <SpringApplicationName>service-provider</SpringApplicationName>\\n <DubboApplicationName>service-consumer</DubboApplicationName>\\n <Methods>\\n <MethodController>com.serverless.sae.controller.EchoController</MethodController>\\n <ReturnType>java.lang.String</ReturnType>\\n <ReturnDetails>test</ReturnDetails>\\n <Name>echo</Name>\\n <NameDetail>description</NameDetail>\\n <ParameterDetails>description</ParameterDetails>\\n <RequestMethods>ALL</RequestMethods>\\n <ParameterTypes>[\\"java.lang.String\\"]</ParameterTypes>\\n <Paths>[\\"/echo/{str}\\"]</Paths>\\n <ParameterDefinitions>\\n <Type>java.lang.String</Type>\\n <Description>description</Description>\\n <Name>arg0</Name>\\n </ParameterDefinitions>\\n </Methods>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeAppServiceDetailResponse>","errorExample":""}]', + 'title' => 'DescribeAppServiceDetail', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:29.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2024-05-20T11:58:32.000Z', 'description' => '请求参数发生变更、响应参数发生变更'], + ['createdAt' => '2022-11-22T13:03:50.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2021-11-17T02:28:51.000Z', 'description' => 'OpenAPI 下线'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '350', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeAppServiceDetail'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'sae:DescribeAppServiceDetail', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], + ], + ], + 'DescribeApplicationConfig' => [ + 'path' => '/pop/v1/sam/app/describeApplicationConfig', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'VSwitchId', + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '6317', + 'abilityTreeNodes' => ['FEATUREsaeRVPNSA'], + ], + 'parameters' => [ + [ + 'name' => 'AppId', 'in' => 'query', - 'schema' => [ - 'type' => 'string', - 'required' => false, - ], + 'schema' => ['description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****'], ], [ - 'name' => 'Deploy', + 'name' => 'VersionId', 'in' => 'query', - 'schema' => [ - 'type' => 'boolean', - 'required' => false, - ], + 'schema' => ['description' => '版本ID。', 'type' => 'string', 'required' => false, 'example' => '0026ff7f-2b57-4127-bdd0-9bf202bb****'], ], ], 'responses' => [ 200 => [ 'schema' => [ + 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'AB521DBB-FA78-42E6-803F-A862EA4F****', - ], - 'Message' => [ - 'description' => '调用结果的附加信息。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0bc3b6f315637273629117900d****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '01CF26C7-00A3-4AA6-BA76-7E95F2A3****'], + 'Message' => ['description' => '调用结果的附加信息。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => 'ac1a0b2215622246421415014e****'], 'Data' => [ - 'description' => '返回结果。', + 'description' => '应用信息。', 'type' => 'object', 'properties' => [ - 'ChangeOrderId' => [ - 'description' => '发布单ID。', - 'type' => 'string', - 'example' => 'ffd8cd45-2b5f-415d-b4d0-1003e80b****', + 'VpcId' => ['description' => 'VPC ID。', 'type' => 'string', 'example' => 'vpc-2ze0i263cnn311nvj****'], + 'Readiness' => ['description' => '应用启动状态检查,多次健康检查失败的容器将被关闭并重启。不通过健康检查的容器将不会有SLB流量进入。支持**exec**、**httpGet**和**tcpSocket**方式。具体示例,请参见**Liveness**参数。'."\n" + ."\n" + .'> 只能选择一种方式进行健康检查。', 'type' => 'string', 'example' => '{"exec":{"command":["curl http://localhost:8080"]},"initialDelaySeconds":20,"timeoutSeconds":5}'], + 'ConfigMapMountDesc' => [ + 'description' => 'ConfigMap信息。', + 'type' => 'array', + 'items' => [ + 'description' => 'ConfigMap信息。', + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => 'ConfigMap键值对。', 'type' => 'string', 'example' => 'k1'], + 'ConfigMapName' => ['description' => 'ConfigMap名称。', 'type' => 'string', 'example' => 'test'], + 'MountPath' => ['description' => '容器挂载路径。', 'type' => 'string', 'example' => '/tmp'], + 'ConfigMapId' => ['description' => 'ConfigMap ID。', 'type' => 'integer', 'format' => 'int64', 'example' => '1'], + ], + ], + ], + 'SecurityGroupId' => ['description' => '安全组ID。', 'type' => 'string', 'example' => 'sg-wz969ngg2e49q5i4****'], + 'BatchWaitTime' => ['description' => '分批发布时批次间的等待时间,单位为秒。', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], + 'Jdk' => ['description' => '部署包依赖的JDK版本。支持版本如下:'."\n" + ."\n" + .'- **Open JDK 8**'."\n" + .'- **Open JDK 7**'."\n" + .'- **Dragonwell 11**'."\n" + .'- **Dragonwell 8**'."\n" + .'- **openjdk-8u191-jdk-alpine3.9**'."\n" + .'- **openjdk-7u201-jdk-alpine3.9**'."\n" + ."\n" + .'当**Package Type**为**Image**时不支持。', 'type' => 'string', 'example' => 'Open JDK 8'], + 'ImageUrl' => ['description' => '镜像地址。当**Package Type**为**Image**时必填。', 'type' => 'string', 'example' => 'docker.io/library/nginx:1.14.2'], + 'SlsConfigs' => ['description' => '日志采集到SLS的配置。'."\n" + ."\n" + .'- 使用SAE自动创建的SLS资源:`[{"logDir":"","logType":"stdout"},{"logDir":"/tmp/a.log"}]`。'."\n" + .'- 使用自定义的SLS资源:`[{"projectName":"test-sls","logType":"stdout","logDir":"","logstoreName":"sae","logtailName":""},{"projectName":"test","logDir":"/tmp/a.log","logstoreName":"sae","logtailName":""}]`。'."\n" + ."\n" + .'参数说明如下:'."\n" + ."\n" + .'- **projectName**:配置SLS上的Project名称。 '."\n" + .'- **logDir**:日志路径。'."\n" + .'- **logType**:日志类型。**stdout**表示容器标准输出日志,仅可设置1条;如果不设置,则表示收集文件日志。'."\n" + .'- **logstoreName**:配置SLS上的Logstore名称。'."\n" + .'- **logtailName**:配置SLS上的Logtail名称,如果不指定,则表示新建Logtail。'."\n" + ."\n" + .'多次部署时如果SLS采集配置没有变更,则不需要设置该参数(即请求中无需包含**SlsConfigs**字段);如果不再需要使用SLS采集功能,您需要在请求中将该字段的值设置为空字符串(即请求中**SlsConfigs**字段的值为"")。', 'type' => 'string', 'example' => '[{"logDir":"","logType":"stdout"},{"logDir":"/tmp/a.log"}]'], + 'Liveness' => ['description' => '容器健康检查,健康检查失败的容器将被关闭并恢复。支持方式如下:'."\n" + ."\n" + .'- **exec**:例如 `{"exec":{"command":\\["sh","-c","cat/home/admin/start.sh"]},"initialDelaySeconds":30,"periodSeconds":30,"timeoutSeconds":2}`'."\n" + .'- **httpGet**:例如`{"httpGet":{"path":"/","port":18091,"scheme":"HTTP","isContainKeyWord":true,"keyWord":"SAE"},"initialDelaySeconds":11,"periodSeconds":10,"timeoutSeconds":1}`'."\n" + .'- **tcpSocket**:例如`{"tcpSocket":{"port":18091},"initialDelaySeconds":11,"periodSeconds":10,"timeoutSeconds":1}`'."\n" + ."\n" + .'> 只能选择一种方式进行健康检查。'."\n" + ."\n" + .'参数说明如下:'."\n" + ."\n" + .'- **exec.command**:设置健康检查命令。'."\n" + .'- **httpGet.path**:访问路径。'."\n" + .'- **httpGet.scheme**:**HTTP**或**HTTPS**。'."\n" + .'- **httpGet.isContainKeyWord**:**true**表示包含关键字,**false**表示不包含关键字,缺失该字段表示不使用高级功能。'."\n" + .'- **httpGet.keyWord**:自定义的关键字,使用时不能缺失**isContainKeyWord**字段。'."\n" + .'- **tcpSocket.port**:tcp连接检测的端口 。'."\n" + .'- **initialDelaySeconds**:设置健康检查延迟检测时间,默认为10,单位为秒。'."\n" + .'- **periodSeconds**:设置健康检查周期,默认为30,单位为秒。'."\n" + .'- **timeoutSeconds**:设置健康检查超时等待时间,默认为1,单位为秒。如果设置为0或不设置,默认超时等待时间为1秒。', 'type' => 'string', 'example' => '{"exec":{"command":["curl http://localhost:8080"]},"initialDelaySeconds":20,"timeoutSeconds":3}'], + 'Tags' => [ + 'description' => '标签信息。', + 'type' => 'array', + 'items' => [ + 'description' => '标签信息。', + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => '标签键。', 'type' => 'string', 'example' => 'k1'], + 'Value' => ['description' => '标签值。', 'type' => 'string', 'example' => 'v1'], + ], + ], + ], + 'PackageUrl' => ['description' => '部署包地址,如果您的部署包是通过SAE上传的需要注意以下两点:'."\n" + ."\n" + .'- 该地址不能直接下载,需要您通过GetPackageVersionAccessableUrl接口来获取可下载的地址(有效期10分钟)。'."\n" + .'- 该包SAE侧最长时间会保留90天,超过90天后不会返回给地址也不提供下载。', 'type' => 'string', 'example' => 'https://edas-bj.oss-cn-beijing.aliyuncs.com/apps/K8s_APP_ID/d4c97c37-aba3-403e-ae1e-6f7d8742****/hello-sae.war'], + 'PackageType' => ['description' => '应用包类型。取值说明如下:'."\n" + ."\n" + .'- 当您选择用Java部署时,支持**FatJar**、**War**和**Image**。'."\n" + .'- 当您选择用PHP部署时,支持类型如下:'."\n" + .' - **PhpZip**'."\n" + .' - **IMAGE\\_PHP\\_5\\_4**'."\n" + .' - **IMAGE\\_PHP\\_5\\_4\\_ALPINE**'."\n" + .' - **IMAGE\\_PHP\\_5\\_5**'."\n" + .' - **IMAGE\\_PHP\\_5\\_5\\_ALPINE**'."\n" + .' - **IMAGE\\_PHP\\_5\\_6**'."\n" + .' - **IMAGE\\_PHP\\_5\\_6\\_ALPINE**'."\n" + .' - **IMAGE\\_PHP\\_7\\_0**'."\n" + .' - **IMAGE\\_PHP\\_7\\_0\\_ALPINE**'."\n" + .' - **IMAGE\\_PHP\\_7\\_1**'."\n" + .' - **IMAGE\\_PHP\\_7\\_1\\_ALPINE**'."\n" + .' - **IMAGE\\_PHP\\_7\\_2**'."\n" + .' - **IMAGE\\_PHP\\_7\\_2\\_ALPINE**'."\n" + .' - **IMAGE\\_PHP\\_7\\_3**'."\n" + .' - **IMAGE\\_PHP\\_7\\_3\\_ALPINE**', 'type' => 'string', 'example' => 'War'], + 'PreStop' => ['description' => '容器停止前执行脚本。在容器被删除前触发执行一段脚本,格式如:`{"exec":{"command":\\["cat","/etc/group"\\]}}`', 'type' => 'string', 'example' => '{"exec":{"command":["cat","/etc/group"]}}'], + 'PackageVersion' => ['description' => '部署包的版本号。当**Package Type**为**FatJar**或**War**时必填。', 'type' => 'string', 'example' => '1.0'], + 'JarStartArgs' => ['description' => 'JAR包启动应用参数。应用默认启动命令:`$JAVA_HOME/bin/java $JarStartOptions -jar $CATALINA_OPTS "$package_path" $JarStartArgs`', 'type' => 'string', 'example' => 'start'], + 'AppName' => ['description' => '应用名称。', 'type' => 'string', 'example' => 'demo-app'], + 'AppId' => ['description' => '应用ID。', 'type' => 'string', 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****'], + 'JarStartOptions' => ['description' => 'JAR包启动应用选项。应用默认启动命令:`$JAVA_HOME/bin/java $JarStartOptions -jar $CATALINA_OPTS "$package_path" $JarStartArgs`', 'type' => 'string', 'example' => '-Dtest=true'], + 'Replicas' => ['description' => '应用实例个数。', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], + 'UpdateStrategy' => ['description' => '部署策略。当最小存活实例数等于1时,**UpdateStrategy**字段的值为""。当最小存活实例数大于1时,示例如下:'."\n" + ."\n" + .'- 灰度1台+后续分2批+自动分批+分批间隔1分钟:`{"type":"GrayBatchUpdate","batchUpdate":{"batch":2,"releaseType":"auto","batchWaitTime":1},"grayUpdate":{"gray":1}}`'."\n" + .' '."\n" + .'- 灰度1台+后续分2批+手动分批:`{"type":"GrayBatchUpdate","batchUpdate":{"batch":2,"releaseType":"manual"},"grayUpdate":{"gray":1}}`'."\n" + ."\n" + .'- 分2批+自动分批+分批间隔0分钟:`{"type":"BatchUpdate","batchUpdate":{"batch":2,"releaseType":"auto","batchWaitTime":0}}`'."\n" + ."\n" + .'参数说明如下:'."\n" + ."\n" + .'- **type**:发布策略类型,可选灰度发布**GrayBatchUpdate**或分批发布**BatchUpdate**。'."\n" + .'- **batchUpdate**:分批发布策略。'."\n" + .' - **batch**:发布批次。'."\n" + .' - **releaseType**:分批间处理方式,可选自动**auto**或手动**manual**。'."\n" + .' - **batchWaitTime**:批次内部署间隔时间,单位为秒。'."\n" + .'- **grayUpdate**:灰度后剩余批次,当**type**为**GrayBatchUpdate**时必填。'."\n" + ."\n", 'type' => 'string', 'example' => '{"type":"GrayBatchUpdate","batchUpdate":{"batch":2,"releaseType":"auto","batchWaitTime":1},"grayUpdate":{"gray":1}}'], + 'MinReadyInstances' => ['description' => '最小存活实例数。取值说明如下:'."\n" + ."\n" + .'- 如果设置为**0**,应用在升级过程中将会中断业务。'."\n" + .'- 如果设置为**-1**,最小存活实例数将使用系统推荐值,即取现有实例数的25%。如果当前为5个实例,5×25%=1.25,向上取整后,最小存活实例数为2。'."\n" + ."\n" + .'> 每次滚动部署最小存活的实例数建议≥1,保证业务不中断。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'MinReadyInstanceRatio' => ['description' => '最小存活实例数百分比。取值说明如下:'."\n" + ."\n" + .'- **-1**:默认值,表示不采用百分比。如果不填写,系统默认为**-1**。'."\n" + .'- **0~100**:单位为百分比,向上取整。例如设置为**50**%,如果当前为5个实例,则最小存活实例数为3。'."\n" + ."\n" + .'> 当**MinReadyInstance**和**MinReadyInstanceRatio**同时传递,且**MinReadyInstanceRatio**的取值非**-1**时,以**MinReadyInstanceRatio**参数为准。假设**MinReadyInstances**取值为**5**,**MinReadyInstanceRatio**取值为**50**,则会用**MinReadyInstanceRatio**来计算最小存活实例数。', 'type' => 'integer', 'format' => 'int32', 'example' => '-1'], + 'Memory' => ['description' => '每个实例所需的内存,单位为MB,不能为0。与CPU为一一对应关系,目前仅支持以下固定规格:'."\n" + .'- **1024**:对应CPU为500毫核和1000毫核。'."\n" + .'- **2048**:对应CPU为500、1000毫核和2000毫核。'."\n" + .'- **4096**:对应CPU为1000、2000毫核和4000毫核。'."\n" + .'- **8192**:对应CPU为2000、4000毫核和8000毫核。'."\n" + .'- **12288**:对应CPU为12000毫核。'."\n" + .'- **16384**:对应CPU为4000、8000毫核和16000毫核。'."\n" + .'- **24576**:对应CPU为12000毫核。'."\n" + .'- **32768**:对应CPU为16000毫核。'."\n" + .'- **65536**:对应CPU为8000、16000和32000毫核。'."\n" + .'- **131072**:对应CPU为32000毫核。', 'type' => 'integer', 'format' => 'int32', 'example' => '2048'], + 'Php' => ['description' => 'PHP部署包依赖的PHP版本。镜像不支持。', 'type' => 'string', 'example' => 'PHP-FPM 7.0'], + 'PhpConfig' => ['description' => 'PHP配置文件内容。', 'type' => 'string', 'example' => 'k1=v1'], + 'PhpConfigLocation' => ['description' => 'PHP应用启动配置挂载路径,需要您保证PHP服务器会使用这个配置文件启动。', 'type' => 'string', 'example' => '/usr/local/etc/php/php.ini'], + 'PostStart' => ['description' => '容器启动后执行脚本。在容器被创建后立刻触发执行一段脚本,格式如:`{"exec":{"command":\\["cat","/etc/group"\\]}}`', 'type' => 'string', 'example' => '{"exec":{"command":["cat","/etc/group"]}}'], + 'TerminationGracePeriodSeconds' => ['description' => '优雅下线超时时间,默认为30,单位为秒。取值范围为1~300。', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], + 'CommandArgs' => ['description' => '镜像启动命令参数。启动命令**Command**所需参数。格式如下:'."\n" + ."\n" + .'`["a","b"]`'."\n" + ."\n" + .'在**Command**参数的示例中,`CommandArgs=["abc", ">", "file0"]`,其中`["abc", ">", "file0"]`需要转成String类型,里面的格式为JSON数组。如果无此参数,则无需填写。', 'type' => 'string', 'example' => '["a","b"]'], + 'NamespaceId' => ['description' => '命名空间ID。', 'type' => 'string', 'example' => 'cn-beijing:test'], + 'MountHost' => ['description' => 'NAS在应用VPC内的挂载点。部署时如果配置没有变更,则不需要设置该参数(即请求中无需包含**MountHost**字段);如果需要清除NAS配置,您需要在请求中将该字段的值设置为空字符串(即请求中**MountHost**字段的值为"")。', 'type' => 'string', 'example' => 'example.com'], + 'TomcatConfig' => ['description' => 'Tomcat文件配置,设置为""或"{}"表示删除配置:'."\n" + ."\n" + .'- **port**:端口范围为1024~65535,小于1024的端口需要Root权限才能操作。因为容器配置的是Admin权限,所以请填写大于1024的端口。如果不配置,则默认为8080。'."\n" + .'- **contextPath**:访问路径,默认为根目录"/"。'."\n" + .'- **maxThreads**:配置连接池的连接数大小,默认大小为400。'."\n" + .'- **uriEncoding**:Tomcat的编码格式,包括**UTF-8**、**ISO-8859-1**、**GBK**和**GB2312**。如果不设置,则默认为**ISO-8859-1**。'."\n" + .'- **useBodyEncoding**:是否使用**BodyEncoding for URL**,默认为**true**。', 'type' => 'string', 'example' => '{"port":8080,"contextPath":"/","maxThreads":400,"uriEncoding":"ISO-8859-1","useBodyEncodingForUri":true}'], + 'RegionId' => ['description' => '地域ID。', 'type' => 'string', 'example' => 'cn-beijing'], + 'VSwitchId' => ['description' => 'vSwitch ID。', 'type' => 'string', 'example' => 'vsw-2ze559r1z1bpwqxwp****'], + 'Cpu' => ['description' => '每个实例所需的CPU,单位为毫核,不能为0。目前仅支持以下固定规格:'."\n" + ."\n" + .'- **500**'."\n" + .'- **1000**'."\n" + .'- **2000**'."\n" + .'- **4000**'."\n" + .'- **8000**'."\n" + .'- **16000**'."\n" + .'- **32000**', 'type' => 'integer', 'format' => 'int32', 'example' => '1000'], + 'Envs' => ['description' => '容器环境变量参数。支持自定义或引用配置项。如需引用配置项,请先创建ConfigMap实例。更多信息,请参见[CreateConfigMap](~~176914~~)。取值说明如下:'."\n" + .'- 自定义配置'."\n" + .' - **name**:环境变量名称。'."\n" + .' - **value**:环境变量值。'."\n" + .'- 引用配置项'."\n" + .' - **name**:环境变量名称。支持引用单个或全部键,如果引用全部键,需输入`sae-sys-configmap-all-<配置项名称>`,例如`sae-sys-configmap-all-test1`。'."\n" + .' - **valueFrom**:环境变量引用。取值为`configMapRef`。'."\n" + .' - **configMapId**:配置项ID。'."\n" + .' - **key**:键。如果引用全部健值,则不设置该字段。', 'type' => 'string', 'example' => '[{"name":"TEST_ENV_KEY","value":"TEST_ENV_VAR"}]'], + 'MountDesc' => [ + 'description' => '挂载描述信息。', + 'type' => 'array', + 'items' => [ + 'description' => '挂载描述信息。', + 'type' => 'object', + 'properties' => [ + 'MountPath' => ['description' => '容器挂载路径。', 'type' => 'string', 'example' => '/tmp'], + 'NasPath' => ['description' => 'NAS相对文件目录。', 'type' => 'string', 'example' => '/'], + ], + ], + ], + 'EnableAhas' => ['description' => '是否接入AHAS。取值说明如下:'."\n" + ."\n" + .'- **true**:接入AHAS。'."\n" + .'- **false**:不接入AHAS。', 'type' => 'string', 'example' => 'true'], + 'CustomHostAlias' => ['description' => '容器内自定义Host映射。取值说明如下:'."\n" + ."\n" + .'- **hostName**:域名或主机名。'."\n" + .'- **ip**:IP地址。', 'type' => 'string', 'example' => '[{"hostName":"test.host.name","ip":"0.0.0.0"}]'], + 'WebContainer' => ['description' => '部署包依赖的Tomcat版本。支持版本如下:'."\n" + ."\n" + .'- **apache-tomcat-7.0.91**'."\n" + .'- **apache-tomcat-8.5.42**'."\n" + ."\n" + .'当**Package Type**为**Image**时不支持。', 'type' => 'string', 'example' => 'apache-tomcat-7.0.91'], + 'Command' => ['description' => '镜像启动命令。该命令必须为容器内存在的可执行的对象。示例如下:'."\n" + ."\n" + .'```'."\n" + .'command:'."\n" + .' - echo'."\n" + .' - abc'."\n" + .' - >'."\n" + .' - file0'."\n" + .'```'."\n" + .'根据上述示例,则`Command="echo", CommandArgs=["abc", ">", "file0"]`。', 'type' => 'string', 'example' => 'echo'], + 'WarStartOptions' => ['description' => 'WAR包启动应用选项。应用默认启动命令:`java $JAVA_OPTS $CATALINA_OPTS -Options org.apache.catalina.startup.Bootstrap "$@" start`。', 'type' => 'string', 'example' => 'custom-option'], + 'PhpArmsConfigLocation' => ['description' => 'PHP应用监控挂载路径,需要您保证PHP服务器一定会加载这个路径的配置文件。'."\n" + ."\n" + .'您无需关注配置内容,SAE会自动渲染正确的配置文件。', 'type' => 'string', 'example' => '/usr/local/etc/php/conf.d/arms.ini'], + 'NasId' => ['description' => 'NAS ID。', 'type' => 'string', 'example' => 'AKSN****'], + 'OssAkId' => ['title' => 'OSS读写的AK', 'description' => 'OSS读写的AccessKey ID。', 'type' => 'string', 'example' => 'xxxxxx'], + 'OssAkSecret' => ['title' => 'OSS读写的secret', 'description' => 'OSS读写的AccessKey Secret。', 'type' => 'string', 'example' => 'xxxxxx'], + 'OssMountDescs' => [ + 'title' => 'OSS挂载描述信息', + 'description' => 'OSS挂载描述信息。', + 'type' => 'array', + 'items' => [ + 'description' => 'OSS挂载描述信息。', + 'type' => 'object', + 'properties' => [ + 'bucketName' => ['title' => 'Bucket名称', 'description' => 'Bucket名称。', 'type' => 'string', 'example' => 'oss-bucket'], + 'bucketPath' => ['title' => 'Bucket中Oss Key名称', 'description' => '您在OSS创建的目录或OSS对象,如果OSS挂载目录不存在,会触发异常。', 'type' => 'string', 'example' => 'data/user.data'], + 'mountPath' => ['title' => '挂载到容器的路径', 'description' => '您在SAE的容器路径。如果路径已存在,为覆盖关系;如果路径不存在,会新建。', 'type' => 'string', 'example' => '/usr/data/user.data'], + 'readOnly' => ['title' => '是否只读', 'description' => '容器路径是否对挂载目录资源有可读权限,取值说明如下:'."\n" + ."\n" + .'- **true**:只读权限。'."\n" + .'- **false**:读写权限。', 'type' => 'boolean', 'example' => 'true'], + ], + ], + ], + 'EdasContainerVersion' => ['description' => 'HSF框架中应用运行环境版本,例如Ali-Tomcat容器。', 'type' => 'string', 'example' => '3.5.3'], + 'Timezone' => ['description' => '时区,默认为**Asia/Shanghai**。', 'type' => 'string', 'example' => 'Asia/Shanghai'], + 'AppDescription' => ['description' => '应用描述信息。', 'type' => 'string', 'example' => 'Sample application'], + 'EnableGreyTagRoute' => ['title' => '开启流量灰度', 'description' => '是否启用流量灰度规则。该规则仅适用于Spring Cloud和Dubbo框架的应用。取值说明如下:'."\n" + ."\n" + .'- **true**:启用灰度规则。'."\n" + .'- **false**:禁用灰度规则。', 'type' => 'boolean', 'example' => 'false'], + 'MseApplicationId' => ['title' => '对应MSE产品侧应用ID', 'description' => '对应MSE产品侧应用ID。', 'type' => 'string', 'example' => 'xxxxxxx@xxxxx'], + 'AcrInstanceId' => ['title' => 'ACR 企业版实例 ID', 'description' => 'ACR企业版实例ID。', 'type' => 'string', 'example' => 'cri-xxxxxx'], + 'AcrAssumeRoleArn' => ['description' => '跨账号拉取镜像时所需的RAM角色的ARN。更多信息,请参见[跨账号拉取阿里云镜像](~~190675~~)和[通过RAM角色实现跨云账号授权](~~223585~~)。', 'type' => 'string', 'example' => 'acs:ram::123456789012****:role/adminrole'], + 'ImagePullSecrets' => ['description' => '对应保密字典ID。', 'type' => 'string', 'example' => '10'], + 'AssociateEip' => ['title' => '是否绑定EIP', 'description' => '是否绑定EIP。取值说明如下:'."\n" + ."\n" + .'- **true**:绑定。'."\n" + .'- **false**:不绑定。', 'type' => 'boolean', 'example' => 'true'], + 'KafkaConfigs' => ['description' => '日志采集到Kafka的配置汇总信息。取值说明如下:'."\n" + ."\n" + .'- **kafkaEndpoint**:Kafka API的服务接入地址。'."\n" + .'- **kafkaInstanceId**:Kafka实例ID。'."\n" + .'- **kafkaConfigs**:单条或多条日志的配置汇总信息。示例值与参数说明,请参见本文的请求参数**kafkaConfigs**。', 'type' => 'string', 'example' => '{"kafkaEndpoint":"10.0.X.XXX:XXXX,10.0.X.XXX:XXXX,10.0.X.XXX:XXXX","kafkaInstanceId":"alikafka_pre-cn-7pp2l8kr****","kafkaConfigs":[{"logType":"file_log","logDir":"/tmp/a.log","kafkaTopic":"test2"},{"logType":"stdout","logDir":"","kafkaTopic":"test"}]}'], + 'ProgrammingLanguage' => ['description' => '创建应用的技术栈语言。取值说明如下:'."\n" + ."\n" + .'- **java**:Java语言。'."\n" + .'- **php**:PHP语言。'."\n" + .'- **other**:多语言,例如Python、C++、Go、.NET和Node.js等。', 'type' => 'string', 'example' => 'java'], + 'PvtzDiscovery' => ['description' => '开启K8s Service服务注册发现。', 'type' => 'string', 'example' => '{ "serviceName": "bwm-poc-sc-gateway-cn-beijing-front", "namespaceId": "cn-beijing:front", "portAndProtocol": { "18012": "TCP" }, "portProtocols": [ { "port": "18012", "protocol": "TCP" } ], "enable": true }'], + 'SwimlanePvtzDiscovery' => ['description' => '配置基于 K8s Service 服务注册发现和全链路灰度功能。', 'type' => 'string', 'example' => '{\\"enable\\":\\"false\\",\\"namespaceId\\":\\"cn-beijing:test\\",\\"portAndProtocol\\":{\\"2000:TCP\\":\\"18081\\"},\\"portProtocols\\":[{\\"port\\":2000,\\"protocol\\":\\"TCP\\",\\"targetPort\\":18081}],\\"pvtzDiscoveryName\\":\\"cn-beijing-1421801774382676\\",\\"serviceId\\":\\"3513\\",\\"serviceName\\":\\"demo-gray.test\\"}'], + 'MicroRegistration' => ['description' => '选择Nacos注册中心,取值说明如下:'."\n" + .'- **0**:SAE内置Nacos。'."\n" + .'- **1**:用户自建Nacos。'."\n" + .'- **2**:MSE商业版Nacos。', 'type' => 'string', 'example' => '"0"'], + 'NasConfigs' => ['description' => '挂载NAS的配置。', 'type' => 'string', 'example' => '[{"mountPath":"/test1","readOnly":false,"nasId":"nasId1","mountDomain":"nasId1.cn-shenzhen.nas.aliyuncs.com","nasPath":"/test1"},{"nasId":"nasId2","mountDomain":"nasId2.cn-shenzhen.nas.aliyuncs.com","readOnly":false,"nasPath":"/test2","mountPath":"/test2"}]'], + 'Python' => ['description' => 'Python环境。支持PYTHON 3.9.15。', 'type' => 'string', 'example' => 'PYTHON 3.9.15'], + 'PythonModules' => ['description' => '自定义安装模块依赖。默认安装根目录下requirements.txt定义的依赖项。如果未配置或自定义软件包,可以指定安装的依赖。', 'type' => 'string', 'example' => 'Flask==2.0'], + 'MseApplicationName' => ['description' => 'SAE服务注册到MSE后的应用名。', 'type' => 'string', 'example' => 'cn-shenzhen-alb-demo-5c****'], + 'AppSource' => ['description' => 'SAE应用类型。'."\n" + ."\n" + .'- micro_service。'."\n" + ."\n" + .'- web。'."\n" + ."\n" + .'- job。', 'type' => 'string', 'example' => 'micro_service'], + 'ServiceTags' => [ + 'description' => '应用配置的灰度标签', + 'type' => 'object', + 'additionalProperties' => ['type' => 'string', 'example' => 'tag1', 'description' => '灰度标签值'], + ], + 'Dotnet' => ['description' => '.NET 框架的版本号:'."\n" + ."\n" + .'- .NET 3.1'."\n" + .'- .NET 5.0'."\n" + .'- .NET 6.0'."\n" + .'- .NET 7.0'."\n" + .'- .NET 8.0', 'type' => 'string', 'example' => '.NET 8.0'], + 'MicroRegistrationConfig' => ['description' => '注册中心配置,仅在注册中心类型为MSE Nacos企业版时生效。', 'type' => 'string', 'example' => '{\\"instanceId\\":\\"mse-cn-1ls43******\\",\\"namespace\\":\\"62ee12fb-c279-4da4-be96-21**********\\"}'], + 'EnableIdle' => ['description' => '是否开启闲置模式:'."\n" + ."\n" + .'- 开启:true'."\n" + .'- 关闭:false', 'type' => 'boolean', 'example' => 'false'], + 'EnableNewArms' => ['description' => '是否启用新的ARMS功能:'."\n" + ."\n" + .'- true:启用'."\n" + .'- false:不启用', 'type' => 'boolean', 'example' => 'false'], + 'EnableCpuBurst' => ['description' => '是否启用CPU Burst功能:'."\n" + ."\n" + .'- true:启用'."\n" + .'- false:不启用', 'type' => 'string', 'example' => 'true'], + 'OidcRoleName' => ['description' => '设置身份认证服务RAM角色。'."\n" + .'> 需要提前创建同地域的OIDC身份供应商和身份供应商角色。具体信息,请参见[创建OIDC身份供应商](~~2331022~~)和[创建角色SSO身份提供商](~~2331016~~)。', 'type' => 'string', 'example' => 'sae-test'], + 'SecretMountDesc' => [ + 'description' => 'Secret挂载描述。', + 'type' => 'array', + 'items' => [ + 'description' => 'Secret挂载描述', + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => '对数据值进行Base64编码的Key。', 'type' => 'string', 'example' => 'task-center'], + 'SecretName' => ['description' => 'Secret实例名称。', 'type' => 'string', 'example' => 'dummy-name-opaque-894'], + 'MountPath' => ['description' => '挂载路径。', 'type' => 'string', 'example' => '/opt/www/runtime/logs'], + 'SecretId' => ['description' => '查询的Secret实例ID。', 'type' => 'integer', 'format' => 'int64', 'example' => '520'], + ], + ], + ], + 'SidecarContainersConfig' => [ + 'description' => 'Sidecar容器配置。', + 'type' => 'array', + 'items' => [ + 'description' => 'Sidecar容器配置。', + 'type' => 'object', + 'properties' => [ + 'Name' => ['description' => '容器名称。', 'type' => 'string', 'example' => 'test'], + 'Cpu' => ['description' => '设置Sidecar容器可以使用主容器的CPU资源上限。', 'type' => 'integer', 'format' => 'int32', 'example' => '500'], + 'Memory' => ['description' => '设置Sidecar容器可以使用主容器的内存资源上限。', 'type' => 'integer', 'format' => 'int32', 'example' => '1024'], + 'ImageUrl' => ['description' => '镜像地址。', 'type' => 'string', 'example' => 'registry.cn-beijing.aliyuncs.com/sae-dev-test/nginx:stable'], + 'AcrInstanceId' => ['description' => '容器镜像服务ACR企业版实例ID。当**ImageUrl**为容器镜像服务企业版时必填。', 'type' => 'string', 'example' => 'cri-fhzlneorxala66ip'], + 'Command' => ['description' => '镜像启动命令。该命令必须为容器内存在的可执行的对象。示例如下:'."\n" + ."\n" + .'```'."\n" + .'command:'."\n" + .' - echo'."\n" + .' - abc'."\n" + .' - >'."\n" + .' - file0'."\n" + .'```'."\n" + .'根据上述示例,则`Command="echo", CommandArgs=["abc", ">", "file0"]`。', 'type' => 'string', 'example' => '/bin/sh'], + 'CommandArgs' => ['description' => '镜像启动命令参数。上述启动命令**Command**所需参数。格式如下:'."\n" + ."\n" + .'`["a","b"]`'."\n" + ."\n" + .'在上述示例中,`CommandArgs=["abc", ">", "file0"]`,其中`["abc", ">", "file0"]`需要转成String类型,里面的格式为JSON数组。如果无此参数,则无需填写。', 'type' => 'string', 'example' => '[\\"-c\\",\\"echo \\\\\\"test\\\\\\" > /home/nas/test.log && sleep 10000000s\\"]'], + 'Envs' => ['description' => '容器环境变量参数。支持自定义或引用配置项。如需引用配置项,请先创建ConfigMap实例。更多信息,请参见[CreateConfigMap](~~176914~~)。取值说明如下:'."\n" + .'- 自定义配置'."\n" + .' - **name**:环境变量名称。'."\n" + .' - **value**:环境变量值。优先级高于valueFrom。'."\n" + .'- 引用配置项(valueFrom)'."\n" + .' - **name**:环境变量名称。支持引用单个或全部键,如果引用全部键,需输入`sae-sys-configmap-all-<配置项名称>`,例如`sae-sys-configmap-all-test1`。'."\n" + .' - **valueFrom**:环境变量引用。取值为`configMapRef`。'."\n" + .' - **configMapId**:配置项ID。'."\n" + .' - **key**:键。如果引用全部健值,则不设置该字段。', 'type' => 'string', 'example' => '[{\\"name\\":\\"k1\\",\\"value\\":\\"c8e3a815-e5d3-4adf-abb3-98b106a607c4\\"}]'], + 'ConfigMapMountDesc' => [ + 'description' => 'ConfigMap挂载描述。使用在命名空间配置项页面创建的配置项来向容器中注入配置信息。参数说明如下:'."\n" + .'- **configMapId**:ConfigMap实例ID。可通过调用[ListNamespacedConfigMaps](~~176917~~)接口获取。'."\n" + .'- **key**:键值。'."\n" + .'> 可通过传递`sae-sys-configmap-all`参数挂载所有键。'."\n" + .'- **mountPath**:挂载路径。'."\n" + .'- **ConfigMapName**:ConfigMap名称。', + 'type' => 'array', + 'items' => [ + 'description' => 'ConfigMap挂载描述。', + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => 'ConfigMap键。', 'type' => 'string', 'example' => 'key'], + 'ConfigMapName' => ['description' => 'ConfigMap名称。', 'type' => 'string', 'example' => 'ConfigMap-test'], + 'MountPath' => ['description' => '容器挂载路径。', 'type' => 'string', 'example' => '/mnt/test'], + 'ConfigMapId' => ['description' => 'ConfigMap实例ID。', 'type' => 'integer', 'format' => 'int64', 'example' => '7361'], + ], + ], + ], + 'EmptyDirDesc' => [ + 'description' => '共享临时存储。设置临时存储目录,并挂载到主容器和Sidecar容器。', + 'type' => 'array', + 'items' => [ + 'description' => '共享临时存储。', + 'type' => 'object', + 'properties' => [ + 'Name' => ['description' => '临时存储名称。', 'type' => 'string', 'example' => 'sidecar-container'], + 'MountPath' => ['description' => '数据卷在容器内的挂载路径。', 'type' => 'string', 'example' => '/mnt/cache'], + ], + ], + ], + 'SecretMountDesc' => [ + 'description' => 'Secret 挂载描述', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => '对数据值进行Base64编码的Key。', 'type' => 'string'], + 'SecretName' => ['description' => 'Secret实例名称。', 'type' => 'string'], + 'MountPath' => ['description' => '挂载路径。', 'type' => 'string'], + 'SecretId' => ['description' => 'Secret实例ID。', 'type' => 'integer', 'format' => 'int64'], + ], + 'description' => '', + ], + ], + 'Liveness' => ['description' => '容器健康检查。', 'type' => 'string'], + 'Readiness' => ['description' => '应用启动状态检查。', 'type' => 'string'], + 'PreStop' => ['description' => '容器停止前执行脚本。', 'type' => 'string'], + 'PostStart' => ['description' => '容器启动后执行脚本。', 'type' => 'string'], + ], + ], + ], + 'InitContainersConfig' => [ + 'description' => '初始化容器配置。', + 'type' => 'array', + 'items' => [ + 'description' => '初始化容器配置。', + 'type' => 'object', + 'properties' => [ + 'Name' => ['description' => '初始化容器名称。', 'type' => 'string', 'example' => 'init-container'], + 'ImageUrl' => ['description' => '初始化容器使用的镜像地址。', 'type' => 'string', 'example' => 'registry.cn-shenzhen.aliyuncs.com/sae-serverless-demo/sae-demo:microservice-java-provider-v1.0'], + 'Command' => ['description' => '镜像启动命令。该命令必须为容器内存在的可执行的对象。示例如下:'."\n" + ."\n" + .'```'."\n" + .'command:'."\n" + .' - echo'."\n" + .' - abc'."\n" + .' - >'."\n" + .' - file0'."\n" + .'```'."\n" + .'根据上述示例,则`Command="echo", CommandArgs=["abc", ">", "file0"]`。', 'type' => 'string', 'example' => '/bin/sh'], + 'CommandArgs' => ['description' => '镜像启动命令参数。上述启动命令**Command**所需参数。格式如下:'."\n" + ."\n" + .'`["a","b"]`'."\n" + ."\n" + .'在上述示例中,`CommandArgs=["abc", ">", "file0"]`,其中`["abc", ">", "file0"]`需要转成String类型,里面的格式为JSON数组。如果无此参数,则无需填写。', 'type' => 'string', 'example' => '["a","b"]'."\n"], + 'Envs' => ['description' => '容器环境变量参数。支持自定义或引用配置项。如需引用配置项,请先创建ConfigMap实例。更多信息,请参见[CreateConfigMap](~~176914~~)。取值说明如下:'."\n" + .'- 自定义配置'."\n" + .' - **name**:环境变量名称。'."\n" + .' - **value**:环境变量值。优先级高于valueFrom。'."\n" + .'- 引用配置项(valueFrom)'."\n" + .' - **name**:环境变量名称。支持引用单个或全部键,如果引用全部键,需输入`sae-sys-configmap-all-<配置项名称>`,例如`sae-sys-configmap-all-test1`。'."\n" + .' - **valueFrom**:环境变量引用。取值为`configMapRef`。'."\n" + .' - **configMapId**:配置项ID。'."\n" + .' - **key**:键。如果引用全部健值,则不设置该字段。'."\n" + .'- 引用保密字典(valueFrom)'."\n" + .' - **name**:环境变量名称。支持引用单个或全部键,如果引用全部键,需输入`sae-sys-secret-all-<保密字典名称>`,例如`sae-sys-secret-all-test1`。'."\n" + .' - **valueFrom**:环境变量引用。取值为`secretRef`。'."\n" + .' - **secretId**:保密字典ID。'."\n" + .' - **key**:键。如果引用全部健值,则不设置该字段。', 'type' => 'string', 'example' => '[{"name":"TEST_ENV_KEY","value":"TEST_ENV_VAR"}]'."\n"], + 'ConfigMapMountDesc' => [ + 'description' => 'ConfigMap信息。', + 'type' => 'array', + 'items' => [ + 'description' => 'ConfigMap键值对。', + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => 'ConfigMap键值对。', 'type' => 'string', 'example' => 'k1'."\n"], + 'ConfigMapName' => ['description' => 'ConfigMap名称。', 'type' => 'string', 'example' => 'test'."\n"], + 'MountPath' => ['description' => '容器挂载路径。', 'type' => 'string', 'example' => '/tmp'."\n"], + 'ConfigMapId' => ['description' => 'ConfigMap ID。', 'type' => 'integer', 'format' => 'int64', 'example' => '1'], + ], + ], + ], + 'EmptyDirDesc' => [ + 'description' => '共享临时存储。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Name' => ['description' => '临时存储名称。', 'type' => 'string'], + 'MountPath' => ['description' => '数据卷在容器内的挂载路径。', 'type' => 'string'], + ], + 'description' => '', + ], + ], + 'SecretMountDesc' => [ + 'description' => 'Secret挂载描述。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => '键。', 'type' => 'string'], + 'SecretName' => ['description' => 'Secret实例名称。', 'type' => 'string'], + 'MountPath' => ['description' => '挂载路径。', 'type' => 'string'], + 'SecretId' => ['description' => 'Secret实例ID。', 'type' => 'integer', 'format' => 'int64'], + ], + 'description' => '', + ], + ], + ], + ], + ], + 'CustomImageNetworkType' => ['description' => '自定义镜像类型,如果非自定义镜像,需要设置为空字符串:'."\n" + ."\n" + .'- internet:公网镜像'."\n" + .'- intranet:私网镜像', 'type' => 'string', 'example' => 'internet'], + 'ResourceType' => ['description' => '资源类型,仅支持`application`。', 'type' => 'string', 'example' => 'application'], + 'BaseAppId' => ['description' => '基线应用ID。', 'type' => 'string', 'example' => '8c573618-8d72-4407-baf4-f7b64b******'], + 'MicroserviceEngineConfig' => ['description' => '配置微服务治理功能。'."\n" + ."\n" + .'- 是否开启微服务治理(enable):'."\n" + ."\n" + .' - ture:开启'."\n" + ."\n" + .' - false:不开启'."\n" + ."\n" + .'- 配置无损上下线(mseLosslessRule):'."\n" + ."\n" + .' - delayTime:延迟事件'."\n" + ."\n" + .' - enable:是否启用无损上线功能,ture为开启,false为不开启。'."\n" + ."\n" + .' - notice:是否启用通知功能,ture为启用,false为启用。'."\n" + ."\n" + .' - warmupTime:小流量预热时长,单位为秒。', 'type' => 'string', 'example' => '{\\"Enable\\":true,\\"MseLosslessRule\\":{\\"enable\\":true,\\"notice\\":true,\\"delayTime\\":10,\\"warmupTime\\":120,\\"funcType\\":2,\\"aligned\\":false,\\"related\\":false,\\"lossLessDetail\\":false}}'], + 'NewSaeVersion' => ['description' => '应用版本:'."\n" + ."\n" + .'- lite:轻量版'."\n" + .'- std:标准版'."\n" + .'- pro:专业版', 'type' => 'string', 'example' => 'pro'], + 'ClusterId' => ['description' => '集群ID。', 'type' => 'string', 'example' => '495fc79c-ae61-4600-866d-a09d68******'], + 'DiskSize' => ['description' => '磁盘存储大小(单位GB)。', 'type' => 'integer', 'format' => 'int32', 'example' => '20'], + 'StartupProbe' => ['description' => '应用启动探测。', 'type' => 'string', 'example' => '{\\"exec\\":{\\"command\\":[\\"/bin/sh\\",\\"-c\\",\\"#!Note: If microservice config is enabled, the application will be automatically injected with the prestop configuration for lossless offline. If you delete this prestop configuration, lossless offline will not be effective.\\\\n echo stop > /tmp/prestop; /home/admin/.tools/curl http://127.0.0.1:54199/offline; sleep 30\\"]}}'], + 'GpuCount' => ['description' => 'GPU数量。', 'type' => 'string'], + 'GpuType' => ['description' => 'GPU卡型。', 'type' => 'string'], + 'EnablePrometheus' => ['description' => '是否开启Prometheus自定义指标采集。', 'type' => 'boolean'], + 'IsStateful' => ['description' => '是否为有状态应用。', 'type' => 'boolean'], + 'CmsServiceId' => ['description' => '云监控服务ID。', 'type' => 'string'], + 'HeadlessPvtzDiscovery' => ['type' => 'string', 'description' => ''], + 'Html' => ['type' => 'string', 'description' => ''], + 'EmptyDirDesc' => [ + 'description' => '共享临时存储。', + 'type' => 'array', + 'items' => [ + 'description' => '共享临时存储配置。', + 'type' => 'object', + 'properties' => [ + 'Name' => ['description' => '临时存储名称。', 'type' => 'string'], + 'MountPath' => ['description' => '挂载路径。', 'type' => 'string'], + ], + ], + ], + 'DeploymentName' => ['description' => '应用在ASI集群中的实例名', 'type' => 'string', 'example' => 'demo-b0cdce9b-3d1f-4168-b206-b59f348f1a8a'], + 'AlbIngressReadinessGate' => ['description' => 'ALB网关就绪门控(ReadinessGate)配置', 'type' => 'string'], + 'MaxSurgeInstances' => ['description' => '最大峰值实例数。', 'type' => 'integer', 'format' => 'int32'], + 'MaxSurgeInstanceRatio' => ['description' => '最大峰值实例数比例。', 'type' => 'integer', 'format' => 'int32'], + 'AgentVersion' => ['description' => 'Agent版本。', 'type' => 'string'], + 'EnableNamespaceAgentVersion' => ['description' => '是否复用命名空间Agent版本配置', 'type' => 'boolean'], + 'SlsLogEnvTags' => ['title' => 'sls log env tags', 'description' => 'sls log env tags', 'type' => 'string'], + 'LokiConfigs' => ['description' => 'LokiConfigs', 'type' => 'string'], + 'IdleHour' => ['type' => 'string', 'description' => ''], + 'Labels' => [ + 'description' => '标签。', + 'type' => 'object', + 'additionalProperties' => ['type' => 'string', 'description' => ''], + ], + 'RaspConfig' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'EnableRasp' => ['type' => 'boolean'], + 'RaspAppName' => ['type' => 'string'], + 'RaspAppKey' => ['type' => 'string'], + ], + ], ], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**目录。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '更改实例规格是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:更改成功。'."\n" - .'- **false**:更改失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '获取应用配置信息是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:获取成功。'."\n" + .'- **false**:获取失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidApplication.NotFound', - 'errorMessage' => 'The current application does not exist.', - ], - [ - 'errorCode' => 'InvalidInstanceSpecification.Unsupported', - 'errorMessage' => 'The instance specification is not supported: CPU [%s], memory [%s].', - ], - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], - [ - 'errorCode' => 'NoComputeResourceQuota.Exceed', - 'errorMessage' => 'Your compute resource is insufficient. Please contact us to raise the quota.', - ], - [ - 'errorCode' => 'user.indebt', - 'errorMessage' => 'The user has an outstanding payment.', - ], - [ - 'errorCode' => 'System.Upgrading', - 'errorMessage' => 'The system is being upgraded. Please try again later.', - ], - [ - 'errorCode' => 'Application.ChangerOrderRunning', - 'errorMessage' => 'An application change process is in progress. Please try again later.', - ], - [ - 'errorCode' => 'Application.InvalidStatus', - 'errorMessage' => 'The application status is abnormal. Please try again later.', - ], - [ - 'errorCode' => 'Application.NotDeployYet', - 'errorMessage' => 'The application has not been deployed. Please deploy it and try again.', + ['errorCode' => 'InvalidApplication.NotFound', 'errorMessage' => 'The current application does not exist.', 'description' => '找不到当前应用。'], + ], + 404 => [ + ['errorCode' => 'InvalidAppId.NotFound', 'errorMessage' => 'The specified AppId does not exist.', 'description' => '指定的AppId不存在。'], + ], + ], + 'title' => '获取应用配置信息', + 'summary' => '获取应用配置信息。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [ + ['createdAt' => '2026-03-05T03:34:48.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2026-03-05T03:21:32.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-03-04T11:14:45.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-03-04T09:53:18.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-03-04T05:50:17.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-03-04T03:40:09.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-03-04T03:39:24.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-02-25T06:15:54.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2026-02-25T06:10:12.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-02-25T01:45:56.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-02-25T01:42:47.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-02-24T12:42:31.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-02-24T12:38:26.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-02-24T11:44:52.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-02-24T11:14:30.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-02-24T11:09:20.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-02-24T11:05:44.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-02-24T11:00:11.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-02-24T10:52:40.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-02-04T02:09:07.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-02-03T03:18:30.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-02-03T02:36:34.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-01-30T08:18:03.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-01-30T02:56:58.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-01-15T02:33:07.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-01-13T13:03:45.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-01-13T12:45:37.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-01-13T12:32:29.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-01-13T09:00:03.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-01-13T08:52:09.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-12-30T11:59:49.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-12-25T03:03:24.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-12-22T05:47:45.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2025-11-27T05:52:40.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2025-11-04T03:34:36.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2025-10-24T09:36:12.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2025-10-13T09:40:49.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2025-09-29T09:27:19.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2025-09-18T11:30:37.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2025-07-30T06:59:49.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2025-07-29T05:33:47.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2025-07-04T06:12:37.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2025-05-29T01:54:35.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2025-05-26T08:50:05.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2025-04-25T11:26:57.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2025-04-07T03:09:05.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2025-02-26T08:53:44.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2025-02-13T01:45:50.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2025-01-20T11:42:19.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2025-01-13T06:07:31.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2025-01-02T06:58:16.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2024-12-26T08:38:34.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2024-12-17T11:33:09.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2024-12-10T09:29:00.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2024-11-08T03:11:29.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2024-10-11T03:29:12.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2024-09-12T03:24:21.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2024-08-28T07:04:48.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2024-08-12T10:24:04.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2024-05-21T02:16:45.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2024-01-22T11:44:40.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2023-10-24T12:02:07.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2023-09-25T08:34:30.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2023-06-07T08:56:24.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2022-11-22T13:03:50.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2022-03-03T12:42:21.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2021-11-17T02:29:04.000Z', 'description' => '响应参数发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '800', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeApplicationConfig'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeApplicationConfig', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"AB521DBB-FA78-42E6-803F-A862EA4F****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0bc3b6f315637273629117900d****\\",\\n \\"Data\\": {\\n \\"ChangeOrderId\\": \\"ffd8cd45-2b5f-415d-b4d0-1003e80b****\\"\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<RescaleApplicationVerticallyResponse>\\n <RequestId>AB521DBB-FA78-42E6-803F-A862EA4F****</RequestId>\\n <Message>success</Message>\\n <TraceId>0bc3b6f315637273629117900d****</TraceId>\\n <Data>\\n <ChangeOrderId>ffd8cd45-2b5f-415d-b4d0-1003e80b****</ChangeOrderId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</RescaleApplicationVerticallyResponse>","errorExample":""}]', - 'title' => '改变应用实例规格', - 'summary' => '更改应用实例规格。', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"01CF26C7-00A3-4AA6-BA76-7E95F2A3****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"ac1a0b2215622246421415014e****\\",\\n \\"Data\\": {\\n \\"VpcId\\": \\"vpc-2ze0i263cnn311nvj****\\",\\n \\"Readiness\\": \\"{\\\\\\"exec\\\\\\":{\\\\\\"command\\\\\\":[\\\\\\"curl http://localhost:8080\\\\\\"]},\\\\\\"initialDelaySeconds\\\\\\":20,\\\\\\"timeoutSeconds\\\\\\":5}\\",\\n \\"ConfigMapMountDesc\\": [\\n {\\n \\"Key\\": \\"k1\\",\\n \\"ConfigMapName\\": \\"test\\",\\n \\"MountPath\\": \\"/tmp\\",\\n \\"ConfigMapId\\": 1\\n }\\n ],\\n \\"SecurityGroupId\\": \\"sg-wz969ngg2e49q5i4****\\",\\n \\"BatchWaitTime\\": 10,\\n \\"Jdk\\": \\"Open JDK 8\\",\\n \\"ImageUrl\\": \\"docker.io/library/nginx:1.14.2\\",\\n \\"SlsConfigs\\": \\"[{\\\\\\"logDir\\\\\\":\\\\\\"\\\\\\",\\\\\\"logType\\\\\\":\\\\\\"stdout\\\\\\"},{\\\\\\"logDir\\\\\\":\\\\\\"/tmp/a.log\\\\\\"}]\\",\\n \\"Liveness\\": \\"{\\\\\\"exec\\\\\\":{\\\\\\"command\\\\\\":[\\\\\\"curl http://localhost:8080\\\\\\"]},\\\\\\"initialDelaySeconds\\\\\\":20,\\\\\\"timeoutSeconds\\\\\\":3}\\",\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"k1\\",\\n \\"Value\\": \\"v1\\"\\n }\\n ],\\n \\"PackageUrl\\": \\"https://edas-bj.oss-cn-beijing.aliyuncs.com/apps/K8s_APP_ID/d4c97c37-aba3-403e-ae1e-6f7d8742****/hello-sae.war\\",\\n \\"PackageType\\": \\"War\\",\\n \\"PreStop\\": \\"{\\\\\\"exec\\\\\\":{\\\\\\"command\\\\\\":[\\\\\\"cat\\\\\\",\\\\\\"/etc/group\\\\\\"]}}\\",\\n \\"PackageVersion\\": \\"1.0\\",\\n \\"JarStartArgs\\": \\"start\\",\\n \\"AppName\\": \\"demo-app\\",\\n \\"AppId\\": \\"7171a6ca-d1cd-4928-8642-7d5cfe69****\\",\\n \\"JarStartOptions\\": \\"-Dtest=true\\",\\n \\"Replicas\\": 2,\\n \\"UpdateStrategy\\": \\"{\\\\\\"type\\\\\\":\\\\\\"GrayBatchUpdate\\\\\\",\\\\\\"batchUpdate\\\\\\":{\\\\\\"batch\\\\\\":2,\\\\\\"releaseType\\\\\\":\\\\\\"auto\\\\\\",\\\\\\"batchWaitTime\\\\\\":1},\\\\\\"grayUpdate\\\\\\":{\\\\\\"gray\\\\\\":1}}\\",\\n \\"MinReadyInstances\\": 1,\\n \\"MinReadyInstanceRatio\\": -1,\\n \\"Memory\\": 2048,\\n \\"Php\\": \\"PHP-FPM 7.0\\",\\n \\"PhpConfig\\": \\"k1=v1\\",\\n \\"PhpConfigLocation\\": \\"/usr/local/etc/php/php.ini\\",\\n \\"PostStart\\": \\"{\\\\\\"exec\\\\\\":{\\\\\\"command\\\\\\":[\\\\\\"cat\\\\\\",\\\\\\"/etc/group\\\\\\"]}}\\",\\n \\"TerminationGracePeriodSeconds\\": 10,\\n \\"CommandArgs\\": \\"[\\\\\\"a\\\\\\",\\\\\\"b\\\\\\"]\\",\\n \\"NamespaceId\\": \\"cn-beijing:test\\",\\n \\"MountHost\\": \\"example.com\\",\\n \\"TomcatConfig\\": \\"{\\\\\\"port\\\\\\":8080,\\\\\\"contextPath\\\\\\":\\\\\\"/\\\\\\",\\\\\\"maxThreads\\\\\\":400,\\\\\\"uriEncoding\\\\\\":\\\\\\"ISO-8859-1\\\\\\",\\\\\\"useBodyEncodingForUri\\\\\\":true}\\",\\n \\"RegionId\\": \\"cn-beijing\\",\\n \\"VSwitchId\\": \\"vsw-2ze559r1z1bpwqxwp****\\",\\n \\"Cpu\\": 1000,\\n \\"Envs\\": \\"[{\\\\\\"name\\\\\\":\\\\\\"TEST_ENV_KEY\\\\\\",\\\\\\"value\\\\\\":\\\\\\"TEST_ENV_VAR\\\\\\"}]\\",\\n \\"MountDesc\\": [\\n {\\n \\"MountPath\\": \\"/tmp\\",\\n \\"NasPath\\": \\"/\\"\\n }\\n ],\\n \\"EnableAhas\\": \\"true\\",\\n \\"CustomHostAlias\\": \\"[{\\\\\\"hostName\\\\\\":\\\\\\"test.host.name\\\\\\",\\\\\\"ip\\\\\\":\\\\\\"0.0.0.0\\\\\\"}]\\",\\n \\"WebContainer\\": \\"apache-tomcat-7.0.91\\",\\n \\"Command\\": \\"echo\\",\\n \\"WarStartOptions\\": \\"custom-option\\",\\n \\"PhpArmsConfigLocation\\": \\"/usr/local/etc/php/conf.d/arms.ini\\",\\n \\"NasId\\": \\"AKSN****\\",\\n \\"OssAkId\\": \\"xxxxxx\\",\\n \\"OssAkSecret\\": \\"xxxxxx\\",\\n \\"OssMountDescs\\": [\\n {\\n \\"bucketName\\": \\"oss-bucket\\",\\n \\"bucketPath\\": \\"data/user.data\\",\\n \\"mountPath\\": \\"/usr/data/user.data\\",\\n \\"readOnly\\": true\\n }\\n ],\\n \\"EdasContainerVersion\\": \\"3.5.3\\",\\n \\"Timezone\\": \\"Asia/Shanghai\\",\\n \\"AppDescription\\": \\"Sample application\\",\\n \\"EnableGreyTagRoute\\": false,\\n \\"MseApplicationId\\": \\"xxxxxxx@xxxxx\\",\\n \\"AcrInstanceId\\": \\"cri-xxxxxx\\",\\n \\"AcrAssumeRoleArn\\": \\"acs:ram::123456789012****:role/adminrole\\",\\n \\"ImagePullSecrets\\": \\"10\\",\\n \\"AssociateEip\\": true,\\n \\"KafkaConfigs\\": \\"{\\\\\\"kafkaEndpoint\\\\\\":\\\\\\"10.0.X.XXX:XXXX,10.0.X.XXX:XXXX,10.0.X.XXX:XXXX\\\\\\",\\\\\\"kafkaInstanceId\\\\\\":\\\\\\"alikafka_pre-cn-7pp2l8kr****\\\\\\",\\\\\\"kafkaConfigs\\\\\\":[{\\\\\\"logType\\\\\\":\\\\\\"file_log\\\\\\",\\\\\\"logDir\\\\\\":\\\\\\"/tmp/a.log\\\\\\",\\\\\\"kafkaTopic\\\\\\":\\\\\\"test2\\\\\\"},{\\\\\\"logType\\\\\\":\\\\\\"stdout\\\\\\",\\\\\\"logDir\\\\\\":\\\\\\"\\\\\\",\\\\\\"kafkaTopic\\\\\\":\\\\\\"test\\\\\\"}]}\\",\\n \\"ProgrammingLanguage\\": \\"java\\",\\n \\"PvtzDiscovery\\": \\"{ \\\\\\"serviceName\\\\\\": \\\\\\"bwm-poc-sc-gateway-cn-beijing-front\\\\\\", \\\\\\"namespaceId\\\\\\": \\\\\\"cn-beijing:front\\\\\\", \\\\\\"portAndProtocol\\\\\\": { \\\\\\"18012\\\\\\": \\\\\\"TCP\\\\\\" }, \\\\\\"portProtocols\\\\\\": [ { \\\\\\"port\\\\\\": \\\\\\"18012\\\\\\", \\\\\\"protocol\\\\\\": \\\\\\"TCP\\\\\\" } ], \\\\\\"enable\\\\\\": true }\\",\\n \\"SwimlanePvtzDiscovery\\": \\"{\\\\\\\\\\\\\\"enable\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"false\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"namespaceId\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"cn-beijing:test\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"portAndProtocol\\\\\\\\\\\\\\":{\\\\\\\\\\\\\\"2000:TCP\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"18081\\\\\\\\\\\\\\"},\\\\\\\\\\\\\\"portProtocols\\\\\\\\\\\\\\":[{\\\\\\\\\\\\\\"port\\\\\\\\\\\\\\":2000,\\\\\\\\\\\\\\"protocol\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"TCP\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"targetPort\\\\\\\\\\\\\\":18081}],\\\\\\\\\\\\\\"pvtzDiscoveryName\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"cn-beijing-1421801774382676\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"serviceId\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"3513\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"serviceName\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"demo-gray.test\\\\\\\\\\\\\\"}\\",\\n \\"MicroRegistration\\": \\"\\\\\\"0\\\\\\"\\",\\n \\"NasConfigs\\": \\"[{\\\\\\"mountPath\\\\\\":\\\\\\"/test1\\\\\\",\\\\\\"readOnly\\\\\\":false,\\\\\\"nasId\\\\\\":\\\\\\"nasId1\\\\\\",\\\\\\"mountDomain\\\\\\":\\\\\\"nasId1.cn-shenzhen.nas.aliyuncs.com\\\\\\",\\\\\\"nasPath\\\\\\":\\\\\\"/test1\\\\\\"},{\\\\\\"nasId\\\\\\":\\\\\\"nasId2\\\\\\",\\\\\\"mountDomain\\\\\\":\\\\\\"nasId2.cn-shenzhen.nas.aliyuncs.com\\\\\\",\\\\\\"readOnly\\\\\\":false,\\\\\\"nasPath\\\\\\":\\\\\\"/test2\\\\\\",\\\\\\"mountPath\\\\\\":\\\\\\"/test2\\\\\\"}]\\",\\n \\"Python\\": \\"PYTHON 3.9.15\\",\\n \\"PythonModules\\": \\"Flask==2.0\\",\\n \\"MseApplicationName\\": \\"cn-shenzhen-alb-demo-5c****\\",\\n \\"AppSource\\": \\"micro_service\\",\\n \\"ServiceTags\\": {\\n \\"key\\": \\"tag1\\"\\n },\\n \\"Dotnet\\": \\".NET 8.0\\",\\n \\"MicroRegistrationConfig\\": \\"{\\\\\\\\\\\\\\"instanceId\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"mse-cn-1ls43******\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"namespace\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"62ee12fb-c279-4da4-be96-21**********\\\\\\\\\\\\\\"}\\",\\n \\"EnableIdle\\": false,\\n \\"EnableNewArms\\": false,\\n \\"EnableCpuBurst\\": \\"true\\",\\n \\"OidcRoleName\\": \\"sae-test\\",\\n \\"SecretMountDesc\\": [\\n {\\n \\"Key\\": \\"task-center\\",\\n \\"SecretName\\": \\"dummy-name-opaque-894\\",\\n \\"MountPath\\": \\"/opt/www/runtime/logs\\",\\n \\"SecretId\\": 520\\n }\\n ],\\n \\"SidecarContainersConfig\\": [\\n {\\n \\"Name\\": \\"test\\",\\n \\"Cpu\\": 500,\\n \\"Memory\\": 1024,\\n \\"ImageUrl\\": \\"registry.cn-beijing.aliyuncs.com/sae-dev-test/nginx:stable\\",\\n \\"AcrInstanceId\\": \\"cri-fhzlneorxala66ip\\",\\n \\"Command\\": \\"/bin/sh\\",\\n \\"CommandArgs\\": \\"[\\\\\\\\\\\\\\"-c\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"echo \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"test\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\" > /home/nas/test.log && sleep 10000000s\\\\\\\\\\\\\\"]\\",\\n \\"Envs\\": \\"[{\\\\\\\\\\\\\\"name\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"k1\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"value\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"c8e3a815-e5d3-4adf-abb3-98b106a607c4\\\\\\\\\\\\\\"}]\\",\\n \\"ConfigMapMountDesc\\": [\\n {\\n \\"Key\\": \\"key\\",\\n \\"ConfigMapName\\": \\"ConfigMap-test\\",\\n \\"MountPath\\": \\"/mnt/test\\",\\n \\"ConfigMapId\\": 7361\\n }\\n ],\\n \\"EmptyDirDesc\\": [\\n {\\n \\"Name\\": \\"sidecar-container\\",\\n \\"MountPath\\": \\"/mnt/cache\\"\\n }\\n ],\\n \\"SecretMountDesc\\": [\\n {\\n \\"Key\\": \\"\\",\\n \\"SecretName\\": \\"\\",\\n \\"MountPath\\": \\"\\",\\n \\"SecretId\\": 0\\n }\\n ],\\n \\"Liveness\\": \\"\\",\\n \\"Readiness\\": \\"\\",\\n \\"PreStop\\": \\"\\",\\n \\"PostStart\\": \\"\\"\\n }\\n ],\\n \\"InitContainersConfig\\": [\\n {\\n \\"Name\\": \\"init-container\\",\\n \\"ImageUrl\\": \\"registry.cn-shenzhen.aliyuncs.com/sae-serverless-demo/sae-demo:microservice-java-provider-v1.0\\",\\n \\"Command\\": \\"/bin/sh\\",\\n \\"CommandArgs\\": \\"[\\\\\\"a\\\\\\",\\\\\\"b\\\\\\"]\\\\n\\",\\n \\"Envs\\": \\"[{\\\\\\"name\\\\\\":\\\\\\"TEST_ENV_KEY\\\\\\",\\\\\\"value\\\\\\":\\\\\\"TEST_ENV_VAR\\\\\\"}]\\\\n\\",\\n \\"ConfigMapMountDesc\\": [\\n {\\n \\"Key\\": \\"k1\\\\n\\",\\n \\"ConfigMapName\\": \\"test\\\\n\\",\\n \\"MountPath\\": \\"/tmp\\\\n\\",\\n \\"ConfigMapId\\": 1\\n }\\n ],\\n \\"EmptyDirDesc\\": [\\n {\\n \\"Name\\": \\"\\",\\n \\"MountPath\\": \\"\\"\\n }\\n ],\\n \\"SecretMountDesc\\": [\\n {\\n \\"Key\\": \\"\\",\\n \\"SecretName\\": \\"\\",\\n \\"MountPath\\": \\"\\",\\n \\"SecretId\\": 0\\n }\\n ]\\n }\\n ],\\n \\"CustomImageNetworkType\\": \\"internet\\",\\n \\"ResourceType\\": \\"application\\",\\n \\"BaseAppId\\": \\"8c573618-8d72-4407-baf4-f7b64b******\\",\\n \\"MicroserviceEngineConfig\\": \\"{\\\\\\\\\\\\\\"Enable\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"MseLosslessRule\\\\\\\\\\\\\\":{\\\\\\\\\\\\\\"enable\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"notice\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"delayTime\\\\\\\\\\\\\\":10,\\\\\\\\\\\\\\"warmupTime\\\\\\\\\\\\\\":120,\\\\\\\\\\\\\\"funcType\\\\\\\\\\\\\\":2,\\\\\\\\\\\\\\"aligned\\\\\\\\\\\\\\":false,\\\\\\\\\\\\\\"related\\\\\\\\\\\\\\":false,\\\\\\\\\\\\\\"lossLessDetail\\\\\\\\\\\\\\":false}}\\",\\n \\"NewSaeVersion\\": \\"pro\\",\\n \\"ClusterId\\": \\"495fc79c-ae61-4600-866d-a09d68******\\",\\n \\"DiskSize\\": 20,\\n \\"StartupProbe\\": \\"{\\\\\\\\\\\\\\"exec\\\\\\\\\\\\\\":{\\\\\\\\\\\\\\"command\\\\\\\\\\\\\\":[\\\\\\\\\\\\\\"/bin/sh\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"-c\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"#!Note: If microservice config is enabled, the application will be automatically injected with the prestop configuration for lossless offline. If you delete this prestop configuration, lossless offline will not be effective.\\\\\\\\\\\\\\\\n echo stop > /tmp/prestop; /home/admin/.tools/curl http://127.0.0.1:54199/offline; sleep 30\\\\\\\\\\\\\\"]}}\\",\\n \\"GpuCount\\": \\"\\",\\n \\"GpuType\\": \\"\\",\\n \\"EnablePrometheus\\": true,\\n \\"IsStateful\\": true,\\n \\"CmsServiceId\\": \\"\\",\\n \\"HeadlessPvtzDiscovery\\": \\"\\",\\n \\"Html\\": \\"\\",\\n \\"EmptyDirDesc\\": [\\n {\\n \\"Name\\": \\"\\",\\n \\"MountPath\\": \\"\\"\\n }\\n ],\\n \\"DeploymentName\\": \\"demo-b0cdce9b-3d1f-4168-b206-b59f348f1a8a\\",\\n \\"AlbIngressReadinessGate\\": \\"\\",\\n \\"MaxSurgeInstances\\": 0,\\n \\"MaxSurgeInstanceRatio\\": 0,\\n \\"AgentVersion\\": \\"\\",\\n \\"EnableNamespaceAgentVersion\\": true,\\n \\"SlsLogEnvTags\\": \\"\\",\\n \\"LokiConfigs\\": \\"\\",\\n \\"IdleHour\\": \\"\\",\\n \\"Labels\\": {\\n \\"key\\": \\"\\"\\n },\\n \\"RaspConfig\\": [\\n {\\n \\"EnableRasp\\": true,\\n \\"RaspAppName\\": \\"\\",\\n \\"RaspAppKey\\": \\"\\"\\n }\\n ]\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeApplicationConfigResponse>\\n <RequestId>01CF26C7-00A3-4AA6-BA76-7E95F2A3****</RequestId>\\n <Message>success</Message>\\n <TraceId>ac1a0b2215622246421415014e****</TraceId>\\n <Data>\\n <VpcId>vpc-2ze0i263cnn311nvj****</VpcId>\\n <Readiness>{\\"exec\\":{\\"command\\":[\\"curl http://localhost:8080\\"]},\\"initialDelaySeconds\\":20,\\"timeoutSeconds\\":5}</Readiness>\\n <ConfigMapMountDesc>\\n <Key>k1</Key>\\n <ConfigMapName>test</ConfigMapName>\\n <MountPath>/tmp</MountPath>\\n <ConfigMapId>1</ConfigMapId>\\n </ConfigMapMountDesc>\\n <SecurityGroupId>sg-wz969ngg2e49q5i4****</SecurityGroupId>\\n <BatchWaitTime>10</BatchWaitTime>\\n <Jdk>Open JDK 8</Jdk>\\n <ImageUrl>docker.io/library/nginx:1.14.2</ImageUrl>\\n <SlsConfigs>[{\\"logDir\\":\\"\\",\\"logType\\":\\"stdout\\"},{\\"logDir\\":\\"/tmp/a.log\\"}]</SlsConfigs>\\n <Liveness>{\\"exec\\":{\\"command\\":[\\"curl http://localhost:8080\\"]},\\"initialDelaySeconds\\":20,\\"timeoutSeconds\\":3}</Liveness>\\n <Tags>\\n <Key>k1</Key>\\n <Value>v1</Value>\\n </Tags>\\n <PackageUrl>https://edas-bj.oss-cn-beijing.aliyuncs.com/apps/K8s_APP_ID/d4c97c37-aba3-403e-ae1e-6f7d8742****/hello-sae.war</PackageUrl>\\n <PackageType>War</PackageType>\\n <PreStop>{\\"exec\\":{\\"command\\":[\\"cat\\",\\"/etc/group\\"]}}</PreStop>\\n <PackageVersion>1.0</PackageVersion>\\n <JarStartArgs>start</JarStartArgs>\\n <AppName>demo-app</AppName>\\n <AppId>7171a6ca-d1cd-4928-8642-7d5cfe69****</AppId>\\n <JarStartOptions>-Dtest=true</JarStartOptions>\\n <Replicas>2</Replicas>\\n <UpdateStrategy>{\\"type\\":\\"GrayBatchUpdate\\",\\"batchUpdate\\":{\\"batch\\":2,\\"releaseType\\":\\"auto\\",\\"batchWaitTime\\":1},\\"grayUpdate\\":{\\"gray\\":1}}</UpdateStrategy>\\n <MinReadyInstances>1</MinReadyInstances>\\n <MinReadyInstanceRatio>-1</MinReadyInstanceRatio>\\n <Memory>2048</Memory>\\n <Php>PHP-FPM 7.0</Php>\\n <PhpConfig>k1=v1</PhpConfig>\\n <PhpConfigLocation>/usr/local/etc/php/php.ini</PhpConfigLocation>\\n <PostStart>{\\"exec\\":{\\"command\\":[\\"cat\\",\\"/etc/group\\"]}}</PostStart>\\n <TerminationGracePeriodSeconds>10</TerminationGracePeriodSeconds>\\n <CommandArgs>[\\"a\\",\\"b\\"]</CommandArgs>\\n <NamespaceId>cn-beijing:test</NamespaceId>\\n <MountHost>example.com</MountHost>\\n <TomcatConfig>{\\"port\\":8080,\\"contextPath\\":\\"/\\",\\"maxThreads\\":400,\\"uriEncoding\\":\\"ISO-8859-1\\",\\"useBodyEncodingForUri\\":true}</TomcatConfig>\\n <RegionId>cn-beijing</RegionId>\\n <VSwitchId>vsw-2ze559r1z1bpwqxwp****</VSwitchId>\\n <Cpu>1000</Cpu>\\n <Envs>[{\\"name\\":\\"TEST_ENV_KEY\\",\\"value\\":\\"TEST_ENV_VAR\\"}]</Envs>\\n <MountDesc>\\n <MountPath>/tmp</MountPath>\\n <NasPath>/</NasPath>\\n </MountDesc>\\n <EnableAhas>true</EnableAhas>\\n <CustomHostAlias>[{\\"hostName\\":\\"test.host.name\\",\\"ip\\":\\"0.0.0.0\\"}]</CustomHostAlias>\\n <WebContainer>apache-tomcat-7.0.91</WebContainer>\\n <Command>echo</Command>\\n <WarStartOptions>custom-option</WarStartOptions>\\n <PhpArmsConfigLocation>/usr/local/etc/php/conf.d/arms.ini</PhpArmsConfigLocation>\\n <NasId>AKSN89**</NasId>\\n <OssAkId>xxxxxx</OssAkId>\\n <OssAkSecret>xxxxxx</OssAkSecret>\\n <OssMountDescs>\\n <bucketName>oss-bucket</bucketName>\\n <bucketPath>data/user.data</bucketPath>\\n <mountPath>/usr/data/user.data</mountPath>\\n <readOnly>true</readOnly>\\n </OssMountDescs>\\n <EdasContainerVersion>3.5.3</EdasContainerVersion>\\n <Timezone>Asia/Shanghai</Timezone>\\n <AppDescription>示例应用</AppDescription>\\n <EnableGreyTagRoute>false</EnableGreyTagRoute>\\n <MseApplicationId>xxxxxxx@xxxxx</MseApplicationId>\\n <AcrInstanceId>cri-xxxxxx</AcrInstanceId>\\n <AcrAssumeRoleArn>acs:ram::123456789012****:role/adminrole</AcrAssumeRoleArn>\\n <ImagePullSecrets>10</ImagePullSecrets>\\n <AssociateEip>true</AssociateEip>\\n <KafkaConfigs>{\\"kafkaEndpoint\\":\\"10.0.X.XXX:XXXX,10.0.X.XXX:XXXX,10.0.X.XXX:XXXX\\",\\"kafkaInstanceId\\":\\"alikafka_pre-cn-7pp2l8kr****\\",\\"kafkaConfigs\\":[{\\"logType\\":\\"file_log\\",\\"logDir\\":\\"/tmp/a.log\\",\\"kafkaTopic\\":\\"test2\\"},{\\"logType\\":\\"stdout\\",\\"logDir\\":\\"\\",\\"kafkaTopic\\":\\"test\\"}]}</KafkaConfigs>\\n <ProgrammingLanguage>java</ProgrammingLanguage>\\n <PvtzDiscovery>{ \\"serviceName\\": \\"bwm-poc-sc-gateway-cn-beijing-front\\", \\"namespaceId\\": \\"cn-beijing:front\\", \\"portAndProtocol\\": { \\"18012\\": \\"TCP\\" }, \\"portProtocols\\": [ { \\"port\\": \\"18012\\", \\"protocol\\": \\"TCP\\" } ], \\"enable\\": true }</PvtzDiscovery>\\n <MicroRegistration>\\"0\\"</MicroRegistration>\\n <NasConfigs>[{\\"mountPath\\":\\"/test1\\",\\"readOnly\\":false,\\"nasId\\":\\"nasId1\\",\\"mountDomain\\":\\"nasId1.cn-shenzhen.nas.aliyuncs.com\\",\\"nasPath\\":\\"/test1\\"},{\\"nasId\\":\\"nasId2\\",\\"mountDomain\\":\\"nasId2.cn-shenzhen.nas.aliyuncs.com\\",\\"readOnly\\":false,\\"nasPath\\":\\"/test2\\",\\"mountPath\\":\\"/test2\\"}]</NasConfigs>\\n <Python>PYTHON 3.9.15</Python>\\n <PythonModules>Flask==2.0</PythonModules>\\n <MseApplicationName>cn-shenzhen-alb-demo-5c****</MseApplicationName>\\n <SaeVersion>v1</SaeVersion>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeApplicationConfigResponse>","errorExample":""}]', ], - 'ConfirmPipelineBatch' => [ - 'path' => '/pop/v1/sam/changeorder/ConfirmPipelineBatch', - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'DescribeApplicationGroups' => [ + 'path' => '/pop/v1/sam/app/describeApplicationGroups', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', + 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'none', - 'abilityTreeCode' => '6302', - 'abilityTreeNodes' => [ - 'FEATUREsaeRVPNSA', - ], + 'operationType' => 'get', + 'abilityTreeCode' => '6318', + 'abilityTreeNodes' => ['FEATUREsaeRVPNSA'], ], 'parameters' => [ [ - 'name' => 'PipelineId', + 'name' => 'AppId', 'in' => 'query', - 'schema' => [ - 'description' => '批次ID。'."\n" - .'通过<props="china">[DescribeChangeOrder](https://help.aliyun.com/zh/sae/serverless-app-engine-upgrade/developer-reference/api-sae-2019-05-06-describechangeorder?spm=a2c4g.11186623.help-menu-search-118957.d_0)</props><props="intl">[DescribeChangeOrder](https://www.alibabacloud.com/help/zh/sae/serverless-app-engine-classic/developer-reference/api-sae-2019-05-06-describechangeorder-old?spm=a2c63.p38356.help-menu-search-118957.d_0)'."\n" - .'</props>此接口获取。', - 'type' => 'string', - 'required' => true, - 'example' => 'e2e-vds-feh-***', - ], + 'schema' => ['description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => 'd700e680-aa4d-4ec1-afc2-6566b5ff****'], ], [ - 'name' => 'Confirm', + 'name' => 'CurrentPage', 'in' => 'query', - 'schema' => [ - 'description' => '是否开始下一批次。取值说明如下:'."\n" - ."\n" - .'- **true**:开始下一批次。'."\n" - .'- **false**:终止流程。', - 'type' => 'boolean', - 'required' => true, - 'example' => 'true', - ], + 'schema' => ['description' => '页码。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => ['description' => '页面大小。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '调用结果的附加信息。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '调用结果的附加信息。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], 'Data' => [ - 'description' => '批次信息。', - 'type' => 'object', - 'properties' => [ - 'PipelineId' => [ - 'description' => '批次ID。', - 'type' => 'string', - 'example' => 'e2e-vds-feh-***', - ], + 'description' => '应用分组信息。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Jdk' => ['description' => '部署包依赖的JDK版本。当**Package Type**为**Image**时不支持。', 'type' => 'string', 'example' => 'Open JDK 8'], + 'ImageUrl' => ['description' => '镜像地址。当**Package Type**为**Image**时必填。', 'type' => 'string', 'example' => 'registry-vpc.cn-hangzhou.aliyuncs.com/demo/nginx:latest'], + 'PackageUrl' => ['description' => '部署包地址。当**Package Type**为**FatJar**、**War**或**PhpZip**时必填。', 'type' => 'string', 'example' => 'registry-vpc.cn-hangzhou.aliyuncs.com/demo/nginx:latest'], + 'PackageType' => ['description' => '应用包类型。取值说明如下:'."\n" + ."\n" + .'- 当您选择用Java部署时,支持**FatJar**、**War**和**Image**。'."\n" + .'- 当您选择用PHP部署时,支持类型如下:'."\n" + .' - **PhpZip**'."\n" + .' - **IMAGE\\_PHP\\_5\\_4**'."\n" + .' - **IMAGE\\_PHP\\_5\\_4\\_ALPINE**'."\n" + .' - **IMAGE\\_PHP\\_5\\_5**'."\n" + .' - **IMAGE\\_PHP\\_5\\_5\\_ALPINE**'."\n" + .' - **IMAGE\\_PHP\\_5\\_6**'."\n" + .' - **IMAGE\\_PHP\\_5\\_6\\_ALPINE**'."\n" + .' - **IMAGE\\_PHP\\_7\\_0**'."\n" + .' - **IMAGE\\_PHP\\_7\\_0\\_ALPINE**'."\n" + .' - **IMAGE\\_PHP\\_7\\_1**'."\n" + .' - **IMAGE\\_PHP\\_7\\_1\\_ALPINE**'."\n" + .' - **IMAGE\\_PHP\\_7\\_2**'."\n" + .' - **IMAGE\\_PHP\\_7\\_2\\_ALPINE**'."\n" + .' - **IMAGE\\_PHP\\_7\\_3**'."\n" + .' - **IMAGE\\_PHP\\_7\\_3\\_ALPINE**', 'type' => 'string', 'example' => 'Image'], + 'PackageVersion' => ['description' => '部署包的版本号。当**Package Type**为**FatJar**、**War**或**PhpZip**时必填。若为**ImageUrl**部署,则自动生成。', 'type' => 'string', 'example' => '1.0.0'], + 'PackageVersionId' => ['description' => '部署包的版本ID。', 'type' => 'string'], + 'GroupName' => ['description' => '分组名称。', 'type' => 'string', 'example' => '_DEFAULT_GROUP'], + 'GroupId' => ['description' => '分组ID。', 'type' => 'string', 'example' => 'b2a8a925-477a-eswa-b823-d5e22500****'], + 'WebContainer' => ['description' => '部署包依赖的Tomcat版本。当**Package Type**为**Image**时不支持。', 'type' => 'string', 'example' => 'Apache Tomcat 7'], + 'Replicas' => ['description' => '所有实例数。', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], + 'EdasContainerVersion' => ['description' => 'HSF框架中应用运行环境版本,例如Ali-Tomcat容器。', 'type' => 'string', 'example' => '3.5.3'], + 'RunningInstances' => ['description' => '运行中的实例数。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'GroupType' => ['description' => '分组类型。', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], + ], + 'description' => '', ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '确认开启下一批次是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:确认成功。'."\n" - .'- **false**:确认失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**目录。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '获取应用实例分组是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:表示获取成功。'."\n" + .'- **false**:表示获取失败。', 'type' => 'boolean', 'example' => 'true'], ], + 'description' => '', ], ], ], - 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'System.Upgrading', - 'errorMessage' => 'The system is being upgraded. Please try again later.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], - [ - 'errorCode' => 'Pipeline.Can.Not.Start.Next.Batch', - 'errorMessage' => 'You cannot start the next batch under the current status.', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": [\\n {\\n \\"Jdk\\": \\"Open JDK 8\\",\\n \\"ImageUrl\\": \\"registry-vpc.cn-hangzhou.aliyuncs.com/demo/nginx:latest\\",\\n \\"PackageUrl\\": \\"registry-vpc.cn-hangzhou.aliyuncs.com/demo/nginx:latest\\",\\n \\"PackageType\\": \\"Image\\",\\n \\"PackageVersion\\": \\"1.0.0\\",\\n \\"PackageVersionId\\": \\"\\",\\n \\"GroupName\\": \\"_DEFAULT_GROUP\\",\\n \\"GroupId\\": \\"b2a8a925-477a-eswa-b823-d5e22500****\\",\\n \\"WebContainer\\": \\"Apache Tomcat 7\\",\\n \\"Replicas\\": 10,\\n \\"EdasContainerVersion\\": \\"3.5.3\\",\\n \\"RunningInstances\\": 1,\\n \\"GroupType\\": 0\\n }\\n ],\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeApplicationGroupsResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <Jdk>Open JDK 8</Jdk>\\n <ImageUrl>registry-vpc.cn-hangzhou.aliyuncs.com/demo/nginx:latest</ImageUrl>\\n <PackageUrl>registry-vpc.cn-hangzhou.aliyuncs.com/demo/nginx:latest</PackageUrl>\\n <PackageType>Image</PackageType>\\n <PackageVersion>1.0.0</PackageVersion>\\n <GroupName>_DEFAULT_GROUP</GroupName>\\n <GroupId>b2a8a925-477a-eswa-b823-d5e22500****</GroupId>\\n <WebContainer>Apache Tomcat 7</WebContainer>\\n <Replicas>10</Replicas>\\n <EdasContainerVersion>3.5.3</EdasContainerVersion>\\n <RunningInstances>1</RunningInstances>\\n <GroupType>0</GroupType>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeApplicationGroupsResponse>","errorExample":""}]', + 'title' => '获取应用实例分组', + 'summary' => '调用DescribeApplicationGroups接口获取应用实例分组。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:24.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-05-13T11:33:58.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2023-03-09T08:12:31.000Z', 'description' => '错误码发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '5000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeApplicationGroups'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeApplicationGroups', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"PipelineId\\": \\"e2e-vds-feh-***\\"\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<ConfirmPipelineBatchResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <PipelineId>e2e-vds-feh-***</PipelineId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</ConfirmPipelineBatchResponse>","errorExample":""}]', - 'title' => '是否开始一下批次', - 'summary' => '确认是否开始下一批次。', ], - 'AbortAndRollbackChangeOrder' => [ - 'path' => '/pop/v1/sam/changeorder/AbortAndRollbackChangeOrder', - 'methods' => [ - 'put', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'DescribeApplicationImage' => [ + 'path' => '/pop/v1/sam/container/describeApplicationImage', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -17308,21 +8489,20 @@ 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'abilityTreeCode' => '6291', - 'abilityTreeNodes' => [ - 'FEATUREsaeD9PL61', - ], + 'operationType' => 'get', + 'abilityTreeCode' => '6319', + 'abilityTreeNodes' => ['FEATUREsaeD9PL61'], ], 'parameters' => [ [ - 'name' => 'ChangeOrderId', + 'name' => 'AppId', 'in' => 'query', - 'schema' => [ - 'description' => '变更单ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'ba386059-69b1-4e65-b1e5-0682d9fa****', - ], + 'schema' => ['description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => 'd700e680-aa4d-4ec1-afc2-6566b5ff****'], + ], + [ + 'name' => 'ImageUrl', + 'in' => 'query', + 'schema' => ['description' => '镜像URL。', 'type' => 'string', 'required' => true, 'example' => 'registry-vpc.cn-hangzhou.aliyuncs.com/demo/demo:latest'], ], ], 'responses' => [ @@ -17331,183 +8511,136 @@ 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '调用结果的附加信息。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], 'Data' => [ - 'description' => '变更单信息。', + 'description' => '应用镜像信息。', 'type' => 'object', 'properties' => [ - 'ChangeOrderId' => [ - 'description' => '变更单ID。', - 'type' => 'string', - 'example' => 'ba386059-69b1-4e65-b1e5-0682d9fa****', - ], + 'Logo' => ['description' => '保留字段,暂无特殊含义。', 'type' => 'string'], + 'RepoOriginType' => ['description' => '镜像仓库类型。当前仅支持容器镜像服务。', 'type' => 'string', 'example' => 'ALI_HUB'], + 'CrUrl' => ['description' => '保留字段,暂无特殊含义。', 'type' => 'string'], + 'RepoTag' => ['description' => '镜像标签。', 'type' => 'string', 'example' => 'latest'], + 'RepoType' => ['description' => '保留字段。', 'type' => 'string'], + 'RepoName' => ['description' => '镜像仓库名称。', 'type' => 'string', 'example' => 'demo'], + 'RepoNamespace' => ['description' => '镜像命名空间。', 'type' => 'string', 'example' => 'demo'], + 'RegionId' => ['description' => '地域。', 'type' => 'string', 'example' => 'cn-beijing'], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => 'success', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '终止变更单是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:终止成功。'."\n" - .'- **false**:终止失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '获取应用镜像信息是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:获取成功。'."\n" + .'- **false**:获取失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], - 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'Resouce.no.permission', - 'errorMessage' => 'You are not authorized to operate on the specified resources.', - ], - [ - 'errorCode' => 'InvalidChangeOrder.NotFound', - 'errorMessage' => 'The current change order does not exist.', - ], - [ - 'errorCode' => 'Application.ChangerOrder.Not.Running', - 'errorMessage' => 'The change order is not running and cannot be terminated.', - ], - [ - 'errorCode' => 'System.Upgrading', - 'errorMessage' => 'The system is being upgraded. Please try again later.', - ], - [ - 'errorCode' => 'Application.ChangerOrderRunning', - 'errorMessage' => 'An application change process is in progress. Please try again later.', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"Logo\\": \\"\\",\\n \\"RepoOriginType\\": \\"ALI_HUB\\",\\n \\"CrUrl\\": \\"\\",\\n \\"RepoTag\\": \\"latest\\",\\n \\"RepoType\\": \\"\\",\\n \\"RepoName\\": \\"demo\\",\\n \\"RepoNamespace\\": \\"demo\\",\\n \\"RegionId\\": \\"cn-beijing\\"\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeApplicationImageResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <Logo>保留字段</Logo>\\n <RepoOriginType>ALI_HUB</RepoOriginType>\\n <CrUrl>保留字段</CrUrl>\\n <RepoTag>latest</RepoTag>\\n <RepoType>保留字段</RepoType>\\n <RepoName>demo</RepoName>\\n <RepoNamespace>demo</RepoNamespace>\\n <RegionId>cn-beijing</RegionId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeApplicationImageResponse>","errorExample":""}]', + 'title' => '描述应用镜像信息', + 'summary' => '调用DescribeApplicationImage接口描述应用镜像信息。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:24.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2023-03-08T10:14:56.000Z', 'description' => '错误码发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeApplicationImage', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"ChangeOrderId\\": \\"ba386059-69b1-4e65-b1e5-0682d9fa****\\"\\n },\\n \\"ErrorCode\\": \\"success\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<AbortAndRollbackChangeOrderResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <ChangeOrderId>ba386059-69b1-4e65-b1e5-0682d9fa****</ChangeOrderId>\\n </Data>\\n <ErrorCode>success</ErrorCode>\\n <Code>200</Code>\\n <Success>true</Success>\\n</AbortAndRollbackChangeOrderResponse>","errorExample":""}]', - 'title' => '中止或回滚变更单', - 'summary' => '调用AbortAndRollbackChangeOrder接口终止或回滚变更单。', ], - 'RescaleApplication' => [ - 'path' => '/pop/v1/sam/app/rescaleApplication', - 'methods' => [ - 'put', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'DescribeApplicationInstances' => [ + 'path' => '/pop/v1/sam/app/describeApplicationInstances', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '6385', - 'abilityTreeNodes' => [ - 'FEATUREsae5HLO11', - ], + 'operationType' => 'get', + 'abilityTreeCode' => '8972', + 'abilityTreeNodes' => ['FEATUREsaeRVPNSA'], ], 'parameters' => [ [ 'name' => 'AppId', 'in' => 'query', - 'schema' => [ - 'description' => '目标应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****', - ], + 'schema' => ['description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => 'd700e680-aa4d-4ec1-afc2-6566b5ff****'], ], [ - 'name' => 'Replicas', + 'name' => 'GroupId', 'in' => 'query', - 'schema' => [ - 'description' => '目标实例数。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => true, - 'example' => '5', - ], + 'schema' => ['description' => '应用分组ID。需要调用[DescribeApplicationGroups](~~126249~~)接口获取。', 'type' => 'string', 'required' => true, 'example' => 'b2a8a925-477a-4ed7-b825-d5e22500****'], ], [ - 'name' => 'MinReadyInstances', + 'name' => 'CurrentPage', 'in' => 'query', - 'schema' => [ - 'description' => '最小存活实例数。取值说明如下:'."\n" - ."\n" - .'- 如果设置为**0**,应用在升级过程中将会中断业务。'."\n" - .'- 如果设置为**-1**,最小存活实例数将使用系统推荐值,即取现有实例数的25%。如果当前为5个实例,5×25%=1.25,向上取整后,最小存活实例数为2。'."\n" - ."\n" - .'> 每次滚动部署最小存活的实例数建议≥1,保证业务不中断。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], + 'schema' => ['description' => '当前页码。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ - 'name' => 'MinReadyInstanceRatio', + 'name' => 'PageSize', 'in' => 'query', - 'schema' => [ - 'description' => '最小存活实例数百分比。取值说明如下:'."\n" - ."\n" - .' - **-1**:初始化值,表示不采用百分比。'."\n" - .' - **0~100**:单位为百分比,向上取整。例如设置为**50**%,如果当前为5个实例,则最小存活实例数为3。'."\n" - ."\n" - .'> 当**MinReadyInstance**和**MinReadyInstanceRatio**同时传递时,且**MinReadyInstanceRatio**的取值非**-1**时,以**MinReadyInstanceRatio**参数为准。假设**MinReadyInstances**取值为**5**,**MinReadyInstanceRatio**取值为**50**,则会用**50**来计算最小存活实例数。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '-1', - ], + 'schema' => ['description' => '分页查询时设置的每页行数。默认为**10**,取值范围\\(0,1000000000)。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], ], [ - 'name' => 'AutoEnableApplicationScalingRule', + 'name' => 'Reverse', 'in' => 'query', - 'schema' => [ - 'description' => '仅在扩缩容前有弹性规则开启时生效。取值说明如下:'."\n" - ."\n" - .'- **true**:扩缩容执行完毕后,自动开启扩缩容前启用的弹性规则。'."\n" - .'- **false**:扩缩容执行完毕后,不自动开启扩缩容前启用的弹性规则。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'schema' => ['description' => '根据应用实例运行状态对其进行排序。如果状态相同,则按照实例ID排序。取值说明如下:'."\n" + ."\n" + .'- **true**:按倒序排序。'."\n" + .'- **false**:按正序排序。'."\n" + ."\n" + .'实例正序排列如下:'."\n" + ."\n" + .'1. **Error**:实例启动过程中出错。'."\n" + .'2. **CrashLoopBackOff**:容器无法启动,在启动过程中出错,重启后又出错。'."\n" + .'3. **ErrImagePull**:拉取实例中的容器镜像出错。'."\n" + .'4. **ImagePullBackOff**:无法获取容器镜像。'."\n" + .'5. **Pending**:实例等待调度中。'."\n" + .'6. **Unknown**:未知异常。'."\n" + .'7. **Terminating**:终止实例接入中。'."\n" + .'8. **NotFound**:无法找到实例。'."\n" + .'9. **PodInitializing**:实例初始化中。'."\n" + .'10. **Init:0/1**:实例初始化。'."\n" + .'11. **Running**:实例运行中。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], + ], + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => ['description' => '应用实例ID。', 'type' => 'string', 'required' => false, 'example' => 'demo-faaca66c-5959-45cc-b3bf-d26093b2e9c0******'], + ], + [ + 'name' => 'PipelineId', + 'in' => 'query', + 'schema' => ['description' => '批次ID。通过调用[DescribeChangeOrder](~~126617~~)接口获取。', 'type' => 'string', 'required' => false, 'example' => '85750d48-6cfc-4dbf-8ea0-840397******'], ], ], 'responses' => [ @@ -17516,136 +8649,152 @@ 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'Message' => [ - 'description' => '调用结果的附加信息。', - 'type' => 'string', - 'example' => 'success', - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '调用结果的附加信息。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], 'Data' => [ - 'description' => '返回结果。', + 'description' => '应用实例信息。', 'type' => 'object', 'properties' => [ - 'ChangeOrderId' => [ - 'description' => '发布单ID。', - 'type' => 'string', - 'example' => '0e09829f-4914-4612-bc88-6f52fd81****', + 'CurrentPage' => ['description' => '当前页码。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'TotalSize' => ['description' => '实例总数。', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], + 'PageSize' => ['description' => '分页查询时设置的每页数量。', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], + 'Instances' => [ + 'description' => '应用实例列表。', + 'type' => 'array', + 'items' => [ + 'description' => '应用实例列表。', + 'type' => 'object', + 'properties' => [ + 'CreateTimeStamp' => ['description' => '实例开始创建的时间戳。单位:毫秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1558442609000'], + 'VSwitchId' => ['description' => '实例所在可用区。', 'type' => 'string', 'example' => 'vsw-***'], + 'InstanceContainerStatus' => ['description' => '实例运行状态。取值说明如下:'."\n" + ."\n" + .'- **Error**:实例启动过程中出错。'."\n" + .'- **CrashLoopBackOff**:容器无法启动,在启动过程中出错,重启后又出错。'."\n" + .'- **ErrImagePull**:拉取实例中的容器镜像出错。'."\n" + .'- **ImagePullBackOff**:无法获取容器镜像。'."\n" + .'- **Pending**:实例等待调度中。'."\n" + .'- **Unknown**:未知异常。'."\n" + .'- **Terminating**:终止实例接入中。'."\n" + .'- **NotFound**:无法找到实例。'."\n" + .'- **PodInitializing**:实例初始化中。'."\n" + .'- **Init:0/1**:实例初始化。'."\n" + .'- **Running**:实例运行中。', 'type' => 'string', 'example' => 'Running'], + 'InstanceHealthStatus' => ['description' => '健康检查配置信息。取值说明如下:'."\n" + ."\n" + .'- **WithoutHealthCheckConfig**:Liveness与Readiness健康检查未配置。'."\n" + .'- **WithoutLivenessConfig**:Liveness健康检查未配置。'."\n" + .'- **WithoutReadinessConfig**:Readiness健康检查未配置。'."\n" + .'- **NotCheckedYet**:实例正在或等待进行健康检查。'."\n" + .'- **LivenessUnhealthy**:Liveness健康检查失败,实例不健康。'."\n" + .'- **ReadinessUnhealthy**:Readiness健康检查失败,实例不健康。'."\n" + .'- **Unhealthy**:Liveness与Readiness健康检查失败,实例不健康。'."\n" + .'- **Healthy**:健康检查通过,实例健康。', 'type' => 'string', 'example' => 'WithoutHealthCheckConfig'], + 'InstanceContainerRestarts' => ['description' => '实例重启次数。', 'type' => 'integer', 'format' => 'int64', 'example' => '0'], + 'GroupId' => ['description' => '实例所属分组ID。', 'type' => 'string', 'example' => 'b2a8a925-477a-4ed7-b825-d5e22500****'], + 'InstanceContainerIp' => ['description' => '实例内网IP。', 'type' => 'string', 'example' => '192.168.X.X'], + 'InstanceId' => ['description' => '实例ID。', 'type' => 'string', 'example' => 'b2a8a925-477a-4ed7-b825-d5e22500****'], + 'ImageUrl' => ['description' => '镜像仓库地址。'."\n" + .'> 如果您是通过JAR包或WAR包部署,那么由SAE平台所生成的镜像不对外开放下载。', 'type' => 'string', 'example' => 'registry-vpc.cn-beijing.aliyuncs.com/sae-demo-image/cartservice:1.0'], + 'PackageVersion' => ['description' => '版本信息。', 'type' => 'string', 'example' => '1609939496200'], + 'Timestamp' => ['description' => '时间戳。', 'type' => 'integer', 'format' => 'int64', 'example' => '1750061980000'], + 'Eip' => ['description' => '弹性公网IP。', 'type' => 'string', 'example' => '8.129.XX.XXX'], + 'FinishTimeStamp' => ['description' => '实例创建完成的时间戳。单位:毫秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1642757283000'], + 'DebugStatus' => ['description' => '实例是否在调试中。取值说明如下:'."\n" + ."\n" + .'- **True**:是。'."\n" + .'- **False**:否。', 'type' => 'boolean', 'example' => 'False'], + 'SidecarContainersStatus' => [ + 'description' => 'Sidecar容器状态信息。', + 'type' => 'array', + 'items' => [ + 'description' => 'Sidecar容器状态信息。', + 'type' => 'object', + 'properties' => [ + 'ContainerId' => ['description' => 'Sidecar容器ID。', 'type' => 'string', 'example' => 'sidecar-test-01'], + 'ContainerStatus' => ['description' => '容器状态。', 'type' => 'string', 'example' => 'Running'], + 'ImageUrl' => ['description' => '镜像地址。', 'type' => 'string', 'example' => 'registry.cn-beijing.aliyuncs.com/sae-dev-test/******'], + ], + ], + ], + 'MainContainerStatus' => ['description' => '主容器状态。', 'type' => 'string', 'example' => 'Running'], + 'UnhealthyMessage' => ['description' => '当应用实例的健康检查失败时,此字段将返回具体的失败原因或错误信息。如果实例健康检查通过,则此字段不返回任何信息。', 'type' => 'string'], + 'TrafficStatus' => ['description' => '流量状态。', 'type' => 'string'], + 'Tags' => [ + 'description' => '标签信息。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => '标签键。', 'type' => 'string'], + 'Value' => ['description' => '标签值。', 'type' => 'string'], + ], + 'description' => '', + ], + ], + ], + ], ], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '应用扩缩是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:扩缩成功。'."\n" - .'- **false**:扩缩失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**目录。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '获取应用实例列表是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:获取成功。'."\n" + .'- **false**:获取失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], - 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'InvalidApplication.NotFound', - 'errorMessage' => 'The current application does not exist.', - ], - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], - [ - 'errorCode' => 'user.indebt', - 'errorMessage' => 'The user has an outstanding payment.', - ], - [ - 'errorCode' => 'NoComputeResourceQuota.App.Exceed', - 'errorMessage' => 'You can create %s instances for each application. Please submit a ticket to raise the quota.', - ], - [ - 'errorCode' => 'NoComputeResourceQuota.Exceed', - 'errorMessage' => 'Your compute resource is insufficient. Please contact us to raise the quota.', - ], - [ - 'errorCode' => 'NoComputeResourceQuota.User.Exceed', - 'errorMessage' => 'Your account is limited to create %s instances. Please submit a ticket to raise the quota.', - ], - [ - 'errorCode' => 'System.Upgrading', - 'errorMessage' => 'The system is being upgraded. Please try again later.', - ], - [ - 'errorCode' => 'Application.ChangerOrderRunning', - 'errorMessage' => 'An application change process is in progress. Please try again later.', - ], - [ - 'errorCode' => 'Application.InvalidStatus', - 'errorMessage' => 'The application status is abnormal. Please try again later.', - ], - [ - 'errorCode' => 'Application.NotDeployYet', - 'errorMessage' => 'The application has not been deployed. Please deploy it and try again.', - ], - [ - 'errorCode' => 'MinReadyInstances.Not.Smaller.Replicas', - 'errorMessage' => 'The minimum number of available instances must be less than the number of application instances.', - ], - [ - 'errorCode' => 'MinReadyInstanceRatio.Invalid', - 'errorMessage' => 'The ratio of minimum available instances must be between 0 and 100.', - ], - ], - 404 => [ - [ - 'errorCode' => 'Associate.Eip.Not.Enough', - 'errorMessage' => 'No sufficient EIPs are available.', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"CurrentPage\\": 1,\\n \\"TotalSize\\": 10,\\n \\"PageSize\\": 10,\\n \\"Instances\\": [\\n {\\n \\"CreateTimeStamp\\": 1558442609000,\\n \\"VSwitchId\\": \\"vsw-***\\",\\n \\"InstanceContainerStatus\\": \\"Running\\",\\n \\"InstanceHealthStatus\\": \\"WithoutHealthCheckConfig\\",\\n \\"InstanceContainerRestarts\\": 0,\\n \\"GroupId\\": \\"b2a8a925-477a-4ed7-b825-d5e22500****\\",\\n \\"InstanceContainerIp\\": \\"192.168.X.X\\",\\n \\"InstanceId\\": \\"b2a8a925-477a-4ed7-b825-d5e22500****\\",\\n \\"ImageUrl\\": \\"registry-vpc.cn-beijing.aliyuncs.com/sae-demo-image/cartservice:1.0\\",\\n \\"PackageVersion\\": \\"1609939496200\\",\\n \\"Timestamp\\": 1750061980000,\\n \\"Eip\\": \\"8.129.XX.XXX\\",\\n \\"FinishTimeStamp\\": 1642757283000,\\n \\"DebugStatus\\": true,\\n \\"SidecarContainersStatus\\": [\\n {\\n \\"ContainerId\\": \\"sidecar-test-01\\",\\n \\"ContainerStatus\\": \\"Running\\",\\n \\"ImageUrl\\": \\"registry.cn-beijing.aliyuncs.com/sae-dev-test/******\\"\\n }\\n ],\\n \\"MainContainerStatus\\": \\"Running\\",\\n \\"UnhealthyMessage\\": \\"\\",\\n \\"TrafficStatus\\": \\"\\",\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"\\",\\n \\"Value\\": \\"\\"\\n }\\n ]\\n }\\n ]\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeApplicationInstancesResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <CurrentPage>1</CurrentPage>\\n <TotalSize>10</TotalSize>\\n <PageSize>10</PageSize>\\n <Instances>\\n <CreateTimeStamp>1558442609000</CreateTimeStamp>\\n <VSwitchId>vsw-***</VSwitchId>\\n <InstanceContainerStatus>Running</InstanceContainerStatus>\\n <InstanceHealthStatus>WithoutHealthCheckConfig</InstanceHealthStatus>\\n <InstanceContainerRestarts>0</InstanceContainerRestarts>\\n <GroupId>b2a8a925-477a-4ed7-b825-d5e22500****</GroupId>\\n <InstanceContainerIp>192.168.X.X</InstanceContainerIp>\\n <InstanceId>b2a8a925-477a-4ed7-b825-d5e22500****</InstanceId>\\n <ImageUrl>registry-vpc.cn-beijing.aliyuncs.com/sae-demo-image/cartservice:1.0</ImageUrl>\\n <PackageVersion>1609939496200</PackageVersion>\\n <Eip>8.129.XX.XXX</Eip>\\n <FinishTimeStamp>1642757283000</FinishTimeStamp>\\n <DebugStatus>false</DebugStatus>\\n </Instances>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeApplicationInstancesResponse>","errorExample":""}]', + 'title' => '获取应用实例列表', + 'summary' => '获取应用实例列表。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [ + ['createdAt' => '2025-12-29T08:08:56.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2025-12-29T07:14:24.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-12-25T03:03:24.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-12-01T01:43:29.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2025-04-01T07:12:32.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2025-04-01T06:37:04.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2024-12-26T11:34:40.000Z', 'description' => '请求参数发生变更、响应参数发生变更'], + ['createdAt' => '2024-12-20T14:02:21.000Z', 'description' => '响应参数发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '5000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeApplicationInstances'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeApplicationInstances', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Data\\": {\\n \\"ChangeOrderId\\": \\"0e09829f-4914-4612-bc88-6f52fd81****\\"\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<RescaleApplicationResponse>\\n <Message>success</Message>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Data>\\n <ChangeOrderId>0e09829f-4914-4612-bc88-6f52fd81****</ChangeOrderId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</RescaleApplicationResponse>","errorExample":""}]', - 'title' => '应用扩缩容', - 'summary' => '完成应用扩缩容。', ], - 'RestartApplication' => [ - 'path' => '/pop/v1/sam/app/restartApplication', - 'methods' => [ - 'put', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'DescribeApplicationMseService' => [ + 'path' => '/pop/v1/sam/app/applicationMseService', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -17654,204 +8803,97 @@ 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'none', - 'abilityTreeCode' => '6387', - 'abilityTreeNodes' => [ - 'FEATUREsaeD9PL61', - ], + 'abilityTreeCode' => '198094', + 'abilityTreeNodes' => ['FEATUREsaeY046YN'], ], 'parameters' => [ [ 'name' => 'AppId', 'in' => 'query', - 'schema' => [ - 'description' => '目标应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****', - ], - ], - [ - 'name' => 'MinReadyInstances', - 'in' => 'query', - 'schema' => [ - 'description' => '最小存活实例数。取值说明如下:'."\n" - ."\n" - .'- 如果设置为**0**,应用在升级过程中将会中断业务。'."\n" - .'- 如果设置为**-1**,最小存活实例数将使用系统推荐值,即取现有实例数的25%。如果当前为5个实例,5×25%=1.25,向上取整后,最小存活实例数为2。'."\n" - ."\n" - .'> 每次滚动部署最小存活的实例数建议≥1,保证业务不中断。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], + 'schema' => ['description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => 'f7730764-d88f-4b9a-8d8e-cd8efbfe****'], ], [ - 'name' => 'MinReadyInstanceRatio', - 'in' => 'query', - 'schema' => [ - 'description' => '最小存活实例数百分比。取值说明如下:'."\n" - ."\n" - .' - **-1**:初始化值,表示不采用百分比。'."\n" - .' - **0~100**:单位为百分比,向上取整。例如设置为**50**%,如果当前为5个实例,则最小存活实例数为3。'."\n" - ."\n" - .'> 当**MinReadyInstance**和**MinReadyInstanceRatio**同时传递时,且**MinReadyInstanceRatio**的取值非**-1**时,以**MinReadyInstanceRatio**参数为准。假设**MinReadyInstances**取值为**5**,**MinReadyInstanceRatio**取值为**50**,则会用**50**来计算最小存活实例数。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '-1', - ], - ], - [ - 'name' => 'AutoEnableApplicationScalingRule', + 'name' => 'EnableAhas', 'in' => 'query', - 'schema' => [ - 'description' => '是否自动启用应用弹性伸缩策略。取值说明如下:'."\n" - .'- **true**:开启。'."\n" - .'- **false**:关闭。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], + 'schema' => ['title' => '是否为限流降级功能', 'description' => '是否为限流降级功能。访问限流降级相关接口时填true,否则填false。'."\n" + .'- true 检查限流降级权限'."\n" + .'- false 不需要检查限流降级权限', 'type' => 'boolean', 'required' => true, 'example' => 'true'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'B4D805CA-926D-41B1-8E63-7AD0C1ED****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], 'Data' => [ - 'description' => '返回结果。', + 'description' => 'MSE 微服务治理的应用信息。', 'type' => 'object', 'properties' => [ - 'ChangeOrderId' => [ - 'description' => '变更单ID。', - 'type' => 'string', - 'example' => '4a815998-b468-4bea-b7d8-59f52a44****', - ], + 'MseAppId' => ['description' => 'MSE 微服务治理的应用ID', 'type' => 'string', 'example' => 'mse-cn-hvm47******'], + 'MseAppName' => ['description' => 'MSE 微服务治理的应用名', 'type' => 'string', 'example' => 'test'], + 'MseAppNameSpace' => ['description' => 'MSE 微服务治理的命名空间', 'type' => 'string', 'example' => 'sae-ent'], + 'Status' => ['description' => 'MSE 微服务治应用状态'."\n" + .'- EXPIRED 已过期或者未开通相关功能'."\n" + .'- REBOOTING 应用重启中'."\n" + .'- WAITING 等待应用重启'."\n" + .'- FAIL 开通失败'."\n" + .'- NULL/SUCCESS 开通成功', 'type' => 'string', 'example' => 'SUCCESS'], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '重启实例是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:表示重启成功。'."\n" - .'- **false**:表示重启失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:2xx:成功。3xx:重定向。4xx:请求错误。5xx:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '获取应用实例分组是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:表示获取成功。'."\n" + .'- **false**:表示获取失败。', 'type' => 'boolean', 'example' => 'true'], ], + 'description' => '', ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidApplication.NotFound', - 'errorMessage' => 'The current application does not exist.', - ], - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], - [ - 'errorCode' => 'NoComputeResourceQuota.Exceed', - 'errorMessage' => 'Your compute resource is insufficient. Please contact us to raise the quota.', - ], - [ - 'errorCode' => 'user.indebt', - 'errorMessage' => 'The user has an outstanding payment.', - ], - [ - 'errorCode' => 'NoComputeResourceQuota.App.Exceed', - 'errorMessage' => 'You can create %s instances for each application. Please submit a ticket to raise the quota.', - ], - [ - 'errorCode' => 'NoComputeResourceQuota.User.Exceed', - 'errorMessage' => 'Your account is limited to create %s instances. Please submit a ticket to raise the quota.', - ], - [ - 'errorCode' => 'System.Upgrading', - 'errorMessage' => 'The system is being upgraded. Please try again later.', - ], - [ - 'errorCode' => 'Application.ChangerOrderRunning', - 'errorMessage' => 'An application change process is in progress. Please try again later.', - ], - [ - 'errorCode' => 'Application.InvalidStatus', - 'errorMessage' => 'The application status is abnormal. Please try again later.', - ], - [ - 'errorCode' => 'Application.NotDeployYet', - 'errorMessage' => 'The application has not been deployed. Please deploy it and try again.', - ], + ['errorCode' => 'System.Upgrading', 'errorMessage' => 'The system is being upgraded. Please try again later.', 'description' => '系统正在升级,请稍后操作。'], + ['errorCode' => 'InvalidApplication.NotFound', 'errorMessage' => 'The current application does not exist.', 'description' => '找不到当前应用。'], ], - 404 => [ - [ - 'errorCode' => 'Associate.Eip.Not.Enough', - 'errorMessage' => 'No sufficient EIPs are available.', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"B4D805CA-926D-41B1-8E63-7AD0C1ED****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"MseAppId\\": \\"mse-cn-hvm47******\\",\\n \\"MseAppName\\": \\"test\\",\\n \\"MseAppNameSpace\\": \\"sae-ent\\",\\n \\"Status\\": \\"SUCCESS\\"\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => '查询关联的MSE微服务治理应用', + 'summary' => '查询应用关联的MSE微服务治理应用信息', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:24.000Z', 'description' => 'OpenAPI 下线'], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => '', + 'ramAction' => [ + 'action' => 'sae:DescribeApplicationMseService', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"ChangeOrderId\\": \\"4a815998-b468-4bea-b7d8-59f52a44****\\"\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<RestartApplicationResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <ChangeOrderId>4a815998-b468-4bea-b7d8-59f52a44****</ChangeOrderId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</RestartApplicationResponse>","errorExample":""}]', - 'title' => '重启应用', - 'summary' => '调用RestartApplication接口重启应用。', ], - 'AbortChangeOrder' => [ - 'path' => '/pop/v1/sam/changeorder/AbortChangeOrder', - 'methods' => [ - 'put', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'DescribeApplicationNlbs' => [ + 'summary' => '查看应用绑定的NLB配置。', + 'path' => '/pop/v1/sam/app/nlb', + 'methods' => ['get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -17860,694 +8902,748 @@ 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '6292', - 'abilityTreeNodes' => [ - 'FEATUREsaeRVPNSA', - ], + 'operationType' => 'get', + 'abilityTreeCode' => '261358', + 'abilityTreeNodes' => ['FEATUREsaeBRTWZ3'], ], 'parameters' => [ [ - 'name' => 'ChangeOrderId', - 'in' => 'query', - 'schema' => [ - 'description' => '变更单ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'be2e1c76-682b-4897-98d3-1d8d6478****', - ], - ], - [ - 'name' => 'Rollback', + 'name' => 'AppId', 'in' => 'query', - 'schema' => [ - 'description' => '是否回滚', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'schema' => ['description' => '应用ID。', 'type' => 'string', 'required' => false, 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '调用结果的附加信息。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '附加信息。取值说明如下:请求正常,返回success。请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => 'ac1a0b2215622246421415014e****'], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**目录。', 'type' => 'string'], + 'Code' => ['description' => 'HTTP状态码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '绑定是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:启动成功。'."\n" + .'- **false**:启动失败。', 'type' => 'string', 'example' => 'true'], 'Data' => [ 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'ChangeOrderId' => [ - 'description' => '变更单ID。', - 'type' => 'string', - 'example' => 'be2e1c76-682b-4897-98d3-1d8d6478****', + 'Instances' => [ + 'description' => '实例信息。', + 'type' => 'object', + 'additionalProperties' => [ + 'type' => 'object', + 'properties' => [ + 'DnsName' => ['type' => 'string', 'description' => 'DNS 域名。', 'example' => 'nlb-wb7r6dlwetvt5j****.cn-hangzhou.nlb.aliyuncs.com'], + 'Listeners' => [ + 'type' => 'object', + 'additionalProperties' => [ + 'type' => 'object', + 'properties' => [ + 'Protocol' => ['type' => 'string', 'description' => '监听协议', 'example' => 'TCPSSL'], + 'Port' => ['type' => 'integer', 'format' => 'int32', 'description' => '负载均衡监听端口', 'example' => '80'], + 'Status' => ['type' => 'string', 'example' => 'Bounded', 'description' => 'NLB监听状态'."\n" + ."\n" + .'- **Creating**:监听正在创建中。'."\n" + .'- **Configuring**:监听正在配置中。'."\n" + .'- **Bounded**:监听已正常运行。'."\n" + .'- **Unbinding**:监听正在删除中。'."\n" + .'- **Failed**:监听不可用。'], + 'TargetPort' => ['type' => 'integer', 'format' => 'int32', 'example' => '8080', 'description' => '实例开放端口'], + 'CertIds' => ['type' => 'string', 'example' => '123157******', 'description' => '服务器证书'], + ], + 'description' => '监听信息', + ], + 'description' => '监听信息', + ], + 'CreatedBySae' => ['type' => 'boolean', 'description' => 'SAE代购标识:'."\n" + .'- **true**:实例由SAE代购创建'."\n" + .'- **false**:复用已有实例', 'example' => 'true'], + ], + 'description' => '实例信息', + ], ], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '终止变更单是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:终止成功。'."\n" - .'- **false**:终止失败。', - 'type' => 'boolean', - 'example' => 'true', - ], ], + 'description' => '', ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'Resouce.no.permission', - 'errorMessage' => 'You are not authorized to operate on the specified resources.', - ], - [ - 'errorCode' => 'Application.ChangerOrder.Not.Running', - 'errorMessage' => 'The change order is not running and cannot be terminated.', - ], - [ - 'errorCode' => 'Application.ChangerOrderRunning', - 'errorMessage' => 'An application change process is in progress. Please try again later.', - ], + ['errorCode' => 'InvalidApplication.NotFound', 'errorMessage' => 'The current application does not exist.', 'description' => '找不到当前应用。'], + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"ChangeOrderId\\": \\"be2e1c76-682b-4897-98d3-1d8d6478****\\"\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<AbortChangeOrderResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <ChangeOrderId>be2e1c76-682b-4897-98d3-1d8d6478****</ChangeOrderId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</AbortChangeOrderResponse>","errorExample":""}]', - 'title' => '中止变更单', - 'summary' => '调用AbortChangeOrder接口终止变更单。', - ], - 'RollbackApplication' => [ - 'path' => '/pop/v1/sam/app/rollbackApplication', - 'methods' => [ - 'put', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"ac1a0b2215622246421415014e****\\",\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": \\"true\\",\\n \\"Data\\": {\\n \\"Instances\\": {\\n \\"key\\": {\\n \\"DnsName\\": \\"nlb-wb7r6dlwetvt5j****.cn-hangzhou.nlb.aliyuncs.com\\",\\n \\"Listeners\\": {\\n \\"key\\": {\\n \\"Protocol\\": \\"TCPSSL\\",\\n \\"Port\\": 80,\\n \\"Status\\": \\"Bounded\\",\\n \\"TargetPort\\": 8080,\\n \\"CertIds\\": \\"123157******\\"\\n }\\n },\\n \\"CreatedBySae\\": true\\n }\\n }\\n }\\n}","type":"json"}]', + 'title' => '查看应用绑定的NLB配置', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:29.000Z', 'description' => 'OpenAPI 下线'], + ], + 'flowControl' => [ + 'flowControlList' => [], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeApplicationNlbs', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + ], + 'DescribeApplicationScalingRule' => [ + 'path' => '/pop/v1/sam/scale/applicationScalingRule', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '6389', - 'abilityTreeNodes' => [ - 'FEATUREsaeD9PL61', - ], + 'operationType' => 'get', + 'abilityTreeCode' => '6320', + 'abilityTreeNodes' => ['FEATUREsaeX1L0GL', 'FEATUREsaeAINYGA'], ], 'parameters' => [ [ 'name' => 'AppId', 'in' => 'query', - 'schema' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '017f39b8-dfa4-4e16-a84b-1dcee4b1****', - ], - ], - [ - 'name' => 'VersionId', - 'in' => 'query', - 'schema' => [ - 'description' => '版本ID,需要调用[ListAppVersions](~~162054~~)接口查看。', - 'type' => 'string', - 'required' => true, - 'example' => '0026ff7f-2b57-4127-bdd0-9bf202bb9****', - ], + 'schema' => ['description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => 'a0d2e04c-159d-40a8-b240-d2f2c263****'], ], [ - 'name' => 'BatchWaitTime', - 'in' => 'query', - 'schema' => [ - 'description' => '分批等待时间,单位为秒。'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', - ], - ], - [ - 'name' => 'MinReadyInstances', - 'in' => 'query', - 'schema' => [ - 'description' => '最小存活实例数。取值说明如下:'."\n" - ."\n" - .'- 如果设置为**0**,应用在升级过程中将会中断业务。'."\n" - .'- 如果设置为**-1**,最小存活实例数将使用系统推荐值,即取现有实例数的25%。如果当前为5个实例,5×25%=1.25,向上取整后,最小存活实例数为2。'."\n" - ."\n" - .'> 每次滚动部署最小存活的实例数建议≥1,保证业务不中断。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], - ], - [ - 'name' => 'MinReadyInstanceRatio', - 'in' => 'query', - 'schema' => [ - 'description' => '最小存活实例数百分比。取值说明如下:'."\n" - ."\n" - .' - **-1**:初始化值,表示不采用百分比。'."\n" - .' - **0~100**:单位为百分比,向上取整。例如设置为**50**%,如果当前为5个实例,则最小存活实例数为3。'."\n" - ."\n" - .'> 当**MinReadyInstance**和**MinReadyInstanceRatio**同时传递时,且**MinReadyInstanceRatio**的取值非**-1**时,以**MinReadyInstanceRatio**参数为准。假设**MinReadyInstances**取值为**5**,**MinReadyInstanceRatio**取值为**50**,则会用**50**来计算最小存活实例数。'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '-1', - ], - ], - [ - 'name' => 'UpdateStrategy', - 'in' => 'query', - 'schema' => [ - 'description' => '部署策略。当最小存活实例数等于1时,**UpdateStrategy**字段的值为""。当最小存活实例数大于1时,示例如下:'."\n" - ."\n" - .'- 灰度1台+后续分2批+自动分批+分批间隔1分钟。'."\n" - .' '."\n" - .' `{"type":"GrayBatchUpdate","batchUpdate":{"batch":2,"releaseType":"auto","batchWaitTime":1},"grayUpdate":{"gray":1}}`'."\n" - ."\n" - .'- 灰度1台+后续分2批+手动分批。'."\n" - ."\n" - .' `{"type":"GrayBatchUpdate","batchUpdate":{"batch":2,"releaseType":"manual"},"grayUpdate":{"gray":1}}`'."\n" - .' '."\n" - .'- 分2批+自动分批+分批间隔0分钟。'."\n" - ."\n" - .' `{"type":"BatchUpdate","batchUpdate":{"batch":2,"releaseType":"auto","batchWaitTime":0}}`'."\n" - ."\n" - .'参数说明如下:'."\n" - ."\n" - .'- **type**:发布策略类型,可选灰度发布**GrayBatchUpdate**或分批发布**BatchUpdate**。'."\n" - .'- **batchUpdate**:分批发布策略。'."\n" - .' - **batch**:发布批次。'."\n" - .' - **releaseType**:分批间处理方式,可选自动**auto**或手动**manual**。'."\n" - .' - **batchWaitTime**:批次内部署间隔时间,单位为秒。'."\n" - .'- **grayUpdate**:灰度后剩余批次,当**type**为**GrayBatchUpdate**时必填。'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '{"type":"GrayBatchUpdate","batchUpdate":{"batch":2,"releaseType":"auto","batchWaitTime":1},"grayUpdate":{"gray":1}}', - ], - ], - [ - 'name' => 'AutoEnableApplicationScalingRule', + 'name' => 'ScalingRuleName', 'in' => 'query', - 'schema' => [ - 'description' => '是否自动启用应用弹性伸缩策略。取值说明如下:'."\n" - ."\n" - .'- **true**:开启。'."\n" - .'- **false**:关闭。', - 'type' => 'string', - 'required' => false, - 'example' => 'true', - ], + 'schema' => ['description' => '弹性伸缩策略名称。'."\n", 'type' => 'string', 'required' => true, 'example' => 'test'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'description' => '返回数据', + 'description' => '返回信息。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。'."\n", - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '调用结果的附加信息。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。'."\n", - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '73404D3D-EE4F-4CB2-B197-5C46F6A1****'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0b57ff7e16243300839193068e****'], 'Data' => [ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'ChangeOrderId' => [ - 'description' => '变更流程ID。', - 'type' => 'string', - 'example' => '01db03d3-3ee9-48b3-b3d0-dfce2d88****', + 'Timer' => [ + 'description' => '定时弹性伸缩。', + 'type' => 'object', + 'properties' => [ + 'EndDate' => ['description' => '定时弹性伸缩策略的短期结束日期。取值说明如下:'."\n" + ."\n" + .'- 当**BeginDate**和**EndDate**取值均为**null**时,表示长期执行,为默认值。'."\n" + .'- 当取值为具体日期时,例如**BeginDate**为**2021-03-25**,**EndDate**为**2021-04-25**,表示执行有效期为1个月。', 'type' => 'string', 'example' => '2021-04-25'], + 'BeginDate' => ['description' => '定时弹性伸缩策略的短期起始日期。取值说明如下:'."\n" + ."\n" + .'- 当**BeginDate**和**EndDate**取值均为**null**时,表示长期执行,为默认值。'."\n" + .'- 当取值为具体日期时,例如**BeginDate**为**2021-03-25**,**EndDate**为**2021-04-25**,表示执行有效期为1个月。', 'type' => 'string', 'example' => '2021-03-25'], + 'Schedules' => [ + 'description' => '单天内触发时间点。', + 'type' => 'array', + 'items' => [ + 'description' => '时间点数据。', + 'type' => 'object', + 'properties' => [ + 'AtTime' => ['description' => '时间点。格式:**时:分**。', 'type' => 'string', 'example' => '08:00'], + 'TargetReplicas' => ['description' => '目标实例数。', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], + 'MinReplicas' => ['description' => '最小实例数。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'MaxReplicas' => ['description' => '最大实例数。', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], + ], + ], + ], + 'Period' => ['description' => '执行定时弹性伸缩策略的周期。取值说明如下:'."\n" + ."\n" + .'- **\\* \\* \\***:每天指定时间执行定时策略。'."\n" + .'- **\\* \\* Fri,Mon**:每周指定天数的指定时间执行定时策略,支持多选,GMT+8时区。取值说明如下: '."\n" + ."\n" + .' - **Sun**:星期日'."\n" + .' - **Mon**:星期一'."\n" + .' - **Tue**:星期二'."\n" + .' - **Wed**:星期三'."\n" + .' - **Thu**:星期四'."\n" + .' - **Fri**:星期五'."\n" + .' - **Sat**:星期六'."\n" + .'- **1,2,3,28,31 \\* \\***:每月指定日期的指定时间执行定时策略,支持多选。取值范围\\[1,31\\]。若当月无31日,则跳过该日期执行定时策略。', 'type' => 'string', 'example' => '* * *'], + ], ], - 'IsNeedApproval' => [ - 'description' => 'RAM用户发布变更是否需要审批。取值说明如下:'."\n" - ."\n" - .'- **true**:需审批。'."\n" - .'- **false**:无需审批。', - 'type' => 'boolean', - 'example' => 'true', + 'UpdateTime' => ['description' => '弹性伸缩策略更新时间。单位:毫秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1624330075827'], + 'AppId' => ['description' => '应用ID。', 'type' => 'string', 'example' => 'a0d2e04c-159d-40a8-b240-d2f2c263****'], + 'CreateTime' => ['description' => '弹性伸缩策略创建时间。单位:毫秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1624329843790'], + 'LastDisableTime' => ['description' => '最近一次禁用弹性伸缩策略的时间。', 'type' => 'integer', 'format' => 'int64', 'example' => '1641882854484'], + 'ScaleRuleEnabled' => ['description' => '弹性伸缩策略是否启用。取值说明如下:'."\n" + ."\n" + .'- **true**:启用状态。'."\n" + .'- **false**:禁用状态。', 'type' => 'boolean', 'example' => 'true'], + 'ScaleRuleType' => ['description' => '弹性伸缩策略类型。取值说明如下:'."\n" + ."\n" + .'- **timing**:定时弹性。'."\n" + .'- **metric**:监控指标弹性。'."\n" + .'- **mix**:混合弹性。', 'type' => 'string', 'example' => 'timing'], + 'Metric' => [ + 'description' => '监控指标弹性伸缩。', + 'type' => 'object', + 'properties' => [ + 'Metrics' => [ + 'description' => '监控指标弹性伸缩列表。', + 'type' => 'array', + 'items' => [ + 'description' => '监控指标数据。', + 'type' => 'object', + 'properties' => [ + 'MetricTargetAverageUtilization' => ['description' => '监控指标的目标值。'."\n" + ."\n" + .'- CPU使用率目标值,单位为百分比。'."\n" + .'- 内存使用率目标值,单位为百分比。'."\n" + .'- QPS,单位为秒。'."\n" + .'- 响应时间,单位为毫秒。'."\n" + .'- TCP活跃连接数平均值,单位为个/秒。'."\n" + .'- 公网SLB QPS,单位为秒。'."\n" + .'- 公网SLB响应时间,单位为毫秒。'."\n" + .'- 私网SLB QPS,单位为秒。'."\n" + .'- 私网SLB响应时间,单位为毫秒。', 'type' => 'integer', 'format' => 'int32', 'example' => '20'], + 'MetricType' => ['description' => '监控指标的触发条件。取值说明如下:'."\n" + ."\n" + .'- **CPU**:CPU使用率。'."\n" + .'- **MEMORY**:内存使用率。'."\n" + .'- **QPS**:JAVA应用1分钟内单个实例的平均QPS。'."\n" + .'- **RT**:JAVA应用1分钟内应用所有服务接口平均RT值。'."\n" + .'- **tcpActiveConn**:30秒内单个实例的平均TCP活跃连接数。'."\n" + .'- **SLB\\_QPS**:15秒内单个实例的平均公网SLB QPS。'."\n" + .'- **SLB\\_RT**:15秒内公网SLB平均响应时间。'."\n" + .'- **INTRANET\\_SLB\\_QPS**:15秒内单个实例的平均私网SLB QPS。'."\n" + .'- **INTRANET\\_SLB\\_RT**:15秒内私网SLB平均响应时间。', 'type' => 'string', 'example' => 'CPU'], + 'SlbProject' => ['description' => 'SLB访问日志Project。', 'type' => 'string', 'example' => 'test'], + 'SlbLogstore' => ['description' => 'SLB访问日志Logstore。', 'type' => 'string', 'example' => 'test'], + 'Vport' => ['description' => 'SLB实例端口。', 'type' => 'string', 'example' => '80'], + 'SlbId' => ['description' => 'SLB实例ID。', 'type' => 'string', 'example' => 'lb-xxx'], + ], + ], + ], + 'MetricsStatus' => [ + 'description' => '监控指标弹性状态。', + 'type' => 'object', + 'properties' => [ + 'DesiredReplicas' => ['description' => '目标实例数。', 'type' => 'integer', 'format' => 'int64', 'example' => '2'], + 'NextScaleTimePeriod' => ['description' => '下一次监控指标弹性的周期。', 'type' => 'integer', 'format' => 'int32', 'example' => '3'], + 'CurrentReplicas' => ['description' => '当前实例数。', 'type' => 'integer', 'format' => 'int64', 'example' => '2'], + 'LastScaleTime' => ['description' => '最近一次弹性扩缩的时间。', 'type' => 'string', 'example' => '2022-01-11T08:14:32Z'], + 'CurrentMetrics' => [ + 'description' => '当前监控指标弹性数据。', + 'type' => 'array', + 'items' => [ + 'description' => '监控指标数据。', + 'type' => 'object', + 'properties' => [ + 'Type' => ['description' => '数据类型。与监控指标关联。'."\n" + ."\n" + .'- **Resource**:**cpu**、**memory**的指标取值。'."\n" + .'- **Pods**:**tcpActiveConn**的指标取值。'."\n" + .'- **External**:**arms**、**slb**的指标取值。', 'type' => 'string', 'example' => 'Resource'], + 'CurrentValue' => ['description' => '当前值。', 'type' => 'integer', 'format' => 'int64', 'example' => '0'], + 'Name' => ['description' => '触发条件的名称。'."\n" + ."\n" + .'- **cpu**:CPU使用率。'."\n" + .'- **memory**:内存使用率。'."\n" + .'- **arms\\_incall\\_rt**:JAVA应用1分钟内单个实例的平均QPS。'."\n" + .'- **arms\\_incall\\_rt**:JAVA应用1分钟内应用所有服务接口平均RT值。'."\n" + .'- **tcpActiveConn**:TCP活跃连接数。'."\n" + .'- **slb\\_incall\\_qps**:公网SLB QPS。'."\n" + .'- **slb\\_incall\\_rt**:公网SLB响应时间。'."\n" + .'- **intranet\\_slb\\_incall\\_qps**:私网SLB QPS。'."\n" + .'- **intranet\\_slb\\_incall\\_rt**:私网SLB响应时间。'."\n", 'type' => 'string', 'example' => 'cpu'], + ], + ], + ], + 'NextScaleMetrics' => [ + 'description' => '下一次监控指标弹性列表。', + 'type' => 'array', + 'items' => [ + 'description' => '监控指标数据。', + 'type' => 'object', + 'properties' => [ + 'NextScaleOutAverageUtilization' => ['description' => '下一次触发扩容条件的监控指标弹性的百分比数值。', 'type' => 'integer', 'format' => 'int32', 'example' => '21'], + 'NextScaleInAverageUtilization' => ['description' => '下一次触发缩容条件的监控指标弹性的百分比数值。', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], + 'Name' => ['description' => '触发条件的名称。'."\n" + ."\n" + .'- **cpu**:CPU使用率。'."\n" + .'- **memory**:内存使用率。'."\n" + .'- **arms\\_incall\\_rt**:JAVA应用1分钟内单个实例的平均QPS。'."\n" + .'- **arms\\_incall\\_rt**:JAVA应用1分钟内应用所有服务接口平均RT值。'."\n" + .'- **tcpActiveConn**:TCP活跃连接数。'."\n" + .'- **slb\\_incall\\_qps**:公网SLB QPS。'."\n" + .'- **slb\\_incall\\_rt**:公网SLB响应时间。'."\n" + .'- **intranet\\_slb\\_incall\\_qps**:私网SLB QPS。'."\n" + .'- **intranet\\_slb\\_incall\\_rt**:私网SLB响应时间。', 'type' => 'string', 'example' => 'cpu'], + ], + ], + ], + ], + ], + 'MaxReplicas' => ['description' => '最大实例数。', 'type' => 'integer', 'format' => 'int32', 'example' => '3'], + 'MinReplicas' => ['description' => '最小实例数。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'ScaleUpRules' => [ + 'description' => '应用扩容规则。', + 'type' => 'object', + 'properties' => [ + 'Step' => ['description' => '弹性扩容步长。单位时间内最多扩容的实例数。', 'type' => 'integer', 'format' => 'int64', 'example' => '100'], + 'StabilizationWindowSeconds' => ['description' => '扩容冷却时间。取值范围\\[0, 3600\\],单位为秒。默认为0秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '300'], + 'Disabled' => ['description' => '是否禁止缩容。取值说明如下:'."\n" + ."\n" + .'- **true**:开启。'."\n" + .'- **false**:关闭。'."\n" + ."\n" + .'> 开启后将永远不会缩容该应用的实例,能有效防止在流量高峰期缩容造成业务风险。默认关闭。', 'type' => 'boolean', 'example' => 'false'], + ], + ], + 'ScaleDownRules' => [ + 'description' => '应用缩容规则。', + 'type' => 'object', + 'properties' => [ + 'Step' => ['description' => '弹性缩容步长。单位时间内最多缩容的实例数。', 'type' => 'integer', 'format' => 'int64', 'example' => '100'], + 'StabilizationWindowSeconds' => ['description' => '缩容冷却时间。取值范围\\[0, 3600\\],单位为秒。默认为0秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '300'], + 'Disabled' => ['description' => '是否禁止缩容。取值说明如下:'."\n" + ."\n" + .'- **true**:开启。'."\n" + .'- **false**:关闭。'."\n" + ."\n" + .'> 开启后将永远不会缩容该应用的实例,能有效防止在流量高峰期缩容造成业务风险。默认关闭。', 'type' => 'boolean', 'example' => 'false'], + ], + ], + ], ], + 'ScaleRuleName' => ['description' => '弹性伸缩策略名称。', 'type' => 'string', 'example' => 'test'], + 'MinReadyInstances' => ['description' => '最小存活实例数。取值说明如下:'."\n" + ."\n" + .'- 如果设置为**0**,应用在升级过程中将会中断业务。'."\n" + .'- 如果设置为**-1**,最小存活实例数将使用系统推荐值,即取现有实例数的25%。如果当前为5个实例,5×25%=1.25,向上取整后,最小存活实例数为2。'."\n" + ."\n" + .'> 每次滚动部署最小存活的实例数建议≥1,保证业务不中断。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'MinReadyInstanceRatio' => ['description' => '最小存活实例数百分比。取值说明如下:'."\n" + .'- **-1**:初始化值,表示不采用百分比。'."\n" + .'- **0~100**:单位为百分比,向上取整。例如设置为50%,如果当前为5个实例,则最小存活实例数为3。'."\n" + ."\n" + .'> 当和**MinReadyInstanceRatio**同时传递时,且**MinReadyInstanceRatio**的取值非**-1**时,以**MinReadyInstanceRatio**参数为准。假设**MinReadyInstances**取值为**5**,**MinReadyInstanceRatio**取值为**50**,则会用**50**来计算最小存活实例数。', 'type' => 'integer', 'format' => 'int32', 'example' => '-1'], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。'."\n", - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '回退历史版本是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:回退成功。'."\n" - .'- **false**:回退失败。'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '重启应用实例是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:重启成功。'."\n" + .'- **false**:重启失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], - 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'InvalidApplication.NotFound', - 'errorMessage' => 'The current application does not exist.', - ], - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], - [ - 'errorCode' => 'NoComputeResourceQuota.Exceed', - 'errorMessage' => 'Your compute resource is insufficient. Please contact us to raise the quota.', - ], - [ - 'errorCode' => 'user.indebt', - 'errorMessage' => 'The user has an outstanding payment.', - ], - [ - 'errorCode' => 'NoComputeResourceQuota.App.Exceed', - 'errorMessage' => 'You can create %s instances for each application. Please submit a ticket to raise the quota.', - ], - [ - 'errorCode' => 'NoComputeResourceQuota.User.Exceed', - 'errorMessage' => 'Your account is limited to create %s instances. Please submit a ticket to raise the quota.', - ], - [ - 'errorCode' => 'System.Upgrading', - 'errorMessage' => 'The system is being upgraded. Please try again later.', - ], - [ - 'errorCode' => 'Application.ChangerOrderRunning', - 'errorMessage' => 'An application change process is in progress. Please try again later.', - ], - [ - 'errorCode' => 'Application.InvalidStatus', - 'errorMessage' => 'The application status is abnormal. Please try again later.', - ], - [ - 'errorCode' => 'Application.NotDeployYet', - 'errorMessage' => 'The application has not been deployed. Please deploy it and try again.', - ], - [ - 'errorCode' => 'rollback.error', - 'errorMessage' => 'Failed to roll back.', - ], - [ - 'errorCode' => 'Application.MissingJdk', - 'errorMessage' => 'Your application must at least contain a JDK component.', - ], - [ - 'errorCode' => 'JarApplication.MissingJdk', - 'errorMessage' => 'A FatJar application must contain JDK.', - ], - [ - 'errorCode' => 'PandoraApplication.MissingJdk', - 'errorMessage' => 'The Pandora application is missing a JDK component.', - ], - [ - 'errorCode' => 'WarApplication.MissingJdkWebcontainer', - 'errorMessage' => 'A War application must contain JDK and Tomcat.', - ], - [ - 'errorCode' => 'InvalidComponent.NotFound', - 'errorMessage' => 'The current component (such as JDK, Tomcat, or EDASWebContainer) does not exist.', - ], - [ - 'errorCode' => 'InvalidHostnameIp.Invalid', - 'errorMessage' => 'The hostname and/or IP is invalid: Hostname [%s], IP [%s].', - ], - [ - 'errorCode' => 'InvalidInstanceSpecification.Unsupported', - 'errorMessage' => 'The instance specification is not supported: CPU [%s], memory [%s].', - ], - [ - 'errorCode' => 'InvalidPackageType.NotFound', - 'errorMessage' => 'The package type must be War, FatJar, or Image.', - ], - [ - 'errorCode' => 'LogService.ConfigQuotaExceed', - 'errorMessage' => 'The maximum number of Log Service configs is exceeded.', - ], - [ - 'errorCode' => 'LogService.InternalError', - 'errorMessage' => 'An exception occurred while calling Log Service. Please submit a ticket to solve the problem.', - ], - [ - 'errorCode' => 'LogService.LogDirInvalid', - 'errorMessage' => 'The log collection path is invalid.', - ], - [ - 'errorCode' => 'LogService.NotAvailable', - 'errorMessage' => 'Log Service is unavailable. Please activate Log Service first.', - ], - [ - 'errorCode' => 'LogService.ProjectNumQuotaExceed', - 'errorMessage' => 'The maximum number of Log Service projects is exceeded.', - ], - [ - 'errorCode' => 'VolumnPath.Conflict', - 'errorMessage' => 'Conflict between log collection directory and persistent storage directory.', - ], - [ - 'errorCode' => 'MountConflict.ConfigMap', - 'errorMessage' => 'Conflict detected for ConfigMap path %s.', - ], - [ - 'errorCode' => 'NotFound.ConfigMap', - 'errorMessage' => 'The ConfigMap object (ID: %s) does not exist.', - ], - [ - 'errorCode' => 'NotFound.ConfigMapKey', - 'errorMessage' => 'The key %s of ConfigMap object (ID: %s) does not exist.', - ], - [ - 'errorCode' => 'MinReadyInstances.Not.Smaller.Replicas', - 'errorMessage' => 'The minimum number of available instances must be less than the number of application instances.', - ], - [ - 'errorCode' => 'MinReadyInstanceRatio.Invalid', - 'errorMessage' => 'The ratio of minimum available instances must be between 0 and 100.', - ], - [ - 'errorCode' => 'Package.Version.Too.Long', - 'errorMessage' => 'The maximum length of package version is exceeded.', - ], - [ - 'errorCode' => 'App.Package.Version.Exists', - 'errorMessage' => 'The package version of application already exists.', - ], - [ - 'errorCode' => 'Slb.Occupied', - 'errorMessage' => 'The SLB instance is occupied.', - ], - [ - 'errorCode' => 'Slb.Tag.Not.Qualified', - 'errorMessage' => 'The current SLB instance cannot be reused because it may have been occupied by %s.', - ], - [ - 'errorCode' => 'InvalidParameter.FileName', - 'errorMessage' => 'The application deployment package name is invalid. This name can contain only alphanumeric characters, hyphens (-), and underscores (_). For deploying java package, you can upload JAR files only if the selected deployment version supports JAR file. Otherwise, upload WAR files only. For deploying php package, you can upload ZIP files only if the selected deployment version supports ZIP file.', - ], - [ - 'errorCode' => 'vswitch.not.exist', - 'errorMessage' => 'The specified vSwitch does not exist.', - ], - ], - 404 => [ - [ - 'errorCode' => 'InvalidNamespaceId.NotFound', - 'errorMessage' => 'The specified NamespaceId does not exist.', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"73404D3D-EE4F-4CB2-B197-5C46F6A1****\\",\\n \\"TraceId\\": \\"0b57ff7e16243300839193068e****\\",\\n \\"Data\\": {\\n \\"Timer\\": {\\n \\"EndDate\\": \\"2021-04-25\\",\\n \\"BeginDate\\": \\"2021-03-25\\",\\n \\"Schedules\\": [\\n {\\n \\"AtTime\\": \\"08:00\\",\\n \\"TargetReplicas\\": 2,\\n \\"MinReplicas\\": 1,\\n \\"MaxReplicas\\": 10\\n }\\n ],\\n \\"Period\\": \\"* * *\\"\\n },\\n \\"UpdateTime\\": 1624330075827,\\n \\"AppId\\": \\"a0d2e04c-159d-40a8-b240-d2f2c263****\\",\\n \\"CreateTime\\": 1624329843790,\\n \\"LastDisableTime\\": 1641882854484,\\n \\"ScaleRuleEnabled\\": true,\\n \\"ScaleRuleType\\": \\"timing\\",\\n \\"Metric\\": {\\n \\"Metrics\\": [\\n {\\n \\"MetricTargetAverageUtilization\\": 20,\\n \\"MetricType\\": \\"CPU\\",\\n \\"SlbProject\\": \\"test\\",\\n \\"SlbLogstore\\": \\"test\\",\\n \\"Vport\\": \\"80\\",\\n \\"SlbId\\": \\"lb-xxx\\"\\n }\\n ],\\n \\"MetricsStatus\\": {\\n \\"DesiredReplicas\\": 2,\\n \\"NextScaleTimePeriod\\": 3,\\n \\"CurrentReplicas\\": 2,\\n \\"LastScaleTime\\": \\"2022-01-11T08:14:32Z\\",\\n \\"CurrentMetrics\\": [\\n {\\n \\"Type\\": \\"Resource\\",\\n \\"CurrentValue\\": 0,\\n \\"Name\\": \\"cpu\\"\\n }\\n ],\\n \\"NextScaleMetrics\\": [\\n {\\n \\"NextScaleOutAverageUtilization\\": 21,\\n \\"NextScaleInAverageUtilization\\": 10,\\n \\"Name\\": \\"cpu\\"\\n }\\n ]\\n },\\n \\"MaxReplicas\\": 3,\\n \\"MinReplicas\\": 1,\\n \\"ScaleUpRules\\": {\\n \\"Step\\": 100,\\n \\"StabilizationWindowSeconds\\": 300,\\n \\"Disabled\\": false\\n },\\n \\"ScaleDownRules\\": {\\n \\"Step\\": 100,\\n \\"StabilizationWindowSeconds\\": 300,\\n \\"Disabled\\": false\\n }\\n },\\n \\"ScaleRuleName\\": \\"test\\",\\n \\"MinReadyInstances\\": 1,\\n \\"MinReadyInstanceRatio\\": -1\\n },\\n \\"Message\\": \\"success\\",\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeApplicationScalingRuleResponse>\\n <RequestId>73404D3D-EE4F-4CB2-B197-5C46F6A1****</RequestId>\\n <TraceId>0b57ff7e16243300839193068e****</TraceId>\\n <Data>\\n <Timer>\\n <EndDate>2021-04-25</EndDate>\\n <BeginDate>2021-03-25</BeginDate>\\n <Schedules>\\n <AtTime>08:00</AtTime>\\n <TargetReplicas>2</TargetReplicas>\\n <MinReplicas>1</MinReplicas>\\n <MaxReplicas>10</MaxReplicas>\\n </Schedules>\\n <Period>* * *</Period>\\n </Timer>\\n <UpdateTime>1624330075827</UpdateTime>\\n <AppId>a0d2e04c-159d-40a8-b240-d2f2c263****</AppId>\\n <CreateTime>1624329843790</CreateTime>\\n <LastDisableTime>1641882854484</LastDisableTime>\\n <ScaleRuleEnabled>true</ScaleRuleEnabled>\\n <ScaleRuleType>timing</ScaleRuleType>\\n <Metric>\\n <Metrics>\\n <MetricTargetAverageUtilization>20</MetricTargetAverageUtilization>\\n <MetricType>CPU</MetricType>\\n <SlbProject>test</SlbProject>\\n <SlbLogstore>test</SlbLogstore>\\n <Vport>80</Vport>\\n <SlbId>lb-xxx</SlbId>\\n </Metrics>\\n <MetricsStatus>\\n <DesiredReplicas>2</DesiredReplicas>\\n <NextScaleTimePeriod>3</NextScaleTimePeriod>\\n <CurrentReplicas>2</CurrentReplicas>\\n <LastScaleTime>2022-01-11T08:14:32Z</LastScaleTime>\\n <CurrentMetrics>\\n <Type>Resource</Type>\\n <CurrentValue>0</CurrentValue>\\n <Name>cpu</Name>\\n </CurrentMetrics>\\n <NextScaleMetrics>\\n <NextScaleOutAverageUtilization>21</NextScaleOutAverageUtilization>\\n <NextScaleInAverageUtilization>10</NextScaleInAverageUtilization>\\n <Name>cpu</Name>\\n </NextScaleMetrics>\\n </MetricsStatus>\\n <MaxReplicas>3</MaxReplicas>\\n <MinReplicas>1</MinReplicas>\\n <ScaleUpRules>\\n <Step>100</Step>\\n <StabilizationWindowSeconds>300</StabilizationWindowSeconds>\\n <Disabled>false</Disabled>\\n </ScaleUpRules>\\n <ScaleDownRules>\\n <Step>100</Step>\\n <StabilizationWindowSeconds>300</StabilizationWindowSeconds>\\n <Disabled>false</Disabled>\\n </ScaleDownRules>\\n </Metric>\\n <ScaleRuleName>test</ScaleRuleName>\\n <MinReadyInstances>1</MinReadyInstances>\\n <MinReadyInstanceRatio>-1</MinReadyInstanceRatio>\\n </Data>\\n <Message>success</Message>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeApplicationScalingRuleResponse>","errorExample":""}]', + 'title' => '查询应用的单个弹性伸缩策略', + 'summary' => 's接口查询应用的单个弹性伸缩策略。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:24.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-03-14T02:08:52.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2024-08-30T09:16:23.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2023-05-31T11:10:44.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2023-05-24T09:14:46.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2022-12-19T02:15:03.000Z', 'description' => '响应参数发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '200', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeApplicationScalingRule'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeApplicationScalingRule', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"ChangeOrderId\\": \\"01db03d3-3ee9-48b3-b3d0-dfce2d88****\\",\\n \\"IsNeedApproval\\": true\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<RollbackApplicationResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <ChangeOrderId>01db03d3-3ee9-48b3-b3d0-dfce2d88****</ChangeOrderId>\\n <IsNeedApproval>true</IsNeedApproval>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</RollbackApplicationResponse>","errorExample":""}]', - 'title' => '回退应用历史版本', - 'summary' => '调用RollbackApplication接口回退应用历史版本。', - 'requestParamsDescription' => ' ', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', ], - 'BatchStopApplications' => [ - 'path' => '/pop/v1/sam/app/batchStopApplications', - 'methods' => [ - 'put', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'DescribeApplicationScalingRules' => [ + 'path' => '/pop/v1/sam/scale/applicationScalingRules', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'none', - 'abilityTreeCode' => '6295', - 'abilityTreeNodes' => [ - 'FEATUREsaeD9PL61', - ], + 'operationType' => 'get', + 'abilityTreeCode' => '6321', + 'abilityTreeNodes' => ['FEATUREsaeX1L0GL', 'FEATUREsaeAINYGA'], ], 'parameters' => [ [ - 'name' => 'NamespaceId', - 'in' => 'query', - 'schema' => [ - 'description' => '命名空间ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-shanghai', - ], - ], - [ - 'name' => 'AppIds', - 'in' => 'query', - 'schema' => [ - 'description' => '需要停止的应用ID。'."\n" - .'> '."\n" - .'>如果同时需要停止多个应用,应用ID之间需要使用半角逗号(,)进行分割。', - 'type' => 'string', - 'required' => false, - 'example' => 'ebf491f0-c1a5-45e2-b2c4-710dbe2a****', - ], - ], - [ - 'name' => 'Version', + 'name' => 'AppId', 'in' => 'query', - 'schema' => [ - 'description' => '应用的版本。', - 'type' => 'string', - 'required' => false, - 'example' => '1.0', - ], + 'schema' => ['description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'description' => '返回数据。', + 'description' => '返回信息。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '7BD8F4C7-D84C-4D46-9885-8212997E****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0bc3b6e215637275918588187d****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], 'Data' => [ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'ChangeOrderId' => [ - 'description' => '变更单ID。', - 'type' => 'string', - 'example' => '4a815998-b468-4bea-b7d8-59f52a44****', + 'CurrentPage' => ['description' => '当前页数。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'TotalSize' => ['description' => '应用弹性伸缩策略总数。', 'type' => 'integer', 'format' => 'int32', 'example' => '3'], + 'PageSize' => ['description' => '页面大小。', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], + 'ApplicationScalingRules' => [ + 'description' => '应用弹性伸缩策略列表。', + 'type' => 'array', + 'items' => [ + 'description' => '应用弹性伸缩策略。', + 'type' => 'object', + 'properties' => [ + 'Timer' => [ + 'description' => '定时弹性伸缩。', + 'type' => 'object', + 'properties' => [ + 'EndDate' => ['description' => '定时弹性伸缩策略的短期结束日期。取值说明如下:'."\n" + ."\n" + .'- 当**BeginDate**和**EndDate**取值均为**null**时,表示长期执行,为默认值。'."\n" + .'- 当取值为具体日期时,例如**BeginDate**为2021-03-25,**EndDate**为2021-04-25,表示执行有效期为1个月。'."\n", 'type' => 'string', 'example' => '2021-04-25'], + 'BeginDate' => ['description' => '定时弹性伸缩策略的短期起始日期。取值说明如下:'."\n" + ."\n" + .'- 当**BeginDate**和**EndDate**取值均为**null**时,表示长期执行,为默认值。'."\n" + .'- 当取值为具体日期时,例如**BeginDate**为2021-03-25,**EndDate**为2021-04-25,表示执行有效期为1个月。', 'type' => 'string', 'example' => '2021-03-25'], + 'Schedules' => [ + 'description' => '单天内触发时间点。', + 'type' => 'array', + 'items' => [ + 'description' => '时间点数据。', + 'type' => 'object', + 'properties' => [ + 'AtTime' => ['description' => '时间点。格式:**时:分**。', 'type' => 'string', 'example' => '08:00'], + 'TargetReplicas' => ['description' => '目标实例数。', 'type' => 'integer', 'format' => 'int32', 'example' => '3'], + 'MaxReplicas' => ['description' => '最大实例数。', 'type' => 'integer', 'format' => 'int64', 'example' => '50'], + 'MinReplicas' => ['description' => '最小实例数。', 'type' => 'integer', 'format' => 'int64', 'example' => '1'], + ], + ], + ], + 'Period' => ['description' => '执行定时弹性伸缩策略的周期。取值说明如下:'."\n" + ."\n" + .'- **\\* \\* \\***:每天指定时间执行定时策略。'."\n" + .'- **\\* \\* Fri,Mon**:每周指定天数的指定时间执行定时策略,支持多选,GMT+8时区。取值说明如下: '."\n" + ."\n" + .' - **Sun**:星期日'."\n" + .' - **Mon**:星期一'."\n" + .' - **Tue**:星期二'."\n" + .' - **Wed**:星期三'."\n" + .' - **Thu**:星期四'."\n" + .' - **Fri**:星期五'."\n" + .' - **Sat**:星期六'."\n" + .'- **1,2,3,28,31 \\* \\***:每月指定日期的指定时间执行定时策略,支持多选。取值范围\\[1,31\\]。若当月无31日,则跳过该日期执行定时策略。', 'type' => 'string', 'example' => '* * *'], + 'TimeZone' => ['description' => '时区。', 'type' => 'string'], + ], + ], + 'UpdateTime' => ['description' => '弹性伸缩策略更新时间。单位:毫秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1616642248938'], + 'AppId' => ['description' => '应用ID。', 'type' => 'string', 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****'], + 'CreateTime' => ['description' => '弹性伸缩策略创建时间。单位:毫秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1616642248938'], + 'LastDisableTime' => ['description' => '最近一次禁用弹性伸缩策略的时间。', 'type' => 'integer', 'format' => 'int64', 'example' => '1641882854484'], + 'ScaleRuleEnabled' => ['description' => '弹性伸缩策略是否启用。取值说明如下:'."\n" + ."\n" + .'- **true**:启用状态。'."\n" + .'- **false**:禁用状态。', 'type' => 'boolean', 'example' => 'true'], + 'ScaleRuleType' => ['description' => '弹性伸缩策略类型。取值说明如下:'."\n" + ."\n" + .'- **timing**:定时弹性。'."\n" + .'- **metric**:监控指标弹性。'."\n" + .'- **mix**:混合弹性。', 'type' => 'string', 'example' => 'timing'], + 'Metric' => [ + 'description' => '监控指标弹性伸缩。', + 'type' => 'object', + 'properties' => [ + 'Metrics' => [ + 'description' => '监控指标弹性伸缩列表。', + 'type' => 'array', + 'items' => [ + 'description' => '监控指标数据。', + 'type' => 'object', + 'properties' => [ + 'MetricTargetAverageUtilization' => ['description' => '监控指标的目标值。'."\n" + ."\n" + .'- CPU使用率目标值,单位为百分比。'."\n" + .'- 内存使用率目标值,单位为百分比。'."\n" + .'- QPS,单位为秒。'."\n" + .'- 响应时间,单位为毫秒。'."\n" + .'- TCP活跃连接数平均值,单位为个/秒。'."\n" + .'- 公网SLB QPS,单位为秒。'."\n" + .'- 公网SLB响应时间,单位为毫秒。'."\n" + .'- 私网SLB QPS,单位为秒。'."\n" + .'- 私网SLB响应时间,单位为毫秒。', 'type' => 'integer', 'format' => 'int32', 'example' => '20'], + 'MetricType' => ['description' => '监控指标的触发条件。取值说明如下:'."\n" + ."\n" + .'- **CPU**:CPU使用率。'."\n" + .'- **MEMORY**:内存使用率。'."\n" + .'- **QPS**:JAVA应用1分钟内单个实例的平均QPS。'."\n" + .'- **RT**:JAVA应用1分钟内应用所有服务接口平均RT值。'."\n" + .'- **tcpActiveConn**:30秒内单个实例的平均TCP活跃连接数。'."\n" + .'- **SLB\\_QPS**:15秒内单个实例的平均公网SLB QPS。'."\n" + .'- **SLB\\_RT**:15秒内公网SLB平均响应时间。'."\n" + .'- **INTRANET\\_SLB\\_QPS**:15秒内单个实例的平均私网SLB QPS。'."\n" + .'- **INTRANET\\_SLB\\_RT**:15秒内私网SLB平均响应时间。', 'type' => 'string', 'example' => 'CPU'], + 'SlbProject' => ['description' => 'SLB访问日志Project。', 'type' => 'string', 'example' => 'test'], + 'SlbLogstore' => ['description' => 'SLB访问日志Logstore。', 'type' => 'string', 'example' => 'test'], + 'Vport' => ['description' => 'SLB实例端口。', 'type' => 'string', 'example' => '80'], + 'SlbId' => ['description' => 'SLB实例ID。', 'type' => 'string', 'example' => 'lb-xxx'], + ], + ], + ], + 'PrometheusMetrics' => [ + 'description' => 'Prometheus指标。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'PrometheusQuery' => ['description' => 'Prometheus查询。', 'type' => 'string'], + 'TargetMetricValue' => ['description' => '目标指标的值。', 'type' => 'string'], + ], + 'description' => '', + ], + ], + 'MetricsStatus' => [ + 'description' => '监控指标弹性状态。', + 'type' => 'object', + 'properties' => [ + 'DesiredReplicas' => ['description' => '目标实例数。', 'type' => 'integer', 'format' => 'int64', 'example' => '2'], + 'NextScaleTimePeriod' => ['description' => '下一次监控指标弹性的周期。', 'type' => 'integer', 'format' => 'int32', 'example' => '3'], + 'CurrentReplicas' => ['description' => '当前实例数。', 'type' => 'integer', 'format' => 'int64', 'example' => '2'], + 'LastScaleTime' => ['description' => '最近一次弹性扩缩的时间。', 'type' => 'string', 'example' => '2022-01-11T08:14:32Z'], + 'CurrentMetrics' => [ + 'description' => '当前监控指标弹性列表。', + 'type' => 'array', + 'items' => [ + 'description' => '监控指标数据。', + 'type' => 'object', + 'properties' => [ + 'Type' => ['description' => '数据类型。与监控指标关联。'."\n" + ."\n" + .'- **Resource**:**cpu**、**memory**的指标取值。'."\n" + .'- **Pods**:**tcpActiveConn**的指标取值。'."\n" + .'- **External**:**arms**、**slb**的指标取值。', 'type' => 'string', 'example' => 'Resource'], + 'CurrentValue' => ['description' => '当前值。', 'type' => 'integer', 'format' => 'int64', 'example' => '0'], + 'Name' => ['description' => '触发条件的名称。'."\n" + ."\n" + .'- **cpu**:CPU使用率。'."\n" + .'- **memory**:内存使用率。'."\n" + .'- **arms\\_incall\\_qps\\_v2**:Java应用QPS。'."\n" + .'- **arms\\_incall\\_rt**:Java应用响应时间。'."\n" + .'- **tcpActiveConn**:TCP活跃连接数。'."\n" + .'- **slb\\_incall\\_qps**:公网SLB QPS。'."\n" + .'- **slb\\_incall\\_rt**:公网SLB响应时间。'."\n" + .'- **intranet\\_slb\\_incall\\_qps**:私网SLB QPS。'."\n" + .'- **intranet\\_slb\\_incall\\_rt**:私网SLB响应时间。'."\n", 'type' => 'string', 'example' => 'cpu'], + ], + ], + ], + 'NextScaleMetrics' => [ + 'description' => '下一次监控指标弹性列表。', + 'type' => 'array', + 'items' => [ + 'description' => '监控指标数据。', + 'type' => 'object', + 'properties' => [ + 'NextScaleOutAverageUtilization' => ['description' => '下一次触发扩容条件的监控指标弹性的百分比数值。', 'type' => 'integer', 'format' => 'int32', 'example' => '21'], + 'NextScaleInAverageUtilization' => ['description' => '下一次触发缩容条件的监控指标弹性的百分比数值。', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], + 'Name' => ['description' => '触发条件的名称。'."\n" + ."\n" + .'- **cpu**:CPU使用率。'."\n" + .'- **memory**:内存使用率。'."\n" + .'- **arms\\_incall\\_qps\\_v2**:JAVA应用 QPS。'."\n" + .'- **arms\\_incall\\_rt**:AVA应用响应时间。'."\n" + .'- **tcpActiveConn**:TCP活跃连接数。'."\n" + .'- **slb\\_incall\\_qps**:公网SLB QPS。'."\n" + .'- **slb\\_incall\\_rt**:公网SLB响应时间。'."\n" + .'- **intranet\\_slb\\_incall\\_qps**:私网SLB QPS。'."\n" + .'- **intranet\\_slb\\_incall\\_rt**:私网SLB响应时间。'."\n", 'type' => 'string', 'example' => 'cpu'], + ], + ], + ], + 'MaxReplicas' => ['description' => '最大实例数。', 'type' => 'integer', 'format' => 'int64', 'example' => '3'], + 'MinReplicas' => ['description' => '最小实例数。', 'type' => 'integer', 'format' => 'int64', 'example' => '1'], + ], + ], + 'MaxReplicas' => ['description' => '最大实例数。', 'type' => 'integer', 'format' => 'int32', 'example' => '3'], + 'MinReplicas' => ['description' => '最小实例数。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'ScaleUpRules' => [ + 'description' => '应用扩容规则。', + 'type' => 'object', + 'properties' => [ + 'Step' => ['description' => '弹性扩容步长。单位时间内最多扩容的实例数。', 'type' => 'integer', 'format' => 'int64', 'example' => '100'], + 'StabilizationWindowSeconds' => ['description' => '扩容冷却时间。取值范围\\[0, 3600\\],单位为秒。默认为0秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '300'], + 'Disabled' => ['description' => '是否禁止缩容。取值说明如下:'."\n" + ."\n" + .'- **true**:开启。'."\n" + .'- **false**:关闭。'."\n" + ."\n" + .'> 开启后将永远不会缩容该应用的实例,能有效防止在流量高峰期缩容造成业务风险。默认关闭。', 'type' => 'boolean', 'example' => 'false'], + ], + ], + 'ScaleDownRules' => [ + 'description' => '应用缩容规则。', + 'type' => 'object', + 'properties' => [ + 'Step' => ['description' => '弹性缩容步长。单位时间内最多缩容的实例数。', 'type' => 'integer', 'format' => 'int64', 'example' => '100'], + 'StabilizationWindowSeconds' => ['description' => '缩容冷却时间。取值范围\\[0, 3600\\],单位为秒。默认为0秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '300'], + 'Disabled' => ['description' => '是否禁止缩容。取值说明如下:'."\n" + ."\n" + .'- **true**:开启。'."\n" + .'- **false**:关闭。'."\n" + ."\n" + .'> 开启后将永远不会缩容该应用的实例,能有效防止在流量高峰期缩容造成业务风险。默认关闭。', 'type' => 'boolean', 'example' => 'false'], + ], + ], + 'MetricSource' => ['description' => '指标来源。', 'type' => 'string'], + 'PrometheusUrl' => ['description' => 'Prometheus服务地址。', 'type' => 'string'], + 'PrometheusToken' => ['description' => 'Prometheus token。', 'type' => 'string'], + ], + ], + 'ScaleRuleName' => ['description' => '弹性伸缩策略名称。', 'type' => 'string', 'example' => 'test'], + 'MinReadyInstances' => ['description' => '最小存活实例数。取值说明如下:'."\n" + .'- 如果设置为**0**,应用在升级过程中将会中断业务。'."\n" + .'- 如果设置为**-1**,最小存活实例数将使用系统推荐值,即取现有实例数的25%。如果当前为5个实例,5×25%=1.25,向上取整后,最小存活实例数为2。'."\n" + ."\n" + .'> 每次滚动部署最小存活的实例数建议≥1,保证业务不中断。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'MinReadyInstanceRatio' => ['description' => '最小存活实例数百分比。取值说明如下:'."\n" + .'- **-1**:初始化值,表示不采用百分比。'."\n" + .'- **0~100**:单位为百分比,向上取整。例如设置为50%,如果当前为5个实例,则最小存活实例数为3。'."\n" + ."\n" + .'> 当和**MinReadyInstanceRatio**同时传递时,且**MinReadyInstanceRatio**的取值非**-1**时,以**MinReadyInstanceRatio**参数为准。假设**MinReadyInstances**取值为**5**,**MinReadyInstanceRatio**取值为**50**,则会用**50**来计算最小存活实例数。', 'type' => 'integer', 'format' => 'int32', 'example' => '-1'], + ], + ], ], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '批量停止应用是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:停止成功。'."\n" - .'- **false**:停止失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '重启应用实例是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:重启成功。'."\n" + .'- **false**:重启失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], - 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'System.Upgrading', - 'errorMessage' => 'The system is being upgraded. Please try again later.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'Invalid.App.List.Not.Same.Namespace', - 'errorMessage' => 'The selected applications do not belong to the same namespace.', - ], - [ - 'errorCode' => 'Mamespace.Have.No.Applications', - 'errorMessage' => 'There are no applications in this namespace.', - ], - [ - 'errorCode' => 'user.indebt', - 'errorMessage' => 'The user has an outstanding payment.', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"CurrentPage\\": 1,\\n \\"TotalSize\\": 3,\\n \\"PageSize\\": 10,\\n \\"ApplicationScalingRules\\": [\\n {\\n \\"Timer\\": {\\n \\"EndDate\\": \\"2021-04-25\\",\\n \\"BeginDate\\": \\"2021-03-25\\",\\n \\"Schedules\\": [\\n {\\n \\"AtTime\\": \\"08:00\\",\\n \\"TargetReplicas\\": 3,\\n \\"MaxReplicas\\": 50,\\n \\"MinReplicas\\": 1\\n }\\n ],\\n \\"Period\\": \\"* * *\\",\\n \\"TimeZone\\": \\"\\"\\n },\\n \\"UpdateTime\\": 1616642248938,\\n \\"AppId\\": \\"7171a6ca-d1cd-4928-8642-7d5cfe69****\\",\\n \\"CreateTime\\": 1616642248938,\\n \\"LastDisableTime\\": 1641882854484,\\n \\"ScaleRuleEnabled\\": true,\\n \\"ScaleRuleType\\": \\"timing\\",\\n \\"Metric\\": {\\n \\"Metrics\\": [\\n {\\n \\"MetricTargetAverageUtilization\\": 20,\\n \\"MetricType\\": \\"CPU\\",\\n \\"SlbProject\\": \\"test\\",\\n \\"SlbLogstore\\": \\"test\\",\\n \\"Vport\\": \\"80\\",\\n \\"SlbId\\": \\"lb-xxx\\"\\n }\\n ],\\n \\"PrometheusMetrics\\": [\\n {\\n \\"PrometheusQuery\\": \\"\\",\\n \\"TargetMetricValue\\": \\"\\"\\n }\\n ],\\n \\"MetricsStatus\\": {\\n \\"DesiredReplicas\\": 2,\\n \\"NextScaleTimePeriod\\": 3,\\n \\"CurrentReplicas\\": 2,\\n \\"LastScaleTime\\": \\"2022-01-11T08:14:32Z\\",\\n \\"CurrentMetrics\\": [\\n {\\n \\"Type\\": \\"Resource\\",\\n \\"CurrentValue\\": 0,\\n \\"Name\\": \\"cpu\\"\\n }\\n ],\\n \\"NextScaleMetrics\\": [\\n {\\n \\"NextScaleOutAverageUtilization\\": 21,\\n \\"NextScaleInAverageUtilization\\": 10,\\n \\"Name\\": \\"cpu\\"\\n }\\n ],\\n \\"MaxReplicas\\": 3,\\n \\"MinReplicas\\": 1\\n },\\n \\"MaxReplicas\\": 3,\\n \\"MinReplicas\\": 1,\\n \\"ScaleUpRules\\": {\\n \\"Step\\": 100,\\n \\"StabilizationWindowSeconds\\": 300,\\n \\"Disabled\\": false\\n },\\n \\"ScaleDownRules\\": {\\n \\"Step\\": 100,\\n \\"StabilizationWindowSeconds\\": 300,\\n \\"Disabled\\": false\\n },\\n \\"MetricSource\\": \\"\\",\\n \\"PrometheusUrl\\": \\"\\",\\n \\"PrometheusToken\\": \\"\\"\\n },\\n \\"ScaleRuleName\\": \\"test\\",\\n \\"MinReadyInstances\\": 1,\\n \\"MinReadyInstanceRatio\\": -1\\n }\\n ]\\n },\\n \\"Message\\": \\"success\\",\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeApplicationScalingRulesResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <CurrentPage>1</CurrentPage>\\n <TotalSize>3</TotalSize>\\n <PageSize>10</PageSize>\\n <ApplicationScalingRules>\\n <Timer>\\n <EndDate>2021-04-25</EndDate>\\n <BeginDate>2021-03-25</BeginDate>\\n <Schedules>\\n <AtTime>08:00</AtTime>\\n <TargetReplicas>3</TargetReplicas>\\n <MaxReplicas>50</MaxReplicas>\\n <MinReplicas>1</MinReplicas>\\n </Schedules>\\n <Period>* * *</Period>\\n </Timer>\\n <UpdateTime>1616642248938</UpdateTime>\\n <AppId>7171a6ca-d1cd-4928-8642-7d5cfe69****</AppId>\\n <CreateTime>1616642248938</CreateTime>\\n <LastDisableTime>1641882854484</LastDisableTime>\\n <ScaleRuleEnabled>true</ScaleRuleEnabled>\\n <ScaleRuleType>timing</ScaleRuleType>\\n <Metric>\\n <Metrics>\\n <MetricTargetAverageUtilization>20</MetricTargetAverageUtilization>\\n <MetricType>CPU</MetricType>\\n <SlbProject>test</SlbProject>\\n <SlbLogstore>test</SlbLogstore>\\n <Vport>80</Vport>\\n <SlbId>lb-xxx</SlbId>\\n </Metrics>\\n <MetricsStatus>\\n <DesiredReplicas>2</DesiredReplicas>\\n <NextScaleTimePeriod>3</NextScaleTimePeriod>\\n <CurrentReplicas>2</CurrentReplicas>\\n <LastScaleTime>2022-01-11T08:14:32Z</LastScaleTime>\\n <CurrentMetrics>\\n <Type>Resource</Type>\\n <CurrentValue>0</CurrentValue>\\n <Name>cpu</Name>\\n </CurrentMetrics>\\n <NextScaleMetrics>\\n <NextScaleOutAverageUtilization>21</NextScaleOutAverageUtilization>\\n <NextScaleInAverageUtilization>10</NextScaleInAverageUtilization>\\n <Name>cpu</Name>\\n </NextScaleMetrics>\\n <MaxReplicas>3</MaxReplicas>\\n <MinReplicas>1</MinReplicas>\\n </MetricsStatus>\\n <MaxReplicas>3</MaxReplicas>\\n <MinReplicas>1</MinReplicas>\\n <ScaleUpRules>\\n <Step>100</Step>\\n <StabilizationWindowSeconds>300</StabilizationWindowSeconds>\\n <Disabled>false</Disabled>\\n </ScaleUpRules>\\n <ScaleDownRules>\\n <Step>100</Step>\\n <StabilizationWindowSeconds>300</StabilizationWindowSeconds>\\n <Disabled>false</Disabled>\\n </ScaleDownRules>\\n </Metric>\\n <ScaleRuleName>test</ScaleRuleName>\\n <MinReadyInstances>1</MinReadyInstances>\\n <MinReadyInstanceRatio>-1</MinReadyInstanceRatio>\\n </ApplicationScalingRules>\\n </Data>\\n <Message>success</Message>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeApplicationScalingRulesResponse>","errorExample":""}]', + 'title' => '查询应用弹性伸缩策略', + 'summary' => '查询应用弹性伸缩策略。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:24.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-06-27T03:14:33.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2025-06-09T08:44:24.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2025-03-14T02:08:52.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2024-08-30T09:16:22.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2023-05-31T11:10:44.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2023-05-24T09:14:46.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2022-12-19T02:15:03.000Z', 'description' => '响应参数发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '350', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeApplicationScalingRules'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeApplicationScalingRules', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"7BD8F4C7-D84C-4D46-9885-8212997E****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0bc3b6e215637275918588187d****\\",\\n \\"Data\\": {\\n \\"ChangeOrderId\\": \\"4a815998-b468-4bea-b7d8-59f52a44****\\"\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<BatchStopApplicationsResponse>\\n <RequestId>7BD8F4C7-D84C-4D46-9885-8212997E****</RequestId>\\n <Message>success</Message>\\n <TraceId>0bc3b6e215637275918588187d****</TraceId>\\n <Data>\\n <ChangeOrderId>4a815998-b468-4bea-b7d8-59f52a44****</ChangeOrderId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</BatchStopApplicationsResponse>","errorExample":""}]', - 'title' => '批量停止应用', - 'summary' => '批量停止应用。', ], - 'BatchStartApplications' => [ - 'path' => '/pop/v1/sam/app/batchStartApplications', - 'methods' => [ - 'put', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'DescribeApplicationSlbs' => [ + 'path' => '/pop/v1/sam/app/slb', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'none', - 'abilityTreeCode' => '6294', - 'abilityTreeNodes' => [ - 'FEATUREsaeD9PL61', - ], + 'operationType' => 'get', + 'abilityTreeCode' => '6323', + 'abilityTreeNodes' => ['FEATUREsaeBRTWZ3'], ], 'parameters' => [ [ - 'name' => 'NamespaceId', - 'in' => 'query', - 'schema' => [ - 'description' => '命名空间ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-shanghai', - ], - ], - [ - 'name' => 'AppIds', + 'name' => 'AppId', 'in' => 'query', - 'schema' => [ - 'description' => '应用ID,多个ID时使用半角逗号(,)分割。', - 'type' => 'string', - 'required' => false, - 'example' => '00893b3a-0e24-45ed-be0c-1f20e07b****', - ], - ], - [ - 'name' => 'Version', - 'in' => 'query', - 'schema' => [ - 'description' => '应用的版本。', - 'type' => 'string', - 'required' => false, - 'example' => '1.0', - ], + 'schema' => ['description' => '目标应用ID。', 'type' => 'string', 'required' => true, 'example' => '017f39b8-dfa4-4e16-a84b-1dcee4b1****'], ], ], 'responses' => [ @@ -18556,102 +9652,158 @@ 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], 'Data' => [ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'ChangeOrderId' => [ - 'description' => '变更流程ID。', - 'type' => 'string', - 'example' => '01db03d3-3ee9-48b3-b3d0-dfce2d88****', + 'Intranet' => [ + 'description' => '内网SLB配置。', + 'type' => 'array', + 'items' => [ + 'description' => '内网SLB配置详情。', + 'type' => 'object', + 'properties' => [ + 'HttpsCertId' => ['description' => 'HTTPS协议对应的阿里云证书ID。', 'type' => 'string', 'example' => '1513561019707729_16f37aae5f3_-375882821_-169099****'], + 'Protocol' => ['description' => '支持的协议。', 'type' => 'string', 'example' => 'TCP'], + 'TargetPort' => ['description' => '容器端口。', 'type' => 'integer', 'format' => 'int32', 'example' => '8080'], + 'Port' => ['description' => 'SLB监听端口。', 'type' => 'integer', 'format' => 'int32', 'example' => '80'], + 'HttpsCaCertId' => ['description' => 'HTTPS协议对应的阿里云CA证书ID。', 'type' => 'string', 'example' => '1513561019707729_16f37aae5f3_-375882821_-169099****'], + 'StickySession' => ['description' => '是否开启会话保持。', 'type' => 'boolean', 'example' => 'false'], + 'StickySessionType' => ['description' => 'Cookie处理方式。取值:'."\n" + ."\n" + .'- **insert**:植入Cookie。客户端第一次访问时,负载均衡会在返回请求中植入Cookie,下次客户端携带此Cookie访问,负载均衡服务会将请求定向转发给之前记录到的后端服务器上。'."\n" + ."\n" + .'- **server**:重写Cookie。负载均衡发现用户自定义了Cookie,将会对原来的Cookie进行重写,下次客户端携带新的Cookie访问,负载均衡服务会将请求定向转发给之前记录到的后端服务器。'."\n" + ."\n" + .'> 当**StickySession**值为**on**时,该参数必选且有效。', 'type' => 'string', 'example' => 'insert'], + 'CookieTimeout' => ['description' => 'Cookie超时时间。单位:秒。取值范围:**1**~**86400**。'."\n" + ."\n" + .'> 当**StickySession**为**on**且**StickySessionType**为**insert**时,该参数必选且有效。', 'type' => 'integer', 'format' => 'int32', 'example' => '56'], + 'Cookie' => ['description' => '服务器上配置的Cookie。'."\n" + ."\n" + .'长度为1~200个字符,只能包含ASCII英文字母和数字字符,不能包含半角逗号(,)、半角分号(;)或空格,不能以$开头。'."\n" + ."\n" + .'>当**StickySession**为**on**且**StickySessionType**为**server**时,该参数必选且有效。', 'type' => 'string', 'example' => 'wwe'], + 'CreateTime' => ['description' => '规则被创建的时间戳。', 'type' => 'integer', 'format' => 'int64', 'example' => '1741247308294'], + ], + ], + ], + 'InternetIp' => ['description' => '公网SLB地址。', 'type' => 'string', 'example' => '59.74.**.**'], + 'InternetSlbId' => ['description' => '公网SLB ID。', 'type' => 'string', 'example' => 'lb-uf6xc7wybefehnv45****'], + 'Internet' => [ + 'description' => '公网SLB配置。', + 'type' => 'array', + 'items' => [ + 'description' => '公网SLB配置详情。', + 'type' => 'object', + 'properties' => [ + 'HttpsCertId' => ['description' => 'HTTPS协议对应的阿里云证书ID。', 'type' => 'string', 'example' => '1513561019707729_16f37aae5f3_-375882821_-169099****'], + 'Protocol' => ['description' => '支持的协议。', 'type' => 'string', 'example' => 'TCP'], + 'TargetPort' => ['description' => '容器端口。', 'type' => 'integer', 'format' => 'int32', 'example' => '8080'], + 'Port' => ['description' => 'SLB监听端口。', 'type' => 'integer', 'format' => 'int32', 'example' => '80'], + 'HttpsCaCertId' => ['description' => 'HTTPS协议对应的阿里云CA证书ID。', 'type' => 'string', 'example' => '1513561019707729_16f37aae5f3_-375882821_-169099****'], + 'StickySession' => ['description' => '是否开启会话保持。', 'type' => 'boolean', 'example' => 'false'], + 'StickySessionType' => ['description' => 'Cookie处理方式。取值:'."\n" + ."\n" + .'- **insert**:植入Cookie。客户端第一次访问时,负载均衡会在返回请求中植入Cookie,下次客户端携带此Cookie访问,负载均衡服务会将请求定向转发给之前记录到的后端服务器上。'."\n" + ."\n" + .'- **server**:重写Cookie。负载均衡发现用户自定义了Cookie,将会对原来的Cookie进行重写,下次客户端携带新的Cookie访问,负载均衡服务会将请求定向转发给之前记录到的后端服务器。'."\n" + ."\n" + .'> 当**StickySession**值为**on**时,该参数必选且有效。', 'type' => 'string', 'example' => 'insert'], + 'CookieTimeout' => ['description' => 'Cookie超时时间。单位:秒。取值范围:**1**~**86400**。'."\n" + ."\n" + .'> 当**StickySession**为**on**且**StickySessionType**为**insert**时,该参数必选且有效。', 'type' => 'integer', 'format' => 'int32', 'example' => '56'], + 'Cookie' => ['description' => '服务器上配置的Cookie。'."\n" + ."\n" + .'长度为1~200个字符,只能包含ASCII英文字母和数字字符,不能包含半角逗号(,)、半角分号(;)或空格,不能以$开头。'."\n" + ."\n" + .'>当**StickySession**为**on**且**StickySessionType**为**server**时,该参数必选且有效。', 'type' => 'string', 'example' => 'wwe'], + 'CreateTime' => ['description' => '规则被创建的时间戳。', 'type' => 'integer', 'format' => 'int64', 'example' => '1741247308294'."\n"], + ], + ], ], + 'IntranetSlbId' => ['description' => '内网SLB ID。', 'type' => 'string', 'example' => 'lb-uf6xc7wybefehnv45****'], + 'IntranetIp' => ['description' => '内网SLB地址。', 'type' => 'string', 'example' => '192.168.XX.XX'], + 'InternetSlbExpired' => ['description' => '公网SLB是否已过期。', 'type' => 'boolean', 'example' => 'false'], + 'IntranetSlbExpired' => ['description' => '私网SLB是否已过期。', 'type' => 'boolean', 'example' => 'false'], + 'InternetSlbChargeType' => ['description' => '公网负载均衡的计费方式。', 'type' => 'string', 'example' => 'PayBySpec'], + 'IntranetSlbChargeType' => ['description' => '内网负载均衡的计费方式。', 'type' => 'string', 'example' => 'PayBySpec'], + 'AppId' => ['description' => '应用ID。', 'type' => 'string'], + 'AppName' => ['description' => '应用名称。', 'type' => 'string'], + 'ClusterId' => ['description' => '集群ID。', 'type' => 'string'], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '批量启动应用是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:表示批量启动应用成功。'."\n" - .'- **false**:表示批量启动应用失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。'."\n", 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '获取应用SLB配置信息是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:获取成功。'."\n" + ."\n" + .'- **false**:获取失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'System.Upgrading', - 'errorMessage' => 'The system is being upgraded. Please try again later.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'Mamespace.Have.No.Applications', - 'errorMessage' => 'There are no applications in this namespace.', - ], - [ - 'errorCode' => 'Invalid.App.List.Not.Same.Namespace', - 'errorMessage' => 'The selected applications do not belong to the same namespace.', - ], - [ - 'errorCode' => 'user.indebt', - 'errorMessage' => 'The user has an outstanding payment.', + ['errorCode' => 'InvalidApplication.NotFound', 'errorMessage' => 'The current application does not exist.', 'description' => '找不到当前应用。'], + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"Intranet\\": [\\n {\\n \\"HttpsCertId\\": \\"1513561019707729_16f37aae5f3_-375882821_-169099****\\",\\n \\"Protocol\\": \\"TCP\\",\\n \\"TargetPort\\": 8080,\\n \\"Port\\": 80,\\n \\"HttpsCaCertId\\": \\"1513561019707729_16f37aae5f3_-375882821_-169099****\\",\\n \\"StickySession\\": false,\\n \\"StickySessionType\\": \\"insert\\",\\n \\"CookieTimeout\\": 56,\\n \\"Cookie\\": \\"wwe\\",\\n \\"CreateTime\\": 1741247308294\\n }\\n ],\\n \\"InternetIp\\": \\"59.74.**.**\\",\\n \\"InternetSlbId\\": \\"lb-uf6xc7wybefehnv45****\\",\\n \\"Internet\\": [\\n {\\n \\"HttpsCertId\\": \\"1513561019707729_16f37aae5f3_-375882821_-169099****\\",\\n \\"Protocol\\": \\"TCP\\",\\n \\"TargetPort\\": 8080,\\n \\"Port\\": 80,\\n \\"HttpsCaCertId\\": \\"1513561019707729_16f37aae5f3_-375882821_-169099****\\",\\n \\"StickySession\\": false,\\n \\"StickySessionType\\": \\"insert\\",\\n \\"CookieTimeout\\": 56,\\n \\"Cookie\\": \\"wwe\\",\\n \\"CreateTime\\": 1741247308294\\n }\\n ],\\n \\"IntranetSlbId\\": \\"lb-uf6xc7wybefehnv45****\\",\\n \\"IntranetIp\\": \\"192.168.XX.XX\\",\\n \\"InternetSlbExpired\\": false,\\n \\"IntranetSlbExpired\\": false,\\n \\"InternetSlbChargeType\\": \\"PayBySpec\\",\\n \\"IntranetSlbChargeType\\": \\"PayBySpec\\",\\n \\"AppId\\": \\"\\",\\n \\"AppName\\": \\"\\",\\n \\"ClusterId\\": \\"\\"\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeApplicationSlbsResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <Intranet>\\n <HttpsCertId>1513561019707729_16f37aae5f3_-375882821_-169099****</HttpsCertId>\\n <Protocol>TCP</Protocol>\\n <TargetPort>8080</TargetPort>\\n <Port>80</Port>\\n </Intranet>\\n <InternetIp>59.74.**.**</InternetIp>\\n <InternetSlbId>lb-uf6xc7wybefehnv45****</InternetSlbId>\\n <Internet>\\n <HttpsCertId>1513561019707729_16f37aae5f3_-375882821_-169099****</HttpsCertId>\\n <Protocol>TCP</Protocol>\\n <TargetPort>8080</TargetPort>\\n <Port>80</Port>\\n </Internet>\\n <IntranetSlbId>lb-uf6xc7wybefehnv45****</IntranetSlbId>\\n <IntranetIp>192.168.0.0</IntranetIp>\\n <InternetSlbExpired>false</InternetSlbExpired>\\n <IntranetSlbExpired>false</IntranetSlbExpired>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeApplicationSlbsResponse>","errorExample":""}]', + 'title' => '获取应用SLB配置信息', + 'summary' => '获取应用SLB配置信息。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:24.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-12-23T07:33:35.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-12-23T07:32:28.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-12-23T07:28:24.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-12-23T07:28:23.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-05-13T11:33:58.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2025-02-26T08:53:44.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2024-08-07T11:17:56.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2024-06-18T11:54:09.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2024-05-30T07:26:05.000Z', 'description' => '响应参数发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '70', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeApplicationSlbs'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeApplicationSlbs', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"ChangeOrderId\\": \\"01db03d3-3ee9-48b3-b3d0-dfce2d88****\\"\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<BatchStartApplicationsResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <ChangeOrderId>01db03d3-3ee9-48b3-b3d0-dfce2d88****</ChangeOrderId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</BatchStartApplicationsResponse>","errorExample":""}]', - 'title' => '批量启动应用', - 'summary' => '批量启动应用。', ], - 'DowngradeApplicationApmService' => [ - 'path' => '/pop/v1/sam/app/applicationApmService', - 'methods' => [ - 'delete', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'DescribeApplicationStatus' => [ + 'path' => '/pop/v1/sam/app/describeApplicationStatus', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -18660,222 +9812,316 @@ 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'abilityTreeCode' => '6360', - 'abilityTreeNodes' => [ - 'FEATUREsaeK7DHH9', - ], + 'operationType' => 'get', + 'abilityTreeCode' => '6324', + 'abilityTreeNodes' => ['FEATUREsaeD9PL61'], ], 'parameters' => [ [ 'name' => 'AppId', 'in' => 'query', - 'schema' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '017f39b8-dfa4-4e16-a84b-1dcee4b1****', - ], + 'schema' => ['description' => '目标应用ID。', 'type' => 'string', 'required' => true, 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****'], ], ], 'responses' => [ 200 => [ 'schema' => [ + 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '01CF26C7-00A3-4AA6-BA76-7E95F2A3****', - ], - 'Message' => [ - 'description' => '附加信息。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。'."\n", - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], 'Data' => [ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'Status' => [ - 'description' => '关闭 ARMS 高级监控是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:关闭成功。'."\n" - .'- **false**:关闭失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ArmsAdvancedEnabled' => ['description' => '是否开通ARMS高级版。取值说明如下:'."\n" + ."\n" + .'- **true**:开通ARMS高级版。'."\n" + .'- **false**:不开通ARMS高级版。', 'type' => 'string', 'example' => 'false'], + 'LastChangeOrderId' => ['description' => '最近一次执行的发布单ID,未执行过或发布单信息过期则为空。', 'type' => 'string', 'example' => '1ccc2339-fc19-49aa-bda0-1e7b8497****'], + 'ArmsApmInfo' => ['description' => '该应用在ARMS侧元数据信息。', 'type' => 'string', 'example' => '{"appId":"0099b7be-5f5b-4512-a7fc-56049ef1****","licenseKey":"d5cgdt5pu0@7303f55292a****"}'], + 'CreateTime' => ['description' => '应用创建时间。', 'type' => 'string', 'example' => '1563373372746'], + 'CurrentStatus' => ['description' => '应用当前状态。取值说明如下:'."\n" + ."\n" + .'- **RUNNING**:应用正在运行。'."\n" + .'- **STOPPED**:应用停止运行。'."\n" + .'- **UNKNOWN**:应用状态未知。', 'type' => 'string', 'example' => 'RUNNING'], + 'AppId' => ['description' => '当前应用ID。', 'type' => 'string', 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****'], + 'LastChangeOrderRunning' => ['description' => '最近一次发布单是否处于执行中。取值说明如下:'."\n" + ."\n" + .'- **true**:最近一次发布单处于执行中。'."\n" + .'- **false**:最近一次发布单不处于执行中。', 'type' => 'boolean', 'example' => 'false'], + 'RunningInstances' => ['description' => '当前应用运行中的实例数。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'LastChangeOrderStatus' => ['description' => '最近一次发布单状态。取值说明如下:'."\n" + ."\n" + .'- **READY**:最近一次发布单准备就绪。'."\n" + .'- **RUNNING**:最近一次发布单处于执行中。'."\n" + .'- **SUCCESS**:最近一次发布单发布成功。'."\n" + .'- **FAIL**:最近一次发布单发布失败。'."\n" + .'- **ABORT**:最近一次发布单中止运行。'."\n" + .'- **WAIT\\_BATCH\\_CONFIRM**:最近一次发布单等待手工批量确认。'."\n" + .'- **AUTO\\_BATCH\\_WAIT**:最近一次发布单处于自动批量等待状态。'."\n" + .'- **SYSTEM\\_FAIL**:系统故障。'."\n" + .'- **WAIT\\_APPROVAL**:最近一次发布单等待审批。'."\n" + .'- **APPROVED**:最近一次发布单处于审批通过的待执行状态。', 'type' => 'string', 'example' => 'SUCCESS'], + 'SubStatus' => ['description' => '发布单子状态,用于判断发布单是否在发布过程中存在异常。取值说明如下:'."\n" + ."\n" + .'- **NORMAL**:发布正常。'."\n" + .'- **RUNNING\\_BUT\\_HAS\\_ERROR**:发布异常。例如分批发布时出错,需要您手动回滚,此时发布单虽然出错,但因不能完结而依然处于执行中。', 'type' => 'string', 'example' => 'NORMAL'], + 'EnableAgent' => ['description' => '是否启用SAE Agent。'."\n" + ."\n" + .'- **true**:启用。'."\n" + .'- **false**:不启用。', 'type' => 'boolean', 'example' => 'false'], + 'FileSizeLimit' => ['description' => '文件大小限制。取值范围\\[0,10240\\],单位为KB。', 'type' => 'integer', 'format' => 'int64', 'example' => '10240'], ], ], - 'ErrorCode' => [ - 'description' => '错误码。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '关闭 ARMS 高级监控是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:关闭成功。'."\n" - .'- **false**:关闭失败。', - 'type' => 'boolean', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '获取应用状态信息是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:获取成功。'."\n" + .'- **false**:获取失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'System.Upgrading', - 'errorMessage' => 'The system is being upgraded. Please try again later.', - ], - [ - 'errorCode' => 'InvalidApplication.NotFound', - 'errorMessage' => 'The current application does not exist.', - ], + ['errorCode' => 'InvalidApplication.NotFound', 'errorMessage' => 'The current application does not exist.', 'description' => '找不到当前应用。'], + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ], + 404 => [ + ['errorCode' => 'InvalidAppId.NotFound', 'errorMessage' => 'The specified AppId does not exist.', 'description' => '指定的AppId不存在。'], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"01CF26C7-00A3-4AA6-BA76-7E95F2A3****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"Status\\": true\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => '关闭ARMS高级版监控', - 'summary' => '关闭ARMS高级版监控。', - ], - 'UpgradeApplicationApmService' => [ - 'path' => '/pop/v1/sam/app/applicationApmService', - 'methods' => [ - 'post', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"ArmsAdvancedEnabled\\": \\"false\\",\\n \\"LastChangeOrderId\\": \\"1ccc2339-fc19-49aa-bda0-1e7b8497****\\",\\n \\"ArmsApmInfo\\": \\"{\\\\\\"appId\\\\\\":\\\\\\"0099b7be-5f5b-4512-a7fc-56049ef1****\\\\\\",\\\\\\"licenseKey\\\\\\":\\\\\\"d5cgdt5pu0@7303f55292a****\\\\\\"}\\",\\n \\"CreateTime\\": \\"1563373372746\\",\\n \\"CurrentStatus\\": \\"RUNNING\\",\\n \\"AppId\\": \\"0099b7be-5f5b-4512-a7fc-56049ef1****\\",\\n \\"LastChangeOrderRunning\\": false,\\n \\"RunningInstances\\": 1,\\n \\"LastChangeOrderStatus\\": \\"SUCCESS\\",\\n \\"SubStatus\\": \\"NORMAL\\",\\n \\"EnableAgent\\": false,\\n \\"FileSizeLimit\\": 10240\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeApplicationStatusResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <ArmsAdvancedEnabled>false</ArmsAdvancedEnabled>\\n <LastChangeOrderId>1ccc2339-fc19-49aa-bda0-1e7b8497****</LastChangeOrderId>\\n <ArmsApmInfo>{\\"appId\\":\\"0099b7be-5f5b-4512-a7fc-56049ef1****\\",\\"licenseKey\\":\\"d5cgdt5pu0@7303f55292a****\\"}</ArmsApmInfo>\\n <CreateTime>1563373372746</CreateTime>\\n <CurrentStatus>RUNNING</CurrentStatus>\\n <AppId>0099b7be-5f5b-4512-a7fc-56049ef1****</AppId>\\n <LastChangeOrderRunning>false</LastChangeOrderRunning>\\n <RunningInstances>1</RunningInstances>\\n <LastChangeOrderStatus>SUCCESS</LastChangeOrderStatus>\\n <SubStatus>NORMAL</SubStatus>\\n <EnableAgent>false</EnableAgent>\\n <FileSizeLimit>10240</FileSizeLimit>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeApplicationStatusResponse>","errorExample":""}]', + 'title' => '获取应用的状态信息', + 'summary' => '调用DescribeApplicationStatus接口获取应用的状态信息。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:24.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2021-11-17T02:29:05.000Z', 'description' => '响应参数发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '500', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeApplicationStatus'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeApplicationStatus', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + ], + 'DescribeChangeOrder' => [ + 'path' => '/pop/v1/sam/changeorder/DescribeChangeOrder', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'abilityTreeCode' => '6406', - 'abilityTreeNodes' => [ - 'FEATUREsaeD9PL61', - ], + 'operationType' => 'get', + 'abilityTreeCode' => '6325', + 'abilityTreeNodes' => ['FEATUREsaeRVPNSA'], ], 'parameters' => [ [ - 'name' => 'AppId', + 'name' => 'ChangeOrderId', 'in' => 'query', - 'schema' => [ - 'description' => '应用id。', - 'type' => 'string', - 'required' => true, - 'example' => '017f39b8-dfa4-4e16-a84b-1dcee4b1****', - ], + 'schema' => ['description' => '变更单ID。通过调用[ListChangeOrders](~~126615~~)接口获取。', 'type' => 'string', 'required' => true, 'example' => '76fa5c0-9ebb-4bb4-b383-1f885447****'], ], ], 'responses' => [ 200 => [ 'schema' => [ + 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '调用结果的附加信息。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], 'Data' => [ - 'description' => '返回结果。', + 'description' => '变更单信息。', 'type' => 'object', 'properties' => [ - 'Status' => [ - 'description' => '应用功能是否全部生效。取值说明如下:'."\n" - .'- **true**:表示开启成功。'."\n" - .'- **false**:表示开启失败。', - 'type' => 'boolean', - 'example' => 'true'."\n", + 'Status' => ['description' => '批次状态。取值说明如下:'."\n" + ."\n" + .'- **0**:准备。'."\n" + .'- **1**:执行中。'."\n" + .'- **2**:执行成功。'."\n" + .'- **3**:执行失败。'."\n" + .'- **6**:终止。'."\n" + .'- **8**:等待手工确认分批。'."\n" + .'- **9**:等待自动确认分批。'."\n" + .'- **10**:系统异常执行失败。'."\n" + .'- **11**:等待审批。'."\n" + .'- **12**:审批通过,等待执行。', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], + 'SubStatus' => ['description' => '发布单子状态,用于判断发布单是否在发布过程中存在异常。取值说明如下:'."\n" + ."\n" + .'- **0**:发布正常。'."\n" + .'- **1**:发布异常。例如分批发布时出错,需要您手动回滚,此时发布单虽然出错,但因不能完结而依然处于执行中。', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], + 'ApprovalId' => ['description' => '操作审批ID。', 'type' => 'string', 'example' => '67de0b39-a9d4-4c09-a170-cf438208****'], + 'ErrorMessage' => ['description' => '错误信息。', 'type' => 'string', 'example' => 'success'], + 'BatchWaitTime' => ['description' => '自动分批方式时,开始下一批次前的等待时间。单位:分钟。', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], + 'CreateTime' => ['description' => '创建时间。', 'type' => 'string', 'example' => '2020-12-17 21:06:45'], + 'BatchCount' => ['description' => '分批数。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'CoTypeCode' => ['description' => '变更类型Code。取值说明如下:'."\n" + ."\n" + .'- **CoBindSlb**:绑定SLB。'."\n" + .'- **CoUnbindSlb**:解绑SLB。'."\n" + .'- **CoCreateApp**:创建应用。'."\n" + .'- **CoDeleteApp**:删除应用。'."\n" + .'- **CoDeploy**:部署应用。'."\n" + .'- **CoRestartApplication**:重启应用。'."\n" + .'- **CoRollback**:回滚应用。'."\n" + .'- **CoScaleIn**:应用缩容。'."\n" + .'- **CoScaleOut**:应用扩容。'."\n" + .'- **CoStart**:启动应用。'."\n" + .'- **CoStop**:停止应用。'."\n" + .'- **CoRescaleApplicationVertically**:修改实例规格。'."\n" + .'- **CoDeployHistroy**:回退历史版本。'."\n" + .'- **CoBindNas**:绑定NAS。'."\n" + .'- **CoUnbindNas**:解绑NAS。'."\n" + .'- **CoBatchStartApplication**:批量启动应用。'."\n" + .'- **CoBatchStopApplication**:批量停止应用。'."\n" + .'- **CoRestartInstances**:重启实例。'."\n" + .'- **CoDeleteInstances**:删除实例。'."\n" + .'- **CoScaleInAppWithInstances**:指定实例缩容。', 'type' => 'string', 'example' => 'CoRestartInstances'], + 'SupportRollback' => ['description' => '是否支持回滚。取值说明如下:'."\n" + ."\n" + .'- **true**:支持回滚。'."\n" + .'- **false**:不支持回滚。', 'type' => 'boolean', 'example' => 'false'], + 'ChangeOrderId' => ['description' => '变更单ID。', 'type' => 'string', 'example' => '765fa5c0-9ebb-4bb4-b383-1f885447**'], + 'AppName' => ['description' => '应用名称。', 'type' => 'string', 'example' => 'app-test'], + 'BatchType' => ['description' => '分批类型。取值说明如下:'."\n" + ."\n" + .'- **auto**:自动。'."\n" + .'- **manual**:手动。', 'type' => 'string', 'example' => 'auto'], + 'Description' => ['description' => '变更单描述信息。', 'type' => 'string', 'example' => 'description'], + 'CoType' => ['description' => '变更类型,是对**CoTypeCode**的描述。', 'type' => 'string', 'example' => 'Batch Restart Instances'], + 'Auto' => ['description' => '是否为自动分批。取值说明如下:'."\n" + ."\n" + .'- **true**:自动分批变更。'."\n" + .'- **false**:不是自动分批变更。', 'type' => 'boolean', 'example' => 'true'], + 'CurrentPipelineId' => ['description' => '当前批次ID。', 'type' => 'string', 'example' => '0e4acf82-c9b1-4c1e-ac28-55776338****'], + 'Pipelines' => [ + 'description' => '批次信息。', + 'type' => 'array', + 'items' => [ + 'description' => '批次信息。', + 'type' => 'object', + 'properties' => [ + 'Status' => ['description' => '批次状态。取值说明如下:'."\n" + ."\n" + .'- **0**:准备。'."\n" + .'- **1**:执行中。'."\n" + .'- **2**:执行成功。'."\n" + .'- **3**:执行失败。'."\n" + .'- **6**:终止。'."\n" + .'- **8**:等待手工确认分批。'."\n" + .'- **9**:等待自动确认分批。'."\n" + .'- **10**:系统异常执行失败。'."\n" + .'- **11**:等待审批。'."\n" + .'- **12**:审批通过,等待执行。', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], + 'StartTime' => ['description' => '开始时间。', 'type' => 'integer', 'format' => 'int64', 'example' => '1562831689704'], + 'UpdateTime' => ['description' => '最近更新时间。', 'type' => 'integer', 'format' => 'int64', 'example' => '1562847178007'], + 'BatchType' => ['description' => '分批类型。', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], + 'ParallelCount' => ['description' => '分批内并行任务数。', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], + 'PipelineName' => ['description' => '批次名称。', 'type' => 'string', 'example' => 'Batch 1 Change'], + 'PipelineId' => ['description' => '批次ID。', 'type' => 'string', 'example' => '0e4acf82-c9b1-4c1e-ac28-55776338****'], + ], + ], ], + 'AppId' => ['description' => '应用ID。', 'type' => 'string', 'example' => 'bbbbb-3fd370b2-3646-4ba6-91f9-9423e19ab0cd-*****'], + 'ApplicationUpdateStrategy' => ['description' => '应用更新策略。', 'type' => 'string'], + 'ApplicationEnableGreyTagRoute' => ['description' => '是否启用灰度标签路由。', 'type' => 'boolean'], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => 'success', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '开启ARMS高级版监控是否成功。取值说明如下:'."\n" - .'- **true**:表示更改成功。'."\n" - .'- **false**:表示修改失败。', - 'type' => 'boolean', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '是否成功查询变更单信息。取值说明如下:'."\n" + ."\n" + .'- **true**:查询成功。'."\n" + .'- **false**:查询失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'System.Upgrading', - 'errorMessage' => 'The system is being upgraded. Please try again later.', - ], - [ - 'errorCode' => 'InvalidApplication.NotFound', - 'errorMessage' => 'The current application does not exist.', + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'Resouce.no.permission', 'errorMessage' => 'You are not authorized to operate on the specified resources.', 'description' => '没有权限操作资源。'], + ['errorCode' => 'InvalidChangeOrder.NotFound', 'errorMessage' => 'The current change order does not exist.', 'description' => '变更单不存在。'], + ], + 404 => [ + ['errorCode' => 'InvalidAppId.NotFound', 'errorMessage' => 'The specified AppId does not exist.', 'description' => '指定的AppId不存在。'], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"Status\\": 2,\\n \\"SubStatus\\": 0,\\n \\"ApprovalId\\": \\"67de0b39-a9d4-4c09-a170-cf438208****\\",\\n \\"ErrorMessage\\": \\"success\\",\\n \\"BatchWaitTime\\": 0,\\n \\"CreateTime\\": \\"2020-12-17 21:06:45\\",\\n \\"BatchCount\\": 1,\\n \\"CoTypeCode\\": \\"CoRestartInstances\\",\\n \\"SupportRollback\\": false,\\n \\"ChangeOrderId\\": \\"765fa5c0-9ebb-4bb4-b383-1f885447**\\",\\n \\"AppName\\": \\"app-test\\",\\n \\"BatchType\\": \\"auto\\",\\n \\"Description\\": \\"description\\",\\n \\"CoType\\": \\"Batch Restart Instances\\",\\n \\"Auto\\": true,\\n \\"CurrentPipelineId\\": \\"0e4acf82-c9b1-4c1e-ac28-55776338****\\",\\n \\"Pipelines\\": [\\n {\\n \\"Status\\": 2,\\n \\"StartTime\\": 1562831689704,\\n \\"UpdateTime\\": 1562847178007,\\n \\"BatchType\\": 0,\\n \\"ParallelCount\\": 0,\\n \\"PipelineName\\": \\"Batch 1 Change\\",\\n \\"PipelineId\\": \\"0e4acf82-c9b1-4c1e-ac28-55776338****\\"\\n }\\n ],\\n \\"AppId\\": \\"bbbbb-3fd370b2-3646-4ba6-91f9-9423e19ab0cd-*****\\",\\n \\"ApplicationUpdateStrategy\\": \\"\\",\\n \\"ApplicationEnableGreyTagRoute\\": true\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeChangeOrderResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <Status>2</Status>\\n <SubStatus>0</SubStatus>\\n <ApprovalId>67de0b39-a9d4-4c09-a170-cf438208****</ApprovalId>\\n <ErrorMessage>success</ErrorMessage>\\n <BatchWaitTime>0</BatchWaitTime>\\n <CreateTime>2020-12-17 21:06:45</CreateTime>\\n <BatchCount>1</BatchCount>\\n <CoTypeCode>CoRestartInstances</CoTypeCode>\\n <SupportRollback>false</SupportRollback>\\n <ChangeOrderId>765fa5c0-9ebb-4bb4-b383-1f885447**</ChangeOrderId>\\n <AppName>app-test</AppName>\\n <BatchType>auto</BatchType>\\n <Description>description</Description>\\n <CoType>批量重启实例</CoType>\\n <Auto>true</Auto>\\n <CurrentPipelineId>0e4acf82-c9b1-4c1e-ac28-55776338****</CurrentPipelineId>\\n <Pipelines>\\n <Status>2</Status>\\n <StartTime>1562831689704</StartTime>\\n <UpdateTime>1562847178007</UpdateTime>\\n <BatchType>0</BatchType>\\n <ParallelCount>0</ParallelCount>\\n <PipelineName>Batch 1 Change</PipelineName>\\n <PipelineId>0e4acf82-c9b1-4c1e-ac28-55776338****</PipelineId>\\n </Pipelines>\\n <AppId>bbbbb-3fd370b2-3646-4ba6-91f9-9423e19ab0cd-*****</AppId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeChangeOrderResponse>","errorExample":""}]', + 'title' => '查询变更单信息', + 'summary' => '调用DescribeChangeOrder接口查询变更单信息。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:24.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-05-13T11:33:58.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2022-03-03T12:42:21.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2021-11-17T02:29:04.000Z', 'description' => '响应参数发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '400', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeChangeOrder'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeChangeOrder', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"Status\\": true\\n },\\n \\"ErrorCode\\": \\"success\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => '开通ARMS高级版监控', - 'summary' => '开通ARMS高级版监控。', - 'description' => '高级监控功能属于收费服务,请依据业务需求进行购买。更多信息,请参见<props="china">[ARMS计费概述](https://help.aliyun.com/zh/arms/application-monitoring/product-overview/billing-overview-1)</props><props="intl">[ARMS计费概述](https://www.alibabacloud.com/help/zh/arms/application-monitoring/product-overview/billing-overview-1)</props>。', ], - 'ListConsumedServices' => [ - 'path' => '/pop/v1/sam/service/listConsumedServices', - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'DescribeComponents' => [ + 'path' => '/pop/v1/sam/resource/components', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -18885,21 +10131,22 @@ 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', - 'abilityTreeCode' => '6373', - 'abilityTreeNodes' => [ - 'FEATUREsaeY046YN', - ], + 'abilityTreeCode' => '6327', + 'abilityTreeNodes' => ['FEATUREsae25O0WL'], ], 'parameters' => [ [ 'name' => 'AppId', 'in' => 'query', - 'schema' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'b2a8a925-477a-4ed7-b825-d5e22500****', - ], + 'schema' => ['description' => '应用ID。', 'type' => 'string', 'required' => false, 'example' => 'd700e680-aa4d-4ec1-afc2-6566b5ff****'], + ], + [ + 'name' => 'Type', + 'in' => 'query', + 'schema' => ['description' => '支持的组件类型。取值说明如下:'."\n" + ."\n" + .'- **TOMCAT**'."\n" + .'- **JDK**', 'type' => 'string', 'required' => true, 'example' => 'TOMCAT'], ], ], 'responses' => [ @@ -18908,123 +10155,64 @@ 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '附加信息。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], 'Data' => [ - 'description' => '微服务列表信息。', + 'description' => '支持的应用组件信息。', 'type' => 'array', 'items' => [ - 'description' => '微服务列表信息。', + 'description' => '支持的应用组件信息。', 'type' => 'object', 'properties' => [ - 'Type' => [ - 'description' => '发布的服务类型。', - 'type' => 'string', - 'example' => 'RPC', - ], - 'Groups' => [ - 'description' => '消费的服务对应的组别。', - 'type' => 'array', - 'items' => [ - 'description' => '消费的服务对应的组别。', - 'type' => 'string', - 'example' => 'HSF', - ], - ], - 'Version' => [ - 'description' => '发布的服务版本。', - 'type' => 'string', - 'example' => '1.0.0', - ], - 'AppId' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'example' => 'b2a8a925-477a-4ed7-b825-d5e22500****', - ], - 'Group2Ip' => [ - 'description' => '保留字段。', - 'type' => 'string', - 'example' => '{}', - ], - 'Ips' => [ - 'description' => '服务订阅地址。', - 'type' => 'array', - 'items' => [ - 'description' => '服务订阅地址。', - 'type' => 'string', - 'example' => '10.0.0.1', - ], - ], - 'Name' => [ - 'description' => '发布的服务名称。', - 'type' => 'string', - 'example' => 'com.alibaba.nodejs.ItemService', - ], + 'Type' => ['description' => '组件类型。', 'type' => 'string', 'example' => 'JDK'], + 'ComponentKey' => ['description' => '组件ID。', 'type' => 'string', 'example' => 'Open JDK 8'], + 'ComponentDescription' => ['description' => '组件描述。', 'type' => 'string', 'example' => 'Open JDK 8'], + 'Expired' => ['description' => '组件是否过期。取值说明如下:'."\n" + ."\n" + .'- **true**:组件已过期。 '."\n" + .'- **false**:组件未过期。', 'type' => 'boolean', 'example' => 'false'], ], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '获取订阅的微服务列表是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:获取成功。'."\n" - .'- **false**:获取失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '获取组件版本是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:获取成功。'."\n" + .'- **false**:获取失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": [\\n {\\n \\"Type\\": \\"RPC\\",\\n \\"Groups\\": [\\n \\"HSF\\"\\n ],\\n \\"Version\\": \\"1.0.0\\",\\n \\"AppId\\": \\"b2a8a925-477a-4ed7-b825-d5e22500****\\",\\n \\"Group2Ip\\": \\"{}\\",\\n \\"Ips\\": [\\n \\"10.0.0.1\\"\\n ],\\n \\"Name\\": \\"com.alibaba.nodejs.ItemService\\"\\n }\\n ],\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<ListConsumedServicesResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <Type>RPC</Type>\\n <Groups>HSF</Groups>\\n <Version>1.0.0</Version>\\n <AppId>b2a8a925-477a-4ed7-b825-d5e22500****</AppId>\\n <Group2Ip>{}</Group2Ip>\\n <Ips>10.0.0.1</Ips>\\n <Name>com.alibaba.nodejs.ItemService</Name>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</ListConsumedServicesResponse>","errorExample":""}]', - 'title' => '获取订阅的微服务列表', - 'summary' => '调用ListConsumedServices接口获取订阅的微服务列表。', - 'requestParamsDescription' => ' ', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', - ], - 'ListPublishedServices' => [ - 'path' => '/pop/v1/sam/service/listPublishedServices', - 'methods' => [ - 'get', + 'errorCodes' => [ + 400 => [ + ['errorCode' => 'InvalidComponentType.NotFound', 'errorMessage' => 'The specified Type does not exist.', 'description' => '指定的Type不存在。'], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": [\\n {\\n \\"Type\\": \\"JDK\\",\\n \\"ComponentKey\\": \\"Open JDK 8\\",\\n \\"ComponentDescription\\": \\"Open JDK 8\\",\\n \\"Expired\\": false\\n }\\n ],\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeComponentsResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <Type>JDK</Type>\\n <ComponentKey>Open JDK 8</ComponentKey>\\n <ComponentDescription>Open JDK 8</ComponentDescription>\\n <Expired>false</Expired>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeComponentsResponse>","errorExample":""}]', + 'title' => '获取应用创建部署时所需的组件版本', + 'summary' => '调用DescribeComponents接口获取应用创建部署时所需的组件版本。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:29.000Z', 'description' => 'OpenAPI 下线'], ], - 'schemes' => [ - 'http', - 'https', + 'flowControl' => [ + 'flowControlList' => [], ], + 'ramActions' => [], + ], + 'DescribeConfigMap' => [ + 'path' => '/pop/v1/sam/configmap/configMap', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -19034,21 +10222,14 @@ 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', - 'abilityTreeCode' => '6378', - 'abilityTreeNodes' => [ - 'FEATUREsaeY046YN', - ], + 'abilityTreeCode' => '6328', + 'abilityTreeNodes' => ['FEATUREsaeD9PL61'], ], 'parameters' => [ [ - 'name' => 'AppId', + 'name' => 'ConfigMapId', 'in' => 'query', - 'schema' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'b2a8a925-477a-4ed7-b825-d5e22500****', - ], + 'schema' => ['description' => '查询的ConfigMap实例ID。需要调用[ListNamespacedConfigMaps](~~176917~~)接口查看。', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1'], ], ], 'responses' => [ @@ -19057,661 +10238,482 @@ 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], 'Data' => [ - 'description' => '微服务列表信息。', - 'type' => 'array', - 'items' => [ - 'description' => '微服务列表信息。', - 'type' => 'object', - 'properties' => [ - 'Type' => [ - 'description' => '发布的服务类型。', - 'type' => 'string', - 'example' => 'RPC', - ], - 'Groups' => [ - 'description' => '消费的服务对应的组别。', - 'type' => 'array', - 'items' => [ - 'description' => '消费的服务对应的组别。', - 'type' => 'string', - 'example' => 'HSF', - ], - ], - 'Version' => [ - 'description' => '发布的服务版本。', - 'type' => 'string', - 'example' => '1.0.0', - ], - 'AppId' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'example' => 'b2a8a925-477a-4ed7-b825-d5e22500****', - ], - 'Group2Ip' => [ - 'description' => '保留字段,暂时无意义。', - 'type' => 'string', - 'example' => '{}', - ], - 'Ips' => [ - 'description' => '服务订阅地址。', - 'type' => 'array', - 'items' => [ - 'description' => '服务订阅地址。', - 'type' => 'string', - 'example' => '10.0.0.1', + 'description' => '返回结果。', + 'type' => 'object', + 'properties' => [ + 'UpdateTime' => ['description' => '更新时间。', 'type' => 'integer', 'format' => 'int64', 'example' => '1593747274195'], + 'Data' => ['description' => 'ConfigMap键值对数据。格式如下:'."\n" + ."\n" + .'{"k1":"v1", "k2":"v2"}'."\n" + ."\n" + .'k表示键,v表示值。关于配置项的更多信息,请参见[管理和使用配置项](~~171326~~)。', 'type' => 'object', 'example' => '{"k1":"v1","k2":"v2"}'], + 'NamespaceId' => ['description' => '命名空间ID。', 'type' => 'string', 'example' => 'cn-hangzhou'], + 'Description' => ['description' => '描述信息。', 'type' => 'string', 'example' => 'test-desc'], + 'CreateTime' => ['description' => '创建时间。', 'type' => 'integer', 'format' => 'int64', 'example' => '1593746835111'], + 'RelateApps' => [ + 'description' => '关联的应用。', + 'type' => 'array', + 'items' => [ + 'description' => '应用的具体信息。', + 'type' => 'object', + 'properties' => [ + 'AppName' => ['description' => '应用名称。', 'type' => 'string', 'example' => 'test-app'], + 'AppId' => ['description' => '应用ID。', 'type' => 'string', 'example' => 'f16b4000-9058-4c22-a49d-49a28f0b****'], ], ], - 'Name' => [ - 'description' => '发布的服务名称。', - 'type' => 'string', - 'example' => 'com.alibaba.nodejs.ItemService', - ], ], + 'ConfigMapId' => ['description' => '查询的ConfigMap实例ID。', 'type' => 'integer', 'format' => 'int64', 'example' => '1'], + 'Name' => ['description' => 'ConfigMap实例名称。', 'type' => 'string', 'example' => 'test-configmap'], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '获取发布的微服务列表是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:获取成功。'."\n" - .'- **false**:获取失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '查询ConfigMap实例详情是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:查询成功。'."\n" + .'- **false**:查询失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], + ['errorCode' => 'NotFound.ConfigMap', 'errorMessage' => 'The ConfigMap object (ID: %s) does not exist.', 'description' => '找不到ConfigMap对象(ID=%s)。'], + ], + 404 => [ + ['errorCode' => 'InvalidNamespaceId.NotFound', 'errorMessage' => 'The specified NamespaceId does not exist.', 'description' => '指定的NamespaceId不存在。'], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": [\\n {\\n \\"Type\\": \\"RPC\\",\\n \\"Groups\\": [\\n \\"HSF\\"\\n ],\\n \\"Version\\": \\"1.0.0\\",\\n \\"AppId\\": \\"b2a8a925-477a-4ed7-b825-d5e22500****\\",\\n \\"Group2Ip\\": \\"{}\\",\\n \\"Ips\\": [\\n \\"10.0.0.1\\"\\n ],\\n \\"Name\\": \\"com.alibaba.nodejs.ItemService\\"\\n }\\n ],\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<ListPublishedServicesResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <Type>RPC</Type>\\n <Groups>HSF</Groups>\\n <Version>1.0.0</Version>\\n <AppId>b2a8a925-477a-4ed7-b825-d5e22500****</AppId>\\n <Group2Ip>{}</Group2Ip>\\n <Ips>10.0.0.1</Ips>\\n <Name>com.alibaba.nodejs.ItemService</Name>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</ListPublishedServicesResponse>","errorExample":""}]', - 'title' => '获取发布的微服务列表', - 'summary' => '调用ListPublishedServices接口获取发布的微服务列表。', - ], - 'ListAppServices' => [ - 'summary' => '查询微服务的服务列表。', - 'path' => '/pop/v1/sam/service/listAppServices', - 'methods' => [ - 'get', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"UpdateTime\\": 1593747274195,\\n \\"Data\\": {\\n \\"k1\\": \\"v1\\",\\n \\"k2\\": \\"v2\\"\\n },\\n \\"NamespaceId\\": \\"cn-hangzhou\\",\\n \\"Description\\": \\"test-desc\\",\\n \\"CreateTime\\": 1593746835111,\\n \\"RelateApps\\": [\\n {\\n \\"AppName\\": \\"test-app\\",\\n \\"AppId\\": \\"f16b4000-9058-4c22-a49d-49a28f0b****\\"\\n }\\n ],\\n \\"ConfigMapId\\": 1,\\n \\"Name\\": \\"test-configmap\\"\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeConfigMapResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <UpdateTime>1593747274195</UpdateTime>\\n <NamespaceId>cn-hangzhou</NamespaceId>\\n <Description>test-desc</Description>\\n <CreateTime>1593746835111</CreateTime>\\n <RelateApps>\\n <AppName>test-app</AppName>\\n <AppId>f16b4000-9058-4c22-a49d-49a28f0b****</AppId>\\n </RelateApps>\\n <ConfigMapId>1</ConfigMapId>\\n <Name>test-configmap</Name>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeConfigMapResponse>","errorExample":""}]', + 'title' => '查询ConfigMap实例详情', + 'summary' => '调用DescribeConfigMap接口查询ConfigMap实例详情。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:24.000Z', 'description' => 'OpenAPI 下线'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeConfigMap'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeConfigMap', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + ], + 'DescribeConfigurationPrice' => [ + 'path' => '/pop/v1/paas/configurationPrice', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'consumes' => [ - 'application/x-www-form-urlencoded', - ], - 'produces' => [ - 'application/json', - ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'list', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '219797', - 'abilityTreeNodes' => [ - 'FEATUREsaeUDWJ2L', - ], + 'operationType' => 'none', + 'abilityTreeCode' => '6329', + 'abilityTreeNodes' => ['FEATUREsaeD9Y7UY', 'FEATUREsaeQL07ZC'], ], 'parameters' => [ [ - 'name' => 'AppId', - 'in' => 'query', - 'schema' => [ - 'description' => '应用ID,vpcId、命名空间ID、应用ID必须且只能填写一项。', - 'type' => 'string', - 'required' => false, - 'example' => '017f39b8-dfa4-4e16-a84b-1dcee4b1****', - ], - ], - [ - 'name' => 'ServiceType', + 'name' => 'Cpu', 'in' => 'query', - 'schema' => [ - 'description' => '服务类型。取值说明如下:'."\n" - ."\n" - .'- **dubbo**'."\n" - .'- **springCloud**'."\n" - .'- **hsf**'."\n" - .'- **k8sService**', - 'type' => 'string', - 'required' => false, - 'example' => 'springCloud', - ], + 'schema' => ['description' => '每个实例所需的CPU,单位为毫核,不能为0。目前仅支持以下固定规格:'."\n" + .'- **500**'."\n" + .'- **1000**'."\n" + .'- **2000**'."\n" + .'- **4000**'."\n" + .'- **8000**'."\n" + .'- **12000**'."\n" + .'- **16000**'."\n" + .'- **32000**', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '2000'], ], [ - 'name' => 'RegistryType', + 'name' => 'Memory', 'in' => 'query', - 'schema' => [ - 'description' => '注册中心类型。取值:'."\n" - ."\n" - .'- **0**:SAE Nacos'."\n" - .'- **1**:自建注册中心'."\n" - .'- **2**:MSE Nacos'."\n" - .'- **9**:SAE K8s Service', - 'type' => 'string', - 'required' => false, - 'example' => '0', - ], + 'schema' => ['description' => '每个实例所需的内存,单位为MB,不能为0。与CPU为一一对应关系,目前仅支持以下固定规格:'."\n" + .'- **1024**:对应CPU为500毫核和1000毫核。'."\n" + .'- **2048**:对应CPU为500、1000毫核和2000毫核。'."\n" + .'- **4096**:对应CPU为1000、2000毫核和4000毫核。'."\n" + .'- **8192**:对应CPU为2000、4000毫核和8000毫核。'."\n" + .'- **12288**:对应CPU为12000毫核。'."\n" + .'- **16384**:对应CPU为4000、8000毫核和16000毫核。'."\n" + .'- **24576**:对应CPU为12000毫核。'."\n" + .'- **32768**:对应CPU为16000毫核。'."\n" + .'- **65536**:对应CPU为8000、16000和32000毫核。'."\n" + .'- **131072**:对应CPU为32000毫核。', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '4096'], ], [ - 'name' => 'NacosInstanceId', + 'name' => 'Workload', 'in' => 'query', - 'schema' => [ - 'description' => 'MseNacos实例ID,当注册中心为MSE Nacos时必填。', - 'type' => 'string', - 'required' => false, - 'example' => 'mse-cn-sco3r0u****', - ], + 'schema' => ['description' => '应用场景:'."\n" + ."\n" + .'- web'."\n" + ."\n" + .'- micro_service', 'type' => 'string', 'required' => false, 'example' => 'Web'], ], [ - 'name' => 'NacosNamespaceId', + 'name' => 'ResourceType', 'in' => 'query', 'schema' => [ - 'description' => 'MseNacos 命名空间ID,当注册中心为MSE Nacos时必填。', + 'description' => '资源类型。支持NULL(默认)、default(默认)和haiguang(海光服务器)类型。', 'type' => 'string', 'required' => false, - 'example' => 'mse-test', - ], - ], - [ - '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', + 'enumValueTitles' => ['default' => 'default', 'haiguang' => 'haiguang'], + 'example' => 'default', ], ], [ - 'name' => 'VpcId', + 'name' => 'NewSaeVersion', 'in' => 'query', 'schema' => [ - 'description' => 'VPC唯一标识,vpcId、命名空间ID、应用ID必须且只能填写一项。', + 'description' => '应用版本:'."\n" + ."\n" + .'- lite:轻量版'."\n" + .'- std:标准版'."\n" + .'- pro:专业版', 'type' => 'string', 'required' => false, - 'example' => 'vpc-2ze0i263cnn311nvj****', + 'enumValueTitles' => ['std' => 'std', 'lite' => 'lite', 'pro' => 'pro'], + 'example' => 'std', ], ], [ - 'name' => 'NamespaceId', + 'name' => 'BestEffortType', 'in' => 'query', 'schema' => [ - 'description' => '命名空间ID,VpcId、命名空间ID、应用ID必须且只能填写一项。', + 'description' => 'BestEffort策略'."\n" + ."\n" + .'- besteffort BestEffort'."\n" + .'- try-besteffort BestEffort优先'."\n" + .'- default 默认', 'type' => 'string', 'required' => false, - 'example' => 'cn-beijing:test', + 'enumValueTitles' => ['default' => 'default', 'try-besteffort' => 'try-besteffort', 'besteffort' => 'besteffort'], + 'example' => 'default', ], ], ], 'responses' => [ 200 => [ 'schema' => [ + 'description' => '返回信息。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'ADCEC067-86AD-19E2-BD43-E83F3841****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链id。', 'type' => 'string', 'example' => '1a0dcc771722848598056771******'], 'Data' => [ - 'description' => '服务列表信息。', - 'type' => 'array', - 'items' => [ - 'description' => '服务信息。', - 'type' => 'object', - 'properties' => [ - 'ServiceName' => [ - 'description' => '服务名称。', - 'type' => 'string', - 'example' => 'frontend', - ], - 'ServiceGroup' => [ - 'description' => '服务分组。', - 'type' => 'string', - 'example' => 'DEFAULT_GROUP', - ], - 'ServiceVersion' => [ - 'description' => '服务版本。', - 'type' => 'string', - 'example' => '1.0.0', - ], - 'InstanceCount' => [ - 'description' => '服务的实例数。', - 'type' => 'string', - 'example' => '1', - ], - 'ServiceType' => [ - 'description' => '服务类型。取值说明如下:'."\n" - ."\n" - .'- **dubbo**'."\n" - .'- **springCloud**'."\n" - .'- **hsf**'."\n" - .'- **k8sService**', - 'type' => 'string', - 'example' => 'springCloud', - ], - 'ServiceProtocol' => [ - 'description' => '该服务使用的协议。', - 'type' => 'string', - 'example' => 'HTTP', + 'description' => '价格信息。', + 'type' => 'object', + 'properties' => [ + 'BagUsage' => [ + 'description' => '资源包剩余量。', + 'type' => 'object', + 'properties' => [ + 'Cpu' => ['description' => 'CPU剩余量,单位:核*时。', 'type' => 'number', 'format' => 'float', 'example' => '497570.450009'], + 'Mem' => ['description' => '内存剩余量,单位:GiB*时。', 'type' => 'number', 'format' => 'float', 'example' => '989802.563546'], + 'Cu' => ['description' => '资源包剩余CU量', 'type' => 'number', 'format' => 'float', 'example' => '10000'], ], - 'ServicePorts' => [ - 'description' => '端口列表。', - 'type' => 'array', - 'items' => [ - 'description' => '端口值。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '8000', + ], + 'Order' => [ + 'description' => '价格信息。', + 'type' => 'object', + 'properties' => [ + 'OriginalAmount' => ['description' => '订单原价。', 'type' => 'number', 'format' => 'float', 'example' => '0.0092592'], + 'DiscountAmount' => ['description' => '订单优惠金额。', 'type' => 'number', 'format' => 'float', 'example' => '0.0018518'], + 'RuleIds' => [ + 'description' => '活动ID。', + 'type' => 'array', + 'items' => ['description' => '活动ID。', 'type' => 'string', 'example' => '2000010******'], ], + 'TradeAmount' => ['description' => '订单成交价。', 'type' => 'number', 'format' => 'float', 'example' => ' 0.0074074'], ], - 'ServicePortAndProtocol' => [ - 'description' => '端口和协议Map。', + ], + 'Rules' => [ + 'description' => '活动规则。', + 'type' => 'array', + 'items' => [ + 'description' => '活动规则。', 'type' => 'object', - 'additionalProperties' => [ - 'type' => 'string', - 'example' => '8000:TCP', - 'description' => '端口和协议。', + 'properties' => [ + 'RuleDescId' => ['description' => '规则ID。', 'type' => 'integer', 'format' => 'int64', 'example' => '2000010******'], + 'Name' => ['description' => '规则名称。', 'type' => 'string', 'example' => '20% discount on pay-as-you-go'], ], ], - 'RegistryType' => [ - 'description' => '注册中心类型。取值:'."\n" - ."\n" - .'- **0**:SAE Nacos'."\n" - .'- **1**:自建注册中心'."\n" - .'- **2**:MSE Nacos'."\n" - .'- **9**:SAE K8s Service', - 'type' => 'string', - 'example' => '0', - ], - 'NamespaceId' => [ - 'description' => '应用所属的命名空间ID。', - 'type' => 'string', - 'example' => 'cn-beijing:test', - ], - 'NamespaceName' => [ - 'description' => '命名空间名称。', - 'type' => 'string', - 'example' => '测试命名空间', - ], - 'AppId' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****', + ], + 'RequestPrice' => [ + 'description' => '求情次数价格。', + 'type' => 'object', + 'properties' => [ + 'Order' => [ + 'description' => '价格信息。', + 'type' => 'object', + 'properties' => [ + 'OriginalAmount' => ['description' => '订单原价。', 'type' => 'number', 'format' => 'float', 'example' => '0.0046296'], + 'DiscountAmount' => ['description' => '订单优惠金额。', 'type' => 'number', 'format' => 'float', 'example' => '0.0009259'], + 'TradeAmount' => ['description' => '订单实际交易价格。', 'type' => 'number', 'format' => 'float', 'example' => '0.0037037'], + 'RuleIds' => [ + 'description' => '规则ID。', + 'type' => 'array', + 'items' => ['description' => '优惠规则ID。', 'type' => 'string', 'example' => '2000010******'], + ], + ], + ], + 'Rules' => [ + 'description' => '活动规则。', + 'type' => 'array', + 'items' => [ + 'description' => '活动规则。', + 'type' => 'object', + 'properties' => [ + 'RuleDescId' => ['description' => '策略ID。', 'type' => 'integer', 'format' => 'int64', 'example' => '2000010******'], + 'Name' => ['description' => '规则名称。', 'type' => 'string', 'example' => '20% discount on pay-as-you-go'], + ], + ], + ], ], - 'AppName' => [ - 'description' => '应用名称。', - 'type' => 'string', - 'example' => 'demo-app', + ], + 'TrafficPrice' => [ + 'description' => '流量价格。', + 'type' => 'object', + 'properties' => [ + 'Order' => [ + 'description' => '价格信息。', + 'type' => 'object', + 'properties' => [ + 'OriginalAmount' => ['description' => '订单原价。', 'type' => 'number', 'format' => 'float', 'example' => '0.0046296'], + 'DiscountAmount' => ['description' => '订单优惠金额。', 'type' => 'number', 'format' => 'float', 'example' => '0.0009259'], + 'TradeAmount' => ['description' => '订单实际交易价。', 'type' => 'number', 'format' => 'float', 'example' => '0.0037037'], + 'RuleIds' => [ + 'description' => '活动ID。', + 'type' => 'array', + 'items' => ['description' => '活动ID。', 'type' => 'string', 'example' => '2000010******'], + ], + ], + ], + 'Rules' => [ + 'description' => '活动规则。', + 'type' => 'array', + 'items' => [ + 'description' => '活动规则。', + 'type' => 'object', + 'properties' => [ + 'RuleDescId' => ['description' => '规则ID。', 'type' => 'number', 'format' => 'float', 'example' => '2000010******'], + 'Name' => ['description' => '规则名称。', 'type' => 'string', 'example' => '20% discount on pay-as-you-go'], + ], + ], + ], ], - 'SecurityGroupId' => [ - 'description' => '安全组ID。', - 'type' => 'string', - 'example' => 'sg-wz969ngg2e49q5i4****', + ], + 'CpuMemPrice' => [ + 'description' => 'CPU、内存价格。', + 'type' => 'object', + 'properties' => [ + 'Order' => [ + 'description' => '价格信息。', + 'type' => 'object', + 'properties' => [ + 'OriginalAmount' => ['description' => '原价。', 'type' => 'number', 'format' => 'float', 'example' => ' 0.0046296'], + 'DiscountAmount' => ['description' => '订单优惠金额。', 'type' => 'number', 'format' => 'float', 'example' => '0.0009259'], + 'TradeAmount' => ['description' => '订单实际交易价格。', 'type' => 'number', 'format' => 'float', 'example' => '0.0037037'], + 'RuleIds' => [ + 'description' => '规则ID。', + 'type' => 'array', + 'items' => ['description' => '规则ID。', 'type' => 'string', 'example' => '2000010******'], + ], + ], + ], + 'Rules' => [ + 'description' => '活动规则。', + 'type' => 'array', + 'items' => [ + 'description' => '活动规则。', + 'type' => 'object', + 'properties' => [ + 'RuleDescId' => ['description' => '规则ID。', 'type' => 'number', 'format' => 'float', 'example' => '2000010******'."\n"], + 'Name' => ['description' => '规则名称。', 'type' => 'string', 'example' => '20% discount on pay-as-you-go'], + ], + ], + ], ], ], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:成功。'."\n" - .'- **false**:失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '是否成功获取配置的价格信息。'."\n" + ."\n" + .'- **true**:获取成功。'."\n" + .'- **false**:获取失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'Micro.Service.NotFound', - 'errorMessage' => 'The micro service not found {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"ADCEC067-86AD-19E2-BD43-E83F3841****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"1a0dcc771722848598056771******\\",\\n \\"Data\\": {\\n \\"BagUsage\\": {\\n \\"Cpu\\": 497570.450009,\\n \\"Mem\\": 989802.563546,\\n \\"Cu\\": 10000\\n },\\n \\"Order\\": {\\n \\"OriginalAmount\\": 0.0092592,\\n \\"DiscountAmount\\": 0.0018518,\\n \\"RuleIds\\": [\\n \\"2000010******\\"\\n ],\\n \\"TradeAmount\\": 0.0074074\\n },\\n \\"Rules\\": [\\n {\\n \\"RuleDescId\\": 0,\\n \\"Name\\": \\"20% discount on pay-as-you-go\\"\\n }\\n ],\\n \\"RequestPrice\\": {\\n \\"Order\\": {\\n \\"OriginalAmount\\": 0.0046296,\\n \\"DiscountAmount\\": 0.0009259,\\n \\"TradeAmount\\": 0.0037037,\\n \\"RuleIds\\": [\\n \\"2000010******\\"\\n ]\\n },\\n \\"Rules\\": [\\n {\\n \\"RuleDescId\\": 0,\\n \\"Name\\": \\"20% discount on pay-as-you-go\\"\\n }\\n ]\\n },\\n \\"TrafficPrice\\": {\\n \\"Order\\": {\\n \\"OriginalAmount\\": 0.0046296,\\n \\"DiscountAmount\\": 0.0009259,\\n \\"TradeAmount\\": 0.0037037,\\n \\"RuleIds\\": [\\n \\"2000010******\\"\\n ]\\n },\\n \\"Rules\\": [\\n {\\n \\"RuleDescId\\": 0,\\n \\"Name\\": \\"20% discount on pay-as-you-go\\"\\n }\\n ]\\n },\\n \\"CpuMemPrice\\": {\\n \\"Order\\": {\\n \\"OriginalAmount\\": 0.0046296,\\n \\"DiscountAmount\\": 0.0009259,\\n \\"TradeAmount\\": 0.0037037,\\n \\"RuleIds\\": [\\n \\"2000010******\\"\\n ]\\n },\\n \\"Rules\\": [\\n {\\n \\"RuleDescId\\": 0,\\n \\"Name\\": \\"20% discount on pay-as-you-go\\"\\n }\\n ]\\n }\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => '查询配置价格信息', + 'summary' => '查询configurationprice。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:29.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-09-08T05:48:07.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2025-04-22T01:54:31.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2025-02-27T01:45:06.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2024-10-17T05:35:54.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2023-12-06T09:22:40.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2022-07-08T07:33:16.000Z', 'description' => '请求参数发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '30', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeConfigurationPrice'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'sae:DescribeConfigurationPrice', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": [\\n {\\n \\"ServiceName\\": \\"frontend\\",\\n \\"ServiceGroup\\": \\"DEFAULT_GROUP\\",\\n \\"ServiceVersion\\": \\"1.0.0\\",\\n \\"InstanceCount\\": \\"1\\",\\n \\"ServiceType\\": \\"springCloud\\",\\n \\"ServiceProtocol\\": \\"HTTP\\",\\n \\"ServicePorts\\": [\\n 8000\\n ],\\n \\"ServicePortAndProtocol\\": {\\n \\"key\\": \\"8000:TCP\\"\\n },\\n \\"RegistryType\\": \\"0\\",\\n \\"NamespaceId\\": \\"cn-beijing:test\\",\\n \\"NamespaceName\\": \\"测试命名空间\\",\\n \\"AppId\\": \\"0099b7be-5f5b-4512-a7fc-56049ef1****\\",\\n \\"AppName\\": \\"demo-app\\",\\n \\"SecurityGroupId\\": \\"sg-wz969ngg2e49q5i4****\\"\\n }\\n ],\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => '查询微服务的服务列表', ], - 'CreateSecret' => [ - 'summary' => '创建命名空间中的Secret实例。', - 'path' => '/pop/v1/sam/secret/secret', - 'methods' => [ - 'post', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'DescribeEdasContainers' => [ + 'path' => '/pop/v1/sam/resource/edasContainers', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'abilityTreeCode' => '159985', - 'abilityTreeNodes' => [ - 'FEATUREsaeD9PL61', - ], - ], - 'parameters' => [ - [ - 'name' => 'NamespaceId', - 'in' => 'query', - 'schema' => [ - 'description' => 'Secret实例所在命名空间ID。如果所在命名空间为默认命名空间,则只需填写RegionId,例如`cn-beijing`。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-beijing:test', - ], - ], - [ - 'name' => 'SecretName', - 'in' => 'query', - 'schema' => [ - 'description' => 'Secret实例名称。允许数字、字母和下划线(_)组合,仅允许以字母开头。', - 'type' => 'string', - 'required' => true, - 'example' => 'registry-auth-acree', - ], - ], - [ - 'name' => 'SecretType', - 'in' => 'query', - 'schema' => [ - 'description' => '当前支持的Secret实例类型。取值说明如下:'."\n" - ."\n" - .'- **kubernetes.io/dockerconfigjson**:存储镜像仓库用户名和密码的保密字典,用于部署时拉取镜像鉴权。', - 'type' => 'string', - 'required' => true, - 'example' => 'kubernetes.io/dockerconfigjson', - 'enum' => [ - 'Opaque', - 'kubernetes.io/dockerconfigjson', - 'kubernetes.io/tls', - ], - ], - ], - [ - 'name' => 'SecretData', - 'in' => 'query', - 'style' => 'json', - 'schema' => [ - 'description' => 'Secret数据。', - 'type' => 'object', - 'properties' => [ - 'SecretData' => [ - 'description' => 'Secret键值对数据,为必填项。格式如下:'."\n" - ."\n" - .'{"Data":"{\\"k1\\":\\"v1\\", \\"k2\\":\\"v2\\"}"}'."\n" - ."\n" - .'k表示键,v表示值。', - 'type' => 'string', - 'required' => true, - 'example' => '{".dockerconfigjson":"eyJhdXRocyI6eyJyZWdpc3RyeS12cGMuY24tYmVpamluZy5hbGl5dW5jcy5jb20iOnsidXNlcm5hbWUiOiJ1c2VybmFtZSIsInBhc3N3b3JkIjoicGFzc3dvcmQiLCJhdXRoIjoiZFhObGNtNWhiV1U2Y0dGemMzZHZjbVE9In0sInJlZ2lzdHJ5LmNuLWJlaWppbmcuYWxpeXVuY3MuY29tIjp7InVzZXJuYW1lIjoidXNlcm5hbWUiLCJwYXNzd29yZCI6InBhc3N3b3JkIiwiYXV0aCI6ImRYTmxjbTVoYldVNmNHRnpjM2R2Y21RPSJ9fX0="}', - ], - ], - 'required' => true, - ], - ], + 'operationType' => 'get', + 'abilityTreeCode' => '6334', + 'abilityTreeNodes' => ['FEATUREsaeD9PL61'], ], + 'parameters' => [], 'responses' => [ 200 => [ 'schema' => [ - 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '调用结果的附加信息。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '调用结果的附加信息。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], 'Data' => [ - 'description' => '返回结果。', - 'type' => 'object', - 'properties' => [ - 'SecretId' => [ - 'description' => '创建成功的Secret实例ID。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '16', + 'description' => '组件列表。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Disabled' => ['description' => '微服务组件是否禁用。取值说明如下:'."\n" + ."\n" + .'- **true**:表示组件被禁用。'."\n" + .'- **false**:表示组件未被禁用。', 'type' => 'boolean', 'example' => 'false'], + 'EdasContainerVersion' => ['description' => 'HSF框架中应用运行环境版本,例如Ali-Tomcat容器。', 'type' => 'string', 'example' => '3.5.3'], ], + 'description' => '', ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '创建Secret实例是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:创建成功。'."\n" - .'- **false**:创建失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**目录。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '获取应用微服务容器组件列表是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:表示获取成功。'."\n" + .'- **false**:表示获取失败。', 'type' => 'boolean', 'example' => 'true'], ], + 'description' => '', ], ], ], - 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], - [ - 'errorCode' => 'SecretNameConflict.AlreadyExist', - 'errorMessage' => 'The specified SecretName [%s] already exist in this namespace.', - ], - [ - 'errorCode' => 'QuotaExceeded.SecretInNamespace', - 'errorMessage' => 'The specified secret exceeded quota [%s].', - ], - [ - 'errorCode' => 'QuotaExceeded.SecretDataKey', - 'errorMessage' => 'The specified key in SecretData exceeded quota [%s].', - ], - [ - 'errorCode' => 'InvalidSecretType.NotAvailable', - 'errorMessage' => 'The specified SecretType [%s] is not supported.', - ], - [ - 'errorCode' => 'InvalidSecretDataKey.NotFound', - 'errorMessage' => 'The specified Key [%s] does not exist in the specified Secret [%s].', - ], - ], - 404 => [ - [ - 'errorCode' => 'InvalidNamespaceId.NotFound', - 'errorMessage' => 'The specified NamespaceId does not exist.', - ], - ], - 500 => [ - [ - 'errorCode' => 'OperationFailed.RPCError', - 'errorMessage' => 'Internal RPC request processing error.', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": [\\n {\\n \\"Disabled\\": false,\\n \\"EdasContainerVersion\\": \\"3.5.3\\"\\n }\\n ],\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeEdasContainersResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <Disabled>false</Disabled>\\n <EdasContainerVersion>3.5.3</EdasContainerVersion>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeEdasContainersResponse>","errorExample":""}]', + 'title' => '获取应用微服务容器组件列表', + 'summary' => '调用DescribeEdasContainers接口获取应用微服务容器组件列表。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:29.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2023-03-09T05:58:12.000Z', 'description' => '错误码发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeEdasContainers', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"SecretId\\": 16\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<CreateSecretResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <SecretId>16</SecretId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</CreateSecretResponse>","errorExample":""}]', - 'title' => 'CreateSecret', - 'requestParamsDescription' => '**示例:使用用户名密码,跨账号内网拉取容器镜像服务ACR的镜像** '."\n" - ."\n" - .'- 请同时填写公网与内网域名。'."\n" - .'- 请同时填写**username**、**password**与**auth**字段,避免鉴权失败。**auth**字段格式`base64Encode($username:$password)`。'."\n" - ."\n" - .'字段值默认格式如下。'."\n" - ."\n" - .'```'."\n" - .'SecretData[".dockerconfigjson"]=base64Encode('."\n" - .'{'."\n" - .' "auths": {'."\n" - .' "registry-vpc.cn-beijing.aliyuncs.com": { // $内网域名'."\n" - .' "username": "username",'."\n" - .' "password": "password",'."\n" - .' "auth": "dXNlcm5hbWU6cGFzc3dvcmQ="'."\n" - .' },'."\n" - .' "registry.cn-beijing.aliyuncs.com": { // $公网域名'."\n" - .' "username": "username", // $用户名'."\n" - .' "password": "password", // $密码'."\n" - .' "auth": "dXNlcm5hbWU6cGFzc3dvcmQ=" // base64Encode($用户名:$密码)'."\n" - .' }'."\n" - .' }'."\n" - .'} )'."\n" - .'```', ], - 'DescribeSecret' => [ - 'summary' => '查询Secret实例详情。', - 'path' => '/pop/v1/sam/secret/secret', - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'DescribeGreyTagRoute' => [ + 'summary' => '根据规则ID查询灰度规则详情。', + 'path' => '/pop/v1/sam/tagroute/greyTagRoute', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -19720,34 +10722,15 @@ 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'abilityTreeCode' => '159990', - 'abilityTreeNodes' => [ - 'FEATUREsaeD9PL61', - ], + 'operationType' => 'get', + 'abilityTreeCode' => '10298', + 'abilityTreeNodes' => ['FEATUREsaeETR3ZD'], ], 'parameters' => [ [ - 'name' => 'NamespaceId', - 'in' => 'query', - 'schema' => [ - 'description' => 'Secret实例所在命名空间ID。如果所在命名空间为默认命名空间,则只需填写RegionId,例如`cn-beijing`。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-beijing:test', - ], - ], - [ - 'name' => 'SecretId', + 'name' => 'GreyTagRouteId', 'in' => 'query', - 'schema' => [ - 'description' => '查询的Secret实例ID。需要调用[ListSecrets](~~466929~~)接口查看。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'maximum' => '1000000000', - 'minimum' => '1', - 'example' => '16', - ], + 'schema' => ['title' => '规则ID', 'description' => '规则ID。', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'exclusiveMaximum' => false, 'minimum' => '1', 'example' => '1'], ], ], 'responses' => [ @@ -19756,164 +10739,191 @@ 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求ID。', 'type' => 'string', 'example' => '9D29CBD0-45D3-410B-9826-52F86F90****'], + 'Message' => ['description' => '调用结果的附加信息。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], 'Data' => [ - 'description' => '返回结果。', + 'description' => '灰度规则信息。', 'type' => 'object', 'properties' => [ - 'NamespaceId' => [ - 'description' => '命名空间ID。', - 'type' => 'string', - 'example' => 'cn-beijing:test', - ], - 'SecretId' => [ - 'description' => 'Secret实例ID。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '16', - ], - 'SecretName' => [ - 'description' => 'Secret实例名称。', - 'type' => 'string', - 'example' => 'registry-auth', - ], - 'SecretType' => [ - 'description' => 'Secret实例类型。', - 'type' => 'string', - 'example' => 'kubernetes.io/dockerconfigjson', - ], - 'SecretData' => [ - 'description' => 'Secret键值对数据。', - 'type' => 'object', - 'additionalProperties' => [ - 'type' => 'string', - 'example' => '{".dockerconfigjson":"eyJhdXRocyI6eyJyZWdpc3RyeS12cGMuY24tYmVpamluZy5hbGl5dW5jcy5jb20iOnsidXNlcm5hbWUiOiJ1c2VybmFtZSIsInBhc3N3b3JkIjoicGFzc3dvcmQiLCJhdXRoIjoiZFhObGNtNWhiV1U2Y0dGemMzZHZjbVE9In0sInJlZ2lzdHJ5LmNuLWJlaWppbmcuYWxpeXVuY3MuY29tIjp7InVzZXJuYW1lIjoidXNlcm5hbWUiLCJwYXNzd29yZCI6InBhc3N3b3JkIiwiYXV0aCI6ImRYTmxjbTVoYldVNmNHRnpjM2R2Y21RPSJ9fX0="}', - 'description' => 'Secret键值对数据。', + 'GreyTagRouteId' => ['description' => '灰度规则ID,全局唯一。', 'type' => 'integer', 'format' => 'int64', 'example' => '16'], + 'Name' => ['description' => '规则名称。', 'type' => 'string', 'example' => 'rule-name'], + 'Description' => ['description' => '规则描述。', 'type' => 'string', 'example' => 'test'], + 'ScRules' => [ + 'description' => 'Spring Cloud应用的灰度规则。', + 'type' => 'array', + 'items' => [ + 'description' => '灰度规则数据。', + 'type' => 'object', + 'properties' => [ + 'path' => ['description' => 'Spring Cloud应用灰度规则对应的路径。', 'type' => 'string', 'example' => '/path'], + 'condition' => ['description' => '灰度规则的条件模式,取值说明如下:'."\n" + .'- **AND**:表示与,即同时满足条件列表中的所有条件。'."\n" + .'- **OR**:表示或,即满足条件列表中的任一条件。', 'type' => 'string', 'example' => 'OR'], + 'items' => [ + 'description' => '条件列表。', + 'type' => 'array', + 'items' => [ + 'description' => '条件列表数据。', + 'type' => 'object', + 'properties' => [ + 'type' => ['description' => '比较类型。取值说明如下:'."\n" + .'- **param**:表示Parameter。'."\n" + .'- **cookie**:表示Cookie。'."\n" + .'- **header**:表示Header。', 'type' => 'string', 'example' => 'cookie'], + 'name' => ['description' => '参数名。', 'type' => 'string', 'example' => 'test'], + 'operator' => ['description' => '运算符。取值说明如下:'."\n" + .'- **rawvalue**:直接比较。'."\n" + .'- **list**:白名单。'."\n" + .'- **mod**:对100取模。'."\n" + .'- **deterministic\\_proportional\\_steaming\\_division**:百分比。', 'type' => 'string', 'example' => 'rawvalue'], + 'value' => ['description' => '参数取值,根据**type**和**name**得到的值跟这个值进行比较。', 'type' => 'string', 'example' => 'test'], + 'cond' => ['description' => '比较操作符。可取值:**>**、**<**、**>=**、**<=**、**==**以及**!=**。', 'type' => 'string', 'example' => '=='], + 'index' => ['title' => 'abandon', 'description' => 'Spring Cloud应用不涉及。', 'type' => 'integer', 'format' => 'int32', 'example' => 'N/A'], + 'expr' => ['title' => 'abandon', 'description' => 'Spring Cloud应用不涉及。', 'type' => 'string', 'example' => 'N/A'], + ], + ], + ], + ], ], ], - 'CreateTime' => [ - 'description' => '创建时间。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1593746835111', - ], - 'UpdateTime' => [ - 'description' => '更新时间。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1593746835111', - ], - 'RelateApps' => [ - 'description' => '关联的应用。', + 'AlbRules' => [ 'type' => 'array', 'items' => [ - 'description' => '应用的具体信息。', 'type' => 'object', 'properties' => [ - 'AppId' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'example' => 'f16b4000-9058-4c22-a49d-49a28f0b****', + 'serviceId' => ['description' => '路由服务ID。', 'type' => 'string', 'example' => '22'], + 'ingressId' => ['description' => '网关路由ID。', 'type' => 'string', 'example' => '23'], + 'condition' => ['description' => '灰度规则的条件模式,当前只支持AND:表示同时满足条件列表中的所有条件。', 'type' => 'string', 'example' => 'AND'], + 'items' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'type' => ['description' => '比较类型。取值说明如下:'."\n" + .'- **sourceIp**:表示SourceIp。'."\n" + .'- **cookie**:表示Cookie。'."\n" + .'- **header**:表示Header。', 'type' => 'string', 'example' => 'cookie'], + 'name' => ['description' => '参数名。', 'type' => 'string', 'example' => 'example'], + 'operator' => ['description' => '运算符。取值说明如下:目前只支持**rawvalue**:直接比较。', 'type' => 'string', 'example' => 'rawvalue'], + 'value' => ['description' => '参数取值,根据type和name得到的值跟这个值进行比较。', 'type' => 'string', 'example' => 'test'], + 'cond' => ['description' => '暂支持==。', 'type' => 'string', 'example' => '=='], + 'index' => ['title' => 'abandon', 'description' => 'Alb应用无需填写。', 'type' => 'integer', 'format' => 'int32', 'example' => 'N/A'], + 'expr' => ['title' => 'abandon', 'description' => 'Alb应用无需填写。', 'type' => 'string', 'example' => 'N/A'], + ], + 'description' => '', + ], + 'description' => '', ], - 'AppName' => [ - 'description' => '应用名称。', - 'type' => 'string', - 'example' => 'test-app', + ], + 'description' => '', + ], + 'description' => '', + ], + 'DubboRules' => [ + 'description' => 'Dubbo服务的灰度规则。', + 'type' => 'array', + 'items' => [ + 'description' => '灰度规则数据。', + 'type' => 'object', + 'properties' => [ + 'serviceName' => ['description' => 'Dubbo服务名称。', 'type' => 'string', 'example' => 'com.alibaba.edas.boot.EchoService'], + 'group' => ['description' => '灰度规则对应的Dubbo服务的分组。', 'type' => 'string', 'example' => 'DUBBO'], + 'version' => ['description' => 'Dubbo服务版本。', 'type' => 'string', 'example' => '1.0.0'], + 'methodName' => ['description' => 'Dubbo服务的方法名。', 'type' => 'string', 'example' => 'echo'], + 'condition' => ['description' => '灰度规则的条件模式,取值说明如下:'."\n" + .'- **AND**:表示与,即同时满足条件列表中的所有条件。'."\n" + .'- **OR**:表示或,即满足条件列表中的任一条件。', 'type' => 'string', 'example' => 'OR'], + 'items' => [ + 'description' => '条件列表。', + 'type' => 'array', + 'items' => [ + 'description' => '条件列表数据。', + 'type' => 'object', + 'properties' => [ + 'index' => ['description' => '参数编号,0表示第一个参数。', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], + 'expr' => ['description' => '参数值获取表达式。取值说明如下:'."\n" + .'- **留空**:直接取当前参数的值。'."\n" + .'- **.name**:取参数的name属性,相当于args0.getName()。'."\n" + .'- **.isEnabled()** :取参数的enabled属性,相当于args0.isEnabled()。'."\n" + .'- **[0]**:当前参数应是一个数组,取数组的第一个值,相当于args0\\[0],注意开始没有英文句点(.)。'."\n" + .'- **.get(0)**:当前参数应是一个List,取List的第一个值,相当于args0.get(0)。'."\n" + .'- **.get("key")**:当前参数是一个Map,获取key对应的值,相当于args0.get("key")。', 'type' => 'string', 'example' => '.name'], + 'operator' => ['description' => '运算符。取值说明如下:'."\n" + .'- **rawvalue**:直接比较。'."\n" + .'- **list**:白名单。'."\n" + .'- **mod**:对100取模。'."\n" + .'- **deterministic\\_proportional\\_steaming\\_division**:百分比。', 'type' => 'string', 'example' => 'rawvalue'], + 'value' => ['description' => '参数取值,根据**expr**和**index**得到的值跟这个值进行比较。', 'type' => 'string', 'example' => 'test'], + 'cond' => ['description' => '比较操作符。可取值:**>**、**<**、**>=**、**<=**、**==**以及**!=**。', 'type' => 'string', 'example' => '=='], + 'type' => ['title' => 'abandon', 'description' => 'Dubbo服务不涉及。', 'type' => 'string', 'example' => 'N/A'], + 'name' => ['title' => 'abandon', 'description' => 'Dubbo服务不涉及。', 'type' => 'string', 'example' => 'N/A'], + ], + ], ], ], ], ], + 'CreateTime' => ['description' => '规则被创建的时间戳。单位:毫秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1619007592013'], + 'UpdateTime' => ['description' => '规则被更新的时间戳。单位:毫秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1609434061000'], + 'AppId' => ['description' => '应用ID。', 'type' => 'string', 'example' => '3faaf993-7aed-4bcd-b189-625e6a5a****'], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '查询Secret实例详情是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:查询成功。'."\n" - .'- **false**:查询失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '查询变更单信息是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:查询成功。'."\n" + .'- **false**:查询失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], - [ - 'errorCode' => 'InvalidSecretId.NotFound', - 'errorMessage' => 'The specified SecretId [%s] does not exist in our records.', - ], - ], - 404 => [ - [ - 'errorCode' => 'InvalidNamespaceId.NotFound', - 'errorMessage' => 'The specified NamespaceId does not exist.', - ], + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"9D29CBD0-45D3-410B-9826-52F86F90****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"GreyTagRouteId\\": 16,\\n \\"Name\\": \\"rule-name\\",\\n \\"Description\\": \\"test\\",\\n \\"ScRules\\": [\\n {\\n \\"path\\": \\"/path\\",\\n \\"condition\\": \\"OR\\",\\n \\"items\\": [\\n {\\n \\"type\\": \\"cookie\\",\\n \\"name\\": \\"test\\",\\n \\"operator\\": \\"rawvalue\\",\\n \\"value\\": \\"test\\",\\n \\"cond\\": \\"==\\",\\n \\"index\\": 0,\\n \\"expr\\": \\"N/A\\"\\n }\\n ]\\n }\\n ],\\n \\"AlbRules\\": [\\n {\\n \\"serviceId\\": \\"22\\",\\n \\"ingressId\\": \\"23\\",\\n \\"condition\\": \\"AND\\",\\n \\"items\\": [\\n {\\n \\"type\\": \\"cookie\\",\\n \\"name\\": \\"example\\",\\n \\"operator\\": \\"rawvalue\\",\\n \\"value\\": \\"test\\",\\n \\"cond\\": \\"==\\",\\n \\"index\\": 0,\\n \\"expr\\": \\"N/A\\"\\n }\\n ]\\n }\\n ],\\n \\"DubboRules\\": [\\n {\\n \\"serviceName\\": \\"com.alibaba.edas.boot.EchoService\\",\\n \\"group\\": \\"DUBBO\\",\\n \\"version\\": \\"1.0.0\\",\\n \\"methodName\\": \\"echo\\",\\n \\"condition\\": \\"OR\\",\\n \\"items\\": [\\n {\\n \\"index\\": 0,\\n \\"expr\\": \\".name\\",\\n \\"operator\\": \\"rawvalue\\",\\n \\"value\\": \\"test\\",\\n \\"cond\\": \\"==\\",\\n \\"type\\": \\"N/A\\",\\n \\"name\\": \\"N/A\\"\\n }\\n ]\\n }\\n ],\\n \\"CreateTime\\": 1619007592013,\\n \\"UpdateTime\\": 1609434061000,\\n \\"AppId\\": \\"3faaf993-7aed-4bcd-b189-625e6a5a****\\"\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeGreyTagRouteResponse>\\n <RequestId>9D29CBD0-45D3-410B-9826-52F86F90****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <GreyTagRouteId>16</GreyTagRouteId>\\n <Name>rule-name</Name>\\n <Description>test</Description>\\n <ScRules>\\n <path>/path</path>\\n <condition>OR</condition>\\n <items>\\n <type>cookie</type>\\n <name>test</name>\\n <operator>rawvalue</operator>\\n <value>test</value>\\n <cond>==</cond>\\n <expr>N/A</expr>\\n </items>\\n </ScRules>\\n <DubboRules>\\n <serviceName>com.alibaba.edas.boot.EchoService</serviceName>\\n <group>DUBBO</group>\\n <version>1.0.0</version>\\n <methodName>echo</methodName>\\n <condition>OR</condition>\\n <items>\\n <index>0</index>\\n <expr>.name</expr>\\n <operator>rawvalue</operator>\\n <value>test</value>\\n <cond>==</cond>\\n <type>N/A</type>\\n <name>N/A</name>\\n </items>\\n </DubboRules>\\n <CreateTime>1619007592013</CreateTime>\\n <UpdateTime>1609434061000</UpdateTime>\\n <AppId>3faaf993-7aed-4bcd-b189-625e6a5a****</AppId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeGreyTagRouteResponse>","errorExample":""}]', + 'title' => 'DescribeGreyTagRoute', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:24.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2022-12-29T03:14:28.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2022-03-03T12:42:22.000Z', 'description' => '响应参数发生变更'], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"NamespaceId\\": \\"cn-beijing:test\\",\\n \\"SecretId\\": 16,\\n \\"SecretName\\": \\"registry-auth\\",\\n \\"SecretType\\": \\"kubernetes.io/dockerconfigjson\\",\\n \\"SecretData\\": {\\n \\"key\\": \\"{\\\\\\".dockerconfigjson\\\\\\":\\\\\\"eyJhdXRocyI6eyJyZWdpc3RyeS12cGMuY24tYmVpamluZy5hbGl5dW5jcy5jb20iOnsidXNlcm5hbWUiOiJ1c2VybmFtZSIsInBhc3N3b3JkIjoicGFzc3dvcmQiLCJhdXRoIjoiZFhObGNtNWhiV1U2Y0dGemMzZHZjbVE9In0sInJlZ2lzdHJ5LmNuLWJlaWppbmcuYWxpeXVuY3MuY29tIjp7InVzZXJuYW1lIjoidXNlcm5hbWUiLCJwYXNzd29yZCI6InBhc3N3b3JkIiwiYXV0aCI6ImRYTmxjbTVoYldVNmNHRnpjM2R2Y21RPSJ9fX0=\\\\\\"}\\"\\n },\\n \\"CreateTime\\": 1593746835111,\\n \\"UpdateTime\\": 1593746835111,\\n \\"RelateApps\\": [\\n {\\n \\"AppId\\": \\"f16b4000-9058-4c22-a49d-49a28f0b****\\",\\n \\"AppName\\": \\"test-app\\"\\n }\\n ]\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeSecretResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <NamespaceId>cn-beijing:test</NamespaceId>\\n <SecretId>16</SecretId>\\n <SecretName>registry-auth</SecretName>\\n <SecretType>kubernetes.io/dockerconfigjson</SecretType>\\n <SecretData>\\n <key>{\\".dockerconfigjson\\":\\"eyJhdXRocyI6eyJyZWdpc3RyeS12cGMuY24tYmVpamluZy5hbGl5dW5jcy5jb20iOnsidXNlcm5hbWUiOiJ1c2VybmFtZSIsInBhc3N3b3JkIjoicGFzc3dvcmQiLCJhdXRoIjoiZFhObGNtNWhiV1U2Y0dGemMzZHZjbVE9In0sInJlZ2lzdHJ5LmNuLWJlaWppbmcuYWxpeXVuY3MuY29tIjp7InVzZXJuYW1lIjoidXNlcm5hbWUiLCJwYXNzd29yZCI6InBhc3N3b3JkIiwiYXV0aCI6ImRYTmxjbTVoYldVNmNHRnpjM2R2Y21RPSJ9fX0=\\"}</key>\\n </SecretData>\\n <CreateTime>1593746835111</CreateTime>\\n <UpdateTime>1593746835111</UpdateTime>\\n <RelateApps>\\n <AppId>f16b4000-9058-4c22-a49d-49a28f0b****</AppId>\\n <AppName>test-app</AppName>\\n </RelateApps>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeSecretResponse>","errorExample":""}]', - 'title' => '查询Secret实例详情', - ], - 'ListSecrets' => [ - 'summary' => '调用ListSecrets接口获取命名空间内Secret实例列表。', - 'path' => '/pop/v1/sam/secret/secrets', - 'methods' => [ - 'get', + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeGreyTagRoute'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeGreyTagRoute', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + ], + 'DescribeIngress' => [ + 'path' => '/pop/v1/sam/ingress/Ingress', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -19922,21 +10932,16 @@ 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'abilityTreeCode' => '159992', - 'abilityTreeNodes' => [ - 'FEATUREsaeD9PL61', - ], + 'operationType' => 'get', + 'abilityTreeCode' => '6335', + 'abilityTreeNodes' => ['FEATUREsaeRW2OE6'], ], 'parameters' => [ [ - 'name' => 'NamespaceId', + 'name' => 'IngressId', 'in' => 'query', - 'schema' => [ - 'description' => 'Secret实例所在命名空间ID。默认同RegionId。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-beijing:test', - ], + 'schema' => ['description' => '需要查询的路由规则ID。'."\n" + .'路由规则 ID 请通过[ListIngresses](~~2834910~~)接口获取。', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '16263'], ], ], 'responses' => [ @@ -19945,368 +10950,427 @@ 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a981dd515966966104121683d****'], 'Data' => [ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'Secrets' => [ - 'description' => 'Secret实例列表。', + 'SlbId' => ['description' => 'SLB ID。', 'type' => 'string', 'example' => 'lb-uf62****6d13tq2u5'], + 'NamespaceId' => ['description' => '命名空间ID。', 'type' => 'string', 'example' => 'cn-beijing:sae-test'], + 'Description' => ['description' => '路由规则名称。', 'type' => 'string', 'example' => 'ingress-sae-test'], + 'ListenerPort' => ['description' => 'SLB监听端口。', 'type' => 'integer', 'format' => 'int32', 'example' => '443'], + 'SlbType' => ['description' => 'SLB类型。取值说明如下:'."\n" + ."\n" + .'- **internet**:公网。'."\n" + .'- **intranet**:私网。', 'type' => 'string', 'example' => 'internet'], + 'CertId' => ['description' => '**CLB**证书ID。', 'type' => 'string', 'example' => '13623****809_16cad216b32_845_-419427029'], + 'Name' => ['description' => '路由规则名称。', 'type' => 'string', 'example' => 'lb-uf6jt0nu4z6ior943****-80-f5****'], + 'DefaultRule' => [ + 'description' => '默认规则。', + 'type' => 'object', + 'properties' => [ + 'ContainerPort' => ['description' => '默认规则应用的后端端口。', 'type' => 'integer', 'format' => 'int32', 'example' => '8080'], + 'AppName' => ['description' => '默认规则的应用名称。', 'type' => 'string', 'example' => 'app1'], + 'AppId' => ['description' => '默认规则的应用。', 'type' => 'string', 'example' => '395b60e4-0550-458d-9c54-a265d036****'], + 'BackendProtocol' => ['description' => '后端协议。取值说明如下:'."\n" + ."\n" + .'- **http**:适用于需要对数据内容进行识别的应用。'."\n" + .'- **https**:适用于需要加密传输的应用。'."\n" + .'- **grpc**:适用于.net等多语言用户gRPC的负载均衡场景。'."\n" + ."\n" + .'该参数仅在参数**LoadBalanceType**取值为**ALB**,且参数**ListenerProtocol**取值为**HTTPS**时返回。', 'type' => 'string', 'example' => 'http'], + ], + ], + 'Rules' => [ + 'description' => '转发规则。', 'type' => 'array', 'items' => [ - 'description' => 'Secret实例的具体信息。', + 'description' => '转发规则。', 'type' => 'object', 'properties' => [ - 'NamespaceId' => [ - 'description' => '命名空间ID。', - 'type' => 'string', - 'example' => 'cn-beijing:test', - ], - 'SecretId' => [ - 'description' => 'Secret实例ID。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '16', - ], - 'SecretName' => [ - 'description' => 'Secret实例名称。', - 'type' => 'string', - 'example' => 'registry-auth', - ], - 'SecretType' => [ - 'description' => 'Secret实例类型。取值说明如下:'."\n" - ."\n" - .'**kubernetes.io/dockerconfigjson**:存储镜像仓库用户名和密码的保密字典,用于部署时拉取镜像鉴权。', - 'type' => 'string', - 'example' => 'kubernetes.io/dockerconfigjson', - ], - 'RelateApps' => [ - 'description' => '关联应用。', + 'AppName' => ['description' => '目标应用名称。', 'type' => 'string', 'example' => 'app1'], + 'ContainerPort' => ['description' => '应用后端端口。', 'type' => 'integer', 'format' => 'int32', 'example' => '8080'], + 'Domain' => ['description' => '应用域名。', 'type' => 'string', 'example' => 'edas.site'], + 'AppId' => ['description' => '目标应用ID。', 'type' => 'string', 'example' => '395b60e4-0550-458d-9c54-a265d036****'], + 'Path' => ['description' => 'URL路径。', 'type' => 'string', 'example' => '/path1'], + 'BackendProtocol' => ['description' => '后端协议。取值说明如下:'."\n" + ."\n" + .'- **http**:适用于需要对数据内容进行识别的应用。'."\n" + .'- **https**:适用于需要加密传输的应用。'."\n" + .'- **grpc**:适用于.net等多语言用户gRPC的负载均衡场景。'."\n" + ."\n" + .'该参数仅在参数**LoadBalanceType**取值为**ALB**,且参数**ListenerProtocol**取值为**HTTPS**时返回。', 'type' => 'string', 'example' => 'http'], + 'RewritePath' => ['description' => '重写路径。', 'type' => 'string', 'example' => '/${1}'], + 'RuleActions' => [ + 'description' => '转发规则动作列表。', 'type' => 'array', 'items' => [ - 'description' => '应用的具体信息。', + 'description' => '规则动作列表。', 'type' => 'object', 'properties' => [ - 'AppName' => [ - 'description' => '应用名称。', - 'type' => 'string', - 'example' => 'test-app', - ], - 'AppId' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'example' => 'f16b4000-9058-4c22-a49d-49a28f0b****', - ], + 'ActionType' => ['description' => '转发动作类型。'."\n" + ."\n" + .'- rewrite:重写策略'."\n" + .'- redirect:重定向策略', 'type' => 'string', 'example' => 'rewrite'], + 'ActionConfig' => ['description' => '转发动作中的具体配置。', 'type' => 'string', 'example' => '{\\"host\\":\\"www.example.com\\",\\"path\\":\\"/example/text\\",\\"query\\":\\"x=1\\"}'], ], ], ], - 'CreateTime' => [ - 'description' => '创建时间。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1593760185111', - ], - 'UpdateTime' => [ - 'description' => '更新时间。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1593760185111', - ], ], ], ], + 'Id' => ['description' => '路由规则ID。', 'type' => 'integer', 'format' => 'int64', 'example' => '87'], + 'LoadBalanceType' => ['description' => '负载均衡SLB的类型。取值说明如下:'."\n" + ."\n" + .'- **clb**:传统型负载均衡CLB(原SLB)。'."\n" + .'- **alb**:应用型负载均衡ALB。', 'type' => 'string', 'example' => 'clb'], + 'ListenerProtocol' => ['description' => '请求转发协议。取值说明如下:'."\n" + ."\n" + .'- **HTTP**:适用于需要对数据内容进行识别的应用。'."\n" + .'- **HTTPS**:适用于需要加密传输的应用。'."\n" + ."\n" + .'在**CreateIngress**和**UpadateIngress**中,该参数非必填项,如果创建或更新网关路由规则时未填写该参数,则调用该API时不返回。', 'type' => 'string', 'example' => 'HTTP'], + 'CertIds' => ['description' => '**ALB**多证书ID。', 'type' => 'string', 'example' => '87***35-cn-hangzhou,812***3-cn-hangzhou'], + 'SecurityPolicyId' => ['title' => '安全策略实例 ID', 'description' => '安全策略实例 ID', 'type' => 'string', 'example' => 'sp-n0kn923****'], + 'RequestTimeout' => ['title' => '指定请求超时时间。单位:秒。'."\n" + ."\n" + .'取值:1~180。'."\n" + ."\n" + .'默认值:60。'."\n" + ."\n" + .'如果在超时时间内后端服务器一直没有响应,负载均衡将放弃等待,并给客户端返回HTTP 504错误码。', 'description' => '指定请求超时时间。单位:秒。'."\n" + ."\n" + .'取值:1~180。'."\n" + ."\n" + .'默认值:60。'."\n" + ."\n" + .'如果在超时时间内后端服务器一直没有响应,负载均衡将放弃等待,并给客户端返回HTTP 504错误码。', 'type' => 'integer', 'format' => 'int32', 'example' => '60'], + 'IdleTimeout' => ['title' => '指定连接空闲超时时间。单位:秒。'."\n" + ."\n" + .'取值范围:1~60。'."\n" + ."\n" + .'默认值:15。'."\n" + ."\n" + .'如果在超时时间内一直没有访问请求,负载均衡会暂时中断当前连接,直到一下次请求来临时重新建立新的连接。', 'description' => '指定连接空闲超时时间。单位:秒。'."\n" + ."\n" + .'取值范围:1~60。'."\n" + ."\n" + .'默认值:15。'."\n" + ."\n" + .'如果在超时时间内一直没有访问请求,负载均衡会暂时中断当前连接,直到一下次请求来临时重新建立新的连接。', 'type' => 'integer', 'format' => 'int32', 'example' => '3'], + 'EnableXForwardedFor' => ['description' => '是否开启通过X-Forwarded-For头字段获取来访者客户端IP。', 'type' => 'boolean', 'example' => 'true'], + 'EnableXForwardedForClientSrcPort' => ['description' => '是否通过X-Forwarded-Port头字段获取负载均衡实例的监听端口。', 'type' => 'boolean', 'example' => 'true'], + 'EnableXForwardedForProto' => ['description' => '是否通过X-Forwarded-Proto头字段获取负载均衡实例的监听协议。', 'type' => 'boolean', 'example' => 'true'], + 'EnableXForwardedForSlbId' => ['description' => '是否通过SLB-ID头字段获取负载均衡实例ID。', 'type' => 'boolean', 'example' => 'true'], + 'EnableXForwardedForSlbPort' => ['description' => '是否通过X-Forwarded-Port头字段获取负载均衡实例的监听端口。', 'type' => 'boolean', 'example' => 'true'], + 'CreatedBySae' => ['description' => 'ALB实例是否为SAE代购。', 'type' => 'boolean', 'example' => 'true'], + 'CorsConfig' => [ + 'description' => '选择跨域访问时允许的HTTP方法。取值:'."\n" + .'- **GET**。'."\n" + .'- **POST**。'."\n" + .'- **PUT**。'."\n" + .'- **DELETE**。'."\n" + .'- **HEAD**。'."\n" + .'- **OPTIONS**。'."\n" + .'- **PATCH**。', + 'type' => 'object', + 'properties' => [ + 'Enable' => ['description' => '是否启用跨域支持。', 'type' => 'string', 'example' => 'false'], + 'ExposeHeaders' => ['description' => '允许暴露的Header列表。', 'type' => 'string', 'example' => 'test_123'], + 'AllowHeaders' => ['description' => '允许跨域的Header列表。', 'type' => 'string', 'example' => 'test_123'], + 'AllowMethods' => ['description' => '跨域访问时允许的HTTP方法。', 'type' => 'string', 'example' => 'GET'], + 'AllowOrigin' => ['description' => '允许的访问来源列表。支持只配置一个元素`*`,或配置一个或多个值。'."\n" + .'- 单个值必须以`http://`或者`https://`开头,后边加一个正确的域名或一级泛域名。(例:`http://*.test.abc.example.com`)'."\n" + .'- 单个值可以不加端口,也可以指定端口,端口范围:**1**~**65535**。', 'type' => 'string', 'example' => '*'], + 'AllowCredentials' => ['description' => '是否允许携带凭证信息。取值:'."\n" + ."\n" + .'- **on**:是。'."\n" + .'- **off**:否。', 'type' => 'string', 'example' => 'on'], + 'MaxAge' => ['description' => '预检请求在浏览器的最大缓存时间,单位:秒。'."\n" + ."\n" + .'取值范围:**-1**~**172800**。', 'type' => 'string', 'example' => '1000'], + ], + ], + 'EnableGzip' => ['description' => '是否开启数据压缩。', 'type' => 'boolean'], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '是否成功获取Secret实例列表。取值说明如下:'."\n" - ."\n" - .'- **true**:获取成功。'."\n" - .'- **false**:获取失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '查询Ingress详情是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:查询成功。'."\n" + .'- **false**:查询失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], ], - 404 => [ - [ - 'errorCode' => 'InvalidNamespaceId.NotFound', - 'errorMessage' => 'The specified NamespaceId does not exist.', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a981dd515966966104121683d****\\",\\n \\"Data\\": {\\n \\"SlbId\\": \\"lb-uf62****6d13tq2u5\\",\\n \\"NamespaceId\\": \\"cn-beijing:sae-test\\",\\n \\"Description\\": \\"ingress-sae-test\\",\\n \\"ListenerPort\\": 443,\\n \\"SlbType\\": \\"internet\\",\\n \\"CertId\\": \\"13623****809_16cad216b32_845_-419427029\\",\\n \\"Name\\": \\"lb-uf6jt0nu4z6ior943****-80-f5****\\",\\n \\"DefaultRule\\": {\\n \\"ContainerPort\\": 8080,\\n \\"AppName\\": \\"app1\\",\\n \\"AppId\\": \\"395b60e4-0550-458d-9c54-a265d036****\\",\\n \\"BackendProtocol\\": \\"http\\"\\n },\\n \\"Rules\\": [\\n {\\n \\"AppName\\": \\"app1\\",\\n \\"ContainerPort\\": 8080,\\n \\"Domain\\": \\"edas.site\\",\\n \\"AppId\\": \\"395b60e4-0550-458d-9c54-a265d036****\\",\\n \\"Path\\": \\"/path1\\",\\n \\"BackendProtocol\\": \\"http\\",\\n \\"RewritePath\\": \\"/${1}\\",\\n \\"RuleActions\\": [\\n {\\n \\"ActionType\\": \\"rewrite\\",\\n \\"ActionConfig\\": \\"{\\\\\\\\\\\\\\"host\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"www.example.com\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"path\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"/example/text\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"query\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"x=1\\\\\\\\\\\\\\"}\\"\\n }\\n ]\\n }\\n ],\\n \\"Id\\": 87,\\n \\"LoadBalanceType\\": \\"clb\\",\\n \\"ListenerProtocol\\": \\"HTTP\\",\\n \\"CertIds\\": \\"87***35-cn-hangzhou,812***3-cn-hangzhou\\",\\n \\"SecurityPolicyId\\": \\"sp-n0kn923****\\",\\n \\"RequestTimeout\\": 60,\\n \\"IdleTimeout\\": 3,\\n \\"EnableXForwardedFor\\": true,\\n \\"EnableXForwardedForClientSrcPort\\": true,\\n \\"EnableXForwardedForProto\\": true,\\n \\"EnableXForwardedForSlbId\\": true,\\n \\"EnableXForwardedForSlbPort\\": true,\\n \\"CreatedBySae\\": true,\\n \\"CorsConfig\\": {\\n \\"Enable\\": \\"false\\",\\n \\"ExposeHeaders\\": \\"test_123\\",\\n \\"AllowHeaders\\": \\"test_123\\",\\n \\"AllowMethods\\": \\"GET\\",\\n \\"AllowOrigin\\": \\"*\\",\\n \\"AllowCredentials\\": \\"on\\",\\n \\"MaxAge\\": \\"1000\\"\\n },\\n \\"EnableGzip\\": true\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeIngressResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a981dd515966966104121683d****</TraceId>\\n <Data>\\n <SlbId>lb-uf62****6d13tq2u5</SlbId>\\n <NamespaceId>cn-beijing:sae-test</NamespaceId>\\n <Description>ingress-sae-test</Description>\\n <ListenerPort>443</ListenerPort>\\n <SlbType>internet</SlbType>\\n <CertId>13623****809_16cad216b32_845_-419427029</CertId>\\n <Name>lb-uf6jt0nu4z6ior943****-80-f5****</Name>\\n <DefaultRule>\\n <ContainerPort>8080</ContainerPort>\\n <AppName>app1</AppName>\\n <AppId>395b60e4-0550-458d-9c54-a265d036****</AppId>\\n <BackendProtocol>HTTP</BackendProtocol>\\n </DefaultRule>\\n <Rules>\\n <AppName>app1</AppName>\\n <ContainerPort>8080</ContainerPort>\\n <Domain>edas.site</Domain>\\n <AppId>395b60e4-0550-458d-9c54-a265d036****</AppId>\\n <Path>/path1</Path>\\n <BackendProtocol>HTTP</BackendProtocol>\\n </Rules>\\n <Id>87</Id>\\n <LoadBalanceType>clb</LoadBalanceType>\\n <ListenerProtocol>HTTP</ListenerProtocol>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeIngressResponse>","errorExample":""}]', + 'title' => '查询ingress配置详情', + 'summary' => '查询Ingress配置详情。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:24.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-10-24T08:31:04.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2025-03-21T02:11:42.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2025-01-10T02:30:23.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2024-11-06T01:58:45.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2024-10-29T08:50:17.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2024-09-11T08:44:35.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2024-08-21T01:31:17.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2023-05-08T05:55:21.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2022-12-02T02:40:58.000Z', 'description' => '响应参数发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeIngress'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeIngress', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"Secrets\\": [\\n {\\n \\"NamespaceId\\": \\"cn-beijing:test\\",\\n \\"SecretId\\": 16,\\n \\"SecretName\\": \\"registry-auth\\",\\n \\"SecretType\\": \\"kubernetes.io/dockerconfigjson\\",\\n \\"RelateApps\\": [\\n {\\n \\"AppName\\": \\"test-app\\",\\n \\"AppId\\": \\"f16b4000-9058-4c22-a49d-49a28f0b****\\"\\n }\\n ],\\n \\"CreateTime\\": 1593760185111,\\n \\"UpdateTime\\": 1593760185111\\n }\\n ]\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<ListSecretsResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <Secrets>\\n <NamespaceId>cn-beijing:test</NamespaceId>\\n <SecretId>16</SecretId>\\n <SecretName>registry-auth</SecretName>\\n <SecretType>kubernetes.io/dockerconfigjson</SecretType>\\n <RelateApps>\\n <AppName>test-app</AppName>\\n <AppId>f16b4000-9058-4c22-a49d-49a28f0b****</AppId>\\n </RelateApps>\\n <CreateTime>1593760185111</CreateTime>\\n <UpdateTime>1593760185111</UpdateTime>\\n </Secrets>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</ListSecretsResponse>","errorExample":""}]', - 'title' => 'ListSecrets', ], - 'UpdateSecret' => [ - 'summary' => '调用UpdateSecret接口更新Secret实例。', - 'path' => '/pop/v1/sam/secret/secret', - 'methods' => [ - 'put', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'DescribeInstanceLog' => [ + 'path' => '/pop/v1/sam/instance/describeInstanceLog', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'abilityTreeCode' => '159988', - 'abilityTreeNodes' => [ - 'FEATUREsaeD9PL61', - ], + 'operationType' => 'get', + 'abilityTreeCode' => '6336', + 'abilityTreeNodes' => ['FEATUREsaeKWESKE'], ], 'parameters' => [ [ - 'name' => 'NamespaceId', + 'name' => 'InstanceId', 'in' => 'query', - 'schema' => [ - 'description' => 'Secret实例所在命名空间ID。如果所在命名空间为默认命名空间,则只需填写RegionId,例如`cn-beijing`。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-beijing:test', - ], + 'schema' => ['description' => '实例ID。', 'type' => 'string', 'required' => true, 'example' => '******-d700e680-aa4d-4ec1-afc2-6566b5ff4d7a-85d44d4bfc-*****'], ], [ - 'name' => 'SecretId', + 'name' => 'ContainerId', 'in' => 'query', - 'schema' => [ - 'description' => 'Secret实例ID。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'maximum' => '1000000000', - 'minimum' => '1', - 'example' => '16', - ], + 'schema' => ['description' => 'Sidecar容器ID。需要调用'."\n" + .'[获取应用实例列表](~~2834847~~)接口获取。', 'type' => 'string', 'required' => false, 'example' => 'sidecar-test-01'], ], [ - 'name' => 'SecretData', + 'name' => 'Previous', 'in' => 'query', - 'style' => 'json', + 'schema' => ['description' => '查看实例上次重启前的日志。注意:仅在实例出现重启时可用。', 'type' => 'string', 'required' => false, 'example' => 'false'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'Secret数据。', + 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'SecretData' => [ - 'description' => 'Secret键值对数据,为必填项。格式如下:'."\n" - ."\n" - .'{"Data":"{\\"k1\\":\\"v1\\", \\"k2\\":\\"v2\\"}"}'."\n" - ."\n" - .'k表示键,v表示值。关于配置项的更多信息,请参见[管理和使用保密字典](~~463383~~)。', - 'type' => 'string', - 'required' => true, - 'example' => '{".dockerconfigjson":"eyJhdXRocyI6eyJyZWdpc3RyeS12cGMuY24tYmVpamluZy5hbGl5dW5jcy5jb20iOnsidXNlcm5hbWUiOiJ1c2VybmFtZSIsInBhc3N3b3JkIjoicGFzc3dvcmQiLCJhdXRoIjoiZFhObGNtNWhiV1U2Y0dGemMzZHZjbVE9In0sInJlZ2lzdHJ5LmNuLWJlaWppbmcuYWxpeXVuY3MuY29tIjp7InVzZXJuYW1lIjoidXNlcm5hbWUiLCJwYXNzd29yZCI6InBhc3N3b3JkIiwiYXV0aCI6ImRYTmxjbTVoYldVNmNHRnpjM2R2Y21RPSJ9fX0="}', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], + 'Data' => ['description' => '实例日志信息。', 'type' => 'string', 'example' => 'hello\\nsae\\n'], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '获取实例日志是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:获取成功。'."\n" + .'- **false**:获取失败。', 'type' => 'boolean', 'example' => 'true'], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": \\"hello\\\\\\\\nsae\\\\\\\\n\\",\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeInstanceLogResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>hello\\\\nsae\\\\n</Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeInstanceLogResponse>","errorExample":""}]', + 'title' => '获取实例日志', + 'summary' => '获取实例日志。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:29.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-10-30T05:33:55.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2024-12-17T11:33:09.000Z', 'description' => '请求参数发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeInstanceLog'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeInstanceLog', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], - 'required' => true, ], ], ], + ], + 'DescribeInstanceSpecifications' => [ + 'path' => '/pop/v1/paas/quota/instanceSpecifications', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '6337', + 'abilityTreeNodes' => ['FEATUREsaeD9PL61'], + ], + 'parameters' => [], 'responses' => [ 200 => [ 'schema' => [ 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '调用结果的附加信息。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], 'Data' => [ - 'description' => '返回结果。', - 'type' => 'object', - 'properties' => [ - 'SecretId' => [ - 'description' => 'Secret实例ID。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '16', + 'description' => '实例规格信息。', + 'type' => 'array', + 'items' => [ + 'description' => '实例规格信息。', + 'type' => 'object', + 'properties' => [ + 'Cpu' => ['description' => 'CPU大小,规格为微核。', 'type' => 'integer', 'format' => 'int32', 'example' => '2000'], + 'Version' => ['description' => '规格配置版本号。', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], + 'Memory' => ['description' => '内存规格,单位为MB。', 'type' => 'integer', 'format' => 'int32', 'example' => '4096'], + 'SpecInfo' => ['description' => '规格配置名称。', 'type' => 'string', 'example' => 'General-purpose 4'], + 'Id' => ['description' => '规格配置ID。', 'type' => 'integer', 'format' => 'int32', 'example' => '4'], + 'Enable' => ['description' => '实例是否可用。取值说明如下:'."\n" + ."\n" + .'- **true**:可用。'."\n" + .'- **false**:不可用。', 'type' => 'boolean', 'example' => 'true'], ], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '更新Secret实例是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:更新成功。'."\n" - .'- **false**:更新失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**目录。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '获取实例规格是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:获取成功。'."\n" + .'- **false**:获取失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], - 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], - [ - 'errorCode' => 'InvalidSecretId.NotFound', - 'errorMessage' => 'The specified SecretId [%s] does not exist in our records.', - ], - [ - 'errorCode' => 'InvalidSecretDataKey.NotFound', - 'errorMessage' => 'The specified Key [%s] does not exist in the specified Secret [%s].', - ], - ], - 500 => [ - [ - 'errorCode' => 'OperationFailed.RPCError', - 'errorMessage' => 'Internal RPC request processing error.', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": [\\n {\\n \\"Cpu\\": 2000,\\n \\"Version\\": 0,\\n \\"Memory\\": 4096,\\n \\"SpecInfo\\": \\"General-purpose 4\\",\\n \\"Id\\": 4,\\n \\"Enable\\": true\\n }\\n ],\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeInstanceSpecificationsResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <Cpu>2000</Cpu>\\n <Version>0</Version>\\n <Memory>4096</Memory>\\n <SpecInfo>通用型4</SpecInfo>\\n <Id>4</Id>\\n <Enable>true</Enable>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeInstanceSpecificationsResponse>","errorExample":""}]', + 'title' => '获取应用实例规格信息', + 'summary' => '调用DescribeInstanceSpecifications接口获取应用实例规格信息。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:28.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2023-03-08T10:14:56.000Z', 'description' => '错误码发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeInstanceSpecifications', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"SecretId\\": 16\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<UpdateSecretResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <SecretId>16</SecretId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</UpdateSecretResponse>","errorExample":""}]', - 'title' => 'UpdateSecret', ], - 'DeleteSecret' => [ - 'summary' => '调用DeleteSecret接口删除Secret实例。', - 'path' => '/pop/v1/sam/secret/secret', - 'methods' => [ - 'delete', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'DescribeJob' => [ + 'path' => '/pop/v1/sam/job/describeJob', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'abilityTreeCode' => '159989', - 'abilityTreeNodes' => [ - 'FEATUREsaeD9PL61', - ], + 'operationType' => 'get', + 'abilityTreeCode' => '100736', + 'abilityTreeNodes' => ['FEATUREsaeN5OIM9'], ], 'parameters' => [ [ - 'name' => 'NamespaceId', + 'name' => 'AppId', 'in' => 'query', - 'schema' => [ - 'description' => 'Secret实例所在命名空间ID。默认同RegionId。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-beijing:test', - ], + 'schema' => ['description' => '任务模板ID。', 'type' => 'string', 'required' => true, 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****'], ], [ - 'name' => 'SecretId', + 'name' => 'JobId', 'in' => 'query', - 'schema' => [ - 'description' => '需要删除的Secret实例ID。需要调用[ListSecrets](~~466929~~)接口查看。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'maximum' => '1000000000', - 'minimum' => '1', - 'example' => '16', - ], + 'schema' => ['description' => '任务ID。', 'type' => 'string', 'required' => false, 'example' => 'event-b798157b-40a2-4388-b578-71fb897103**-**'], ], ], 'responses' => [ @@ -20315,191 +11379,339 @@ 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '01CF26C7-00A3-4AA6-BA76-7E95F2A3****'], + 'Message' => ['description' => '调用结果的附加信息。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => 'ac1a0b2215622246421415014e****'], 'Data' => [ - 'description' => '返回结果。', + 'description' => '任务模板信息。', 'type' => 'object', 'properties' => [ - 'SecretId' => [ - 'description' => '被删除的Secret实例ID。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '16', + 'VpcId' => ['description' => 'VPC ID。', 'type' => 'string', 'example' => 'vpc-2ze0i263cnn311nvj****'], + 'ConfigMapMountDesc' => [ + 'description' => 'ConfigMap信息。', + 'type' => 'array', + 'items' => [ + 'description' => 'ConfigMap信息。', + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => 'ConfigMap键值对。', 'type' => 'string', 'example' => 'k1'], + 'ConfigMapName' => ['description' => 'ConfigMap名称。', 'type' => 'string', 'example' => 'test'], + 'MountPath' => ['description' => '容器挂载路径。', 'type' => 'string', 'example' => '/tmp'], + 'ConfigMapId' => ['description' => 'ConfigMap ID。', 'type' => 'integer', 'format' => 'int64', 'example' => '1'], + ], + ], + ], + 'SecurityGroupId' => ['description' => '安全组ID。', 'type' => 'string', 'example' => 'sg-wz969ngg2e49q5i4****'], + 'Jdk' => ['description' => '部署包依赖的JDK版本。支持版本如下:'."\n" + ."\n" + .'- **Open JDK 8**'."\n" + .'- **Open JDK 7**'."\n" + .'- **Dragonwell 11**'."\n" + .'- **Dragonwell 8**'."\n" + .'- **openjdk-8u191-jdk-alpine3.9**'."\n" + .'- **openjdk-7u201-jdk-alpine3.9**'."\n" + ."\n" + .'当**Package Type**为**Image**时不支持。', 'type' => 'string', 'example' => 'Open JDK 8'], + 'ImageUrl' => ['description' => '镜像地址。当**Package Type**为**Image**时必填。', 'type' => 'string', 'example' => 'docker.io/library/nginx:1.14.2'], + 'SlsConfigs' => ['description' => '日志采集到SLS的配置。'."\n" + ."\n" + .'- 使用SAE自动创建的SLS资源:`[{"logDir":"","logType":"stdout"},{"logDir":"/tmp/a.log"}]`。'."\n" + .'- 使用自定义的SLS资源:`[{"projectName":"test-sls","logType":"stdout","logDir":"","logstoreName":"sae","logtailName":""},{"projectName":"test","logDir":"/tmp/a.log","logstoreName":"sae","logtailName":""}]`。'."\n" + ."\n" + .'参数说明如下:'."\n" + ."\n" + .'- **projectName**:配置SLS上的Project名称。 '."\n" + .'- **logDir**:日志路径。'."\n" + .'- **logType**:日志类型。**stdout**表示容器标准输出日志,仅可设置1条;如果不设置,则表示收集文件日志。'."\n" + .'- **logstoreName**:配置SLS上的Logstore名称。'."\n" + .'- **logtailName**:配置SLS上的Logtail名称,如果不指定,则表示新建Logtail。'."\n" + ."\n" + .'多次部署时如果SLS采集配置没有变更,则不需要设置该参数(即请求中无需包含**SlsConfigs**字段);如果不再需要使用SLS采集功能,您需要在请求中将该字段的值设置为空字符串(即请求中**SlsConfigs**字段的值为"")。', 'type' => 'string', 'example' => '[{"logDir":"","logType":"stdout"},{"logDir":"/tmp/a.log"}]'], + 'Tags' => [ + 'description' => '标签信息。', + 'type' => 'array', + 'items' => [ + 'description' => '标签信息。', + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => '标签键。', 'type' => 'string', 'example' => 'k1'], + 'Value' => ['description' => '标签值。', 'type' => 'string', 'example' => 'v1'], + ], + ], ], + 'PackageUrl' => ['description' => '部署包地址。当**Package Type**为**FatJar**或**War**时必填。', 'type' => 'string', 'example' => 'https://edas-bj.oss-cn-beijing.aliyuncs.com/apps/K8s_APP_ID/d4c97c37-aba3-403e-ae1e-6f7d8742****/hello-sae.war'], + 'PackageType' => ['description' => '任务包类型。取值说明如下:'."\n" + ."\n" + .'- 当您选择用Java部署时,支持**FatJar**、**War**和**Image**。'."\n" + .'- 当您选择用PHP部署时,支持类型如下:'."\n" + .' - **PhpZip**'."\n" + .' - **IMAGE\\_PHP\\_5\\_4**'."\n" + .' - **IMAGE\\_PHP\\_5\\_4\\_ALPINE**'."\n" + .' - **IMAGE\\_PHP\\_5\\_5**'."\n" + .' - **IMAGE\\_PHP\\_5\\_5\\_ALPINE**'."\n" + .' - **IMAGE\\_PHP\\_5\\_6**'."\n" + .' - **IMAGE\\_PHP\\_5\\_6\\_ALPINE**'."\n" + .' - **IMAGE\\_PHP\\_7\\_0**'."\n" + .' - **IMAGE\\_PHP\\_7\\_0\\_ALPINE**'."\n" + .' - **IMAGE\\_PHP\\_7\\_1**'."\n" + .' - **IMAGE\\_PHP\\_7\\_1\\_ALPINE**'."\n" + .' - **IMAGE\\_PHP\\_7\\_2**'."\n" + .' - **IMAGE\\_PHP\\_7\\_2\\_ALPINE**'."\n" + .' - **IMAGE\\_PHP\\_7\\_3**'."\n" + .' - **IMAGE\\_PHP\\_7\\_3\\_ALPINE**'."\n" + .'- 当您选择用Python部署时,支持**PythonZip**和**Image**。', 'type' => 'string', 'example' => 'War'], + 'PreStop' => ['description' => '容器停止前执行脚本。在容器被删除前触发执行一段脚本,格式如:`{"exec":{"command":\\["cat","/etc/group"\\]}}`', 'type' => 'string', 'example' => '{"exec":{"command":["cat","/etc/group"]}}'], + 'PackageVersion' => ['description' => '部署包的版本号。当**Package Type**为**FatJar**或**War**时必填。', 'type' => 'string', 'example' => '1.0'], + 'JarStartArgs' => ['description' => 'JAR包启动任务参数。任务默认启动命令:`$JAVA_HOME/bin/java $JarStartOptions -jar $CATALINA_OPTS "$package_path" $JarStartArgs`', 'type' => 'string', 'example' => 'start'], + 'AppName' => ['description' => '任务模板名称。', 'type' => 'string', 'example' => 'demo-app'], + 'AppId' => ['description' => '任务模板ID。', 'type' => 'string', 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****'], + 'JarStartOptions' => ['description' => 'JAR包启动任务选项。任务默认启动命令:`$JAVA_HOME/bin/java $JarStartOptions -jar $CATALINA_OPTS "$package_path" $JarStartArgs`', 'type' => 'string', 'example' => '-Dtest=true'], + 'Replicas' => ['description' => '任务实例个数。', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], + 'Memory' => ['description' => '每个实例所需的内存,单位为MB,不能为0。与CPU为一一对应关系,目前仅支持以下固定规格:'."\n" + .'- **1024**:对应CPU为500毫核和1000毫核。'."\n" + .'- **2048**:对应CPU为500、1000毫核和2000毫核。'."\n" + .'- **4096**:对应CPU为1000、2000毫核和4000毫核。'."\n" + .'- **8192**:对应CPU为2000、4000毫核和8000毫核。'."\n" + .'- **12288**:对应CPU为12000毫核。'."\n" + .'- **16384**:对应CPU为4000、8000毫核和16000毫核。'."\n" + .'- **24576**:对应CPU为12000毫核。'."\n" + .'- **32768**:对应CPU为16000毫核。'."\n" + .'- **65536**:对应CPU为8000、16000和32000毫核。'."\n" + .'- **131072**:对应CPU为32000毫核。', 'type' => 'integer', 'format' => 'int32', 'example' => '2048'], + 'PhpConfig' => ['description' => 'PHP配置文件内容。', 'type' => 'string', 'example' => 'k1=v1'], + 'PhpConfigLocation' => ['description' => 'PHP任务启动配置挂载路径,需要您保证PHP服务器会使用这个配置文件启动。', 'type' => 'string', 'example' => '/usr/local/etc/php/php.ini'], + 'PostStart' => ['description' => '容器启动后执行脚本。在容器被创建后立刻触发执行一段脚本,格式如:`{"exec":{"command":\\["cat","/etc/group"\\]}}`', 'type' => 'string', 'example' => '{"exec":{"command":["cat","/etc/group"]}}'], + 'TerminationGracePeriodSeconds' => ['description' => '优雅下线超时时间,默认为30,单位为秒。取值范围为1~300。', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], + 'CommandArgs' => ['description' => '镜像启动命令参数。启动命令**Command**所需参数。格式如下:'."\n" + ."\n" + .'`["a","b"]`'."\n" + ."\n" + .'在**Command**参数的示例中,`CommandArgs=["abc", ">", "file0"]`,其中`["abc", ">", "file0"]`需要转成String类型,里面的格式为JSON数组。如果无此参数,则无需填写。', 'type' => 'string', 'example' => '["a","b"]'], + 'NamespaceId' => ['description' => '命名空间ID。', 'type' => 'string', 'example' => 'cn-beijing:test'], + 'MountHost' => ['description' => 'NAS在任务模板VPC内的挂载点。部署时如果配置没有变更,则不需要设置该参数(即请求中无需包含**MountHost**字段);如果需要清除NAS配置,您需要在请求中将该字段的值设置为空字符串(即请求中**MountHost**字段的值为"")。', 'type' => 'string', 'example' => 'example.com'], + 'TomcatConfig' => ['description' => 'Tomcat文件配置,设置为""或"{}"表示删除配置:'."\n" + ."\n" + .'- **port**:端口范围为1024~65535,小于1024的端口需要Root权限才能操作。因为容器配置的是Admin权限,所以请填写大于1024的端口。如果不配置,则默认为8080。'."\n" + .'- **contextPath**:访问路径,默认为根目录"/"。'."\n" + .'- **maxThreads**:配置连接池的连接数大小,默认大小为400。'."\n" + .'- **uriEncoding**:Tomcat的编码格式,包括**UTF-8**、**ISO-8859-1**、**GBK**和**GB2312**。如果不设置,则默认为**ISO-8859-1**。'."\n" + .'- **useBodyEncoding**:是否使用**BodyEncoding for URL**,默认为**true**。', 'type' => 'string', 'example' => '{"port":8080,"contextPath":"/","maxThreads":400,"uriEncoding":"ISO-8859-1","useBodyEncodingForUri":true}'], + 'RegionId' => ['description' => '地域ID。', 'type' => 'string', 'example' => 'cn-beijing'], + 'VSwitchId' => ['description' => 'vSwitch ID。', 'type' => 'string', 'example' => 'vsw-2ze559r1z1bpwqxwp****'], + 'Cpu' => ['description' => '每个实例所需的CPU,单位为毫核,不能为0。目前仅支持以下固定规格:'."\n" + ."\n" + .'- **500**'."\n" + .'- **1000**'."\n" + .'- **2000**'."\n" + .'- **4000**'."\n" + .'- **8000**'."\n" + .'- **16000**'."\n" + .'- **32000**', 'type' => 'integer', 'format' => 'int32', 'example' => '1000'], + 'Envs' => ['description' => '容器环境变量参数。支持自定义或引用配置项。如需引用配置项,请先创建ConfigMap实例。更多信息,请参见[CreateConfigMap](~~176914~~)。取值说明如下:'."\n" + .'- 自定义配置'."\n" + .' - **name**:环境变量名称。'."\n" + .' - **value**:环境变量值。'."\n" + .'- 引用配置项'."\n" + .' - **name**:环境变量名称。支持引用单个或全部键,如果引用全部键,需输入`sae-sys-configmap-all-<配置项名称>`,例如`sae-sys-configmap-all-test1`。'."\n" + .' - **valueFrom**:环境变量引用。取值为`configMapRef`。'."\n" + .' - **configMapId**:配置项ID。'."\n" + .' - **key**:键。如果引用全部健值,则不设置该字段。', 'type' => 'string', 'example' => '[{"name":"TEST_ENV_KEY","value":"TEST_ENV_VAR"}]'], + 'MountDesc' => [ + 'description' => '挂载描述信息。', + 'type' => 'array', + 'items' => [ + 'description' => '挂载描述信息。', + 'type' => 'object', + 'properties' => [ + 'MountPath' => ['description' => '容器挂载路径。', 'type' => 'string', 'example' => '/tmp'], + 'NasPath' => ['description' => 'NAS相对文件目录。', 'type' => 'string', 'example' => '/'], + ], + ], + ], + 'CustomHostAlias' => ['description' => '容器内自定义Host映射。取值说明如下:'."\n" + ."\n" + .'- **hostName**:域名或主机名。'."\n" + .'- **ip**:IP地址。', 'type' => 'string', 'example' => '[{"hostName":"test.host.name","ip":"0.0.0.0"}]'], + 'WebContainer' => ['description' => '部署包依赖的Tomcat版本。支持版本如下:'."\n" + ."\n" + .'- **apache-tomcat-7.0.91**'."\n" + .'- **apache-tomcat-8.5.42**'."\n" + ."\n" + .'当**Package Type**为**Image**时不支持。', 'type' => 'string', 'example' => 'apache-tomcat-7.0.91'], + 'Command' => ['description' => '镜像启动命令。该命令必须为容器内存在的可执行的对象。示例如下:'."\n" + ."\n" + .'```'."\n" + .'command:'."\n" + .' - echo'."\n" + .' - abc'."\n" + .' - >'."\n" + .' - file0'."\n" + .'```'."\n" + .'根据上述示例,则`Command="echo", CommandArgs=["abc", ">", "file0"]`。', 'type' => 'string', 'example' => 'echo'], + 'WarStartOptions' => ['description' => 'WAR包启动任务选项。任务默认启动命令:`java $JAVA_OPTS $CATALINA_OPTS -Options org.apache.catalina.startup.Bootstrap "$@" start`。', 'type' => 'string', 'example' => 'custom-option'], + 'NasId' => ['description' => 'NAS ID。', 'type' => 'string', 'example' => 'AKSN89**'], + 'OssAkId' => ['title' => 'OSS读写的AK', 'description' => 'OSS读写的AccessKey ID。', 'type' => 'string', 'example' => 'xxxxxx'], + 'OssAkSecret' => ['title' => 'OSS读写的secret', 'description' => 'OSS读写的AccessKey Secret。', 'type' => 'string', 'example' => 'xxxxxx'], + 'OssMountDescs' => [ + 'title' => 'OSS挂载描述信息', + 'description' => 'OSS挂载描述信息。', + 'type' => 'array', + 'items' => [ + 'description' => 'OSS挂载描述信息。', + 'type' => 'object', + 'properties' => [ + 'bucketName' => ['title' => 'Bucket名称', 'description' => 'Bucket名称。', 'type' => 'string', 'example' => 'oss-bucket'], + 'bucketPath' => ['title' => 'Bucket中Oss Key名称', 'description' => '您在OSS创建的目录或OSS对象,如果OSS挂载目录不存在,会触发异常。', 'type' => 'string', 'example' => 'data/user.data'], + 'mountPath' => ['title' => '挂载到容器的路径', 'description' => '您在SAE的容器路径。如果路径已存在,为覆盖关系;如果路径不存在,会新建。', 'type' => 'string', 'example' => '/usr/data/user.data'], + 'readOnly' => ['title' => '是否只读', 'description' => '容器路径是否对挂载目录资源有可读权限,取值说明如下:'."\n" + ."\n" + .'- **true**:只读权限。'."\n" + .'- **false**:读写权限。', 'type' => 'boolean', 'example' => 'true'], + ], + ], + ], + 'EdasContainerVersion' => ['description' => 'HSF框架中任务运行环境版本,例如Ali-Tomcat容器。', 'type' => 'string', 'example' => '3.5.3'], + 'Timezone' => ['description' => '时区,默认为**Asia/Shanghai**。', 'type' => 'string', 'example' => 'Asia/Shanghai'], + 'AppDescription' => ['description' => '任务模板描述信息。', 'type' => 'string', 'example' => 'Sample application'], + 'AcrInstanceId' => ['title' => 'ACR 企业版实例 ID', 'description' => 'ACR企业版实例ID。', 'type' => 'string', 'example' => 'cri-xxxxxx'], + 'AcrAssumeRoleArn' => ['description' => '跨账号拉取镜像时所需的RAM角色的ARN。更多信息,请参见[跨账号拉取阿里云镜像](~~190675~~)和[通过RAM角色实现跨云账号授权](~~223585~~)。', 'type' => 'string', 'example' => 'acs:ram::123456789012****:role/adminrole'], + 'ImagePullSecrets' => ['description' => '对应保密字典ID。', 'type' => 'string', 'example' => '10'], + 'TriggerConfig' => ['description' => '任务触发配置,根据任务类型进行配置。'."\n" + .'- **定时任务**:**type**字段设为time,**config**字段为具体Cron表达式,**timezone**字段为指定时区。'."\n" + .'配置示例:`{"type":"time","config":"0 1 */1 * ?","timezone":"GMT+8:00"}`'."\n" + .'- **一次性任务**:**type**字段设为http,**config**配置具体的HTTP触发规则。更多信息,请参见[请求参数SourceHttpEventParameters](https://help.aliyun.com/document_detail/347586.html#section-lp1-vq0-ho3)。'."\n" + .'配置示例:`{"type":"http","config":{"type":"HTTPS","method"、["GET"],"ip":[],"referer":[],"securityConfig":"none"}}`', 'type' => 'string', 'example' => '{"type":"time","config":"0 1 */1 * ?","timezone":"GMT+8:00"}'], + 'ConcurrencyPolicy' => ['description' => '任务并发策略。取值说明如下:'."\n" + ."\n" + .'- **Forbid**:禁止并发运行,在前一个任务未完成时,不创建新任务。'."\n" + .'- **Allow**:允许并发运行任务。'."\n" + .'- **Replace**:当到达新任务创建时间点,而前一个任务未完成时,新的任务会取代前一个任务。', 'type' => 'string', 'example' => 'Allow'], + 'Suspend' => ['description' => '是否暂停任务模板。', 'type' => 'boolean', 'example' => 'false'], + 'Timeout' => ['description' => '任务超时时间,单位为秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '3600'], + 'BackoffLimit' => ['description' => '任务重试次数。', 'type' => 'integer', 'format' => 'int64', 'example' => '3'], + 'Slice' => ['description' => '启用任务分片。', 'type' => 'boolean', 'example' => 'true'], + 'SliceEnvs' => ['description' => '任务分片参数。', 'type' => 'string', 'example' => 'SliceEnvs'], + 'RefAppId' => ['description' => '引用的任务模板ID。', 'type' => 'string', 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****'], + 'RefedAppIds' => [ + 'description' => '被引用的任务目标ID列表。', + 'type' => 'array', + 'items' => ['description' => '任务模板ID。', 'type' => 'string', 'example' => '8621a6ca-d1cd-4928-8642-7d5cfe69****'], + ], + 'PublicWebHookUrls' => [ + 'description' => '一次性任务的公网请求 URL列表。', + 'type' => 'array', + 'items' => ['description' => '公网URL。', 'type' => 'string', 'example' => 'http://***/webhook/putEvents?token=***'], + ], + 'VpcWebHookUrls' => [ + 'description' => '一次性任务的内网请求 URL列表。', + 'type' => 'array', + 'items' => ['description' => '内网URL。', 'type' => 'string', 'example' => 'http://***/webhook/putEvents?token=***'], + ], + 'ProgrammingLanguage' => ['description' => '创建任务模板的技术栈语言。取值说明如下:'."\n" + ."\n" + .'- **java**:Java语言。'."\n" + .'- **php**:PHP语言。'."\n" + .'- **python**:Python语言。'."\n" + .'- **other**:多语言,例如C++、Go、.NET和Node.js等。', 'type' => 'string', 'example' => 'java'], + 'NasConfigs' => ['description' => '挂载NAS的配置。', 'type' => 'string', 'example' => '[{"mountPath":"/test1","readOnly":false,"nasId":"nasId1","mountDomain":"nasId1.cn-shenzhen.nas.aliyuncs.com","nasPath":"/test1"},{"nasId":"nasId2","mountDomain":"nasId2.cn-shenzhen.nas.aliyuncs.com","readOnly":false,"nasPath":"/test2","mountPath":"/test2"}]'], + 'Python' => ['description' => 'Python环境。支持PYTHON 3.9.15。', 'type' => 'string', 'example' => 'PYTHON 3.9.15'], + 'PythonModules' => ['description' => '自定义安装模块依赖。默认安装根目录下requirements.txt定义的依赖项。如果未配置或自定义软件包,可以指定安装的依赖。', 'type' => 'string', 'example' => 'Flask==2.0'], + 'BestEffortType' => ['description' => 'BestEffort策略。', 'type' => 'string'], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '删除Secret实例是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:删除实例成功。'."\n" - .'- **false**:删除实例失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '获取任务模板配置信息是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:获取成功。'."\n" + .'- **false**:获取失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], - [ - 'errorCode' => 'InvalidSecretId.NotFound', - 'errorMessage' => 'The specified SecretId [%s] does not exist in our records.', - ], - [ - 'errorCode' => 'DependencyViolation.Job', - 'errorMessage' => 'The specified resource of secret is dependent on job [%s], so the operation cannot be completed.', - ], - [ - 'errorCode' => 'DependencyViolation.Application', - 'errorMessage' => 'The specified resource of secret is dependent on application [%s], so the operation cannot be completed.', - ], - ], 404 => [ - [ - 'errorCode' => 'InvalidNamespaceId.NotFound', - 'errorMessage' => 'The specified NamespaceId does not exist.', - ], + ['errorCode' => 'InvalidAppId.NotFound', 'errorMessage' => 'The specified AppId does not exist.', 'description' => '指定的AppId不存在。'], ], - 500 => [ - [ - 'errorCode' => 'OperationFailed.RPCError', - 'errorMessage' => 'Internal RPC request processing error.', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"01CF26C7-00A3-4AA6-BA76-7E95F2A3****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"ac1a0b2215622246421415014e****\\",\\n \\"Data\\": {\\n \\"VpcId\\": \\"vpc-2ze0i263cnn311nvj****\\",\\n \\"ConfigMapMountDesc\\": [\\n {\\n \\"Key\\": \\"k1\\",\\n \\"ConfigMapName\\": \\"test\\",\\n \\"MountPath\\": \\"/tmp\\",\\n \\"ConfigMapId\\": 1\\n }\\n ],\\n \\"SecurityGroupId\\": \\"sg-wz969ngg2e49q5i4****\\",\\n \\"Jdk\\": \\"Open JDK 8\\",\\n \\"ImageUrl\\": \\"docker.io/library/nginx:1.14.2\\",\\n \\"SlsConfigs\\": \\"[{\\\\\\"logDir\\\\\\":\\\\\\"\\\\\\",\\\\\\"logType\\\\\\":\\\\\\"stdout\\\\\\"},{\\\\\\"logDir\\\\\\":\\\\\\"/tmp/a.log\\\\\\"}]\\",\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"k1\\",\\n \\"Value\\": \\"v1\\"\\n }\\n ],\\n \\"PackageUrl\\": \\"https://edas-bj.oss-cn-beijing.aliyuncs.com/apps/K8s_APP_ID/d4c97c37-aba3-403e-ae1e-6f7d8742****/hello-sae.war\\",\\n \\"PackageType\\": \\"War\\",\\n \\"PreStop\\": \\"{\\\\\\"exec\\\\\\":{\\\\\\"command\\\\\\":[\\\\\\"cat\\\\\\",\\\\\\"/etc/group\\\\\\"]}}\\",\\n \\"PackageVersion\\": \\"1.0\\",\\n \\"JarStartArgs\\": \\"start\\",\\n \\"AppName\\": \\"demo-app\\",\\n \\"AppId\\": \\"7171a6ca-d1cd-4928-8642-7d5cfe69****\\",\\n \\"JarStartOptions\\": \\"-Dtest=true\\",\\n \\"Replicas\\": 2,\\n \\"Memory\\": 2048,\\n \\"PhpConfig\\": \\"k1=v1\\",\\n \\"PhpConfigLocation\\": \\"/usr/local/etc/php/php.ini\\",\\n \\"PostStart\\": \\"{\\\\\\"exec\\\\\\":{\\\\\\"command\\\\\\":[\\\\\\"cat\\\\\\",\\\\\\"/etc/group\\\\\\"]}}\\",\\n \\"TerminationGracePeriodSeconds\\": 10,\\n \\"CommandArgs\\": \\"[\\\\\\"a\\\\\\",\\\\\\"b\\\\\\"]\\",\\n \\"NamespaceId\\": \\"cn-beijing:test\\",\\n \\"MountHost\\": \\"example.com\\",\\n \\"TomcatConfig\\": \\"{\\\\\\"port\\\\\\":8080,\\\\\\"contextPath\\\\\\":\\\\\\"/\\\\\\",\\\\\\"maxThreads\\\\\\":400,\\\\\\"uriEncoding\\\\\\":\\\\\\"ISO-8859-1\\\\\\",\\\\\\"useBodyEncodingForUri\\\\\\":true}\\",\\n \\"RegionId\\": \\"cn-beijing\\",\\n \\"VSwitchId\\": \\"vsw-2ze559r1z1bpwqxwp****\\",\\n \\"Cpu\\": 1000,\\n \\"Envs\\": \\"[{\\\\\\"name\\\\\\":\\\\\\"TEST_ENV_KEY\\\\\\",\\\\\\"value\\\\\\":\\\\\\"TEST_ENV_VAR\\\\\\"}]\\",\\n \\"MountDesc\\": [\\n {\\n \\"MountPath\\": \\"/tmp\\",\\n \\"NasPath\\": \\"/\\"\\n }\\n ],\\n \\"CustomHostAlias\\": \\"[{\\\\\\"hostName\\\\\\":\\\\\\"test.host.name\\\\\\",\\\\\\"ip\\\\\\":\\\\\\"0.0.0.0\\\\\\"}]\\",\\n \\"WebContainer\\": \\"apache-tomcat-7.0.91\\",\\n \\"Command\\": \\"echo\\",\\n \\"WarStartOptions\\": \\"custom-option\\",\\n \\"NasId\\": \\"AKSN89**\\",\\n \\"OssAkId\\": \\"xxxxxx\\",\\n \\"OssAkSecret\\": \\"xxxxxx\\",\\n \\"OssMountDescs\\": [\\n {\\n \\"bucketName\\": \\"oss-bucket\\",\\n \\"bucketPath\\": \\"data/user.data\\",\\n \\"mountPath\\": \\"/usr/data/user.data\\",\\n \\"readOnly\\": true\\n }\\n ],\\n \\"EdasContainerVersion\\": \\"3.5.3\\",\\n \\"Timezone\\": \\"Asia/Shanghai\\",\\n \\"AppDescription\\": \\"Sample application\\",\\n \\"AcrInstanceId\\": \\"cri-xxxxxx\\",\\n \\"AcrAssumeRoleArn\\": \\"acs:ram::123456789012****:role/adminrole\\",\\n \\"ImagePullSecrets\\": \\"10\\",\\n \\"TriggerConfig\\": \\"{\\\\\\"type\\\\\\":\\\\\\"time\\\\\\",\\\\\\"config\\\\\\":\\\\\\"0 1 */1 * ?\\\\\\",\\\\\\"timezone\\\\\\":\\\\\\"GMT+8:00\\\\\\"}\\",\\n \\"ConcurrencyPolicy\\": \\"Allow\\",\\n \\"Suspend\\": false,\\n \\"Timeout\\": 3600,\\n \\"BackoffLimit\\": 3,\\n \\"Slice\\": true,\\n \\"SliceEnvs\\": \\"SliceEnvs\\",\\n \\"RefAppId\\": \\"7171a6ca-d1cd-4928-8642-7d5cfe69****\\",\\n \\"RefedAppIds\\": [\\n \\"8621a6ca-d1cd-4928-8642-7d5cfe69****\\"\\n ],\\n \\"PublicWebHookUrls\\": [\\n \\"http://***/webhook/putEvents?token=***\\"\\n ],\\n \\"VpcWebHookUrls\\": [\\n \\"http://***/webhook/putEvents?token=***\\"\\n ],\\n \\"ProgrammingLanguage\\": \\"java\\",\\n \\"NasConfigs\\": \\"[{\\\\\\"mountPath\\\\\\":\\\\\\"/test1\\\\\\",\\\\\\"readOnly\\\\\\":false,\\\\\\"nasId\\\\\\":\\\\\\"nasId1\\\\\\",\\\\\\"mountDomain\\\\\\":\\\\\\"nasId1.cn-shenzhen.nas.aliyuncs.com\\\\\\",\\\\\\"nasPath\\\\\\":\\\\\\"/test1\\\\\\"},{\\\\\\"nasId\\\\\\":\\\\\\"nasId2\\\\\\",\\\\\\"mountDomain\\\\\\":\\\\\\"nasId2.cn-shenzhen.nas.aliyuncs.com\\\\\\",\\\\\\"readOnly\\\\\\":false,\\\\\\"nasPath\\\\\\":\\\\\\"/test2\\\\\\",\\\\\\"mountPath\\\\\\":\\\\\\"/test2\\\\\\"}]\\",\\n \\"Python\\": \\"PYTHON 3.9.15\\",\\n \\"PythonModules\\": \\"Flask==2.0\\",\\n \\"BestEffortType\\": \\"\\"\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeJobResponse>\\n <RequestId>01CF26C7-00A3-4AA6-BA76-7E95F2A3****</RequestId>\\n <Message>success</Message>\\n <TraceId>ac1a0b2215622246421415014e****</TraceId>\\n <Data>\\n <VpcId>vpc-2ze0i263cnn311nvj****</VpcId>\\n <Readiness>{\\"exec\\":{\\"command\\":[\\"curl http://localhost:8080\\"]},\\"initialDelaySeconds\\":20,\\"timeoutSeconds\\":5}</Readiness>\\n <ConfigMapMountDesc>\\n <Key>k1</Key>\\n <ConfigMapName>test</ConfigMapName>\\n <MountPath>/tmp</MountPath>\\n <ConfigMapId>1</ConfigMapId>\\n </ConfigMapMountDesc>\\n <SecurityGroupId>sg-wz969ngg2e49q5i4****</SecurityGroupId>\\n <BatchWaitTime>10</BatchWaitTime>\\n <Jdk>Open JDK 8</Jdk>\\n <ImageUrl>docker.io/library/nginx:1.14.2</ImageUrl>\\n <SlsConfigs>[{\\"logDir\\":\\"\\",\\"logType\\":\\"stdout\\"},{\\"logDir\\":\\"/tmp/a.log\\"}]</SlsConfigs>\\n <Liveness>{\\"exec\\":{\\"command\\":[\\"curl http://localhost:8080\\"]},\\"initialDelaySeconds\\":20,\\"timeoutSeconds\\":3}</Liveness>\\n <Tags>\\n <Key>k1</Key>\\n <Value>v1</Value>\\n </Tags>\\n <PackageUrl>https://edas-bj.oss-cn-beijing.aliyuncs.com/apps/K8s_APP_ID/d4c97c37-aba3-403e-ae1e-6f7d8742****/hello-sae.war</PackageUrl>\\n <PackageType>War</PackageType>\\n <PreStop>{\\"exec\\":{\\"command\\":[\\"cat\\",\\"/etc/group\\"]}}</PreStop>\\n <PackageVersion>1.0</PackageVersion>\\n <JarStartArgs>start</JarStartArgs>\\n <AppName>demo-app</AppName>\\n <AppId>7171a6ca-d1cd-4928-8642-7d5cfe69****</AppId>\\n <JarStartOptions>-Dtest=true</JarStartOptions>\\n <Replicas>2</Replicas>\\n <MinReadyInstances>1</MinReadyInstances>\\n <Memory>2048</Memory>\\n <PhpConfig>k1=v1</PhpConfig>\\n <PhpConfigLocation>/usr/local/etc/php/php.ini</PhpConfigLocation>\\n <PostStart>{\\"exec\\":{\\"command\\":[\\"cat\\",\\"/etc/group\\"]}}</PostStart>\\n <TerminationGracePeriodSeconds>10</TerminationGracePeriodSeconds>\\n <CommandArgs>[\\"a\\",\\"b\\"]</CommandArgs>\\n <NamespaceId>cn-beijing:test</NamespaceId>\\n <MountHost>example.com</MountHost>\\n <TomcatConfig>{\\"port\\":8080,\\"contextPath\\":\\"/\\",\\"maxThreads\\":400,\\"uriEncoding\\":\\"ISO-8859-1\\",\\"useBodyEncodingForUri\\":true}</TomcatConfig>\\n <RegionId>cn-beijing</RegionId>\\n <VSwitchId>vsw-2ze559r1z1bpwqxwp****</VSwitchId>\\n <Cpu>1000</Cpu>\\n <Envs>[{\\"name\\":\\"TEST_ENV_KEY\\",\\"value\\":\\"TEST_ENV_VAR\\"}]</Envs>\\n <MountDesc>\\n <MountPath>/tmp</MountPath>\\n <NasPath>/</NasPath>\\n </MountDesc>\\n <EnableAhas>true</EnableAhas>\\n <CustomHostAlias>[{\\"hostName\\":\\"test.host.name\\",\\"ip\\":\\"0.0.0.0\\"}]</CustomHostAlias>\\n <WebContainer>apache-tomcat-7.0.91</WebContainer>\\n <Command>echo</Command>\\n <WarStartOptions>custom-option</WarStartOptions>\\n <PhpArmsConfigLocation>/usr/local/etc/php/conf.d/arms.ini</PhpArmsConfigLocation>\\n <NasId>AKSN89**</NasId>\\n <OssAkId>xxxxxx</OssAkId>\\n <OssAkSecret>xxxxxx</OssAkSecret>\\n <OssMountDescs>\\n <bucketName>oss-bucket</bucketName>\\n <bucketPath>data/user.data</bucketPath>\\n <mountPath>/usr/data/user.data</mountPath>\\n <readOnly>true</readOnly>\\n </OssMountDescs>\\n <EdasContainerVersion>3.5.3</EdasContainerVersion>\\n <Timezone>Asia/Shanghai</Timezone>\\n <AppDescription>示例应用</AppDescription>\\n <EnableGreyTagRoute>false</EnableGreyTagRoute>\\n <MseApplicationId>xxxxxxx@xxxxx</MseApplicationId>\\n <AcrInstanceId>cri-xxxxxx</AcrInstanceId>\\n <AcrAssumeRoleArn>acs:ram::123456789012****:role/adminrole</AcrAssumeRoleArn>\\n <AssociateEip>true</AssociateEip>\\n <TriggerConfig>{\\"type\\":\\"time\\",\\"config\\":\\"0 1 */1 * ?\\",\\"timezone\\":\\"GMT+8:00\\"}</TriggerConfig>\\n <ConcurrencyPolicy>Allow</ConcurrencyPolicy>\\n <Suspend>false</Suspend>\\n <Timeout>3600</Timeout>\\n <BackoffLimit>3</BackoffLimit>\\n <Slice>true</Slice>\\n <SliceEnvs>SliceEnvs</SliceEnvs>\\n <RefAppId>7171a6ca-d1cd-4928-8642-7d5cfe69****</RefAppId>\\n <RefedAppIds>8621a6ca-d1cd-4928-8642-7d5cfe69****</RefedAppIds>\\n <PublicWebHookUrls>http://***/webhook/putEvents?token=***</PublicWebHookUrls>\\n <VpcWebHookUrls>http://***/webhook/putEvents?token=***</VpcWebHookUrls>\\n <ProgrammingLanguage>java</ProgrammingLanguage>\\n <NasConfigs>[{\\"mountPath\\":\\"/test1\\",\\"readOnly\\":false,\\"nasId\\":\\"nasId1\\",\\"mountDomain\\":\\"nasId1.cn-shenzhen.nas.aliyuncs.com\\",\\"nasPath\\":\\"/test1\\"},{\\"nasId\\":\\"nasId2\\",\\"mountDomain\\":\\"nasId2.cn-shenzhen.nas.aliyuncs.com\\",\\"readOnly\\":false,\\"nasPath\\":\\"/test2\\",\\"mountPath\\":\\"/test2\\"}]</NasConfigs>\\n <Python>PYTHON 3.9.15</Python>\\n <PythonModules>Flask==2.0</PythonModules>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeJobResponse>","errorExample":""}]', + 'title' => '获取任务模板配置信息', + 'summary' => '调用DescribeJob接口获取任务模板配置信息。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [ + ['createdAt' => '2026-05-14T07:12:23.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-12-25T03:03:28.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-09-08T05:48:07.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2022-11-22T13:03:50.000Z', 'description' => '响应参数发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '350', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeJob'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeJob', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"SecretId\\": 16\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeleteSecretResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <SecretId>16</SecretId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DeleteSecretResponse>","errorExample":""}]', - 'title' => 'DeleteSecret', ], - 'ListTagResources' => [ - 'path' => '/tags', - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'DescribeJobHistory' => [ + 'path' => '/pop/v1/sam/job/describeJobHistory', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '6379', - 'abilityTreeNodes' => [ - 'FEATUREsaeD9PL61', - ], + 'abilityTreeCode' => '124658', + 'abilityTreeNodes' => ['FEATUREsaeD9PL61'], ], 'parameters' => [ [ - 'name' => 'RegionId', + 'name' => 'AppId', 'in' => 'query', - 'schema' => [ - 'description' => '地域ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-beijing', - ], + 'schema' => ['description' => '任务模板ID。', 'type' => 'string', 'required' => true, 'example' => 'e1a7a07-abcb-4652-a1d3-2d57f415****'], ], [ - 'name' => 'ResourceType', + 'name' => 'CurrentPage', 'in' => 'query', - 'schema' => [ - 'description' => '资源类型,仅支持`application`。', - 'type' => 'string', - 'required' => true, - 'example' => 'application', - ], + 'schema' => ['description' => '当前页码。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1'], ], [ - 'name' => 'NextToken', - 'in' => 'query', - 'schema' => [ - 'description' => '一次查询最多返回50条结果,当结果超过50条时,会同时返回一个NextToken,下一次查询使用该NextToken即可查询前50条结果之外的结果。', - 'type' => 'string', - 'required' => false, - 'example' => 'A2RN', - ], - ], - [ - 'name' => 'ResourceIds', + 'name' => 'PageSize', 'in' => 'query', - 'schema' => [ - 'description' => '资源ID。可填写多个资源ID,用英文逗号(,)分隔。当您未输入**Tags**参数时必填。', - 'type' => 'string', - 'required' => false, - 'example' => '["d42921c4-5433-4abd-8075-0e536f8b****"]', - ], + 'schema' => ['description' => '分页查询时设置的每页数量。取值范围\\[0,10000\\]。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '20'], ], [ - 'name' => 'Tags', + 'name' => 'State', 'in' => 'query', - 'schema' => [ - 'description' => '标签键值对,当您未输入**ResourceIds**参数时必填。取值说明如下:'."\n" - .'- **key**:标签键,字符长度范围\\[1,128]。'."\n" - .'- **value**:标签值,字符长度范围\\[1,128]。'."\n" - ."\n" - .'区分大小写。如果指定多个标签,则会为指定资源同时创建并绑定多个标签。同一个资源上的同一个标签键只能对应一个标签值。如果您尝试添加已有标签键,则对应的标签值会更新为新值。'."\n" - ."\n" - .'不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。', - 'type' => 'string', - 'required' => false, - 'example' => '[{"key":"k1","value":"v1"}]', - ], + 'schema' => ['description' => '任务的运行状态。取值说明如下:'."\n" + .'- **0**:未执行。'."\n" + .'- **1**:执行成功。'."\n" + .'- **2**:执行失败。'."\n" + .'- **3**:正在执行。', 'type' => 'string', 'required' => false, 'example' => '1'], ], ], 'responses' => [ @@ -20508,202 +11720,116 @@ 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '7414187F-4F59-4585-9BCF-5F0804E4****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,可用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0bc5f84e15916043198032146d****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '53F15A18-8079-5992-810C-0211A5AE****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0b1639af16575057857241351e****'], 'Data' => [ 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'NextToken' => [ - 'description' => '一次查询最多返回50条结果,当结果超过50条时,会同时返回一个NextToken,下一次查询使用该NextToken即可查询前50条结果之外的结果。', - 'type' => 'string', - 'example' => '""', - ], - 'TagResources' => [ - 'description' => '应用和标签的对应关系。', + 'CurrentPage' => ['description' => '当前页码。', 'type' => 'integer', 'format' => 'int64', 'example' => '1'], + 'TotalSize' => ['description' => '任务总数。', 'type' => 'integer', 'format' => 'int64', 'example' => '20'], + 'PageSize' => ['description' => '分页查询时设置的每页数量。取值范围\\[0,10000\\]。', 'type' => 'integer', 'format' => 'int64', 'example' => '20'], + 'Jobs' => [ + 'description' => '任务列表。', 'type' => 'array', 'items' => [ - 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'ResourceType' => [ - 'description' => '资源类型,仅支持`application`。', - 'type' => 'string', - 'example' => 'ALIYUN::SAE::APPLICATION', - ], - 'TagValue' => [ - 'description' => '标签值。', - 'type' => 'string', - 'example' => 'v1', - ], - 'ResourceId' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'example' => 'd42921c4-5433-4abd-8075-0e536f8b****', - ], - 'TagKey' => [ - 'description' => '标签键。', - 'type' => 'string', - 'example' => 'k1', - ], + 'JobId' => ['description' => '任务ID。', 'type' => 'string', 'example' => 'manual-3db7a8fa-5d40-4edc-92e4-49d50eab****'], + 'Active' => ['description' => '正在运行的实例数。', 'type' => 'integer', 'format' => 'int64', 'example' => '0'], + 'Succeeded' => ['description' => '运行成功的实例数。', 'type' => 'integer', 'format' => 'int64', 'example' => '3'], + 'Failed' => ['description' => '运行失败的实例数。', 'type' => 'integer', 'format' => 'int64', 'example' => '0'], + 'StartTime' => ['description' => '任务的创建时间。', 'type' => 'integer', 'format' => 'int64', 'example' => '1657522800'], + 'CompletionTime' => ['description' => '任务执行的完成时间。', 'type' => 'integer', 'format' => 'int64', 'example' => '1657522839'], + 'Message' => ['description' => '任务执行异常时的附加信息。', 'type' => 'string'], + 'State' => ['description' => '任务的运行状态。取值说明如下:'."\n" + .'- **0**:未执行。'."\n" + .'- **1**:执行成功。'."\n" + .'- **2**:执行失败。'."\n" + .'- **3**:正在执行。', 'type' => 'string', 'example' => '1'], ], + 'description' => '', ], ], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '查询应用和标签的对应关系是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:查询成功。'."\n" - .'- **false**:查询失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**目录。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '查询任务状态是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:查询成功。'."\n" + .'- **false**:查询失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidResourceType.NotFound', - 'errorMessage' => 'The specified resource type is not supported.', - ], - [ - 'errorCode' => 'NumberExceed.Tags', - 'errorMessage' => 'The specified parameter Tags count exceed.', - ], - [ - 'errorCode' => 'Invalid.Param.Tag.Scope', - 'errorMessage' => 'The specified parameter is invalid: tag scope.', - ], - [ - 'errorCode' => 'No.Permission', - 'errorMessage' => 'The account has no permission.', - ], - [ - 'errorCode' => 'NumberExceed.ResourceIds', - 'errorMessage' => 'The number of resource IDs cannot exceed 50.', - ], + 404 => [ + ['errorCode' => 'InvalidAppId.NotFound', 'errorMessage' => 'The specified AppId does not exist.', 'description' => '指定的AppId不存在。'], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"7414187F-4F59-4585-9BCF-5F0804E4****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0bc5f84e15916043198032146d****\\",\\n \\"Data\\": {\\n \\"NextToken\\": \\"\\\\\\"\\\\\\"\\",\\n \\"TagResources\\": [\\n {\\n \\"ResourceType\\": \\"ALIYUN::SAE::APPLICATION\\",\\n \\"TagValue\\": \\"v1\\",\\n \\"ResourceId\\": \\"d42921c4-5433-4abd-8075-0e536f8b****\\",\\n \\"TagKey\\": \\"k1\\"\\n }\\n ]\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<ListTagResourcesResponse>\\n <RequestId>7414187F-4F59-4585-9BCF-5F0804E4****</RequestId>\\n <Message>success</Message>\\n <TraceId>0bc5f84e15916043198032146d****</TraceId>\\n <Data>\\n <NextToken>\\"\\"</NextToken>\\n <TagResources>\\n <ResourceType>ALIYUN::SAE::APPLICATION</ResourceType>\\n <TagValue>v1</TagValue>\\n <ResourceId>d42921c4-5433-4abd-8075-0e536f8b****</ResourceId>\\n <TagKey>k1</TagKey>\\n </TagResources>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</ListTagResourcesResponse>","errorExample":""}]', - 'title' => '查询应用和标签的对应关系', - 'summary' => '调用ListTagResources接口查询应用和标签的对应关系。', - ], - 'UntagResources' => [ - 'path' => '/tags', - 'methods' => [ - 'delete', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"53F15A18-8079-5992-810C-0211A5AE****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0b1639af16575057857241351e****\\",\\n \\"Data\\": {\\n \\"CurrentPage\\": 1,\\n \\"TotalSize\\": 20,\\n \\"PageSize\\": 20,\\n \\"Jobs\\": [\\n {\\n \\"JobId\\": \\"manual-3db7a8fa-5d40-4edc-92e4-49d50eab****\\",\\n \\"Active\\": 0,\\n \\"Succeeded\\": 3,\\n \\"Failed\\": 0,\\n \\"StartTime\\": 1657522800,\\n \\"CompletionTime\\": 1657522839,\\n \\"Message\\": \\"\\",\\n \\"State\\": \\"1\\"\\n }\\n ]\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeJobHistoryResponse>\\n <RequestId>53F15A18-8079-5992-810C-0211A5AE****</RequestId>\\n <Message>success</Message>\\n <TraceId>0b1639af16575057857241351e****</TraceId>\\n <Data>\\n <CurrentPage>1</CurrentPage>\\n <TotalSize>20</TotalSize>\\n <PageSize>20</PageSize>\\n <Jobs>\\n <JobId>manual-3db7a8fa-5d40-4edc-92e4-49d50eab****</JobId>\\n <Active>0</Active>\\n <Succeeded>3</Succeeded>\\n <Failed>0</Failed>\\n <StartTime>1657522800</StartTime>\\n <CompletionTime>1657522839</CompletionTime>\\n <State>1</State>\\n </Jobs>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeJobHistoryResponse>","errorExample":""}]', + 'title' => 'DescribeJobHistory', + 'summary' => '调用DescribeJobHistory接口查询任务记录。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:28.000Z', 'description' => 'OpenAPI 下线'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '20', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeJobHistory'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => '', + 'ramAction' => [ + 'action' => 'sae:DescribeJobHistory', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + ], + 'DescribeJobStatus' => [ + 'path' => '/pop/v1/sam/job/describeJobStatus', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'abilityTreeCode' => '6396', - 'abilityTreeNodes' => [ - 'FEATUREsaeD9PL61', - ], + 'abilityTreeCode' => '100738', + 'abilityTreeNodes' => ['FEATUREsaeD9PL61'], ], 'parameters' => [ [ - 'name' => 'RegionId', - 'in' => 'query', - 'schema' => [ - 'description' => '地域ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-beijing', - ], - ], - [ - 'name' => 'ResourceType', - 'in' => 'query', - 'schema' => [ - 'description' => '资源类型,只支持`application`。', - 'type' => 'string', - 'required' => true, - 'example' => 'application', - ], - ], - [ - 'name' => 'ResourceIds', - 'in' => 'query', - 'schema' => [ - 'description' => '资源ID。可填写多个资源ID,用英文逗号(,)分隔。', - 'type' => 'string', - 'required' => true, - 'example' => '["d42921c4-5433-4abd-8075-0e536f8b****"]', - ], - ], - [ - 'name' => 'TagKeys', + 'name' => 'AppId', 'in' => 'query', - 'schema' => [ - 'description' => '标签键列表。可填写多个标签键,用英文逗号(,)分隔。', - 'type' => 'string', - 'required' => false, - 'example' => '["k1","k2"]', - ], + 'schema' => ['description' => '任务模板ID。', 'type' => 'string', 'required' => true, 'example' => 'e1a7a07-abcb-4652-a1d3-2d57f415****'], ], [ - 'name' => 'DeleteAll', + 'name' => 'JobId', 'in' => 'query', - 'schema' => [ - 'description' => '是否删除所有标签,当已传入标签键时生效。取值说明如下:'."\n" - ."\n" - .'- **true**:删除所有标签。'."\n" - .'- **false**:不删除所有标签。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], + 'schema' => ['description' => '任务ID。', 'type' => 'string', 'required' => false, 'example' => 'event-b798157b-40a2-4388-b578-71fb897103**-**'], ], ], 'responses' => [ @@ -20712,171 +11838,108 @@ 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '53F15A18-8079-5992-810C-0211A5AE****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0b1639af16575057857241351e****'], 'Data' => [ - 'description' => '返回结果。', - 'type' => 'boolean', - 'example' => 'true', - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '删除标签是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:删除成功。'."\n" - .'- **false**:删除失败。', - 'type' => 'boolean', - 'example' => 'true', + 'description' => '返回数据。', + 'type' => 'object', + 'properties' => [ + 'JobId' => ['description' => '任务ID。', 'type' => 'string', 'example' => 'event-b798157b-40a2-4388-b578-71fb897103**-**'], + 'Active' => ['description' => '正在运行的实例数。', 'type' => 'integer', 'format' => 'int64', 'example' => '0'], + 'Succeeded' => ['description' => '运行成功的实例数。', 'type' => 'integer', 'format' => 'int64', 'example' => '3'], + 'Failed' => ['description' => '运行失败的实例数。', 'type' => 'integer', 'format' => 'int64', 'example' => '0'], + 'StartTime' => ['description' => '任务的创建时间。', 'type' => 'integer', 'format' => 'int64', 'example' => '1657522800'], + 'CompletionTime' => ['description' => '任务执行的完成时间。', 'type' => 'integer', 'format' => 'int64', 'example' => '1657522839'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'State' => ['description' => '任务的运行状态。取值说明如下:'."\n" + ."\n" + .'- **0**:未执行。'."\n" + .'- **1**:执行成功。'."\n" + .'- **2**:执行失败。'."\n" + .'- **3**:正在执行。', 'type' => 'string', 'example' => '1'], + ], ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**目录。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '查询任务状态是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:查询成功。'."\n" + .'- **false**:查询失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'Duplicate.TagKey', - 'errorMessage' => 'The TagKey contains duplicate keys.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidResourceType.NotFound', - 'errorMessage' => 'The specified resource type is not supported.', - ], - [ - 'errorCode' => 'InvalidParameter.TagKey', - 'errorMessage' => 'The specified TagKey is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.TagValue', - 'errorMessage' => 'The specified TagValue is invalid.', - ], - [ - 'errorCode' => 'NumberExceed.Tags', - 'errorMessage' => 'The specified parameter Tags count exceed.', - ], - [ - 'errorCode' => 'NumberExceed.ResourceIds', - 'errorMessage' => 'The number of resource IDs cannot exceed 50.', - ], - [ - 'errorCode' => 'Invalid.Param.Tag.Scope', - 'errorMessage' => 'The specified parameter is invalid: tag scope.', - ], - [ - 'errorCode' => 'No.Permission', - 'errorMessage' => 'The account has no permission.', - ], + 404 => [ + ['errorCode' => 'InvalidAppId.NotFound', 'errorMessage' => 'The specified AppId does not exist.', 'description' => '指定的AppId不存在。'], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": true,\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<UntagResourcesResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>true</Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</UntagResourcesResponse>","errorExample":""}]', - 'title' => '移除指定资源和标签之间的绑定关系', - 'summary' => '调用UntagResources接口解除指定资源和标签之间的绑定关系。', - ], - 'TagResources' => [ - 'path' => '/tags', - 'methods' => [ - 'post', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"53F15A18-8079-5992-810C-0211A5AE****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0b1639af16575057857241351e****\\",\\n \\"Data\\": {\\n \\"JobId\\": \\"event-b798157b-40a2-4388-b578-71fb897103**-**\\",\\n \\"Active\\": 0,\\n \\"Succeeded\\": 3,\\n \\"Failed\\": 0,\\n \\"StartTime\\": 1657522800,\\n \\"CompletionTime\\": 1657522839,\\n \\"Message\\": \\"success\\",\\n \\"State\\": \\"1\\"\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeJobStatusResponse>\\n <RequestId>53F15A18-8079-5992-810C-0211A5AE****</RequestId>\\n <Message>success</Message>\\n <TraceId>0b1639af16575057857241351e****</TraceId>\\n <Data>\\n <JobId>event-b798157b-40a2-4388-b578-71fb897103**-**</JobId>\\n <Active>0</Active>\\n <Succeeded>3</Succeeded>\\n <Failed>0</Failed>\\n <StartTime>1657522800</StartTime>\\n <CompletionTime>1657522839</CompletionTime>\\n <Message>success</Message>\\n <State>1</State>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeJobStatusResponse>","errorExample":""}]', + 'title' => 'DescribeJobStatus', + 'summary' => '调用DescribeJobStatus接口查询任务状态。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:28.000Z', 'description' => 'OpenAPI 下线'], ], - 'schemes' => [ - 'http', - 'https', + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '40', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeJobStatus'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => '', + 'ramAction' => [ + 'action' => 'sae:DescribeJobStatus', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + ], + 'DescribeNamespace' => [ + 'path' => '/pop/v1/paas/namespace', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'abilityTreeCode' => '6393', - 'abilityTreeNodes' => [ - 'FEATUREsaeD9PL61', - ], + 'operationType' => 'get', + 'abilityTreeCode' => '6338', + 'abilityTreeNodes' => ['FEATUREsaeD9PL61'], ], 'parameters' => [ [ - 'name' => 'RegionId', - 'in' => 'formData', - 'schema' => [ - 'description' => '地域ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-beijing', - ], - ], - [ - 'name' => 'ResourceType', - 'in' => 'formData', - 'schema' => [ - 'description' => '资源类型,仅支持`application`。', - 'type' => 'string', - 'required' => true, - 'example' => 'application', - ], - ], - [ - 'name' => 'Tags', - 'in' => 'formData', - 'schema' => [ - 'description' => '标签键值对,当您未输入**ResourceIds**参数时必填。取值说明如下:'."\n" - .'- **key**:标签键,字符长度范围\\[1,128]。'."\n" - .'- **value**:标签值,字符长度范围\\[1,128]。'."\n" - ."\n" - .'区分大小写。如果指定多个标签,则会为指定资源同时创建并绑定多个标签。同一个资源上的同一个标签键只能对应一个标签值。如果您尝试添加已有标签键,则对应的标签值会更新为新值。'."\n" - ."\n" - .'不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。', - 'type' => 'string', - 'required' => false, - 'example' => '[{"key":"k1","value":"v1"}]', - ], + 'name' => 'NamespaceId', + 'in' => 'query', + 'schema' => ['description' => '命名空间ID。默认命名空间不可查询、更改或删除。', 'type' => 'string', 'required' => false, 'example' => 'cn-beijing:test'], ], [ - 'name' => 'ResourceIds', - 'in' => 'formData', - 'schema' => [ - 'description' => '资源ID。可填写多个资源ID,用英文逗号(,)分隔。当您未输入**Tags**参数时必填。', - 'type' => 'string', - 'required' => true, - 'example' => '["d42921c4-5433-4abd-8075-0e536f8b****"]', - ], + 'name' => 'NameSpaceShortId', + 'in' => 'query', + 'schema' => ['description' => '短版命名空间ID,不需要带上region;不超过20个字符,仅允许小写英文字母和数字。', 'type' => 'string', 'required' => false, 'example' => 'test'], ], ], 'responses' => [ @@ -20885,308 +11948,359 @@ 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a981dd515966966104121683d****'], 'Data' => [ - 'description' => '操作成功标识。', - 'type' => 'boolean', - 'example' => 'true', - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '为指定资源添加标签是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:添加成功。'."\n" - .'- **false**:添加失败。', - 'type' => 'boolean', - 'example' => 'true', + 'description' => '命名空间信息。', + 'type' => 'object', + 'properties' => [ + 'NamespaceDescription' => ['description' => '命名空间描述。', 'type' => 'string', 'example' => 'desc'], + 'NamespaceId' => ['description' => '命名空间ID。默认命名空间不可查询、更改或删除。', 'type' => 'string', 'example' => 'cn-beijing:test'], + 'NamespaceName' => ['description' => '命名空间名称。', 'type' => 'string', 'example' => 'name'], + 'RegionId' => ['description' => '地域。', 'type' => 'string', 'example' => 'cn-beijing'], + 'NameSpaceShortId' => ['description' => '短版命名空间ID。', 'type' => 'string', 'example' => 'test'], + 'EnableMicroRegistration' => ['description' => '是否已启用SAE内置注册中心:'."\n" + .'- **true**'."\n" + .'- **false**', 'type' => 'boolean', 'example' => 'true'], + ], ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**目录。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '查询命名空间信息是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:查询成功。'."\n" + .'- **false**:查询失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], - 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'Duplicate.TagKey', - 'errorMessage' => 'The TagKey contains duplicate keys.', - ], - [ - 'errorCode' => 'InvalidParameter.TagKey', - 'errorMessage' => 'The specified TagKey is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.TagValue', - 'errorMessage' => 'The specified TagValue is invalid.', - ], - [ - 'errorCode' => 'Missing.TagKey', - 'errorMessage' => 'You must specify TagKey.', - ], - [ - 'errorCode' => 'NumberExceed.Tags', - 'errorMessage' => 'The maximum number of tags is exceeded.', - ], - [ - 'errorCode' => 'InvalidResourceType.NotFound', - 'errorMessage' => 'The specified resource type is not supported.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'NumberExceed.ResourceIds', - 'errorMessage' => 'The number of resource IDs cannot exceed 50.', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a981dd515966966104121683d****\\",\\n \\"Data\\": {\\n \\"NamespaceDescription\\": \\"desc\\",\\n \\"NamespaceId\\": \\"cn-beijing:test\\",\\n \\"NamespaceName\\": \\"name\\",\\n \\"RegionId\\": \\"cn-beijing\\",\\n \\"NameSpaceShortId\\": \\"test\\",\\n \\"EnableMicroRegistration\\": true\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeNamespaceResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a981dd515966966104121683d****</TraceId>\\n <Data>\\n <NamespaceDescription>desc</NamespaceDescription>\\n <NamespaceId>cn-beijing:test</NamespaceId>\\n <NamespaceName>name</NamespaceName>\\n <RegionId>cn-beijing</RegionId>\\n <NameSpaceShortId>test</NameSpaceShortId>\\n <EnableMicroRegistration>true</EnableMicroRegistration>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeNamespaceResponse>","errorExample":""}]', + 'title' => '查询命名空间详细信息', + 'summary' => '调用DescribeNamespace接口查询命名空间详细信息。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:24.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2023-01-04T08:04:03.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2022-12-29T03:14:27.000Z', 'description' => '请求参数发生变更、响应参数发生变更、错误码发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeNamespace', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": true,\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<TagResourcesResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>true</Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</TagResourcesResponse>","errorExample":""}]', - 'title' => '给指定的资源打上标签', - 'summary' => '调用TagResources接口为指定资源添加标签。', ], - 'CreateConfigMap' => [ - 'path' => '/pop/v1/sam/configmap/configMap', - 'methods' => [ - 'post', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'DescribeNamespaceList' => [ + 'path' => '/pop/v1/sam/namespace/describeNamespaceList', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'create', - 'abilityTreeCode' => '6305', - 'abilityTreeNodes' => [ - 'FEATUREsaeD9PL61', - ], + 'operationType' => 'get', + 'abilityTreeCode' => '6339', + 'abilityTreeNodes' => ['FEATUREsaeBRTWZ3'], ], 'parameters' => [ [ - 'name' => 'Name', + 'name' => 'ContainCustom', 'in' => 'query', - 'schema' => [ - 'description' => 'ConfigMap实例名称。允许数字、字母和下划线(_)组合,仅允许以字母开头。', - 'type' => 'string', - 'required' => true, - 'example' => 'name', - ], + 'schema' => ['description' => '是否返回自定义命名空间。取值说明如下:'."\n" + ."\n" + .'- **true**:返回自定义命名空间。'."\n" + .'- **false**:不返回自定义命名空间。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], [ - 'name' => 'NamespaceId', + 'name' => 'HybridCloudExclude', 'in' => 'query', - 'schema' => [ - 'description' => 'ConfigMap实例所在命名空间ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => '是否排除混合云命名空间。取值说明如下:'."\n" + ."\n" + .'- **true**:排除混合云命名空间。 '."\n" + .'- **false**:不排除混合云命名空间。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], - [ - 'name' => 'Data', - 'in' => 'body', - 'style' => 'json', + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'ConfigMap数据。', + 'description' => '返回数据。', 'type' => 'object', 'properties' => [ + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '30375C38-F4ED-4135-A0AE-5C75DC7F****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => 'ac1a0b2215622920113732501e****'], 'Data' => [ - 'description' => 'ConfigMap键值对数据,JSON格式。格式如下:'."\n" - ."\n" - .'{"Data":"{\\"k1\\":\\"v1\\", \\"k2\\":\\"v2\\"}"}'."\n" - ."\n" - .'k表示键,v表示值。关于配置项的更多信息,请参见[管理和使用配置项](~~171326~~)。', - 'type' => 'string', - 'required' => true, - 'example' => '{"env.shell": "/bin/sh"}', + 'description' => '命名空间列表。', + 'type' => 'array', + 'items' => [ + 'description' => '命名空间信息。', + 'type' => 'object', + 'properties' => [ + 'VpcId' => ['description' => 'VPC ID。', 'type' => 'string', 'example' => 'vpc-2ze0i263cnn311nvj****'], + 'VSwitchId' => ['description' => 'vSwitch ID。', 'type' => 'string', 'example' => 'vsw-2ze559r1z1bpwqxwp****'], + 'Custom' => ['description' => '是否返回自定义命名空间。取值说明如下:'."\n" + ."\n" + .'- **true**:返回自定义命名空间。'."\n" + .'- **false**:不返回自定义命名空间。', 'type' => 'boolean', 'example' => 'true'], + 'AgentInstall' => ['description' => 'Agent安装命令。', 'type' => 'string', 'example' => 'http://edas-bj.oss-cn-beijing-internal.aliyuncs.com/test/install.sh'], + 'NamespaceId' => ['description' => '命名空间ID。', 'type' => 'string', 'example' => 'cn-beijing:test'], + 'HybridCloudEnable' => ['description' => '是否排除混合云命名空间。取值说明如下:'."\n" + ."\n" + .'- **true**:排除混合云命名空间。 '."\n" + .'- **false**:不排除混合云命名空间。', 'type' => 'boolean', 'example' => 'false'], + 'SecurityGroupId' => ['description' => '安全组ID。', 'type' => 'string', 'example' => 'sg-wz969ngg2e49q5i4****'], + 'Current' => ['description' => '废弃参数,无特殊含义。', 'type' => 'boolean', 'example' => 'false'], + 'NamespaceName' => ['description' => '命名空间名称。', 'type' => 'string', 'example' => 'test'], + 'RegionId' => ['description' => '命名空间所属地域。', 'type' => 'string', 'example' => 'cn-beijing'], + 'NameSpaceShortId' => ['description' => '短版命名空间ID。', 'type' => 'string', 'example' => 'test'], + ], + ], ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '获取命名空间列表是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:获取成功。'."\n" + .'- **false**:获取失败。', 'type' => 'boolean', 'example' => 'true'], ], - 'required' => false, - 'example' => '{"env.home": "/root", "env.shell": "/bin/sh"}', ], ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"30375C38-F4ED-4135-A0AE-5C75DC7F****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"ac1a0b2215622920113732501e****\\",\\n \\"Data\\": [\\n {\\n \\"VpcId\\": \\"vpc-2ze0i263cnn311nvj****\\",\\n \\"VSwitchId\\": \\"vsw-2ze559r1z1bpwqxwp****\\",\\n \\"Custom\\": true,\\n \\"AgentInstall\\": \\"http://edas-bj.oss-cn-beijing-internal.aliyuncs.com/test/install.sh\\",\\n \\"NamespaceId\\": \\"cn-beijing:test\\",\\n \\"HybridCloudEnable\\": false,\\n \\"SecurityGroupId\\": \\"sg-wz969ngg2e49q5i4****\\",\\n \\"Current\\": false,\\n \\"NamespaceName\\": \\"test\\",\\n \\"RegionId\\": \\"cn-beijing\\",\\n \\"NameSpaceShortId\\": \\"test\\"\\n }\\n ],\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeNamespaceListResponse>\\n <RequestId>30375C38-F4ED-4135-A0AE-5C75DC7F****</RequestId>\\n <Message>success</Message>\\n <TraceId>ac1a0b2215622920113732501e****</TraceId>\\n <Data>\\n <VpcId>vpc-2ze0i263cnn311nvj****</VpcId>\\n <VSwitchId>vsw-2ze559r1z1bpwqxwp****</VSwitchId>\\n <Custom>true</Custom>\\n <AgentInstall>http://edas-bj.oss-cn-beijing-internal.aliyuncs.com/test/install.sh</AgentInstall>\\n <NamespaceId>cn-beijing:test</NamespaceId>\\n <HybridCloudEnable>false</HybridCloudEnable>\\n <SecurityGroupId>sg-wz969ngg2e49q5i4****</SecurityGroupId>\\n <Current>false</Current>\\n <NamespaceName>test</NamespaceName>\\n <RegionId>cn-beijing</RegionId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeNamespaceListResponse>","errorExample":""}]', + 'title' => '获取命名空间列表', + 'summary' => '调用DescribeNamespaceList接口获取命名空间列表。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:23.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2022-12-29T03:14:27.000Z', 'description' => '响应参数发生变更、错误码发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeNamespaceList'], + ], + ], + 'ramActions' => [ [ - 'name' => 'Description', - 'in' => 'query', - 'schema' => [ - 'description' => '描述信息,不可输入空格,且不超过255个字符。', - 'type' => 'string', - 'required' => false, - 'example' => 'test-desc', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeNamespaceList', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], ], + ], + 'DescribeNamespaceResources' => [ + 'path' => '/pop/v1/sam/namespace/describeNamespaceResources', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '6340', + 'abilityTreeNodes' => ['FEATUREsaeRVPNSA'], + ], + 'parameters' => [ + [ + 'name' => 'NamespaceId', + 'in' => 'query', + 'schema' => ['description' => '长版命名空间ID。如果设置了该参数会继续生效而忽略NameSpaceShortId,该参数是为了兼容保留,推荐使用短版命名空间ID,简化参数。', 'type' => 'string', 'required' => false, 'example' => 'cn-shanghai:test'], + ], + [ + 'name' => 'NameSpaceShortId', + 'in' => 'query', + 'schema' => ['description' => '短版命名空间ID,不需要带上region,推荐。', 'type' => 'string', 'required' => false, 'example' => 'test'], + ], + ], 'responses' => [ 200 => [ 'schema' => [ 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '调用结果的附加信息。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], 'Data' => [ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'ConfigMapId' => [ - 'description' => '创建成功的ConfigMap实例ID。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1', - ], + 'VpcId' => ['description' => 'VPC ID。', 'type' => 'string', 'example' => 'vpc-2ze0i263cnn311nvj****'], + 'LastChangeOrderId' => ['description' => '发布单ID。', 'type' => 'string', 'example' => 'afedb3c4-63f8-4a3d-aaa3-2c30363f****'], + 'BelongRegion' => ['description' => '命名空间所属地域。', 'type' => 'string', 'example' => 'cn-shanghai'], + 'NamespaceId' => ['description' => '命名空间ID。', 'type' => 'string', 'example' => 'cn-shangha:test'], + 'SecurityGroupId' => ['description' => '安全组ID。', 'type' => 'string', 'example' => 'sg-wz969ngg2e49q5i4****'], + 'UserId' => ['description' => '用户ID。', 'type' => 'string', 'example' => 'test@aliyun.com'], + 'NamespaceName' => ['description' => '命名空间名称。', 'type' => 'string', 'example' => 'test'], + 'LastChangeOrderStatus' => ['description' => '最近一次发布单状态。取值说明如下:'."\n" + .' - **READY**:最近一次发布单准备就绪。'."\n" + .' - **RUNNING**:最近一次发布单处于执行中。'."\n" + .' - **SUCCESS**:最近一次发布单发布成功。'."\n" + .' - **FAIL**:最近一次发布单发布失败。'."\n" + .' - **ABORT**:最近一次发布单中止运行。'."\n" + .' - **WAIT\\_BATCH\\_CONFIRM**:最近一次发布单等待手工批量确认。'."\n" + .' - **AUTO\\_BATCH\\_WAIT**:最近一次发布单处于自动批量等待状态。'."\n" + .' - **SYSTEM\\_FAIL**:系统故障。'."\n" + .' - **WAIT\\_APPROVAL**:最近一次发布单等待审批。'."\n" + .' - **APPROVED**:最近一次发布单处于审批通过的待执行状态。', 'type' => 'string', 'example' => 'SUCCESS'], + 'VpcName' => ['description' => 'VPC名称。', 'type' => 'string', 'example' => 'test'], + 'VSwitchId' => ['description' => 'vSwitch ID。', 'type' => 'string', 'example' => 'vsw-2ze559r1z1bpwqxwp****'], + 'Description' => ['description' => '命名空间描述信息。', 'type' => 'string', 'example' => 'decs'], + 'LastChangeOrderRunning' => ['description' => '命名空间是否有发布单运行。取值说明如下:'."\n" + ."\n" + .'- **true**:有发布单运行。'."\n" + .'- **false**:没有发布单运行。', 'type' => 'boolean', 'example' => 'true'], + 'AppCount' => ['description' => '应用个数。', 'type' => 'integer', 'format' => 'int64', 'example' => '1'], + 'VSwitchName' => ['description' => 'vSwitch名称。', 'type' => 'string', 'example' => 'test'], + 'NotificationExpired' => ['description' => '发布单通知是否过期。取值说明如下:'."\n" + ."\n" + .'- **true**:发布单已过期。'."\n" + .'- **false**:发布单没有过期。', 'type' => 'boolean', 'example' => 'true'], + 'TenantId' => ['description' => 'SAE命名空间租户ID。', 'type' => 'string', 'example' => '838cad95-973f-48fe-830b-2a8546d7****'], + 'JumpServerAppId' => ['description' => '跳板机应用ID。', 'type' => 'string', 'example' => '5ec46468-6b26-4a3c-9f7c-bf88761a****'], + 'JumpServerIp' => ['description' => '跳板机IP地址。', 'type' => 'string', 'example' => '120.78.XXX.XX'], + 'NameSpaceShortId' => ['description' => '短版命名空间ID。', 'type' => 'string', 'example' => 'test'], + 'ApmJavaAgentVersion' => ['description' => 'APM Java Agent 的版本号。', 'type' => 'string'], + 'SlsConfigs' => ['description' => '日志采集到SLS的配置。'."\n" + ."\n" + .'- 使用SAE自动创建的SLS资源:`[{"logDir":"","logType":"stdout"},{"logDir":"/tmp/a.log"}]`。'."\n" + .'- 使用自定义的SLS资源:`[{"projectName":"test-sls","logType":"stdout","logDir":"","logstoreName":"sae","logtailName":""},{"projectName":"test","logDir":"/tmp/a.log","logstoreName":"sae","logtailName":""}]`。'."\n" + ."\n" + .'参数说明如下:'."\n" + ."\n" + .'- **projectName**:配置SLS上的Project名称。 '."\n" + .'- **logDir**:日志路径。'."\n" + .'- **logType**:日志类型。**stdout**表示容器标准输出日志,仅可设置1条;如果不设置,则表示收集文件日志。'."\n" + .'- **logstoreName**:配置SLS上的Logstore名称。'."\n" + .'- **logtailName**:配置SLS上的Logtail名称,如果不指定,则表示新建Logtail。'."\n" + ."\n" + .'多次部署时如果SLS采集配置没有变更,则不需要设置该参数(即请求中无需包含**SlsConfigs**字段);如果不再需要使用SLS采集功能,您需要在请求中将该字段的值设置为空字符串(即请求中**SlsConfigs**字段的值为"")。', 'type' => 'string'], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '创建ConfigMap实例是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:创建成功。'."\n" - .'- **false**:创建失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '查询命名空间资源信息是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:查询成功。'."\n" + .'- **false**:查询失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], - [ - 'errorCode' => 'Exceed.ConfigMap', - 'errorMessage' => 'Too many ConfigMap objects have been created in the namespace.', - ], - [ - 'errorCode' => 'TooMany.Configmap', - 'errorMessage' => 'The maximum number of keys or the maximum length of Configmap is exceeded.', - ], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], ], - 500 => [ - [ - 'errorCode' => 'OperationFailed.RPCError', - 'errorMessage' => 'Internal RPC request processing error.', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"VpcId\\": \\"vpc-2ze0i263cnn311nvj****\\",\\n \\"LastChangeOrderId\\": \\"afedb3c4-63f8-4a3d-aaa3-2c30363f****\\",\\n \\"BelongRegion\\": \\"cn-shanghai\\",\\n \\"NamespaceId\\": \\"cn-shangha:test\\",\\n \\"SecurityGroupId\\": \\"sg-wz969ngg2e49q5i4****\\",\\n \\"UserId\\": \\"test@aliyun.com\\",\\n \\"NamespaceName\\": \\"test\\",\\n \\"LastChangeOrderStatus\\": \\"SUCCESS\\",\\n \\"VpcName\\": \\"test\\",\\n \\"VSwitchId\\": \\"vsw-2ze559r1z1bpwqxwp****\\",\\n \\"Description\\": \\"decs\\",\\n \\"LastChangeOrderRunning\\": true,\\n \\"AppCount\\": 1,\\n \\"VSwitchName\\": \\"test\\",\\n \\"NotificationExpired\\": true,\\n \\"TenantId\\": \\"838cad95-973f-48fe-830b-2a8546d7****\\",\\n \\"JumpServerAppId\\": \\"5ec46468-6b26-4a3c-9f7c-bf88761a****\\",\\n \\"JumpServerIp\\": \\"120.78.XXX.XX\\",\\n \\"NameSpaceShortId\\": \\"test\\",\\n \\"ApmJavaAgentVersion\\": \\"\\",\\n \\"SlsConfigs\\": \\"\\"\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeNamespaceResourcesResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <VpcId>vpc-2ze0i263cnn311nvj****</VpcId>\\n <LastChangeOrderId>afedb3c4-63f8-4a3d-aaa3-2c30363f****</LastChangeOrderId>\\n <BelongRegion>cn-shanghai</BelongRegion>\\n <NamespaceId>cn-shangha:test</NamespaceId>\\n <SecurityGroupId>sg-wz969ngg2e49q5i4****</SecurityGroupId>\\n <UserId>test@aliyun.com</UserId>\\n <NamespaceName>test</NamespaceName>\\n <LastChangeOrderStatus>SUCCESS</LastChangeOrderStatus>\\n <VpcName>test</VpcName>\\n <VSwitchId>vsw-2ze559r1z1bpwqxwp****</VSwitchId>\\n <Description>decs</Description>\\n <LastChangeOrderRunning>true</LastChangeOrderRunning>\\n <AppCount>1</AppCount>\\n <VSwitchName>test</VSwitchName>\\n <NotificationExpired>true</NotificationExpired>\\n <TenantId>838cad95-973f-48fe-830b-2a8546d7****</TenantId>\\n <JumpServerAppId>5ec46468-6b26-4a3c-9f7c-bf88761a****</JumpServerAppId>\\n <JumpServerIp>120.78.XXX.XX</JumpServerIp>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeNamespaceResourcesResponse>","errorExample":""}]', + 'title' => '查询命名空间内的资源信息', + 'summary' => '查询命名空间内的资源信息。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:24.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-11-04T07:28:56.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2025-10-28T12:49:05.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2022-12-29T03:14:27.000Z', 'description' => '请求参数发生变更、响应参数发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '40', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeNamespaceResources'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeNamespaceResources', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"ConfigMapId\\": 1\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<CreateConfigMapResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <ConfigMapId>1</ConfigMapId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</CreateConfigMapResponse>","errorExample":""}]', - 'title' => '创建ConfigMap实例', - 'summary' => '创建命名空间中的ConfigMap实例。', ], - 'DeleteConfigMap' => [ - 'path' => '/pop/v1/sam/configmap/configMap', - 'methods' => [ - 'delete', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'DescribeNamespaces' => [ + 'path' => '/pop/v1/paas/namespaces', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'delete', - 'abilityTreeCode' => '6312', - 'abilityTreeNodes' => [ - 'FEATUREsaeD9PL61', - ], + 'operationType' => 'get', + 'abilityTreeCode' => '6341', + 'abilityTreeNodes' => ['FEATUREsaeD9PL61'], ], 'parameters' => [ [ - 'name' => 'ConfigMapId', + 'name' => 'CurrentPage', 'in' => 'query', - 'schema' => [ - 'description' => '需要删除的ConfigMap实例ID。需要调用[ListNamespacedConfigMaps](~~176917~~)接口查看。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'example' => '1', - ], + 'schema' => ['description' => '当前页码。', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '1'], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => ['description' => '分页查询时设置的每页数量。取值范围\\[0,10000\\]。', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '10'], ], ], 'responses' => [ @@ -21195,288 +12309,415 @@ 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a981dd515966966104121683d****'], 'Data' => [ - 'description' => '返回结果。', + 'description' => '命名空间信息列表。', 'type' => 'object', 'properties' => [ - 'ConfigMapId' => [ - 'description' => '被删除的ConfigMap实例ID。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1', + 'CurrentPage' => ['description' => '当前页码。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'TotalSize' => ['description' => '命名空间总数。', 'type' => 'integer', 'format' => 'int32', 'example' => '100'], + 'PageSize' => ['description' => '分页查询时设置的每页数量。', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], + 'Namespaces' => [ + 'description' => '命名空间列表。', + 'type' => 'array', + 'items' => [ + 'description' => '命名空间信息。', + 'type' => 'object', + 'properties' => [ + 'NamespaceDescription' => ['description' => '命名空间描述。', 'type' => 'string', 'example' => 'desc'], + 'AccessKey' => ['description' => 'ACM专用AccessKey ID,用于操作ACM某个命名空间内的数据。更多信息,请参见[阿里云AccessKey和ACM专用AccessKey的区别](~~68941~~)。', 'type' => 'string', 'example' => 'b34dbe3315c64f9f99b58ea447ec****'], + 'SecretKey' => ['description' => 'ACM专用AccessKey Secret,用于操作ACM某个命名空间内的数据。更多信息,请参见[阿里云AccessKey和ACM专用AccessKey的区别](~~68941~~)。', 'type' => 'string', 'example' => 'G/w6sseK7+nb3S6HBmANDBMD****'], + 'NamespaceId' => ['description' => '命名空间ID。默认命名空间不可查询、更改或删除。', 'type' => 'string', 'example' => 'cn-beijing:test'], + 'AddressServerHost' => ['description' => '主机服务地址。', 'type' => 'string', 'example' => 'addr-bj-internal.edas.aliyun.com'], + 'NamespaceName' => ['description' => '命名空间名称。', 'type' => 'string', 'example' => 'name'], + 'TenantId' => ['description' => '租户ID。', 'type' => 'string', 'example' => '838cad95-973f-48fe-830b-2a8546d7****'], + 'RegionId' => ['description' => '地域。', 'type' => 'string', 'example' => 'cn-beijing'], + 'NameSpaceShortId' => ['description' => '短版命名空间ID。', 'type' => 'string', 'example' => 'test'], + ], + ], ], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '删除ConfigMap实例是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:删除实例成功。'."\n" - .'- **false**:删除实例失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**目录。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '查询命名空间列表是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:查询成功。'."\n" + .'- **false**:查询失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], - 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], - [ - 'errorCode' => 'MountConflict.ConfigMap', - 'errorMessage' => 'Conflict detected for ConfigMap path %s.', - ], - [ - 'errorCode' => 'NotFound.ConfigMap', - 'errorMessage' => 'The ConfigMap object (ID: %s) does not exist.', - ], - [ - 'errorCode' => 'NotFound.ConfigMapKey', - 'errorMessage' => 'The key %s of ConfigMap object (ID: %s) does not exist.', - ], - [ - 'errorCode' => 'DeleteFail.ConfigMapReferenced', - 'errorMessage' => 'Failed to delete the ConfigMap. It has been used by other applications.', - ], - ], - 404 => [ - [ - 'errorCode' => 'InvalidNamespaceId.NotFound', - 'errorMessage' => 'The specified NamespaceId does not exist.', - ], - ], - 500 => [ - [ - 'errorCode' => 'OperationFailed.RPCError', - 'errorMessage' => 'Internal RPC request processing error.', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a981dd515966966104121683d****\\",\\n \\"Data\\": {\\n \\"CurrentPage\\": 1,\\n \\"TotalSize\\": 100,\\n \\"PageSize\\": 10,\\n \\"Namespaces\\": [\\n {\\n \\"NamespaceDescription\\": \\"desc\\",\\n \\"AccessKey\\": \\"b34dbe3315c64f9f99b58ea447ec****\\",\\n \\"SecretKey\\": \\"G/w6sseK7+nb3S6HBmANDBMD****\\",\\n \\"NamespaceId\\": \\"cn-beijing:test\\",\\n \\"AddressServerHost\\": \\"addr-bj-internal.edas.aliyun.com\\",\\n \\"NamespaceName\\": \\"name\\",\\n \\"TenantId\\": \\"838cad95-973f-48fe-830b-2a8546d7****\\",\\n \\"RegionId\\": \\"cn-beijing\\",\\n \\"NameSpaceShortId\\": \\"test\\"\\n }\\n ]\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeNamespacesResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a981dd515966966104121683d****</TraceId>\\n <Data>\\n <CurrentPage>1</CurrentPage>\\n <TotalSize>100</TotalSize>\\n <PageSize>10</PageSize>\\n <Namespaces>\\n <NamespaceDescription>desc</NamespaceDescription>\\n <AccessKey>b34dbe3315c64f9f99b58ea447ec****</AccessKey>\\n <SecretKey>G/w6sseK7+nb3S6HBmANDBMD****</SecretKey>\\n <NamespaceId>cn-beijing:test</NamespaceId>\\n <AddressServerHost>addr-bj-internal.edas.aliyun.com</AddressServerHost>\\n <NamespaceName>name</NamespaceName>\\n <TenantId>838cad95-973f-48fe-830b-2a8546d7****</TenantId>\\n <RegionId>cn-beijing</RegionId>\\n </Namespaces>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeNamespacesResponse>","errorExample":""}]', + 'title' => '查询命名空间列表', + 'summary' => '调用DescribeNamespaces接口查询命名空间列表。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:23.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2022-12-29T03:14:27.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2022-10-13T13:03:31.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2022-02-21T04:50:52.000Z', 'description' => '错误码发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeNamespaces', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"ConfigMapId\\": 1\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeleteConfigMapResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <ConfigMapId>1</ConfigMapId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DeleteConfigMapResponse>","errorExample":""}]', - 'title' => '删除ConfigMap实例', - 'summary' => '调用DeleteConfigMap接口删除ConfigMap实例。', ], - 'UpdateConfigMap' => [ - 'path' => '/pop/v1/sam/configmap/configMap', - 'methods' => [ - 'put', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'DescribePipeline' => [ + 'summary' => '查看批次信息。', + 'path' => '/pop/v1/sam/changeorder/DescribePipeline', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', - 'deprecated' => false, + 'operationType' => 'read', 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '6400', - 'abilityTreeNodes' => [ - 'FEATUREsaeD9PL61', - ], + 'operationType' => 'get', + 'abilityTreeCode' => '6343', + 'abilityTreeNodes' => ['FEATUREsaeD9PL61'], ], 'parameters' => [ [ - 'name' => 'ConfigMapId', + 'name' => 'PipelineId', 'in' => 'query', - 'schema' => [ - 'description' => '需要更新的ConfigMap实例ID。需要调用[ListNamespacedConfigMaps](~~176917~~)接口查看。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'example' => '1', - ], + 'schema' => ['description' => '批次ID。通过调用[DescribeChangeOrder](~~126617~~)接口获取。', 'type' => 'string', 'required' => true, 'example' => '917660ba-5092-44ca-b8e0-80012c96****'], ], - [ - 'name' => 'Data', - 'in' => 'body', - 'style' => 'json', + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'ConfigMap数据。', + 'description' => '批次信息响应体。', 'type' => 'object', 'properties' => [ + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '559B4247-C41C-4D9E-B866-B55D360B****'], + 'Message' => ['description' => '调用结果的附加信息。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0be3e0c316390414649128666e****'], 'Data' => [ - 'description' => 'ConfigMap键值对数据,JSON格式。格式如下:'."\n" - ."\n" - .'{"Data":"{\\"k1\\":\\"v1\\", \\"k2\\":\\"v2\\"}"}'."\n" - ."\n" - .'k表示键,v表示值。关于配置项的更多信息,请参见[管理和使用配置项](~~171326~~)。', - 'type' => 'string', - 'required' => true, - 'example' => '{"env.shell": "/bin/sh"}', + 'description' => '批次信息。', + 'type' => 'object', + 'properties' => [ + 'ShowBatch' => ['description' => '是否可以开始下一批次执行。取值说明如下:'."\n" + ."\n" + .'- **false**:不可以开始下一批次执行。'."\n" + .'- **true**:可以开始下一批次执行。', 'type' => 'boolean', 'example' => 'false'], + 'PipelineStatus' => ['description' => '批次状态,取值说明如下:'."\n" + ."\n" + .'- **0**:准备就绪。'."\n" + .'- **1**:执行中。'."\n" + .'- **2**:执行成功。'."\n" + .'- **3**:执行失败。'."\n" + .'- **6**:中止。'."\n" + .'- **10**:系统异常执行失败。', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], + 'CurrentStageId' => ['description' => '该批次正在执行的阶段ID。', 'type' => 'string', 'example' => 'c3a55592-4c30-4d84-ac2d-e98c18ec****'], + 'PipelineName' => ['description' => '批次名称。', 'type' => 'string', 'example' => 'Batch 1 change'], + 'StageList' => [ + 'description' => '批次的阶段信息列表。', + 'type' => 'array', + 'items' => [ + 'description' => '阶段信息列表的结构体。', + 'type' => 'object', + 'properties' => [ + 'Status' => ['description' => '阶段的状态,取值说明如下:'."\n" + ."\n" + .'- **0**:准备就绪。'."\n" + .'- **1**:执行中。'."\n" + .'- **2**:执行成功。'."\n" + .'- **3**:执行失败。'."\n" + .'- **6**:中止。', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], + 'StageId' => ['description' => '阶段ID。', 'type' => 'string', 'example' => 'c3a55592-4c30-4d84-ac2d-e98c18ec****'], + 'ExecutorType' => ['description' => '阶段类型,取值说明如下:'."\n" + ."\n" + .'- **0**:串行。'."\n" + .'- **1**:并行。', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], + 'TaskList' => [ + 'description' => '状态信息列表。', + 'type' => 'array', + 'items' => [ + 'description' => '状态信息列表结构体。', + 'type' => 'object', + 'properties' => [ + 'Status' => ['description' => '任务的状态,取值说明如下:'."\n" + ."\n" + .'- **0**:准备就绪。'."\n" + .'- **1**:执行中。'."\n" + .'- **2**:执行成功。'."\n" + .'- **3**:执行失败。'."\n" + .'- **5**:等待重试。'."\n" + .'- **6**:中止。', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], + 'StageId' => ['description' => '阶段ID。', 'type' => 'string', 'example' => 'c3a55592-4c30-4d84-ac2d-e98c18ec****'], + 'ErrorMessage' => ['description' => '任务执行的报错信息。如果任务执行成功,则不会返回该信息。', 'type' => 'string', 'example' => 'EDAS-10022 '], + 'ErrorCode' => ['description' => '任务执行失败的错误码。如果任务执行成功,则不会返回该信息。', 'type' => 'string', 'example' => 'EDAS-10022'], + 'TaskName' => ['description' => '任务名称。', 'type' => 'string', 'example' => 'Initialize environment'], + 'ErrorIgnore' => ['description' => '是否支持失败后执行后面任务,取值说明如下:'."\n" + ."\n" + .'- **0**:不支持。'."\n" + .'- **1**:支持。', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], + 'Message' => ['description' => '任务执行信息。', 'type' => 'string', 'example' => 'init Namespace success'], + 'ShowManualIgnore' => ['description' => '是否支持手动跳过正在执行的任务,取值说明如下:'."\n" + .'- **true**:支持。'."\n" + .'- **false**:不支持。', 'type' => 'boolean', 'example' => 'false'], + 'TaskId' => ['description' => '任务ID。', 'type' => 'string', 'example' => 'bef0122f-de9a-4ab0-8223-b88bf8ad****'], + ], + ], + ], + 'StageName' => ['description' => '阶段的名称。', 'type' => 'string', 'example' => 'Deployment application'], + ], + ], + ], + 'NextPipelineId' => ['description' => '下一批次ID。', 'type' => 'string', 'example' => 'b77b1c98-5772-4f05-95fc-c7bee5fa****'], + 'PipelineId' => ['description' => '批次ID。', 'type' => 'string', 'example' => '917660ba-5092-44ca-b8e0-80012c96****'], + 'CoStatus' => ['description' => '该批次所在的变更单的状态。', 'type' => 'string', 'example' => 'Execution succeeded'], + ], ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '查询批次信息是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:查询成功。'."\n" + .'- **false**:查询失败。', 'type' => 'boolean', 'example' => 'true'], ], - 'required' => false, - 'example' => '{"env.home": "/root", "env.shell": "/bin/sh"}', ], ], + ], + 'errorCodes' => [ + 400 => [ + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.NoPermission', 'errorMessage' => 'Resource no permission', 'description' => '请求资源无权限'], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"559B4247-C41C-4D9E-B866-B55D360B****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0be3e0c316390414649128666e****\\",\\n \\"Data\\": {\\n \\"ShowBatch\\": false,\\n \\"PipelineStatus\\": 2,\\n \\"CurrentStageId\\": \\"c3a55592-4c30-4d84-ac2d-e98c18ec****\\",\\n \\"PipelineName\\": \\"Batch 1 change\\",\\n \\"StageList\\": [\\n {\\n \\"Status\\": 2,\\n \\"StageId\\": \\"c3a55592-4c30-4d84-ac2d-e98c18ec****\\",\\n \\"ExecutorType\\": 0,\\n \\"TaskList\\": [\\n {\\n \\"Status\\": 2,\\n \\"StageId\\": \\"c3a55592-4c30-4d84-ac2d-e98c18ec****\\",\\n \\"ErrorMessage\\": \\"EDAS-10022 \\",\\n \\"ErrorCode\\": \\"EDAS-10022\\",\\n \\"TaskName\\": \\"Initialize environment\\",\\n \\"ErrorIgnore\\": 0,\\n \\"Message\\": \\"init Namespace success\\",\\n \\"ShowManualIgnore\\": false,\\n \\"TaskId\\": \\"bef0122f-de9a-4ab0-8223-b88bf8ad****\\"\\n }\\n ],\\n \\"StageName\\": \\"Deployment application\\"\\n }\\n ],\\n \\"NextPipelineId\\": \\"b77b1c98-5772-4f05-95fc-c7bee5fa****\\",\\n \\"PipelineId\\": \\"917660ba-5092-44ca-b8e0-80012c96****\\",\\n \\"CoStatus\\": \\"Execution succeeded\\"\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribePipelineResponse>\\n <RequestId>559B4247-C41C-4D9E-B866-B55D360B****</RequestId>\\n <Message>success</Message>\\n <TraceId>1344643016148440313321061f****</TraceId>\\n <Data>\\n <ShowBatch>false</ShowBatch>\\n <PipelineStatus>2</PipelineStatus>\\n <CurrentStageId>c3a55592-4c30-4d84-ac2d-e98c18ec****</CurrentStageId>\\n <PipelineName>第1批变更</PipelineName>\\n <StageList>\\n <Status>2</Status>\\n <StageId>c3a55592-4c30-4d84-ac2d-e98c18ec****</StageId>\\n <ExecutorType>0</ExecutorType>\\n <TaskList>\\n <Status>2</Status>\\n <StageId>c3a55592-4c30-4d84-ac2d-e98c18ec****</StageId>\\n <ErrorMessage>EDAS-10022 <a target=\'_blank\' href=\'https://help.aliyun.com/knowledge_detail/106573.html#EDAS-10022\'>应用启动时 READINESS 检查失败</a></ErrorMessage>\\n <ErrorCode>EDAS-10022</ErrorCode>\\n <TaskName>初始化环境</TaskName>\\n <ErrorIgnore>0</ErrorIgnore>\\n <Message>init Namespace success</Message>\\n <ShowManualIgnore>false</ShowManualIgnore>\\n <TaskId>bef0122f-de9a-4ab0-8223-b88bf8ad****</TaskId>\\n </TaskList>\\n <StageName>部署应用</StageName>\\n </StageList>\\n <NextPipelineId>b77b1c98-5772-4f05-95fc-c7bee5fa****</NextPipelineId>\\n <PipelineId>917660ba-5092-44ca-b8e0-80012c96****</PipelineId>\\n <CoStatus>执行成功</CoStatus>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribePipelineResponse>","errorExample":""}]', + 'title' => '获取Logstash实例的管道信息', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:24.000Z', 'description' => 'OpenAPI 下线'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribePipeline'], + ], + ], + 'ramActions' => [ [ - 'name' => 'Description', - 'in' => 'query', - 'schema' => [ - 'description' => '描述信息。', - 'type' => 'string', - 'required' => false, - 'example' => 'test-desc', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribePipeline', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], ], + ], + 'DescribeRegions' => [ + 'path' => '/pop/v1/paas/regionConfig', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '6344', + 'abilityTreeNodes' => ['FEATUREsaeRVPNSA'], + ], + 'parameters' => [], 'responses' => [ 200 => [ 'schema' => [ 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '调用结果的附加信息。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], - 'Data' => [ - 'description' => '返回结果。', + 'Message' => ['description' => '调用结果的附加信息。', 'type' => 'string', 'example' => 'success'], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'DDE85827-B0B3-4E56-86E8-17C42009****'], + 'Regions' => [ 'type' => 'object', + 'itemNode' => true, 'properties' => [ - 'ConfigMapId' => [ - 'description' => 'ConfigMap实例ID。', - 'type' => 'string', - 'example' => '1', + 'Region' => [ + 'description' => '地域列表。', + 'type' => 'array', + 'items' => [ + 'description' => '地域数据。'."\n", + 'type' => 'object', + 'properties' => [ + 'LocalName' => ['description' => '地域名称。取值说明如下:'."\n" + ."\n" + .'<props="china">'."\n" + .'- **华东1(杭州)**</props>'."\n" + .'<props="china">'."\n" + .'- **华东2(上海)**</props>'."\n" + .'<props="china">'."\n" + .'- **华北2(北京)**</props>'."\n" + .'<props="china">'."\n" + .'- **华北3(张家口)**</props>'."\n" + .'<props="china">'."\n" + .'- **华南1(深圳)**</props>'."\n" + .'<props="china">'."\n" + .'- **华南3(广州)**</props>'."\n" + .'<props="china">'."\n" + .'- **中国(香港)**</props>'."\n" + .'<props="china">'."\n" + .'- **新加坡**</props>'."\n" + .'<props="china">'."\n" + .'- **美国(硅谷)**</props>'."\n" + .'<props="intl">'."\n" + .'- **中国(香港)**</props>'."\n" + .'<props="intl">'."\n" + .'- **新加坡**</props>'."\n" + .'<props="intl">'."\n" + .'- **印度尼西亚(雅加达)**</props>'."\n" + .'<props="intl">'."\n" + .'- **日本(东京)**</props>'."\n", 'type' => 'string', 'example' => 'China (Hong Kong)'], + 'RegionEndpoint' => ['description' => '地域对应的接入地址。取值说明如下:'."\n" + ."\n" + .'<props="china">'."\n" + .'- **sae.cn-hangzhou.aliyuncs.com**</props>'."\n" + .'<props="china">'."\n" + .'- **sae.cn-shanghai.aliyuncs.com**</props>'."\n" + .'<props="china">'."\n" + .'- **sae.cn-beijing.aliyuncs.com**</props>'."\n" + .'<props="china">'."\n" + .'- **sae.cn-zhangjiakou.aliyuncs.com**</props>'."\n" + .'<props="china">'."\n" + .'- **sae.cn-shenzhen.aliyuncs.com**</props>'."\n" + .'<props="china">'."\n" + .'- **sae.cn-guangzhou.aliyuncs.com**</props>'."\n" + .'<props="china">'."\n" + .'- **sae.cn-hongkong.aliyuncs.com**</props>'."\n" + .'<props="china">'."\n" + .'- **sae.ap-southeast-1.aliyuncs.com**</props>'."\n" + .'<props="china">'."\n" + .'- **sae.us-west-1.aliyuncs.com**</props>'."\n" + .'<props="intl">'."\n" + .'- **sae.cn-hongkong.aliyuncs.com**</props>'."\n" + .'<props="intl">'."\n" + .'- **sae.ap-southeast-1.aliyuncs.com**</props>'."\n" + .'<props="intl">'."\n" + .'- **sae.ap-southeast-5.aliyuncs.com**</props>'."\n" + .'<props="intl">'."\n" + .'- **sae.ap-northeast-1.aliyuncs.com**</props>'."\n", 'type' => 'string', 'example' => 'sae.cn-hongkong.aliyuncs.com'], + 'RegionId' => ['description' => '地域ID。取值说明如下:'."\n" + ."\n" + .'<props="china">'."\n" + .'- **cn-hangzhou**:华东1(杭州)地域的ID。</props>'."\n" + .'<props="china">'."\n" + .'- **cn-shanghai**:华东2(上海)地域的ID。</props>'."\n" + .'<props="china">'."\n" + .'- **cn-beijing**:华北2(北京)地域的ID。</props>'."\n" + .'<props="china">'."\n" + .'- **cn-zhangjiakou**:华北3(张家口)地域的ID。</props>'."\n" + .'<props="china">'."\n" + .'- **cn-shenzhen**:华南1(深圳)地域的ID。</props>'."\n" + .'<props="china">'."\n" + .'- **cn-guangzhou**:华南3(广州)地域的ID。</props>'."\n" + .'<props="china">'."\n" + .'- **cn-hongkong**:中国香港地域的ID。</props>'."\n" + .'<props="china">'."\n" + .'- **ap-southeast-1**:新加坡地域的ID。</props>'."\n" + .'<props="china">'."\n" + .'- **us-west-1**:美国(硅谷)地域的ID。</props>'."\n" + .'<props="intl">'."\n" + .'- **cn-hongkong**:中国香港地域的ID。</props>'."\n" + .'<props="intl">'."\n" + .'- **ap-southeast-1**:新加坡地域的ID。</props>'."\n" + .'<props="intl">'."\n" + .'- **ap-southeast-5**:印度尼西亚(雅加达)地域的ID。</props>'."\n" + .'<props="intl">'."\n" + .'- **ap-northeast-1**:日本(东京)地域的ID。</props>'."\n", 'type' => 'string', 'example' => 'cn-hongkong'], + 'RecommendZones' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'RecommendZone' => [ + 'description' => '推荐可用区。', + 'type' => 'array', + 'items' => ['description' => '推荐可用区。所有地域下,整体库存量相对充足的可用区。格式如下:'."\n" + ."\n" + .'- 如果地域内有推荐可用区:`"RecommendZone": ["cn-hongkong-b", "cn-hongkong-d", "cn-hongkong-c"]`'."\n" + ."\n" + .'- 如果地域内无推荐可用区:`"RecommendZone": []`', 'type' => 'string', 'example' => 'cn-hongkong-b'], + ], + ], + 'description' => '', + ], + ], + ], ], ], + 'description' => '', ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '更新ConfigMap实例是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:更新成功。'."\n" - .'- **false**:更新失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'integer', 'format' => 'int32', 'example' => '200'], ], ], ], ], - 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], - [ - 'errorCode' => 'NotFound.ConfigMap', - 'errorMessage' => 'The ConfigMap object (ID: %s) does not exist.', - ], - [ - 'errorCode' => 'TooMany.Configmap', - 'errorMessage' => 'The maximum number of keys or the maximum length of Configmap is exceeded.', - ], - ], - 500 => [ - [ - 'errorCode' => 'OperationFailed.RPCError', - 'errorMessage' => 'Internal RPC request processing error.', - ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"DDE85827-B0B3-4E56-86E8-17C42009****\\",\\n \\"Regions\\": {\\n \\"Region\\": [\\n {\\n \\"LocalName\\": \\"China (Hong Kong)\\",\\n \\"RegionEndpoint\\": \\"sae.cn-hongkong.aliyuncs.com\\",\\n \\"RegionId\\": \\"cn-hongkong\\",\\n \\"RecommendZones\\": {\\n \\"RecommendZone\\": [\\n \\"cn-hongkong-b\\"\\n ]\\n }\\n }\\n ]\\n },\\n \\"Code\\": 200\\n}","errorExample":""},{"type":"xml","example":"<DescribeRegionsResponse>\\n <Message>success</Message>\\n <RequestId>DDE85827-B0B3-4E56-86E8-17C42009****</RequestId>\\n <Regions>\\n <LocalName>中国(香港)</LocalName>\\n <RegionEndpoint>sae.cn-hongkong.aliyuncs.com</RegionEndpoint>\\n <RegionId>cn-hongkong</RegionId>\\n <RecommendZones>cn-hongkong-b</RecommendZones>\\n </Regions>\\n <Code>200</Code>\\n</DescribeRegionsResponse>","errorExample":""}]', + 'title' => '查询可用地域', + 'summary' => '调用DescribeRegions接口查询可用地域。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:28.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2021-11-25T11:21:54.000Z', 'description' => '响应参数发生变更、错误码发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '2000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeRegions'], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"ConfigMapId\\": \\"1\\"\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<UpdateConfigMapResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <ConfigMapId>1</ConfigMapId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</UpdateConfigMapResponse>","errorExample":""}]', - 'title' => '更新ConfigMap实例', - 'summary' => '更新ConfigMap实例。', + 'ramActions' => [], ], - 'DescribeConfigMap' => [ - 'path' => '/pop/v1/sam/configmap/configMap', - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'DescribeSecret' => [ + 'summary' => '查询Secret实例详情。', + 'path' => '/pop/v1/sam/secret/secret', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -21485,23 +12726,19 @@ 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '6328', - 'abilityTreeNodes' => [ - 'FEATUREsaeD9PL61', - ], + 'abilityTreeCode' => '159990', + 'abilityTreeNodes' => ['FEATUREsaeD9PL61'], ], 'parameters' => [ [ - 'name' => 'ConfigMapId', + 'name' => 'NamespaceId', 'in' => 'query', - 'schema' => [ - 'description' => '查询的ConfigMap实例ID。需要调用[ListNamespacedConfigMaps](~~176917~~)接口查看。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'example' => '1', - ], + 'schema' => ['description' => 'Secret实例所在命名空间ID。如果所在命名空间为默认命名空间,则只需填写RegionId,例如`cn-beijing`。', 'type' => 'string', 'required' => true, 'example' => 'cn-beijing:test'], + ], + [ + 'name' => 'SecretId', + 'in' => 'query', + 'schema' => ['description' => '查询的Secret实例ID。需要调用[ListSecrets](~~466929~~)接口查看。', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'maximum' => '1000000000', 'minimum' => '1', 'example' => '16'], ], ], 'responses' => [ @@ -21510,59 +12747,27 @@ 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], 'Data' => [ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'UpdateTime' => [ - 'description' => '更新时间。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1593747274195', - ], - 'Data' => [ - 'description' => 'ConfigMap键值对数据。格式如下:'."\n" - ."\n" - .'{"k1":"v1", "k2":"v2"}'."\n" - ."\n" - .'k表示键,v表示值。关于配置项的更多信息,请参见[管理和使用配置项](~~171326~~)。', + 'NamespaceId' => ['description' => '命名空间ID。', 'type' => 'string', 'example' => 'cn-beijing:test'], + 'SecretId' => ['description' => 'Secret实例ID。', 'type' => 'integer', 'format' => 'int64', 'example' => '16'], + 'SecretName' => ['description' => 'Secret实例名称。', 'type' => 'string', 'example' => 'registry-auth'], + 'SecretType' => ['description' => 'Secret实例类型。', 'type' => 'string', 'example' => 'kubernetes.io/dockerconfigjson'], + 'SecretData' => [ + 'description' => 'Secret键值对数据。', 'type' => 'object', - 'example' => '{"k1":"v1","k2":"v2"}', - ], - 'NamespaceId' => [ - 'description' => '命名空间ID。', - 'type' => 'string', - 'example' => 'cn-hangzhou', - ], - 'Description' => [ - 'description' => '描述信息。', - 'type' => 'string', - 'example' => 'test-desc', - ], - 'CreateTime' => [ - 'description' => '创建时间。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1593746835111', + 'additionalProperties' => ['type' => 'string', 'example' => '{".dockerconfigjson":"eyJhdXRocyI6eyJyZWdpc3RyeS12cGMuY24tYmVpamluZy5hbGl5dW5jcy5jb20iOnsidXNlcm5hbWUiOiJ1c2VybmFtZSIsInBhc3N3b3JkIjoicGFzc3dvcmQiLCJhdXRoIjoiZFhObGNtNWhiV1U2Y0dGemMzZHZjbVE9In0sInJlZ2lzdHJ5LmNuLWJlaWppbmcuYWxpeXVuY3MuY29tIjp7InVzZXJuYW1lIjoidXNlcm5hbWUiLCJwYXNzd29yZCI6InBhc3N3b3JkIiwiYXV0aCI6ImRYTmxjbTVoYldVNmNHRnpjM2R2Y21RPSJ9fX0="}', 'description' => 'Secret键值对数据。'], ], + 'CreateTime' => ['description' => '创建时间。', 'type' => 'integer', 'format' => 'int64', 'example' => '1593746835111'], + 'UpdateTime' => ['description' => '更新时间。', 'type' => 'integer', 'format' => 'int64', 'example' => '1593746835111'], 'RelateApps' => [ 'description' => '关联的应用。', 'type' => 'array', @@ -21570,2912 +12775,2238 @@ 'description' => '应用的具体信息。', 'type' => 'object', 'properties' => [ - 'AppName' => [ - 'description' => '应用名称。', - 'type' => 'string', - 'example' => 'test-app', - ], - 'AppId' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'example' => 'f16b4000-9058-4c22-a49d-49a28f0b****', - ], + 'AppId' => ['description' => '应用ID。', 'type' => 'string', 'example' => 'f16b4000-9058-4c22-a49d-49a28f0b****'], + 'AppName' => ['description' => '应用名称。', 'type' => 'string', 'example' => 'test-app'], ], ], ], - 'ConfigMapId' => [ - 'description' => '查询的ConfigMap实例ID。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1', - ], - 'Name' => [ - 'description' => 'ConfigMap实例名称。', - 'type' => 'string', - 'example' => 'test-configmap', - ], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '查询ConfigMap实例详情是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:查询成功。'."\n" - .'- **false**:查询失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '查询Secret实例详情是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:查询成功。'."\n" + .'- **false**:查询失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], - [ - 'errorCode' => 'NotFound.ConfigMap', - 'errorMessage' => 'The ConfigMap object (ID: %s) does not exist.', - ], + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], + ['errorCode' => 'InvalidSecretId.NotFound', 'errorMessage' => 'The specified SecretId [%s] does not exist in our records.', 'description' => '指定的保密字典ID[%s]不存在。'], ], 404 => [ - [ - 'errorCode' => 'InvalidNamespaceId.NotFound', - 'errorMessage' => 'The specified NamespaceId does not exist.', - ], + ['errorCode' => 'InvalidNamespaceId.NotFound', 'errorMessage' => 'The specified NamespaceId does not exist.', 'description' => '指定的NamespaceId不存在。'], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"UpdateTime\\": 1593747274195,\\n \\"Data\\": {\\n \\"k1\\": \\"v1\\",\\n \\"k2\\": \\"v2\\"\\n },\\n \\"NamespaceId\\": \\"cn-hangzhou\\",\\n \\"Description\\": \\"test-desc\\",\\n \\"CreateTime\\": 1593746835111,\\n \\"RelateApps\\": [\\n {\\n \\"AppName\\": \\"test-app\\",\\n \\"AppId\\": \\"f16b4000-9058-4c22-a49d-49a28f0b****\\"\\n }\\n ],\\n \\"ConfigMapId\\": 1,\\n \\"Name\\": \\"test-configmap\\"\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeConfigMapResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <UpdateTime>1593747274195</UpdateTime>\\n <NamespaceId>cn-hangzhou</NamespaceId>\\n <Description>test-desc</Description>\\n <CreateTime>1593746835111</CreateTime>\\n <RelateApps>\\n <AppName>test-app</AppName>\\n <AppId>f16b4000-9058-4c22-a49d-49a28f0b****</AppId>\\n </RelateApps>\\n <ConfigMapId>1</ConfigMapId>\\n <Name>test-configmap</Name>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeConfigMapResponse>","errorExample":""}]', - 'title' => '查询ConfigMap实例详情', - 'summary' => '调用DescribeConfigMap接口查询ConfigMap实例详情。', - ], - 'ListNamespacedConfigMaps' => [ - 'path' => '/pop/v1/sam/configmap/listNamespacedConfigMaps', - 'methods' => [ - 'get', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"NamespaceId\\": \\"cn-beijing:test\\",\\n \\"SecretId\\": 16,\\n \\"SecretName\\": \\"registry-auth\\",\\n \\"SecretType\\": \\"kubernetes.io/dockerconfigjson\\",\\n \\"SecretData\\": {\\n \\"key\\": \\"{\\\\\\".dockerconfigjson\\\\\\":\\\\\\"eyJhdXRocyI6eyJyZWdpc3RyeS12cGMuY24tYmVpamluZy5hbGl5dW5jcy5jb20iOnsidXNlcm5hbWUiOiJ1c2VybmFtZSIsInBhc3N3b3JkIjoicGFzc3dvcmQiLCJhdXRoIjoiZFhObGNtNWhiV1U2Y0dGemMzZHZjbVE9In0sInJlZ2lzdHJ5LmNuLWJlaWppbmcuYWxpeXVuY3MuY29tIjp7InVzZXJuYW1lIjoidXNlcm5hbWUiLCJwYXNzd29yZCI6InBhc3N3b3JkIiwiYXV0aCI6ImRYTmxjbTVoYldVNmNHRnpjM2R2Y21RPSJ9fX0=\\\\\\"}\\"\\n },\\n \\"CreateTime\\": 1593746835111,\\n \\"UpdateTime\\": 1593746835111,\\n \\"RelateApps\\": [\\n {\\n \\"AppId\\": \\"f16b4000-9058-4c22-a49d-49a28f0b****\\",\\n \\"AppName\\": \\"test-app\\"\\n }\\n ]\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeSecretResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <NamespaceId>cn-beijing:test</NamespaceId>\\n <SecretId>16</SecretId>\\n <SecretName>registry-auth</SecretName>\\n <SecretType>kubernetes.io/dockerconfigjson</SecretType>\\n <SecretData>\\n <key>{\\".dockerconfigjson\\":\\"eyJhdXRocyI6eyJyZWdpc3RyeS12cGMuY24tYmVpamluZy5hbGl5dW5jcy5jb20iOnsidXNlcm5hbWUiOiJ1c2VybmFtZSIsInBhc3N3b3JkIjoicGFzc3dvcmQiLCJhdXRoIjoiZFhObGNtNWhiV1U2Y0dGemMzZHZjbVE9In0sInJlZ2lzdHJ5LmNuLWJlaWppbmcuYWxpeXVuY3MuY29tIjp7InVzZXJuYW1lIjoidXNlcm5hbWUiLCJwYXNzd29yZCI6InBhc3N3b3JkIiwiYXV0aCI6ImRYTmxjbTVoYldVNmNHRnpjM2R2Y21RPSJ9fX0=\\"}</key>\\n </SecretData>\\n <CreateTime>1593746835111</CreateTime>\\n <UpdateTime>1593746835111</UpdateTime>\\n <RelateApps>\\n <AppId>f16b4000-9058-4c22-a49d-49a28f0b****</AppId>\\n <AppName>test-app</AppName>\\n </RelateApps>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeSecretResponse>","errorExample":""}]', + 'title' => '查询Secret实例详情', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:23.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2022-11-22T13:28:09.000Z', 'description' => 'OpenAPI 下线'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeSecret'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => '', + 'ramAction' => [ + 'action' => 'sae:DescribeSecret', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + ], + 'DescribeSwimmingLane' => [ + 'summary' => '查询泳道详情。', + 'path' => '/pop/v1/cas/gray/describeSwimmingLane', + 'methods' => ['get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'consumes' => ['application/x-www-form-urlencoded'], + 'produces' => ['application/json'], + 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', - 'abilityTreeCode' => '6377', - 'abilityTreeNodes' => [ - 'FEATUREsaeD9PL61', - ], + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '221504', + 'abilityTreeNodes' => ['FEATUREsaeX255DA'], ], 'parameters' => [ [ 'name' => 'NamespaceId', 'in' => 'query', - 'schema' => [ - 'description' => '命名空间ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => '命名空间ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-beijing:test'], + ], + [ + 'name' => 'GroupId', + 'in' => 'query', + 'schema' => ['description' => '泳道组ID。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '2074'], + ], + [ + 'name' => 'LaneId', + 'in' => 'query', + 'schema' => ['description' => '泳道ID。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '9637'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'description' => '返回数据。', + 'title' => 'Schema of Response', + 'description' => '返回信息。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求 ID。', 'type' => 'string', 'example' => '30375C38-F4ED-4135-A0AE-5C75DC7F****'], + 'Message' => ['description' => '调用结果的附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回 **success** 。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], 'Data' => [ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'ConfigMaps' => [ - 'description' => 'ConfigMap实例列表。', + 'LaneId' => ['description' => '泳道ID。', 'type' => 'integer', 'format' => 'int64', 'example' => '9488'], + 'LaneName' => ['description' => '泳道组名称。', 'type' => 'string', 'example' => 'mse-test'], + 'LaneTag' => ['description' => '泳道标签。', 'type' => 'string', 'example' => '{"alicloud.service.tag":"g1"}'], + 'Enable' => ['description' => '泳道状态:'."\n" + ."\n" + .'- true:开启'."\n" + .'- false:关闭', 'type' => 'boolean', 'example' => 'true'], + 'EnableRules' => ['description' => '是否开启了流量规则。', 'type' => 'boolean', 'example' => 'true'], + 'CanaryModel' => ['description' => '全链路灰度模式:'."\n" + ."\n\n" + .'- 0: 按请求内容路由'."\n" + ."\n" + .'- 1: 按比例路由', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], + 'Apps' => [ + 'description' => '应用信息。', 'type' => 'array', 'items' => [ - 'description' => 'ConfigMap实例的具体信息。', + 'description' => '应用信息。', 'type' => 'object', 'properties' => [ - 'UpdateTime' => [ - 'description' => '更新时间。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1593760185111', - ], - 'Data' => [ - 'description' => 'ConfigMap实例键值对数据。格式如下:'."\n" - ."\n" - .'{"k1":"v1", "k2":"v2"}'."\n" - ."\n" - .'k表示键,v表示值。关于配置项的更多信息,请参见[管理和使用配置项](~~171326~~)。', + 'AppId' => ['description' => '应用ID。', 'type' => 'string', 'example' => '6b4c0f64-f679-4580-8105-91eac4******'], + 'AppName' => ['description' => '应用名称。', 'type' => 'string', 'example' => 'test'], + 'MseAppId' => ['description' => 'MSE实例ID。', 'type' => 'string', 'example' => 'mse-cn-53y49******'], + 'MseAppName' => ['description' => 'MSE实例名称。', 'type' => 'string', 'example' => 'sae-test'], + 'mseNamespaceId' => ['description' => 'MSE命名空间ID。', 'type' => 'string', 'example' => '6733e538-d52f-48e6-91a4-192f91******'], + ], + ], + ], + 'AppEntryRule' => [ + 'description' => '应用入口规则。', + 'type' => 'object', + 'properties' => [ + 'Paths' => [ + 'description' => '请求路径。', + 'type' => 'array', + 'items' => ['description' => 'URL路径。', 'type' => 'string', 'example' => '/Path'], + ], + 'Percentage' => ['description' => '流量比例,按比例路由使用,取值0-100。', 'type' => 'integer', 'format' => 'int32', 'example' => '50'], + 'ConditionJoiner' => ['description' => '条件之间的逻辑连接符:'."\n" + ."\n" + .'- AND:同时满足所有条件'."\n" + .'- OR:满足任意条件', 'type' => 'string', 'example' => 'AND'], + 'Conditions' => [ + 'description' => '匹配条件。', + 'type' => 'array', + 'items' => [ + 'description' => '条件项。', 'type' => 'object', - 'example' => '{"k1":"v1","k2":"v2"}', - ], - 'NamespaceId' => [ - 'description' => '命名空间ID。', - 'type' => 'string', - 'example' => 'cn-hangzhou', - ], - 'Description' => [ - 'description' => '描述信息。', - 'type' => 'string', - 'example' => 'test-desc', - ], - 'CreateTime' => [ - 'description' => '更新时间。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1593760185111', + 'properties' => [ + 'Type' => ['description' => '参数类型。', 'type' => 'string', 'example' => 'Header'], + 'Name' => ['description' => '参数名称。', 'type' => 'string', 'example' => 't'], + 'Condition' => ['description' => '匹配规则。', 'type' => 'string', 'example' => '=='], + 'Value' => ['description' => '条件的匹配值。', 'type' => 'string', 'example' => 'g1'], + 'Values' => [ + 'description' => '条件的匹配值。', + 'type' => 'array', + 'items' => ['description' => '条件的匹配值。', 'type' => 'string', 'example' => 'g1'], + ], + ], ], - 'RelateApps' => [ - 'description' => '关联应用。', - 'type' => 'array', - 'items' => [ - 'description' => '应用的具体信息。', - 'type' => 'object', - 'properties' => [ - 'AppName' => [ - 'description' => '应用名称。', - 'type' => 'string', - 'example' => 'test-app', - ], - 'AppId' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'example' => 'f16b4000-9058-4c22-a49d-49a28f0b****', + ], + 'IndependentPercentageEnable' => ['description' => '是否启用按比例灰度。', 'type' => 'boolean', 'example' => 'true'], + 'PercentageByPath' => [ + 'description' => '流量匹配。', + 'type' => 'object', + 'additionalProperties' => ['type' => 'integer', 'format' => 'int32', 'description' => '流量比例。', 'example' => '100'], + ], + ], + ], + 'MseGatewayEntryRule' => [ + 'description' => 'MSE 网关路由。', + 'type' => 'object', + 'properties' => [ + 'RouteIds' => [ + 'description' => '路由 ID 列表。', + 'type' => 'array', + 'items' => ['description' => '路由 ID。', 'type' => 'integer', 'format' => 'int64', 'example' => '["1001","1002"]'], + ], + 'Routes' => [ + 'description' => '路由规则的详细配置。', + 'type' => 'array', + 'items' => [ + 'description' => '路由配置。', + 'type' => 'object', + 'properties' => [ + 'RouteId' => ['description' => '路由ID。', 'type' => 'integer', 'format' => 'int64', 'example' => '9504'], + 'RouteName' => ['description' => '路由名称。', 'type' => 'string', 'example' => 'demo'."\n"], + 'RoutePredicate' => [ + 'description' => '路由规则。', + 'type' => 'object', + 'properties' => [ + 'PathPredicate' => [ + 'description' => '路径匹配规则。', + 'type' => 'object', + 'properties' => [ + 'Path' => ['description' => '路径。', 'type' => 'string', 'example' => '/Path'], + 'Type' => ['description' => '匹配规则。', 'type' => 'string', 'example' => 'Header'], + ], + ], ], ], ], ], - 'ConfigMapId' => [ - 'description' => 'ConfigMap实例ID。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1', - ], - 'Name' => [ - 'description' => 'ConfigMap实例名称。', - 'type' => 'string', - 'example' => 'test-name', + ], + 'Percentage' => ['description' => '路径流量比例。', 'type' => 'integer', 'format' => 'int32', 'example' => '100'], + 'Conditions' => [ + 'description' => '匹配条件。', + 'type' => 'array', + 'items' => [ + 'description' => '条件项。', + 'type' => 'object', + 'properties' => [ + 'Type' => ['description' => '参数类型。', 'type' => 'string', 'example' => 'Header'], + 'Name' => ['description' => '参数名称。', 'type' => 'string', 'example' => 't'], + 'Condition' => ['description' => '匹配规则。', 'type' => 'string', 'example' => '=='], + 'Value' => ['description' => '条件的匹配值。', 'type' => 'string', 'example' => 'g1'], + ], ], ], + 'PercentageByRoute' => [ + 'description' => '流量配置。', + 'type' => 'object', + 'additionalProperties' => ['type' => 'integer', 'format' => 'int32', 'description' => '配置流量比例,范围为1~100。', 'example' => '100'], + ], + 'IndependentPercentageEnable' => ['description' => '是否启用按比例灰度。', 'type' => 'boolean', 'example' => 'true'], + 'ConditionJoiner' => ['description' => '条件之间的逻辑连接符。', 'type' => 'string', 'example' => 'AND'], ], ], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '是否成功获取ConfigMap实例列表。取值说明如下:'."\n" - ."\n" - .'- **true**:获取成功。'."\n" - .'- **false**:获取失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:查询成功。'."\n" + .'- **false**:查询失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], + ['errorCode' => 'MseGatewayRule.CreateFailed', 'errorMessage' => 'Create MSE Gateway rule failed.', 'description' => '创建MSE微服务网关路由失败。'], + ['errorCode' => 'InternalApiError', 'errorMessage' => 'An exception occurred when calling mse:%s, error message: %s.', 'description' => '调用 mse:%s 接口异常,%s'], ], - 404 => [ - [ - 'errorCode' => 'InvalidNamespaceId.NotFound', - 'errorMessage' => 'The specified NamespaceId does not exist.', + ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"30375C38-F4ED-4135-A0AE-5C75DC7F****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"LaneId\\": 9488,\\n \\"LaneName\\": \\"mse-test\\",\\n \\"LaneTag\\": \\"{\\\\\\"alicloud.service.tag\\\\\\":\\\\\\"g1\\\\\\"}\\",\\n \\"Enable\\": true,\\n \\"EnableRules\\": true,\\n \\"CanaryModel\\": 0,\\n \\"Apps\\": [\\n {\\n \\"AppId\\": \\"6b4c0f64-f679-4580-8105-91eac4******\\",\\n \\"AppName\\": \\"test\\",\\n \\"MseAppId\\": \\"mse-cn-53y49******\\",\\n \\"MseAppName\\": \\"sae-test\\",\\n \\"mseNamespaceId\\": \\"6733e538-d52f-48e6-91a4-192f91******\\"\\n }\\n ],\\n \\"AppEntryRule\\": {\\n \\"Paths\\": [\\n \\"/Path\\"\\n ],\\n \\"Percentage\\": 50,\\n \\"ConditionJoiner\\": \\"AND\\",\\n \\"Conditions\\": [\\n {\\n \\"Type\\": \\"Header\\",\\n \\"Name\\": \\"t\\",\\n \\"Condition\\": \\"==\\",\\n \\"Value\\": \\"g1\\",\\n \\"Values\\": [\\n \\"g1\\"\\n ]\\n }\\n ],\\n \\"IndependentPercentageEnable\\": true,\\n \\"PercentageByPath\\": {\\n \\"key\\": 100\\n }\\n },\\n \\"MseGatewayEntryRule\\": {\\n \\"RouteIds\\": [\\n 0\\n ],\\n \\"Routes\\": [\\n {\\n \\"RouteId\\": 9504,\\n \\"RouteName\\": \\"demo\\\\n\\",\\n \\"RoutePredicate\\": {\\n \\"PathPredicate\\": {\\n \\"Path\\": \\"/Path\\",\\n \\"Type\\": \\"Header\\"\\n }\\n }\\n }\\n ],\\n \\"Percentage\\": 100,\\n \\"Conditions\\": [\\n {\\n \\"Type\\": \\"Header\\",\\n \\"Name\\": \\"t\\",\\n \\"Condition\\": \\"==\\",\\n \\"Value\\": \\"g1\\"\\n }\\n ],\\n \\"PercentageByRoute\\": {\\n \\"key\\": 100\\n },\\n \\"IndependentPercentageEnable\\": true,\\n \\"ConditionJoiner\\": \\"AND\\"\\n }\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => '查询泳道详情', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:28.000Z', 'description' => 'OpenAPI 下线'], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeSwimmingLane', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"ConfigMaps\\": [\\n {\\n \\"UpdateTime\\": 1593760185111,\\n \\"Data\\": {\\n \\"k1\\": \\"v1\\",\\n \\"k2\\": \\"v2\\"\\n },\\n \\"NamespaceId\\": \\"cn-hangzhou\\",\\n \\"Description\\": \\"test-desc\\",\\n \\"CreateTime\\": 1593760185111,\\n \\"RelateApps\\": [\\n {\\n \\"AppName\\": \\"test-app\\",\\n \\"AppId\\": \\"f16b4000-9058-4c22-a49d-49a28f0b****\\"\\n }\\n ],\\n \\"ConfigMapId\\": 1,\\n \\"Name\\": \\"test-name\\"\\n }\\n ]\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<ListNamespacedConfigMapsResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <ConfigMaps>\\n <UpdateTime>1593760185111</UpdateTime>\\n <NamespaceId>cn-hangzhou</NamespaceId>\\n <Description>test-desc</Description>\\n <CreateTime>1593760185111</CreateTime>\\n <RelateApps>\\n <AppName>test-app</AppName>\\n <AppId>f16b4000-9058-4c22-a49d-49a28f0b****</AppId>\\n </RelateApps>\\n <ConfigMapId>1</ConfigMapId>\\n <Name>test-name</Name>\\n </ConfigMaps>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</ListNamespacedConfigMapsResponse>","errorExample":""}]', - 'title' => '获取ConfigMap实例列表', - 'summary' => '获取命名空间内ConfigMap实例列表。', ], - 'CreateGreyTagRoute' => [ - 'summary' => '为Spring Cloud或Dubbo应用创建灰度规则。', - 'path' => '/pop/v1/sam/tagroute/greyTagRoute', - 'methods' => [ - 'post', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'DescribeWebApplication' => [ + 'summary' => '查询Web应用。', + 'path' => '/pop/v2/api/web/applications/{ApplicationId}', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], + 'tags' => [], 'security' => [ [ 'AK' => [], ], ], - 'produces' => [], + 'consumes' => ['application/json'], + 'produces' => ['application/json'], 'operationType' => 'readAndWrite', - 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'create', - 'abilityTreeCode' => '10251', - 'abilityTreeNodes' => [ - 'FEATUREsaeETR3ZD', - ], + 'operationType' => 'get', + 'abilityTreeCode' => '225942', + 'abilityTreeNodes' => ['FEATUREsaeUWY6ZL'], ], 'parameters' => [ [ - 'name' => 'AppId', + 'name' => 'NamespaceId', 'in' => 'query', - 'schema' => [ - 'title' => '应用ID', - 'description' => '应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '7802c49a-67bc-4167-8369-9a9c003c****', - ], + 'allowEmptyValue' => false, + 'schema' => ['title' => '命名空间ID', 'description' => '命名空间ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-beijing:test'], ], [ - 'name' => 'Name', - 'in' => 'query', - 'schema' => [ - 'title' => '规则名称', - 'description' => '规则名称。支持以小写字母开头,以数字或小写字母结尾,仅可包含小写字母、中文字符、数字及短划线(-)。不超过64个字符。', - 'type' => 'string', - 'required' => true, - 'example' => 'dubbo-echo', + 'name' => 'ApplicationId', + 'in' => 'path', + 'allowEmptyValue' => false, + 'schema' => ['title' => '应用ID', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****'], + ], + ], + 'responses' => [ + 200 => [ + 'description' => '返回信息', + 'schema' => ['title' => '返回信息', 'description' => '返回信息。', 'required' => false, '$ref' => '#/components/schemas/WebApplicationBody'], + 'examples' => [], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 0,\\n \\"Data\\": {\\n \\"ApplicationId\\": \\"\\",\\n \\"ApplicationName\\": \\"\\",\\n \\"CreatedTime\\": \\"\\",\\n \\"Description\\": \\"\\",\\n \\"LastModifiedTime\\": \\"\\",\\n \\"NamespaceId\\": \\"\\",\\n \\"RevisionConfig\\": {\\n \\"Containers\\": [\\n {\\n \\"Args\\": \\"[\\\\\\"abc\\\\\\", \\\\\\">\\\\\\", \\\\\\"file0\\\\\\"]\\",\\n \\"Command\\": \\"[\\\\\\"/bin/sh\\\\\\"]\\",\\n \\"EnvironmentVariables\\": {\\n \\"key\\": \\"\\"\\n },\\n \\"Image\\": \\"registry.cn-shanghai.aliyuncs.com/serverless_devsxxxxx\\",\\n \\"WebNASConfig\\": {\\n \\"MountPoints\\": [\\n {\\n \\"MountDir\\": \\"\\",\\n \\"NasAddr\\": \\"\\",\\n \\"NasPath\\": \\"\\"\\n }\\n ]\\n },\\n \\"WebOSSConfig\\": {\\n \\"MountPoints\\": [\\n {\\n \\"BucketName\\": \\"\\",\\n \\"BucketPath\\": \\"\\",\\n \\"MountDir\\": \\"\\",\\n \\"ReadOnly\\": true\\n }\\n ]\\n },\\n \\"Port\\": 8080,\\n \\"RequestConcurrency\\": 100,\\n \\"RequestTimeout\\": 60,\\n \\"Resources\\": {\\n \\"Cpu\\": 2000,\\n \\"Memory\\": 2048\\n },\\n \\"StartupProbe\\": {\\n \\"FailureThreshold\\": 0,\\n \\"InitialDelaySeconds\\": 0,\\n \\"PeriodSeconds\\": 0,\\n \\"ProbeHandler\\": {\\n \\"HttpGet\\": {\\n \\"Host\\": \\"\\",\\n \\"HttpHeaders\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"value\\": \\"\\"\\n }\\n ],\\n \\"Path\\": \\"\\",\\n \\"Port\\": 0,\\n \\"Scheme\\": \\"\\"\\n },\\n \\"TcpSocket\\": {\\n \\"Host\\": \\"\\",\\n \\"Port\\": 0\\n }\\n },\\n \\"TimeoutSeconds\\": 0\\n },\\n \\"SLSCollectConfigs\\": {\\n \\"CollectConfigs\\": [\\n {\\n \\"LogPath\\": \\"\\",\\n \\"LogType\\": \\"\\",\\n \\"LogstoreName\\": \\"\\",\\n \\"LogtailName\\": \\"\\",\\n \\"MachineGroup\\": \\"\\",\\n \\"ProjectName\\": \\"\\"\\n }\\n ]\\n },\\n \\"MetricsCollectConfig\\": {\\n \\"LogstoreName\\": \\"my-sls-logstorename\\",\\n \\"ProjectName\\": \\"my-sls-project\\",\\n \\"EnablePushToUserSLS\\": true\\n },\\n \\"ImageRegistryConfig\\": {\\n \\"AuthConfig\\": {\\n \\"UserName\\": \\"admin\\",\\n \\"Password\\": \\"abc***\\"\\n },\\n \\"CertConfig\\": {\\n \\"Insecure\\": true,\\n \\"CertBase64\\": \\"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCmZha2VDZXJ0aWZpY2F0ZQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0t\\"\\n }\\n }\\n }\\n ],\\n \\"EnableArmsMetrics\\": true,\\n \\"WebNetworkConfig\\": {\\n \\"InternetAccess\\": true,\\n \\"SecurityGroupId\\": \\"sg-bp18hj1wtxgy3b0***\\",\\n \\"VSwitchIds\\": [\\n \\"vsw-bp1ozpcrdc6r****\\"\\n ]\\n }\\n },\\n \\"InternetURL\\": \\"\\",\\n \\"IntranetURL\\": \\"\\",\\n \\"VpcId\\": \\"\\",\\n \\"WebScalingConfig\\": {\\n \\"MaximumInstanceCount\\": 10,\\n \\"MinimumInstanceCount\\": 0\\n },\\n \\"WebTrafficConfig\\": {\\n \\"WebAclConfig\\": {\\n \\"WebAclEntries\\": [\\n {\\n \\"Entry\\": \\"1.2.3.4/32\\",\\n \\"Description\\": \\"办公网\\"\\n }\\n ],\\n \\"AclDescription\\": \\"\\"\\n },\\n \\"AuthType\\": \\"Anonymous\\",\\n \\"DisableInternetURL\\": true,\\n \\"RevisionsTrafficWeight\\": {\\n \\"key\\": 0\\n }\\n }\\n },\\n \\"Message\\": \\"\\",\\n \\"RequestId\\": \\"\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => '查询Web应用', + 'description' => '调用DescribeWebApplication接口查询Web应用。', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeWebApplication', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], + ], + ], + 'DescribeWebApplicationResourceStatics' => [ + 'summary' => '获取Web应用资源用量统计。', + 'path' => '/pop/v2/api/web/applications-observability/{ApplicationId}/resource', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], + 'tags' => [], + 'security' => [ [ - 'name' => 'Description', + 'AK' => [], + ], + ], + 'consumes' => ['application/json'], + 'produces' => ['application/json'], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '225943', + 'abilityTreeNodes' => ['FEATUREsae1X6KNP'], + ], + 'parameters' => [ + [ + 'name' => 'NamespaceId', 'in' => 'query', - 'schema' => [ - 'title' => '规则名称', - 'description' => '规则描述。不超过64个字符。', - 'type' => 'string', - 'required' => false, - 'example' => '灰度发布-地域灰度', - ], + 'allowEmptyValue' => false, + 'schema' => ['title' => '命名空间ID', 'description' => '命名空间ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], ], [ - 'name' => 'ScRules', + 'name' => 'ApplicationId', + 'in' => 'path', + 'allowEmptyValue' => false, + 'schema' => ['title' => '应用ID', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => '7e41aff0-9eca-45c9-ac48-675e09******'], + ], + [ + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'title' => 'SpringCloud规则', - 'description' => '为Spring Cloud应用创建的灰度规则。当您的应用为Spring Cloud框架时必填,且无需填写**DubboRules**参数。', - 'type' => 'string', - 'required' => false, - 'example' => '[{"condition":"OR","items":[{"cond":"==","name":"grey","operator":"rawvalue","type":"param","value":"true"},{"cond":"==","name":"grey","operator":"rawvalue","type":"cookie","value":"true"},{"cond":"==","name":"grey","operator":"rawvalue","type":"header","value":"true"}],"path":"/post-echo/hi"}]', - ], + 'schema' => ['description' => '地域ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-beijing'], ], [ - 'name' => 'DubboRules', + 'name' => 'StartTime', 'in' => 'query', - 'schema' => [ - 'title' => 'Dubbo规则', - 'description' => '为Dubbo应用创建的灰度规则。当您的应用为Dubbo框架时必填,且无需填写**ScRules**参数。', - 'type' => 'string', - 'required' => false, - 'example' => '[{"condition":"OR","group":"DUBBO","items":[{"cond":"==","expr":".key1","index":0,"operator":"rawvalue","value":"value1"},{"cond":"==","expr":".key2","index":0,"operator":"rawvalue","value":"value2"}],"methodName":"echo","serviceName":"com.alibaba.edas.boot.EchoService","version":"1.0.0"}]', - ], + 'schema' => ['description' => '任务的创建时间。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1562831689704'], ], [ - 'name' => 'AlbRules', + 'name' => 'EndTime', 'in' => 'query', - 'schema' => [ - 'title' => 'Alb灰度规则', - 'description' => '为配置好ALB网关路由的应用创建的灰度规则。', - 'type' => 'string', - 'required' => false, - 'example' => '[{"condition":"AND","items":[{"cond":"==","name":"grey","operator":"rawvalue","type":"sourceIp","value":"127.0.0.1"},{"cond":"==","name":"grey","operator":"rawvalue","type":"cookie","value":"true"},{"cond":"==","name":"grey","operator":"rawvalue","type":"header","value":"true"}],"path":"/post-echo/hi"}]', - ], + 'schema' => ['description' => '获取数据结束时间。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1687832980387'], ], ], 'responses' => [ 200 => [ - 'schema' => [ - 'description' => '返回数据。', - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '9D29CBD0-45D3-410B-9826-52F86F90****', - ], - 'Message' => [ - 'description' => '调用结果的附加信息。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], - 'Data' => [ - 'description' => '灰度规则信息。', - 'type' => 'object', - 'properties' => [ - 'GreyTagRouteId' => [ - 'description' => '灰度规则ID,全局唯一。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '16', - ], - ], - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '查询变更单信息是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:查询成功。'."\n" - .'- **false**:查询失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'description' => '返回信息', + 'schema' => ['title' => '返回信息', 'description' => '返回信息。', 'required' => false, '$ref' => '#/components/schemas/WebApplicationResourceStaticsBody'], + 'examples' => [], + ], + ], + 'title' => '获取Web应用资源用量统计', + 'description' => '获取Web应用资源用量统计。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:14.000Z', 'description' => 'OpenAPI 下线'], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeWebApplicationResourceStatics', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], ], - 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], - [ - 'errorCode' => 'Application.ChangerOrderRunning', - 'errorMessage' => 'An application change process is in progress. Please try again later.', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Data\\": {\\n \\"Length\\": 20,\\n \\"WebAppStatics\\": [\\n {\\n \\"CpuUsage\\": 1327,\\n \\"Invocations\\": 2,\\n \\"InternetTrafficOut\\": 2792,\\n \\"MemoryUsage\\": 5045929297920\\n }\\n ]\\n },\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Success\\": true\\n}","type":"json"}]', + ], + 'DescribeWebApplicationRevision' => [ + 'path' => '/pop/v2/api/web/application-revisions/{ApplicationId}/revisions/{RevisionId}', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], + 'tags' => [], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'consumes' => ['application/json'], + 'produces' => ['application/json'], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '225944', + 'abilityTreeNodes' => ['FEATUREsae37J6Z9'], + ], + 'parameters' => [ + [ + 'name' => 'NamespaceId', + 'in' => 'query', + 'allowEmptyValue' => false, + 'schema' => ['title' => 'namespace id', 'description' => '命名空间ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], + ], + [ + 'name' => 'ApplicationId', + 'in' => 'path', + 'allowEmptyValue' => false, + 'schema' => ['title' => 'application id', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => '7e41aff0-9eca-45c9-ac48-675e09******'], + ], + [ + 'name' => 'RevisionId', + 'in' => 'path', + 'allowEmptyValue' => false, + 'schema' => ['title' => 'revision id', 'description' => '修订版本ID。', 'type' => 'string', 'required' => true, 'example' => '1'], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => ['title' => '返回信息', 'description' => '返回信息。', 'required' => false, '$ref' => '#/components/schemas/WebApplicationRevisionBody'], + 'examples' => [], + ], + ], + 'title' => '查询Web应用版本详情', + 'summary' => '查询Web应用版本详情。', + 'description' => '查询Web应用版本详情。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:14.000Z', 'description' => 'OpenAPI 下线'], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeWebApplicationRevision', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"9D29CBD0-45D3-410B-9826-52F86F90****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"GreyTagRouteId\\": 16\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<CreateGreyTagRouteResponse>\\n <RequestId>9D29CBD0-45D3-410B-9826-52F86F90****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <GreyTagRouteId>16</GreyTagRouteId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</CreateGreyTagRouteResponse>","errorExample":""}]', - 'title' => 'CreateGreyTagRoute', - 'description' => '> 目前一个应用只能配置一条灰度规则。', - 'requestParamsDescription' => '- **ScRules参数说明**'."\n" - ."\n" - .'|参数名称 |类型|示例 |描述 |'."\n" - .'| --- | --- | --- | --- |'."\n" - .'|condition|String|OR |灰度规则的条件模式,取值说明如下:<br />- **AND**:表示与,即同时满足条件列表中的所有条件。<br />- **OR**:表示或,即满足条件列表中的任一条件。|'."\n" - .'|path|String | /path|Spring Cloud应用灰度规则对应的路径。|'."\n" - .'|items |Array of items | |条件列表。|'."\n" - ."\n" - .'**items参数说明**'."\n" - ."\n" - .'|参数名称 |类型|示例 |描述 |'."\n" - .'| --- | --- | --- | --- |'."\n" - .'|name|String|test |参数名。|'."\n" - .'|cond |String | == |比较操作符。可取值:**>**、**<**、**>=**、**<=**、**==**以及**!=**。|'."\n" - .'|type | String| cookie |比较类型,取值说明如下:<br />- **param**:表示Parameter。<br />- **cookie**:表示Cookie。<br />- **header**:表示Header。 |'."\n" - .'|value|String | test|参数取值,根据**type**和**name**得到的值跟这个值进行比较。|'."\n" - .'|operator| String| rawvalue|运算符,取值说明如下:<br />- **rawvalue**:表示直接比较。<br />- **list**:表示白名单。<br />- **mod**:表示对100取模。<br />- **deterministic\\_proportional\\_steaming\\_division**:表示百分比。|'."\n" - ."\n" - .'- **DubboRules参数说明**'."\n" - ."\n" - .'|参数名称 |类型|示例 |描述 |'."\n" - .'| --- | --- | --- | --- |'."\n" - .'|condition|String|OR |灰度规则的条件模式,取值说明如下:<br />- **AND**:表示与,即同时满足条件列表中的所有条件。<br />- **OR**:表示或,即满足条件列表中的任一条件。|'."\n" - .'|methodName|String |echo|Dubbo服务的方法名。|'."\n" - .'|serviceName| String|com.alibaba.edas.boot.EchoService|Dubbo服务名称。|'."\n" - .'|version |String | 1.0.0|Dubbo服务版本。|'."\n" - .'|items |Array of items | |条件列表。|'."\n" - .'|group|String|DUBBO|灰度规则对应的Dubbo服务的分组。|'."\n" - ."\n" - .'**items参数说明**'."\n" - ."\n" - .'|参数名称 |类型|示例 |描述 |'."\n" - .'| --- | --- | --- | --- |'."\n" - .'|index|Integer|0 |参数编号,0表示第一个参数。|'."\n" - .'|expr|String|.name|参数值获取表达式。取值说明如下:<br />- **留空**:表示直接取当前参数的值。<br />- **.name**:表示取参数的name属性,相当于args0.getName()。<br />- **.isEnabled()** :表示取参数的enabled属性,相当于args0.isEnabled()。<br />- **[0]**:表示当前参数应是一个数组,取数组的第一个值,相当于args0[0],注意开始没有英文句点(.)。<br />- **.get(0) **:表示当前参数应是一个List,取List的第一个值,相当于args0.get(0)。<br />- **.get("key")**:表示当前参数是一个Map,获取key对应的值,相当于args0.get("key")。|'."\n" - .'|cond |String | == |比较操作符。可取值:**>**、**<**、**>=**、**<=**、**==**以及**!=**。|'."\n" - .'|value|String | test|参数取值,根据**expr**和**index**得到的值跟这个值进行比较。|'."\n" - .'|operator| String| rawvalue|运算符,取值说明如下:<br />- **rawvalue**:表示直接比较。<br />- **list**:表示白名单。<br />- **mod**:表示对100取模。<br />- **deterministic\\_proportional\\_steaming\\_division**:表示百分比。|', ], - 'DeleteGreyTagRoute' => [ - 'summary' => '根据规则ID删除灰度规则。', - 'path' => '/pop/v1/sam/tagroute/greyTagRoute', - 'methods' => [ - 'delete', + 'DescribeWebApplicationScalingConfig' => [ + 'summary' => '获取Web应用弹性配置。', + 'path' => '/pop/v2/api/web/application-scaling/{ApplicationId}', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], + 'tags' => [], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'consumes' => ['application/json'], + 'produces' => ['application/json'], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '225945', + 'abilityTreeNodes' => ['FEATUREsaeWX6046'], + ], + 'parameters' => [ + [ + 'name' => 'NamespaceId', + 'in' => 'query', + 'allowEmptyValue' => false, + 'schema' => ['title' => '命名空间ID', 'description' => '命名空间ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-beijing:sae-test'], + ], + [ + 'name' => 'ApplicationId', + 'in' => 'path', + 'allowEmptyValue' => false, + 'schema' => ['title' => '应用ID', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****'], + ], + ], + 'responses' => [ + 200 => [ + 'description' => '返回信息', + 'schema' => ['title' => '返回信息', 'description' => '返回信息。', 'required' => false, '$ref' => '#/components/schemas/WebApplicationScalingConfigBody'], + 'examples' => [], + ], + ], + 'title' => '获取Web应用弹性配置', + 'description' => '调用DescribeWebApplicationScalingConfig接口获取Web应用弹性配置。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:13.000Z', 'description' => 'OpenAPI 下线'], ], - 'schemes' => [ - 'http', - 'https', + 'flowControl' => [ + 'flowControlList' => [], ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeWebApplicationScalingConfig', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Data\\": {\\n \\"MaximumInstanceCount\\": 10,\\n \\"MinimumInstanceCount\\": 1\\n },\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Success\\": true\\n}","type":"json"}]', + ], + 'DescribeWebApplicationTrafficConfig' => [ + 'summary' => '查询Web应用流量配置。', + 'path' => '/pop/v2/api/web/application-traffic/{ApplicationId}', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], + 'tags' => [], 'security' => [ [ 'AK' => [], ], ], - 'deprecated' => false, + 'consumes' => ['application/json'], + 'produces' => ['application/json'], + 'operationType' => 'readAndWrite', 'systemTags' => [ - 'operationType' => 'delete', - 'abilityTreeCode' => '10484', - 'abilityTreeNodes' => [ - 'FEATUREsaeETR3ZD', - ], + 'operationType' => 'get', + 'abilityTreeCode' => '225946', + 'abilityTreeNodes' => ['FEATUREsaeOXSSSO'], ], 'parameters' => [ [ - 'name' => 'GreyTagRouteId', + 'name' => 'NamespaceId', 'in' => 'query', - 'schema' => [ - 'title' => '规则ID', - 'description' => '规则ID。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'example' => '1', - ], + 'allowEmptyValue' => false, + 'schema' => ['title' => '命名空间ID', 'description' => '命名空间ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-beijing:test'], + ], + [ + 'name' => 'ApplicationId', + 'in' => 'path', + 'allowEmptyValue' => false, + 'schema' => ['title' => '应用ID', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****'], ], ], 'responses' => [ 200 => [ - 'schema' => [ - 'description' => '返回数据。', - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '9D29CBD0-45D3-410B-9826-52F86F90****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], - 'Data' => [ - 'description' => '灰度规则信息。', - 'type' => 'object', - 'properties' => [ - 'GreyTagRouteId' => [ - 'description' => '灰度规则ID,全局唯一。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '16', - ], - ], - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '查询变更单信息是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:表示查询成功。'."\n" - .'- **false**:表示查询失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'description' => '返回信息', + 'schema' => ['title' => '返回信息', 'description' => '返回信息。', 'required' => false, '$ref' => '#/components/schemas/WebApplicationTrafficConfigBody'], + 'examples' => [], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Data\\": {\\n \\"WebAclConfig\\": {\\n \\"WebAclEntries\\": [\\n {\\n \\"Entry\\": \\"219.145.XX.XX\\"\\n }\\n ]\\n },\\n \\"AuthType\\": \\"Anonymous\\",\\n \\"DisableInternetURL\\": true,\\n \\"RevisionsTrafficWeight\\": {\\n \\"key\\": 0\\n }\\n },\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => '查询Web应用流量配置', + 'description' => '调用DescribeWebApplicationTrafficConfig接口查询Web应用流量配置。', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeWebApplicationTrafficConfig', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], ], - 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', + ], + 'DescribeWebCustomDomain' => [ + 'summary' => '获取Web应用自定义域名详情。', + 'path' => '/pop/v2/api/web/custom-domains/{DomainName}', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], + 'tags' => [], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'consumes' => ['application/json'], + 'produces' => ['application/json'], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '225947', + 'abilityTreeNodes' => ['FEATUREsae5U7VP0'], + ], + 'parameters' => [ + [ + 'name' => 'NamespaceId', + 'in' => 'query', + 'allowEmptyValue' => false, + 'schema' => ['title' => '命名空间ID', 'description' => '命名空间ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-shanghai'], + ], + [ + 'name' => 'DomainName', + 'in' => 'path', + 'allowEmptyValue' => false, + 'schema' => ['title' => '命名空间名称', 'description' => '自定义域名。', 'type' => 'string', 'required' => true, 'example' => 'example.com'], + ], + ], + 'responses' => [ + 200 => [ + 'description' => 'OK', + 'schema' => ['description' => 'OK。', '$ref' => '#/components/schemas/WebCustomDomain'], + 'examples' => [], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"accountId\\": \\"123xxxxxx\\",\\n \\"WebCertConfig\\": {\\n \\"CertName\\": \\"\\",\\n \\"Certificate\\": \\"\\",\\n \\"PrivateKey\\": \\"\\"\\n },\\n \\"CreatedTime\\": \\"2023-03-30T08:02:19Z\\",\\n \\"DefaultForwardingAppName\\": \\"appxxxxx\\",\\n \\"DomainName\\": \\"example.com\\",\\n \\"LastModifiedTime\\": \\"2023-03-30T08:02:19Z\\",\\n \\"NamespaceId\\": \\"\\",\\n \\"Protocol\\": \\"HTTP\\",\\n \\"WebTLSConfig\\": {\\n \\"CipherSuites\\": [\\n \\"\\"\\n ],\\n \\"MaxVersion\\": \\"\\",\\n \\"MinVersion\\": \\"\\"\\n },\\n \\"WebWAFConfig\\": {\\n \\"EnableWAF\\": true\\n },\\n \\"RouteConfig\\": {\\n \\"routes\\": [\\n {\\n \\"path\\": \\"\\",\\n \\"applicationName\\": \\"\\"\\n }\\n ]\\n }\\n}","type":"json"}]', + 'title' => '获取Web应用自定义域名详情', + 'description' => '获取Web应用自定义域名详情。', + 'changeSet' => [ + ['createdAt' => '2024-08-28T10:49:33.000Z', 'description' => '响应参数发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeWebCustomDomain', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => 'Namespace', 'arn' => 'acs:sae:{#regionId}:{#accountId}:namespace/{#NamespaceId}'], + ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"9D29CBD0-45D3-410B-9826-52F86F90****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"GreyTagRouteId\\": 16\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeleteGreyTagRouteResponse>\\n <RequestId>9D29CBD0-45D3-410B-9826-52F86F90****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <GreyTagRouteId>16</GreyTagRouteId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DeleteGreyTagRouteResponse>","errorExample":""}]', - 'title' => 'DeleteGreyTagRoute', ], - 'UpdateGreyTagRoute' => [ - 'summary' => '更新灰度规则。', - 'path' => '/pop/v1/sam/tagroute/greyTagRoute', - 'methods' => [ - 'put', + 'DescribeWebInstanceLogs' => [ + 'summary' => '获取Web应用实例日志。', + 'path' => '/pop/v2/api/web/applications-observability/{ApplicationId}/instances/{InstanceId}/logs', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], + 'tags' => [], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'consumes' => ['application/json'], + 'produces' => ['application/json'], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '225948', + 'abilityTreeNodes' => ['FEATUREsaeWFLA5T'], + ], + 'parameters' => [ + [ + 'name' => 'NamespaceId', + 'in' => 'query', + 'allowEmptyValue' => false, + 'schema' => ['title' => '命名空间ID', 'description' => '命名空间ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-shanghai'], + ], + [ + 'name' => 'ApplicationId', + 'in' => 'path', + 'allowEmptyValue' => false, + 'schema' => ['title' => '应用ID', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => '7e41aff0-9eca-45c9-ac48-675e09******'], + ], + [ + 'name' => 'InstanceId', + 'in' => 'path', + 'allowEmptyValue' => false, + 'schema' => ['title' => '应用实例ID', 'description' => '应用实例ID。', 'type' => 'string', 'required' => true, 'example' => 'c-667b71bc-185b1067-5d99255c3abd'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'responses' => [ + 200 => [ + 'description' => '返回信息', + 'schema' => ['title' => '返回信息', 'description' => '返回信息。', 'required' => false, '$ref' => '#/components/schemas/WebApplicationInstanceLogsBody'], + 'examples' => [], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Data\\": {\\n \\"WebLogEntrys\\": [\\n {\\n \\"Message\\": \\"success\\"\\n }\\n ]\\n },\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => '获取Web应用实例日志', + 'description' => '获取Web应用实例日志。', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeWebInstanceLogs', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + ], + 'DisableApplicationScalingRule' => [ + 'path' => '/pop/v1/sam/scale/disableApplicationScalingRule', + 'methods' => ['put'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', - 'abilityTreeCode' => '10391', - 'abilityTreeNodes' => [ - 'FEATUREsaeETR3ZD', - ], + 'abilityTreeCode' => '6355', + 'abilityTreeNodes' => ['FEATUREsae5HLO11'], ], 'parameters' => [ [ - 'name' => 'Description', + 'name' => 'AppId', 'in' => 'query', - 'schema' => [ - 'title' => '规则名称', - 'description' => '规则描述。', - 'type' => 'string', - 'required' => false, - 'example' => '灰度发布-地域灰度', - ], + 'schema' => ['description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****'], ], [ - 'name' => 'ScRules', + 'name' => 'ScalingRuleName', 'in' => 'query', + 'schema' => ['description' => '弹性伸缩策略名称。', 'type' => 'string', 'required' => true, 'example' => 'timer-0800-2100'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'title' => 'SpringCloud规则', - 'description' => 'Spring Cloud应用的灰度规则。', - 'type' => 'string', - 'required' => false, - 'example' => '[{"condition":"OR","items":[{"cond":"==","name":"grey","operator":"rawvalue","type":"param","value":"true"},{"cond":"==","name":"grey","operator":"rawvalue","type":"cookie","value":"true"},{"cond":"==","name":"grey","operator":"rawvalue","type":"header","value":"true"}],"path":"/post-echo/hi"}]', + 'description' => '返回信息。', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '禁用应用弹性伸缩策略是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:禁用成功。'."\n" + .'- **false**:禁用失败。', 'type' => 'boolean', 'example' => 'true'], + ], ], ], + ], + 'errorCodes' => [ + 400 => [ + ['errorCode' => 'System.Upgrading', 'errorMessage' => 'The system is being upgraded. Please try again later.', 'description' => '系统正在升级,请稍后操作。'], + ['errorCode' => 'Application.ChangerOrderRunning', 'errorMessage' => 'An application change process is in progress. Please try again later.', 'description' => '应用有变更流程正在执行,请稍后重试。'], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Message\\": \\"success\\",\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DisableApplicationScalingRuleResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Message>success</Message>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DisableApplicationScalingRuleResponse>","errorExample":""}]', + 'title' => '禁用应用弹性伸缩策略', + 'summary' => '调用DisableApplicationScalingRule接口禁用应用弹性伸缩策略。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:23.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2022-12-19T02:15:03.000Z', 'description' => '响应参数发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DisableApplicationScalingRule'], + ], + ], + 'ramActions' => [ [ - 'name' => 'DubboRules', - 'in' => 'query', - 'schema' => [ - 'title' => 'Dubbo规则', - 'description' => 'Dubbo应用的灰度规则。', - 'type' => 'string', - 'required' => false, - 'example' => '[{"condition":"OR","group":"DUBBO","items":[{"cond":"==","expr":".key1","index":0,"operator":"rawvalue","value":"value1"},{"cond":"==","expr":".key2","index":0,"operator":"rawvalue","value":"value2"}],"methodName":"echo","serviceName":"com.alibaba.edas.boot.EchoService","version":"1.0.0"}]', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'sae:DisableApplicationScalingRule', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], + ], + ], + 'DisableArms' => [ + 'path' => '/pop/v1/arms/disableArms', + 'methods' => ['post'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'GreyTagRouteId', - 'in' => 'query', - 'schema' => [ - 'title' => '规则ID', - 'description' => '灰度规则ID。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'example' => '1', - ], + 'AK' => [], ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '6357', + 'abilityTreeNodes' => ['FEATUREsae8U8CHA'], + ], + 'parameters' => [ [ - 'name' => 'AlbRules', + 'name' => 'AppId', 'in' => 'query', - 'schema' => [ - 'description' => 'Alb网关路由的灰度规则。', - 'type' => 'string', - 'required' => false, - 'example' => '[{"condition":"AND","items":[{"cond":"==","name":"grey","operator":"rawvalue","type":"sourceIp","value":"127.0.0.1"},{"cond":"==","name":"grey","operator":"rawvalue","type":"cookie","value":"true"},{"cond":"==","name":"grey","operator":"rawvalue","type":"header","value":"true"}],"path":"/post-echo/hi"}]', - ], + 'schema' => ['description' => '应用ID', 'type' => 'string', 'required' => true, 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69a26c'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '9D29CBD0-45D3-410B-9826-52F86F90****', - ], - 'Message' => [ - 'description' => '调用结果的附加信息。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '6DA47906-6070-5A16-896D-67DCF38A6B7B'], + 'Message' => ['description' => '调用结果的附加信息。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0bc3b4ad17412276398692303e4cb1'], 'Data' => [ - 'description' => '灰度规则信息。', + 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'GreyTagRouteId' => [ - 'description' => '灰度规则ID,全局唯一。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1', - ], + 'Enable' => ['description' => '是否启用。取值说明如下:-**true**:启用-**false**:禁用', 'type' => 'boolean', 'example' => 'true'], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '查询变更单信息是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:表示查询成功。'."\n" - .'- **false**:表示查询失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '是否成功标识', 'type' => 'boolean', 'example' => 'True'], ], + 'description' => '', ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], - [ - 'errorCode' => 'Application.ChangerOrderRunning', - 'errorMessage' => 'An application change process is in progress. Please try again later.', - ], + ['errorCode' => 'System.Upgrading', 'errorMessage' => 'The system is being upgraded. Please try again later.', 'description' => '系统正在升级,请稍后操作。'], + ['errorCode' => 'InvalidApplication.NotFound', 'errorMessage' => 'The current application does not exist.', 'description' => '找不到当前应用。'], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"9D29CBD0-45D3-410B-9826-52F86F90****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"GreyTagRouteId\\": 1\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<UpdateGreyTagRouteResponse>\\n <RequestId>9D29CBD0-45D3-410B-9826-52F86F90****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <GreyTagRouteId>1</GreyTagRouteId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</UpdateGreyTagRouteResponse>","errorExample":""}]', - 'title' => 'UpdateGreyTagRoute', - 'requestParamsDescription' => '- **ScRules参数说明**'."\n" - ."\n" - .'|参数名称 |类型|示例 |描述 |'."\n" - .'| --- | --- | --- | --- |'."\n" - .'|condition|String|OR |灰度规则的条件模式,取值说明如下:<br />- **AND**:表示与,即同时满足条件列表中的所有条件。<br />- **OR**:表示或,即满足条件列表中的任一条件。|'."\n" - .'|path|String | /path|Spring Cloud应用灰度规则对应的路径。|'."\n" - .'|items |Array of items | |条件列表。|'."\n" - ."\n" - .'**items参数说明**'."\n" - ."\n" - .'|参数名称 |类型|示例 |描述 |'."\n" - .'| --- | --- | --- | --- |'."\n" - .'|name|String|test |参数名。|'."\n" - .'|cond |String | == |比较操作符。可取值:**>**、**<**、**>=**、**<=**、**==**以及**!=**。|'."\n" - .'|type | String| cookie |比较类型,取值说明如下:<br />- **param**:表示Parameter。<br />- **cookie**:表示Cookie。<br />- **header**:表示Header。 |'."\n" - .'|value|String | test|参数取值,根据**type**和**name**得到的值跟这个值进行比较。|'."\n" - .'|operator| String| rawvalue|运算符,取值说明如下:<br />- **rawvalue**:表示直接比较。<br />- **list**:表示白名单。<br />- **mod**:表示对100取模。<br />- **deterministic\\_proportional\\_steaming\\_division**:表示百分比。|'."\n" - ."\n" - .'- **DubboRules参数说明**'."\n" - ."\n" - .'|参数名称 |类型|示例 |描述 |'."\n" - .'| --- | --- | --- | --- |'."\n" - .'|condition|String|OR |灰度规则的条件模式,取值说明如下:<br />- **AND**:表示与,即同时满足条件列表中的所有条件。<br />- **OR**:表示或,即满足条件列表中的任一条件。|'."\n" - .'|methodName|String | echo|Dubbo服务的方法名。|'."\n" - .'|serviceName| String| com.alibaba.edas.boot.EchoService|Dubbo服务名称。|'."\n" - .'|version |String | 1.0.0|Dubbo服务版本。|'."\n" - .'|items |Array of items | |条件列表。|'."\n" - .'|group|String|DUBBO|灰度规则对应的Dubbo服务的分组。|'."\n" - ."\n" - .'**items参数说明**'."\n" - ."\n" - .'|参数名称 |类型|示例 |描述 |'."\n" - .'| --- | --- | --- | --- |'."\n" - .'|index|Integer|0 |参数编号,0表示第一个参数。|'."\n" - .'|expr|String|.name|参数值获取表达式。取值说明如下:<br />- **留空**:表示直接取当前参数的值。<br />- **.name**:表示取参数的name属性,相当于args0.getName()。<br />- **.isEnabled()** :表示取参数的enabled属性,相当于args0.isEnabled()。<br />- **[0]**:表示当前参数应是一个数组,取数组的第一个值,相当于args0[0],注意开始没有英文句点(.)。<br />- **.get(0)**:表示当前参数应是一个List,取List的第一个值,相当于args0.get(0)。<br />- **.get("key")**:表示当前参数是一个Map,获取key对应的值,相当于args0.get("key")。|'."\n" - .'|cond |String | == |比较操作符。可取值:**>**、**<**、**>=**、**<=**、**==**以及**!=**。|'."\n" - .'|value|String | test|参数取值,根据**expr**和**index**得到的值跟这个值进行比较。|'."\n" - .'|operator| String| rawvalue|运算符,取值说明如下:<br />- **rawvalue**:表示直接比较。<br />- **list**:表示白名单。<br />- **mod**:表示对100取模。<br />- **deterministic\\_proportional\\_steaming\\_division**:表示百分比。|', - ], - 'DescribeGreyTagRoute' => [ - 'summary' => '根据规则ID查询灰度规则详情。', - 'path' => '/pop/v1/sam/tagroute/greyTagRoute', - 'methods' => [ - 'get', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6DA47906-6070-5A16-896D-67DCF38A6B7B\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0bc3b4ad17412276398692303e4cb1\\",\\n \\"Data\\": {\\n \\"Enable\\": true\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => 'DisableArms', + 'summary' => '停止Arms监控。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:28.000Z', 'description' => 'OpenAPI 下线'], ], - 'schemes' => [ - 'http', - 'https', + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '40', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DisableArms'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'sae:DisableArms', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + ], + 'DowngradeApplicationApmService' => [ + 'path' => '/pop/v1/sam/app/applicationApmService', + 'methods' => ['delete'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '10298', - 'abilityTreeNodes' => [ - 'FEATUREsaeETR3ZD', - ], + 'abilityTreeCode' => '6360', + 'abilityTreeNodes' => ['FEATUREsaeK7DHH9'], ], 'parameters' => [ [ - 'name' => 'GreyTagRouteId', + 'name' => 'AppId', 'in' => 'query', - 'schema' => [ - 'title' => '规则ID', - 'description' => '规则ID。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'exclusiveMaximum' => false, - 'minimum' => '1', - 'example' => '1', - ], + 'schema' => ['description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => '017f39b8-dfa4-4e16-a84b-1dcee4b1****'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '9D29CBD0-45D3-410B-9826-52F86F90****', - ], - 'Message' => [ - 'description' => '调用结果的附加信息。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '01CF26C7-00A3-4AA6-BA76-7E95F2A3****'], + 'Message' => ['description' => '附加信息。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。'."\n", 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], 'Data' => [ - 'description' => '灰度规则信息。', + 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'GreyTagRouteId' => [ - 'description' => '灰度规则ID,全局唯一。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '16', - ], - 'Name' => [ - 'description' => '规则名称。', - 'type' => 'string', - 'example' => 'rule-name', - ], - 'Description' => [ - 'description' => '规则描述。', - 'type' => 'string', - 'example' => 'test', - ], - 'ScRules' => [ - 'description' => 'Spring Cloud应用的灰度规则。', - 'type' => 'array', - 'items' => [ - 'description' => '灰度规则数据。', - 'type' => 'object', - 'properties' => [ - 'path' => [ - 'description' => 'Spring Cloud应用灰度规则对应的路径。', - 'type' => 'string', - 'example' => '/path', - ], - 'condition' => [ - 'description' => '灰度规则的条件模式,取值说明如下:'."\n" - .'- **AND**:表示与,即同时满足条件列表中的所有条件。'."\n" - .'- **OR**:表示或,即满足条件列表中的任一条件。', - 'type' => 'string', - 'example' => 'OR', - ], - 'items' => [ - 'description' => '条件列表。', - 'type' => 'array', - 'items' => [ - 'description' => '条件列表数据。', - 'type' => 'object', - 'properties' => [ - 'type' => [ - 'description' => '比较类型。取值说明如下:'."\n" - .'- **param**:表示Parameter。'."\n" - .'- **cookie**:表示Cookie。'."\n" - .'- **header**:表示Header。', - 'type' => 'string', - 'example' => 'cookie', - ], - 'name' => [ - 'description' => '参数名。', - 'type' => 'string', - 'example' => 'test', - ], - 'operator' => [ - 'description' => '运算符。取值说明如下:'."\n" - .'- **rawvalue**:直接比较。'."\n" - .'- **list**:白名单。'."\n" - .'- **mod**:对100取模。'."\n" - .'- **deterministic\\_proportional\\_steaming\\_division**:百分比。', - 'type' => 'string', - 'example' => 'rawvalue', - ], - 'value' => [ - 'description' => '参数取值,根据**type**和**name**得到的值跟这个值进行比较。', - 'type' => 'string', - 'example' => 'test', - ], - 'cond' => [ - 'description' => '比较操作符。可取值:**>**、**<**、**>=**、**<=**、**==**以及**!=**。', - 'type' => 'string', - 'example' => '==', - ], - 'index' => [ - 'title' => 'abandon', - 'description' => 'Spring Cloud应用不涉及。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => 'N/A', - ], - 'expr' => [ - 'title' => 'abandon', - 'description' => 'Spring Cloud应用不涉及。', - 'type' => 'string', - 'example' => 'N/A', - ], - ], - ], - ], - ], - ], - ], - 'AlbRules' => [ - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'serviceId' => [ - 'description' => '路由服务ID。', - 'type' => 'string', - 'example' => '22', - ], - 'ingressId' => [ - 'description' => '网关路由ID。', - 'type' => 'string', - 'example' => '23', - ], - 'condition' => [ - 'description' => '灰度规则的条件模式,当前只支持AND:表示同时满足条件列表中的所有条件。', - 'type' => 'string', - 'example' => 'AND', - ], - 'items' => [ - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'type' => [ - 'description' => '比较类型。取值说明如下:'."\n" - .'- **sourceIp**:表示SourceIp。'."\n" - .'- **cookie**:表示Cookie。'."\n" - .'- **header**:表示Header。', - 'type' => 'string', - 'example' => 'cookie', - ], - 'name' => [ - 'description' => '参数名。', - 'type' => 'string', - 'example' => 'example', - ], - 'operator' => [ - 'description' => '运算符。取值说明如下:目前只支持**rawvalue**:直接比较。', - 'type' => 'string', - 'example' => 'rawvalue', - ], - 'value' => [ - 'description' => '参数取值,根据type和name得到的值跟这个值进行比较。', - 'type' => 'string', - 'example' => 'test', - ], - 'cond' => [ - 'description' => '暂支持==。', - 'type' => 'string', - 'example' => '==', - ], - 'index' => [ - 'title' => 'abandon', - 'description' => 'Alb应用无需填写。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => 'N/A', - ], - 'expr' => [ - 'title' => 'abandon', - 'description' => 'Alb应用无需填写。', - 'type' => 'string', - 'example' => 'N/A', - ], - ], - ], - ], - ], - ], - ], - 'DubboRules' => [ - 'description' => 'Dubbo服务的灰度规则。', - 'type' => 'array', - 'items' => [ - 'description' => '灰度规则数据。', - 'type' => 'object', - 'properties' => [ - 'serviceName' => [ - 'description' => 'Dubbo服务名称。', - 'type' => 'string', - 'example' => 'com.alibaba.edas.boot.EchoService', - ], - 'group' => [ - 'description' => '灰度规则对应的Dubbo服务的分组。', - 'type' => 'string', - 'example' => 'DUBBO', - ], - 'version' => [ - 'description' => 'Dubbo服务版本。', - 'type' => 'string', - 'example' => '1.0.0', - ], - 'methodName' => [ - 'description' => 'Dubbo服务的方法名。', - 'type' => 'string', - 'example' => 'echo', - ], - 'condition' => [ - 'description' => '灰度规则的条件模式,取值说明如下:'."\n" - .'- **AND**:表示与,即同时满足条件列表中的所有条件。'."\n" - .'- **OR**:表示或,即满足条件列表中的任一条件。', - 'type' => 'string', - 'example' => 'OR', - ], - 'items' => [ - 'description' => '条件列表。', - 'type' => 'array', - 'items' => [ - 'description' => '条件列表数据。', - 'type' => 'object', - 'properties' => [ - 'index' => [ - 'description' => '参数编号,0表示第一个参数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '0', - ], - 'expr' => [ - 'description' => '参数值获取表达式。取值说明如下:'."\n" - .'- **留空**:直接取当前参数的值。'."\n" - .'- **.name**:取参数的name属性,相当于args0.getName()。'."\n" - .'- **.isEnabled()** :取参数的enabled属性,相当于args0.isEnabled()。'."\n" - .'- **[0]**:当前参数应是一个数组,取数组的第一个值,相当于args0\\[0],注意开始没有英文句点(.)。'."\n" - .'- **.get(0)**:当前参数应是一个List,取List的第一个值,相当于args0.get(0)。'."\n" - .'- **.get("key")**:当前参数是一个Map,获取key对应的值,相当于args0.get("key")。', - 'type' => 'string', - 'example' => '.name', - ], - 'operator' => [ - 'description' => '运算符。取值说明如下:'."\n" - .'- **rawvalue**:直接比较。'."\n" - .'- **list**:白名单。'."\n" - .'- **mod**:对100取模。'."\n" - .'- **deterministic\\_proportional\\_steaming\\_division**:百分比。', - 'type' => 'string', - 'example' => 'rawvalue', - ], - 'value' => [ - 'description' => '参数取值,根据**expr**和**index**得到的值跟这个值进行比较。', - 'type' => 'string', - 'example' => 'test', - ], - 'cond' => [ - 'description' => '比较操作符。可取值:**>**、**<**、**>=**、**<=**、**==**以及**!=**。', - 'type' => 'string', - 'example' => '==', - ], - 'type' => [ - 'title' => 'abandon', - 'description' => 'Dubbo服务不涉及。', - 'type' => 'string', - 'example' => 'N/A', - ], - 'name' => [ - 'title' => 'abandon', - 'description' => 'Dubbo服务不涉及。', - 'type' => 'string', - 'example' => 'N/A', - ], - ], - ], - ], - ], - ], - ], - 'CreateTime' => [ - 'description' => '规则被创建的时间戳。单位:毫秒。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1619007592013', - ], - 'UpdateTime' => [ - 'description' => '规则被更新的时间戳。单位:毫秒。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1609434061000', - ], - 'AppId' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'example' => '3faaf993-7aed-4bcd-b189-625e6a5a****', - ], + 'Status' => ['description' => '关闭 ARMS 高级监控是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:关闭成功。'."\n" + .'- **false**:关闭失败。', 'type' => 'boolean', 'example' => 'true'], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '查询变更单信息是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:查询成功。'."\n" - .'- **false**:查询失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '关闭 ARMS 高级监控是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:关闭成功。'."\n" + .'- **false**:关闭失败。', 'type' => 'boolean'], ], + 'description' => '', ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], + ['errorCode' => 'System.Upgrading', 'errorMessage' => 'The system is being upgraded. Please try again later.', 'description' => '系统正在升级,请稍后操作。'], + ['errorCode' => 'InvalidApplication.NotFound', 'errorMessage' => 'The current application does not exist.', 'description' => '找不到当前应用。'], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"9D29CBD0-45D3-410B-9826-52F86F90****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"GreyTagRouteId\\": 16,\\n \\"Name\\": \\"rule-name\\",\\n \\"Description\\": \\"test\\",\\n \\"ScRules\\": [\\n {\\n \\"path\\": \\"/path\\",\\n \\"condition\\": \\"OR\\",\\n \\"items\\": [\\n {\\n \\"type\\": \\"cookie\\",\\n \\"name\\": \\"test\\",\\n \\"operator\\": \\"rawvalue\\",\\n \\"value\\": \\"test\\",\\n \\"cond\\": \\"==\\",\\n \\"index\\": 0,\\n \\"expr\\": \\"N/A\\"\\n }\\n ]\\n }\\n ],\\n \\"AlbRules\\": [\\n {\\n \\"serviceId\\": \\"22\\",\\n \\"ingressId\\": \\"23\\",\\n \\"condition\\": \\"AND\\",\\n \\"items\\": [\\n {\\n \\"type\\": \\"cookie\\",\\n \\"name\\": \\"example\\",\\n \\"operator\\": \\"rawvalue\\",\\n \\"value\\": \\"test\\",\\n \\"cond\\": \\"==\\",\\n \\"index\\": 0,\\n \\"expr\\": \\"N/A\\"\\n }\\n ]\\n }\\n ],\\n \\"DubboRules\\": [\\n {\\n \\"serviceName\\": \\"com.alibaba.edas.boot.EchoService\\",\\n \\"group\\": \\"DUBBO\\",\\n \\"version\\": \\"1.0.0\\",\\n \\"methodName\\": \\"echo\\",\\n \\"condition\\": \\"OR\\",\\n \\"items\\": [\\n {\\n \\"index\\": 0,\\n \\"expr\\": \\".name\\",\\n \\"operator\\": \\"rawvalue\\",\\n \\"value\\": \\"test\\",\\n \\"cond\\": \\"==\\",\\n \\"type\\": \\"N/A\\",\\n \\"name\\": \\"N/A\\"\\n }\\n ]\\n }\\n ],\\n \\"CreateTime\\": 1619007592013,\\n \\"UpdateTime\\": 1609434061000,\\n \\"AppId\\": \\"3faaf993-7aed-4bcd-b189-625e6a5a****\\"\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeGreyTagRouteResponse>\\n <RequestId>9D29CBD0-45D3-410B-9826-52F86F90****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <GreyTagRouteId>16</GreyTagRouteId>\\n <Name>rule-name</Name>\\n <Description>test</Description>\\n <ScRules>\\n <path>/path</path>\\n <condition>OR</condition>\\n <items>\\n <type>cookie</type>\\n <name>test</name>\\n <operator>rawvalue</operator>\\n <value>test</value>\\n <cond>==</cond>\\n <expr>N/A</expr>\\n </items>\\n </ScRules>\\n <DubboRules>\\n <serviceName>com.alibaba.edas.boot.EchoService</serviceName>\\n <group>DUBBO</group>\\n <version>1.0.0</version>\\n <methodName>echo</methodName>\\n <condition>OR</condition>\\n <items>\\n <index>0</index>\\n <expr>.name</expr>\\n <operator>rawvalue</operator>\\n <value>test</value>\\n <cond>==</cond>\\n <type>N/A</type>\\n <name>N/A</name>\\n </items>\\n </DubboRules>\\n <CreateTime>1619007592013</CreateTime>\\n <UpdateTime>1609434061000</UpdateTime>\\n <AppId>3faaf993-7aed-4bcd-b189-625e6a5a****</AppId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeGreyTagRouteResponse>","errorExample":""}]', - 'title' => 'DescribeGreyTagRoute', - ], - 'ListGreyTagRoute' => [ - 'summary' => '根据应用ID查询灰度规则详情。', - 'path' => '/pop/v1/sam/tagroute/greyTagRouteList', - 'methods' => [ - 'get', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"01CF26C7-00A3-4AA6-BA76-7E95F2A3****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"Status\\": true\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => '关闭ARMS高级版监控', + 'summary' => '关闭ARMS高级版监控。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:28.000Z', 'description' => 'OpenAPI 下线'], ], - 'schemes' => [ - 'http', - 'https', + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '40', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DowngradeApplicationApmService'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => '', + 'ramAction' => [ + 'action' => 'sae:DowngradeApplicationApmService', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + ], + 'EnableApplicationScalingRule' => [ + 'path' => '/pop/v1/sam/scale/enableApplicationScalingRule', + 'methods' => ['put'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '10488', - 'abilityTreeNodes' => [ - 'FEATUREsaeCJEQQD', - ], + 'operationType' => 'update', + 'abilityTreeCode' => '6361', + 'abilityTreeNodes' => ['FEATUREsaeRVPNSA'], ], 'parameters' => [ [ 'name' => 'AppId', 'in' => 'query', - 'schema' => [ - 'title' => '应用ID', - 'description' => '应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****', - ], + 'schema' => ['description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****'], + ], + [ + 'name' => 'ScalingRuleName', + 'in' => 'query', + 'schema' => ['description' => '弹性伸缩策略名称。'."\n" + ."\n\n" + .'> 此应用已创建弹性策略。', 'type' => 'string', 'required' => true, 'example' => 'timer-0800-2100'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'description' => '返回数据。', + 'description' => '返回信息。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '9D29CBD0-45D3-410B-9826-52F86F90****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], - 'Data' => [ - 'description' => '灰度规则信息。', - 'type' => 'object', - 'properties' => [ - 'CurrentPage' => [ - 'description' => '当前页码。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'PageSize' => [ - 'description' => '分页查询时设置的每页数量。目前只能为**1**。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'TotalSize' => [ - 'description' => '总个数。目前只能为**1**。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1', - ], - 'Result' => [ - 'description' => '返回结果。', - 'type' => 'array', - 'items' => [ - 'description' => '返回数据。', - 'type' => 'object', - 'properties' => [ - 'GreyTagRouteId' => [ - 'description' => '规则ID。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1', - ], - 'Name' => [ - 'description' => '规则名称。', - 'type' => 'string', - 'example' => 'rule-name', - ], - 'Description' => [ - 'description' => '规则描述。', - 'type' => 'string', - 'example' => 'test', - ], - 'ScRules' => [ - 'description' => 'Spring Cloud灰度规则。', - 'type' => 'array', - 'items' => [ - 'description' => '规则详情。', - 'type' => 'object', - 'properties' => [ - 'path' => [ - 'description' => 'Spring Cloud应用灰度规则对应的路径。', - 'type' => 'string', - 'example' => '/path', - ], - 'condition' => [ - 'description' => '灰度规则的条件模式。取值说明如下:'."\n" - .'- **AND**:表示与,即同时满足条件列表中的所有条件。'."\n" - .'- **OR**:表示或,即满足条件列表中的任一条件。', - 'type' => 'string', - 'example' => 'OR', - ], - 'items' => [ - 'description' => '条件列表。', - 'type' => 'array', - 'items' => [ - 'description' => '条件列表数据。', - 'type' => 'object', - 'properties' => [ - 'type' => [ - 'description' => '比较类型。取值说明如下:'."\n" - .'- **param**:表示Parameter。'."\n" - .'- **cookie**:表示Cookie。'."\n" - .'- **header**:表示Header。', - 'type' => 'string', - 'example' => 'cookie', - ], - 'name' => [ - 'description' => '参数名。', - 'type' => 'string', - 'example' => 'test', - ], - 'operator' => [ - 'description' => '运算符。取值说明如下:'."\n" - .'- **rawvalue**:表示直接比较。'."\n" - .'- **list**:表示白名单。'."\n" - .'- **mod**:表示对100取模。'."\n" - .'- **deterministic\\_proportional\\_steaming\\_division**:表示百分比。', - 'type' => 'string', - 'example' => 'rawvalue', - ], - 'value' => [ - 'description' => '参数取值,根据**type**和**name**得到的值跟这个值进行比较。', - 'type' => 'string', - 'example' => 'test', - ], - 'cond' => [ - 'description' => '比较操作符。可取值:**>**、**<**、**>=**、**<=**、**==**以及**!=**。', - 'type' => 'string', - 'example' => '==', - ], - 'index' => [ - 'title' => 'abandon', - 'description' => 'Spring Cloud应用不涉及。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => 'N/A', - ], - 'expr' => [ - 'description' => 'Spring Cloud应用不涉及。', - 'type' => 'string', - 'example' => 'N/A', - ], - ], - ], - ], - ], - ], - ], - 'AlbRules' => [ - 'description' => '为配置好ALB网关路由的应用创建的灰度规则。', - 'type' => 'array', - 'items' => [ - 'description' => '灰度规则详情。', - 'type' => 'object', - 'properties' => [ - 'ingressId' => [ - 'description' => '网关路由ID。', - 'type' => 'string', - 'example' => '23', - ], - 'condition' => [ - 'description' => '灰度规则的条件模式,当前只支持AND:表示同时满足条件列表中的所有条件。', - 'type' => 'string', - 'example' => 'AND', - ], - 'items' => [ - 'description' => '条件列表。', - 'type' => 'array', - 'items' => [ - 'description' => '条件列表详情。', - 'type' => 'object', - 'properties' => [ - 'type' => [ - 'description' => '比较类型。取值说明如下:'."\n" - .'- **sourceIp**:表示SourceIp。'."\n" - .'- **cookie**:表示Cookie。'."\n" - .'- **header**:表示Header。', - 'type' => 'string', - 'example' => 'cookie', - ], - 'name' => [ - 'description' => '参数名。', - 'type' => 'string', - 'example' => 'example', - ], - 'operator' => [ - 'description' => '运算符。取值说明如下:目前只支持rawvalue:直接比较。', - 'type' => 'string', - 'example' => 'rawvalue', - ], - 'value' => [ - 'description' => '参数取值,根据type和name得到的值跟这个值进行比较。', - 'type' => 'string', - 'example' => 'test', - ], - 'cond' => [ - 'description' => '暂支持==。', - 'type' => 'string', - 'example' => '==', - ], - 'index' => [ - 'title' => 'abandon', - 'description' => 'ALB应用无需填写。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => 'N/A', - ], - 'expr' => [ - 'description' => 'ALB应用无需填写。', - 'type' => 'string', - 'example' => 'N/A', - ], - ], - ], - ], - 'serviceName' => [ - 'description' => '服务名称。', - 'type' => 'string', - 'example' => 's-6366-e3****-99**', - ], - ], - ], - ], - 'DubboRules' => [ - 'description' => 'Dubbo服务灰度规则。', - 'type' => 'array', - 'items' => [ - 'description' => '灰度规则信息。', - 'type' => 'object', - 'properties' => [ - 'serviceName' => [ - 'description' => 'Dubbo服务名称。', - 'type' => 'string', - 'example' => 'com.alibaba.edas.boot.EchoService', - ], - 'group' => [ - 'description' => '灰度规则对应的Dubbo服务的分组。', - 'type' => 'string', - 'example' => 'DUBBO', - ], - 'version' => [ - 'description' => 'Dubbo服务版本。', - 'type' => 'string', - 'example' => '1.0.0', - ], - 'methodName' => [ - 'description' => 'Dubbo服务的方法名。', - 'type' => 'string', - 'example' => 'echo', - ], - 'condition' => [ - 'description' => '灰度规则的条件模式。取值说明如下:'."\n" - .'- **AND**:表示与,即同时满足条件列表中的所有条件。'."\n" - .'- **OR**:表示或,即满足条件列表中的任一条件。', - 'type' => 'string', - 'example' => 'OR', - ], - 'items' => [ - 'description' => '条件列表。', - 'type' => 'array', - 'items' => [ - 'description' => '条件详情。', - 'type' => 'object', - 'properties' => [ - 'index' => [ - 'description' => '参数编号,0表示第一个参数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '0', - ], - 'expr' => [ - 'description' => '参数值获取表达式。语法遵循SpEL(link)表达式,取值说明如下:'."\n" - .'- **留空**:表示直接取当前参数的值。'."\n" - .'- **.name**:表示取参数的name属性,相当于args0.getName()。'."\n" - .'- **.isEnabled()**:表示取参数的enabled属性,相当于args0.isEnabled()。'."\n" - .'- **[0]**:表示当前参数应是一个数组,取数组的第一个值,相当于args0\\[0],注意开始没有英文句点(.)。'."\n" - .'- **.get(0)**:表示当前参数应是一个List,取List的第一个值,相当于args0.get(0)。'."\n" - .'- **.get("key")**:表示当前参数是一个Map,获取key对应的值,相当于args0.get("key")。', - 'type' => 'string', - 'example' => '.name', - ], - 'operator' => [ - 'description' => '运算符。取值说明如下:'."\n" - .'- **rawvalue**:表示直接比较。'."\n" - .'- **list**:表示白名单。'."\n" - .'- **mod**:表示对100取模。'."\n" - .'- **deterministic\\_proportional\\_steaming\\_division**:表示百分比。', - 'type' => 'string', - 'example' => 'rawvalue', - ], - 'value' => [ - 'description' => '参数取值,根据**expr**和**index**得到的值跟这个值进行比较。', - 'type' => 'string', - 'example' => 'test', - ], - 'cond' => [ - 'description' => '比较操作符。可取值:**>**、**<**、**>=**、**<=**、**==**以及**!=**。', - 'type' => 'string', - 'example' => '==', - ], - 'type' => [ - 'title' => 'abandon', - 'description' => 'Dubbo服务不涉及。', - 'type' => 'string', - 'example' => 'N/A', - ], - 'name' => [ - 'title' => 'abandon', - 'description' => 'Dubbo服务不涉及。', - 'type' => 'string', - 'example' => 'N/A', - ], - ], - ], - ], - ], - ], - ], - 'CreateTime' => [ - 'description' => '规则被创建的时间戳。单位:毫秒。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1619007592013', - ], - 'UpdateTime' => [ - 'description' => '规则被更新的时间戳。单位:毫秒。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1609434061000', - ], - ], - ], - ], - ], - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '查询变更单信息是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:表示查询成功。'."\n" - .'- **false**:表示查询失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '重启应用实例是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:重启成功。'."\n" + .'- **false**:重启失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', + ['errorCode' => 'user.indebt', 'errorMessage' => 'The user has an outstanding payment.', 'description' => '当前用户处于欠费状态。'], + ['errorCode' => 'NoComputeResourceQuota.App.Exceed', 'errorMessage' => 'You can create %s instances for each application. Please submit a ticket to raise the quota.', 'description' => '每个应用只允许创建%s个实例,请加入钉群32874633联系技术产品专家进行咨询。'], + ['errorCode' => 'NoComputeResourceQuota.Exceed', 'errorMessage' => 'Your compute resource is insufficient. Please contact us to raise the quota.', 'description' => ''], + ['errorCode' => 'NoComputeResourceQuota.User.Exceed', 'errorMessage' => 'Your account is limited to create %s instances. Please submit a ticket to raise the quota.', 'description' => '您的账户限额%s个实例,请加入钉群32874633联系技术产品专家进行咨询。'], + ['errorCode' => 'System.Upgrading', 'errorMessage' => 'The system is being upgraded. Please try again later.', 'description' => '系统正在升级,请稍后操作。'], + ['errorCode' => 'Application.ChangerOrderRunning', 'errorMessage' => 'An application change process is in progress. Please try again later.', 'description' => '应用有变更流程正在执行,请稍后重试。'], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Message\\": \\"success\\",\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<EnableApplicationScalingRuleResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n</EnableApplicationScalingRuleResponse>","errorExample":""}]', + 'title' => 'EnableApplicationScalingRule', + 'summary' => '启用应用弹性伸缩策略。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:23.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2022-12-26T09:19:37.000Z', 'description' => '错误码发生变更'], + ['createdAt' => '2022-12-19T02:15:03.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2022-02-16T02:49:27.000Z', 'description' => '错误码发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'EnableApplicationScalingRule'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'sae:EnableApplicationScalingRule', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"9D29CBD0-45D3-410B-9826-52F86F90****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"CurrentPage\\": 1,\\n \\"PageSize\\": 1,\\n \\"TotalSize\\": 1,\\n \\"Result\\": [\\n {\\n \\"GreyTagRouteId\\": 1,\\n \\"Name\\": \\"rule-name\\",\\n \\"Description\\": \\"test\\",\\n \\"ScRules\\": [\\n {\\n \\"path\\": \\"/path\\",\\n \\"condition\\": \\"OR\\",\\n \\"items\\": [\\n {\\n \\"type\\": \\"cookie\\",\\n \\"name\\": \\"test\\",\\n \\"operator\\": \\"rawvalue\\",\\n \\"value\\": \\"test\\",\\n \\"cond\\": \\"==\\",\\n \\"index\\": 0,\\n \\"expr\\": \\"N/A\\"\\n }\\n ]\\n }\\n ],\\n \\"AlbRules\\": [\\n {\\n \\"ingressId\\": \\"23\\",\\n \\"condition\\": \\"AND\\",\\n \\"items\\": [\\n {\\n \\"type\\": \\"cookie\\",\\n \\"name\\": \\"example\\",\\n \\"operator\\": \\"rawvalue\\",\\n \\"value\\": \\"test\\",\\n \\"cond\\": \\"==\\",\\n \\"index\\": 0,\\n \\"expr\\": \\"N/A\\"\\n }\\n ],\\n \\"serviceName\\": \\"s-6366-e3****-99**\\"\\n }\\n ],\\n \\"DubboRules\\": [\\n {\\n \\"serviceName\\": \\"com.alibaba.edas.boot.EchoService\\",\\n \\"group\\": \\"DUBBO\\",\\n \\"version\\": \\"1.0.0\\",\\n \\"methodName\\": \\"echo\\",\\n \\"condition\\": \\"OR\\",\\n \\"items\\": [\\n {\\n \\"index\\": 0,\\n \\"expr\\": \\".name\\",\\n \\"operator\\": \\"rawvalue\\",\\n \\"value\\": \\"test\\",\\n \\"cond\\": \\"==\\",\\n \\"type\\": \\"N/A\\",\\n \\"name\\": \\"N/A\\"\\n }\\n ]\\n }\\n ],\\n \\"CreateTime\\": 1619007592013,\\n \\"UpdateTime\\": 1609434061000\\n }\\n ]\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<ListGreyTagRouteResponse>\\n <RequestId>9D29CBD0-45D3-410B-9826-52F86F90****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <CurrentPage>1</CurrentPage>\\n <PageSize>1</PageSize>\\n <TotalSize>1</TotalSize>\\n <Result>\\n <GreyTagRouteId>1</GreyTagRouteId>\\n <Name>rule-name</Name>\\n <Description>test</Description>\\n <ScRules>\\n <path>/path</path>\\n <condition>OR</condition>\\n <items>\\n <type>cookie</type>\\n <name>test</name>\\n <operator>rawvalue</operator>\\n <value>test</value>\\n <cond>==</cond>\\n <expr>N/A</expr>\\n </items>\\n </ScRules>\\n <AlbRules>\\n <ingressId>23</ingressId>\\n <condition>AND</condition>\\n <items>\\n <type>cookie</type>\\n <name>example</name>\\n <operator>rawvalue</operator>\\n <value>test</value>\\n <cond>==</cond>\\n <expr>N/A</expr>\\n </items>\\n <serviceName>s-6366-e3****-99**</serviceName>\\n </AlbRules>\\n <DubboRules>\\n <serviceName>com.alibaba.edas.boot.EchoService</serviceName>\\n <group>DUBBO</group>\\n <version>1.0.0</version>\\n <methodName>echo</methodName>\\n <condition>OR</condition>\\n <items>\\n <index>0</index>\\n <expr>.name</expr>\\n <operator>rawvalue</operator>\\n <value>test</value>\\n <cond>==</cond>\\n <type>N/A</type>\\n <name>N/A</name>\\n </items>\\n </DubboRules>\\n <CreateTime>1619007592013</CreateTime>\\n <UpdateTime>1609434061000</UpdateTime>\\n </Result>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</ListGreyTagRouteResponse>","errorExample":""}]', - 'title' => 'ListGreyTagRoute', - 'description' => '> 目前一个应用只能配置一条灰度规则。', - 'requestParamsDescription' => '- **ScRule参数说明**'."\n" - ."\n" - .'|参数名称 |类型|示例 |描述 |'."\n" - .'| --- | --- | --- | --- |'."\n" - .'|condition|String|OR |灰度规则的条件模式。取值说明如下:<br />- **AND**:表示与,即同时满足条件列表中的所有条件。<br />- **OR**:表示或,即满足条件列表中的任一条件。|'."\n" - .'|path|String | /path| Spring Cloud应用灰度规则对应的path。|'."\n" - .'|items |Array of items | |条件列表。|'."\n" - ."\n" - .'**Item参数说明**'."\n" - ."\n" - .'|参数名称 |类型|示例 |描述 |'."\n" - .'| --- | --- | --- | --- |'."\n" - .'|name|String|test |参数名。|'."\n" - .'|cond |String | == |比较操作符。可取值:**>**、**<**、**>=**、**<=**、**==**以及**!=**。|'."\n" - .'|type | String| cookie |比较类型。取值说明如下:<br />- **param**:表示Parameter。<br />- **cookie**:表示Cookie。<br />- **header**:表示Header。 |'."\n" - .'|value|String | test| 参数取值,根据**type**和**name**得到的值跟这个值进行比较。|'."\n" - .'|operator| String| rawvalue|运算符。取值说明如下:<br />- **rawvalue**:表示直接比较。<br />- **list**:表示白名单。<br />- **mod**:表示对100取模。<br />- **deterministic_proportional_steaming_division**:表示百分比。|'."\n" - ."\n" - .'- **DubboRule参数说明**'."\n" - ."\n" - .'|参数名称 |类型|示例 |描述 |'."\n" - .'| --- | --- | --- | --- |'."\n" - .'|condition|String|OR |灰度规则的条件模式。取值说明如下:<br />- **AND**:表示与,即同时满足条件列表中的所有条件。<br />- **OR**:表示或,即满足条件列表中的任一条件。|'."\n" - .'|methodName|String | echo| Dubbo服务的方法名。|'."\n" - .'|serviceName| String| com.alibaba.edas.boot.EchoService| Dubbo服务名称。|'."\n" - .'|version |String | 1.0.0| Dubbo服务版本。|'."\n" - .'|items |Array of items | |条件列表。|'."\n" - .'|group|String|DUBBO|灰度规则对应的Dubbo服务的分组。|'."\n" - ."\n" - .'**Item参数说明**'."\n" - ."\n" - .'|参数名称 |类型|示例 |描述 |'."\n" - .'| --- | --- | --- | --- |'."\n" - .'|index|Integer|0 |参数编号,0表示第一个参数。|'."\n" - .'|expr|String|.name|参数值获取表达式。语法遵循SpEL(link)表达式,取值说明如下:<br />- **留空**:表示直接取当前参数的值。<br />- **.name**:表示取参数的name属性,相当于args0.getName()。<br />- **.isEnabled()** :表示取参数的enabled属性,相当于args0.isEnabled()。<br />- **[0]**:表示当前参数应是一个数组,取数组的第一个值,相当于args0[0],注意开始没有英文句点(.)。<br />- **.get(0) **:表示当前参数应是一个List,取List的第一个值,相当于args0.get(0)。<br />- **.get("key")**:表示当前参数是一个Map,获取key对应的值,相当于args0.get("key")。|'."\n" - .'|cond |String | == |比较操作符。可取值:**>**、**<**、**>=**、**<=**、**==**以及**!=**。|'."\n" - .'|value|String | test| 参数取值,根据**expr**和**index**得到的值跟这个值进行比较。|'."\n" - .'|operator| String| rawvalue|运算符。取值说明如下:<br />- **rawvalue**:表示直接比较。<br />- **list**:表示白名单。<br />- **mod**:表示对100取模。<br />- **deterministic_proportional_steaming_division**:表示百分比。|', ], - 'CreateOrUpdateSwimmingLaneGroup' => [ - 'summary' => '创建或者更新泳道组。', - 'path' => '/pop/v1/cas/gray/createOrUpdateSwimmingLaneGroup', - 'methods' => [ - 'post', - ], - 'schemes' => [ - 'https', - ], + 'ExecJob' => [ + 'path' => '/pop/v1/sam/job/execJob', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'consumes' => [ - 'application/x-www-form-urlencoded', - ], - 'produces' => [ - 'application/json', - ], - 'operationType' => 'write', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'create', - 'abilityTreeCode' => '221430', - 'abilityTreeNodes' => [ - 'FEATUREsaeX255DA', - ], + 'abilityTreeCode' => '100732', + 'abilityTreeNodes' => ['FEATUREsaeD9PL61'], ], 'parameters' => [ [ - 'name' => 'GroupId', + 'name' => 'AppId', 'in' => 'query', - 'schema' => [ - 'description' => '属泳道组ID。更新泳道组时为必填。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '110272', - ], + 'schema' => ['description' => '任务模板ID', 'type' => 'string', 'required' => true, 'example' => 'ee1a7a07-abcb-4652-a1d3-2d57f415****'], ], [ - 'name' => 'GroupName', + 'name' => 'EventId', 'in' => 'query', - 'schema' => [ - 'description' => '泳道组名称。', - 'type' => 'string', - 'required' => false, - 'example' => 'mse-test', - ], + 'schema' => ['description' => '事件ID,用户自定义。用作幂等使用,相同事件ID仅创建一个任务。', 'type' => 'string', 'required' => false, 'example' => 'custom'], ], [ - 'name' => 'NamespaceId', + 'name' => 'Command', 'in' => 'query', - 'schema' => [ - 'description' => '命名空间ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-beijing:test', - ], + 'schema' => ['description' => '镜像启动命令。该命令必须为容器内存在的可执行的对象。示例如下:'."\n" + ."\n" + .'```'."\n" + .'command:'."\n" + .' - echo'."\n" + .' - abc'."\n" + .' - >'."\n" + .' - file0'."\n" + .'```'."\n" + .'根据上述示例,则`Command="echo", CommandArgs=["abc", ">", "file0"]`。', 'type' => 'string', 'required' => false, 'example' => 'echo'], ], [ - 'name' => 'AppIds', + 'name' => 'CommandArgs', 'in' => 'query', - 'style' => 'json', - 'schema' => [ - 'description' => '基线应用ID。', - 'type' => 'array', - 'items' => [ - 'description' => '基线应用ID。可单击**添加**,已添加多个基线应用。', - 'type' => 'string', - 'required' => false, - 'example' => '00893b3a-0e24-45ed-be0c-1f20e07b****', - ], - 'required' => false, - ], + 'schema' => ['description' => '镜像启动命令参数。上述启动命令**Command**所需参数。格式如下:'."\n" + ."\n" + .'`["a","b"]`'."\n" + ."\n" + .'在上述示例中,`CommandArgs=["abc", ">", "file0"]`,其中`["abc", ">", "file0"]`需要转成String类型,里面的格式为JSON数组。如果无此参数,则无需填写。', 'type' => 'string', 'required' => false, 'example' => '["a","b"]'], ], [ - 'name' => 'EntryAppType', + 'name' => 'Envs', 'in' => 'query', - 'schema' => [ - 'description' => '应用入口类型(网关类型)。'."\n" - ."\n" - .'- **apig:** 云原生 API 网关'."\n" - ."\n" - .'- **mse:** Java 服务网关'."\n" - ."\n" - .'- **mse-gw:** MSE 云原生网关', - 'type' => 'string', - 'required' => false, - 'example' => 'mse-gw', - ], + 'schema' => ['description' => '容器环境变量参数。支持自定义或引用配置项。如需引用配置项,请先创建ConfigMap实例。更多信息,请参见[CreateConfigMap](~~176914~~)。取值说明如下:'."\n" + .'- 自定义配置'."\n" + .' - **name**:环境变量名称。'."\n" + .' - **value**:环境变量值。'."\n" + .'- 引用配置项'."\n" + .' - **name**:环境变量名称。支持引用单个或全部键,如果引用全部键,需输入`sae-sys-configmap-all-<配置项名称>`,例如`sae-sys-configmap-all-test1`。'."\n" + .' - **valueFrom**:环境变量引用。取值为`configMapRef`。'."\n" + .' - **configMapId**:配置项ID。'."\n" + .' - **key**:键。如果引用全部健值,则不设置该字段。', 'type' => 'string', 'required' => false, 'example' => '[{"name":"envtmp","value":"0"}]'], ], [ - 'name' => 'EntryAppId', + 'name' => 'JarStartOptions', 'in' => 'query', - 'schema' => [ - 'description' => '对应网关唯一 ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'gw-ea43f648ac46485aa8c894ba1b******', - ], + 'schema' => ['description' => 'JAR包启动任务选项。任务默认启动命令:'."\n" + .'`$JAVA_HOME/bin/java $JarStartOptions -jar $CATALINA_OPTS "$package_path" $JarStartArg`', 'type' => 'string', 'required' => false, 'example' => '-Xms4G -Xmx4G'], ], [ - 'name' => 'SwimVersion', + 'name' => 'JarStartArgs', 'in' => 'query', - 'schema' => [ - 'description' => '全链路灰度版本,取值范围:0,2(推荐使用)。', - 'type' => 'string', - 'required' => false, - 'example' => '2', - ], + 'schema' => ['description' => 'JAR包启动任务参数。任务默认启动命令:'."\n" + .'`$JAVA_HOME/bin/java $JarStartOptions -jar $CATALINA_OPTS "$package_path" $JarStartArgs`', 'type' => 'string', 'required' => false, 'example' => 'custom-args'], + ], + [ + 'name' => 'WarStartOptions', + 'in' => 'query', + 'schema' => ['description' => '设置WAR包部署任务的启动命令,操作步骤与镜像部署的启动命令配置操作相同。更多信息,请参见[设置启动命令](~~96677~~)。', 'type' => 'string', 'required' => false, 'example' => 'CATALINA_OPTS=\\"$CATALINA_OPTS $Options\\" catalina.sh run'], + ], + [ + 'name' => 'Time', + 'in' => 'query', + 'schema' => ['description' => '任务触发时间,格式为`yyyy-MM-dd\'T\'HH:mm:ss\'Z\'`。', 'type' => 'string', 'required' => false, 'example' => '2023-09-14T14:25:02Z'], + ], + [ + 'name' => 'Replicas', + 'in' => 'query', + 'schema' => ['description' => '任务并发实例数', 'type' => 'string', 'required' => false, 'example' => '3'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => '返回信息。', + 'description' => '返回数据', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求 ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回 **success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链 ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], + 'RequestId' => ['description' => '请求ID', 'type' => 'string', 'example' => '67DD9A98-9CCC-5BE8-8C9E-B45E72F4****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0b87b7e716575071334387401e****'], 'Data' => [ - 'description' => '应用信息。', + 'description' => '返回数据', 'type' => 'object', 'properties' => [ - 'GroupId' => [ - 'description' => '泳道组ID。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '110272', - ], + 'Data' => ['description' => '任务ID', 'type' => 'string', 'example' => 'manual-3db7a8fa-5d40-4edc-92e4-49d50eab****'], + 'Msg' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'Success' => ['description' => '执行任务是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:执行成功。'."\n" + .'- **false**:执行失败。', 'type' => 'string', 'example' => 'true'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '泳道组是否创建成功。取值说明如下:'."\n" - ."\n" - .'- **true**:创建成功。'."\n" - .'- **false**:创建失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '执行任务是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:执行成功。'."\n" + .'- **false**:执行失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], - [ - 'errorCode' => 'MseGatewayRule.CreateFailed', - 'errorMessage' => 'Create MSE Gateway rule failed.', - ], - [ - 'errorCode' => 'InternalApiError', - 'errorMessage' => 'An exception occurred when calling mse:%s, error message: %s.', - ], + ['errorCode' => 'InvalidApplication.NotFound', 'errorMessage' => 'The current application does not exist.', 'description' => '找不到当前应用。'], + ['errorCode' => 'JobForbidPolicy', 'errorMessage' => 'You cannot execute new jobs because ongoing jobs exist.', 'description' => '存在正在执行的任务,根据并发策略无法执行新任务。'], + ['errorCode' => 'JobSuspend', 'errorMessage' => 'The job is suspended.', 'description' => '任务已经停止,请启用任务后再进行执行。'], + ['errorCode' => 'user.indebt', 'errorMessage' => 'The user has an outstanding payment.', 'description' => '当前用户处于欠费状态。'], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"67DD9A98-9CCC-5BE8-8C9E-B45E72F4****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0b87b7e716575071334387401e****\\",\\n \\"Data\\": {\\n \\"Data\\": \\"manual-3db7a8fa-5d40-4edc-92e4-49d50eab****\\",\\n \\"Msg\\": \\"success\\",\\n \\"Success\\": \\"true\\",\\n \\"Code\\": \\"200\\"\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<ExecJobResponse>\\n <RequestId>67DD9A98-9CCC-5BE8-8C9E-B45E72F4****</RequestId>\\n <Message>success</Message>\\n <TraceId>0b87b7e716575071334387401e****</TraceId>\\n <Data>\\n <Data>manual-3db7a8fa-5d40-4edc-92e4-49d50eab****</Data>\\n <Msg>success</Msg>\\n <Success>true</Success>\\n <Code>200</Code>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</ExecJobResponse>","errorExample":""}]', + 'title' => 'ExecJob', + 'summary' => '调用ExecJob接口执行任务', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:27.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2022-11-22T13:03:51.000Z', 'description' => '请求参数发生变更'], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"GroupId\\": 110272\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => '创建或更新泳道组', - ], - 'CreateOrUpdateSwimmingLane' => [ - 'summary' => '创建或者更新泳道。', - 'path' => '/pop/v1/cas/gray/createOrUpdateSwimmingLane', - 'methods' => [ - 'post', + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '400', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ExecJob'], + ], ], - 'schemes' => [ - 'https', + 'ramActions' => [ + [ + 'operationType' => '', + 'ramAction' => [ + 'action' => 'sae:ExecJob', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + ], + 'GetApplication' => [ + 'summary' => '查询应用基本信息。', + 'path' => '/pop/v1/sam/app/getApplication', + 'methods' => ['get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'consumes' => [ - 'application/x-www-form-urlencoded', - ], - 'produces' => [ - 'application/json', - ], - 'operationType' => 'write', + 'consumes' => ['application/x-www-form-urlencoded'], + 'produces' => ['application/json'], + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'create', - 'abilityTreeCode' => '221506', - 'abilityTreeNodes' => [ - 'FEATUREsaeX255DA', - ], + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '238172', + 'abilityTreeNodes' => ['FEATUREsaeRVPNSA'], + 'autoTest' => true, + 'tenantRelevance' => 'tenant', ], 'parameters' => [ [ - 'name' => 'LaneId', + 'name' => 'AppId', 'in' => 'query', - 'schema' => [ - 'description' => '泳道ID。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '13857', - ], + 'schema' => ['description' => '应用ID。', 'type' => 'string', 'required' => false, 'example' => '017f39b8-dfa4-4e16-a84b-1dcee4b1****'], ], [ - 'name' => 'LaneName', + 'name' => 'AppName', 'in' => 'query', - 'schema' => [ - 'description' => '泳道名称。', - 'type' => 'string', - 'required' => false, - 'example' => 'test', - ], + 'schema' => ['description' => '应用名称。', 'type' => 'string', 'required' => false, 'example' => 'test'], ], [ - 'name' => 'LaneTag', + 'name' => 'NamespaceId', 'in' => 'query', + 'schema' => ['description' => '命名空间ID', 'type' => 'string', 'required' => false, 'example' => 'cn-shenzhen'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '泳道标签。', - 'type' => 'string', - 'required' => false, - 'example' => 'g1', + 'title' => 'Schema of Response', + 'description' => '返回结果。', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求ID。', 'type' => 'string', 'example' => '01CF26C7-00A3-4AA6-BA76-7E95F2A3****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => 'ac1a0b2215622920113732501e****'], + 'Application' => [ + 'description' => '应用详细信息。', + 'type' => 'object', + 'properties' => [ + 'AppId' => ['description' => '应用ID。', 'type' => 'string', 'example' => '443d638a-ef76-47c4-b707-61197d******'], + 'AppName' => ['description' => '应用名称。', 'type' => 'string', 'example' => 'test'], + 'AppDescription' => ['description' => '应用描述信息。', 'type' => 'string', 'example' => 'Test'], + 'NamespaceId' => ['description' => '命名空间ID。', 'type' => 'string', 'example' => 'cn-shenzhen'], + 'ScaleRuleType' => ['description' => '弹性伸缩策略类型。取值说明如下:'."\n" + ."\n" + .'- **timing**:定时弹性。'."\n" + .'- **metric**:监控指标弹性。'."\n" + .'- **mix**:混合弹性。', 'type' => 'string', 'example' => 'timing'], + 'ScaleRuleEnabled' => ['description' => '是否启用弹性伸缩策略。取值说明如下:'."\n" + ."\n" + .'- **true**:启用状态。'."\n" + .'- **false**:禁用状态。', 'type' => 'string', 'example' => 'true'], + 'RunningInstances' => ['description' => '运行中的实例个数。', 'type' => 'integer', 'format' => 'int32', 'example' => '6'], + 'Instances' => ['description' => '应用实例个数。', 'type' => 'integer', 'format' => 'int32', 'example' => '6'], + 'Cpu' => ['description' => '每个实例所需的CPU,单位为毫核,不能为0。目前仅支持以下固定规格:'."\n" + .'- **500**'."\n" + .'- **1000**'."\n" + .'- **2000**'."\n" + .'- **4000**'."\n" + .'- **8000**'."\n" + .'- **12000**'."\n" + .'- **16000**'."\n" + .'- **32000**', 'type' => 'integer', 'format' => 'int32', 'example' => '2000'], + 'Mem' => ['description' => '每个实例所需的内存,单位为MB,不能为0。与CPU为一一对应关系,目前仅支持以下固定规格:'."\n" + ."\n" + .'- **1024**:对应CPU为500毫核和1000毫核。'."\n" + .'- **2048**:对应CPU为500、1000毫核和2000毫核。'."\n" + .'- **4096**:对应CPU为1000、2000毫核和4000毫核。'."\n" + .'- **8192**:对应CPU为2000、4000毫核和8000毫核。'."\n" + .'- **12288**:对应CPU为12000毫核。'."\n" + .'- **16384**:对应CPU为4000、8000毫核和16000毫核。'."\n" + .'- **24576**:对应CPU为12000毫核。'."\n" + .'- **32768**:对应CPU为16000毫核。'."\n" + .'- **65536**:对应CPU为8000、16000和32000毫核。'."\n" + .'- **131072**:对应CPU为32000毫核。', 'type' => 'integer', 'format' => 'int32', 'example' => '4096'], + 'MseEnabled' => ['description' => '是否启用 WebAssemblyFilter。取值:'."\n" + ."\n" + .'- true:启用。'."\n" + .'- false:不启用。', 'type' => 'boolean', 'example' => 'true'], + 'MseNamespaceId' => ['description' => 'MSE 实例所在的命名空间ID。', 'type' => 'string', 'example' => 'test'], + 'ProgrammingLanguage' => ['description' => '创建应用的技术栈语言。取值说明如下:'."\n" + ."\n" + .'- **java**:Java语言。'."\n" + .'- **php**:PHP语言。'."\n" + .'- **other**:多语言,例如Python、C++、Go、.NET和Node.js等。', 'type' => 'string', 'example' => 'java'], + 'BaseAppId' => ['description' => '基础应用ID。', 'type' => 'string', 'example' => 'ee99cce6-1c8e-4bfa-96c3-3e2fa9******'], + 'IsStateful' => ['description' => '是否为有状态应用。', 'type' => 'boolean'], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + ['errorCode' => 'InvalidApplication.NotFound', 'errorMessage' => 'The current application does not exist.', 'description' => '找不到当前应用。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.NoPermission', 'errorMessage' => 'Resource no permission', 'description' => '请求资源无权限'], + ], + 404 => [ + ['errorCode' => 'InvalidAppId.NotFound', 'errorMessage' => 'The specified AppId does not exist.', 'description' => '指定的AppId不存在。'], + ], + ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"01CF26C7-00A3-4AA6-BA76-7E95F2A3****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"ac1a0b2215622920113732501e****\\",\\n \\"Application\\": {\\n \\"AppId\\": \\"443d638a-ef76-47c4-b707-61197d******\\",\\n \\"AppName\\": \\"test\\",\\n \\"AppDescription\\": \\"Test\\",\\n \\"NamespaceId\\": \\"cn-shenzhen\\",\\n \\"ScaleRuleType\\": \\"timing\\",\\n \\"ScaleRuleEnabled\\": \\"true\\",\\n \\"RunningInstances\\": 6,\\n \\"Instances\\": 6,\\n \\"Cpu\\": 2000,\\n \\"Mem\\": 4096,\\n \\"MseEnabled\\": true,\\n \\"MseNamespaceId\\": \\"test\\",\\n \\"ProgrammingLanguage\\": \\"java\\",\\n \\"BaseAppId\\": \\"ee99cce6-1c8e-4bfa-96c3-3e2fa9******\\",\\n \\"IsStateful\\": true\\n }\\n}","type":"json"}]', + 'title' => '查询应用基本信息', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:28.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-07-04T06:12:37.000Z', 'description' => '响应参数发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:GetApplication', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], + ], + ], + 'GetArmsTopNMetric' => [ + 'path' => '/pop/v1/sam/getArmsTopNMetric', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'GroupId', + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'abilityTreeCode' => '16756', + 'abilityTreeNodes' => ['FEATUREsaeK7DHH9'], + ], + 'parameters' => [ + [ + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '所属泳道组ID。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => 'b2a8a925-477a-eswa-b823-d5e22500****', - ], + 'schema' => ['description' => '地域ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], ], [ - 'name' => 'NamespaceId', + 'name' => 'OrderBy', 'in' => 'query', - 'schema' => [ - 'description' => '命名空间ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-beijing:test', - ], + 'schema' => ['description' => '排序字段,根据查询返回字段中的某个字段排序。', 'type' => 'string', 'required' => true, 'example' => 'count'], ], [ - 'name' => 'CanaryModel', + 'name' => 'Limit', 'in' => 'query', - 'schema' => [ - 'description' => '全链路灰度模式:'."\n" - ."\n" - .'- 0: 按请求内容路由'."\n" - ."\n" - .'- 1: 按比例路由', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '0', - ], + 'schema' => ['description' => '返回数据条数,取值范围[0,100]。', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '10'], ], [ - 'name' => 'Enable', + 'name' => 'StartTime', 'in' => 'query', - 'schema' => [ - 'description' => '泳道状态:'."\n" - ."\n" - .'- true:开启'."\n" - .'- false:关闭', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'schema' => ['description' => '查询起始时间。', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1675823135951'], ], [ - 'name' => 'AppEntryRule', + 'name' => 'EndTime', 'in' => 'query', - 'style' => 'json', + 'schema' => ['description' => '查询终止时间。', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1675824035951'], + ], + [ + 'name' => 'AppSource', + 'in' => 'query', + 'schema' => ['description' => 'SAE应用类型。'."\n" + ."\n" + .'- **micro_service。**'."\n" + .'- **web。**'."\n" + .'- **job。**', 'type' => 'string', 'required' => false, 'example' => 'micro_service'], + ], + [ + 'name' => 'CpuStrategy', + 'in' => 'query', + 'schema' => ['description' => 'CPU分配策略。'."\n" + ."\n" + .'- **request**:仅在有请求时分配CPU。'."\n" + .'- **always**:始终分配固定CPU。', 'type' => 'string', 'required' => false, 'example' => 'always'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '网关路由配置。'."\n" - ."\n" - .'> 泳道组网关入口为 Java 时,此字段为必填项。', 'type' => 'object', 'properties' => [ - 'Paths' => [ - 'description' => '匹配的请求路径。', - 'type' => 'array', - 'items' => [ - 'description' => '请求路径。', - 'type' => 'string', - 'required' => false, - 'example' => '/A', - ], - 'required' => false, - ], - 'Percentage' => [ - 'description' => '流量比例,按比例路由使用,取值0-100。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '50', - ], - 'ConditionJoiner' => [ - 'description' => '条件之间的逻辑连接符:'."\n" - ."\n" - .'- AND:同时满足所有条件'."\n" - .'- OR:满足任意条件', - 'type' => 'string', - 'required' => false, - 'example' => 'AND', - ], - 'Conditions' => [ - 'description' => '匹配条件。', + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '3B763F98-0BA2-5C23-B6B8-558568D2****'], + 'Data' => [ + 'description' => '应用信息列表。', 'type' => 'array', 'items' => [ - 'description' => '条件项。', + 'description' => '应用信息。', 'type' => 'object', 'properties' => [ - 'Type' => [ - 'description' => '参数类型:'."\n" - ."\n" - .'- header:Header'."\n" - .'- param:Parameter'."\n" - ."\n" - .'- cookie:Cookie', - 'type' => 'string', - 'required' => false, - 'example' => 'Header', - ], - 'Name' => [ - 'description' => '参数名称。', - 'type' => 'string', - 'required' => false, - 'example' => 't', - ], - 'Condition' => [ - 'description' => '匹配规则:'."\n" - ."\n" - .'- ==:精确匹配,流量值与条件值需要完全相等。'."\n" - .'- !=:精确匹配,流量值与条件值需要完全相等。'."\n" - .'- in:包含匹配,流量值需要在指定的列表中时满足条件。'."\n" - .'- 百分比:百分比匹配,原理:满足`hash(get(key)) % 100 < value` 成立时满足条件。'."\n" - .'- 正则匹配:正则表达式匹配,按照正则表达式规则匹配时满足条件。', - 'type' => 'string', - 'required' => false, - 'example' => '==', - ], - 'Value' => [ - 'description' => '条件的匹配值。', - 'type' => 'string', - 'required' => false, - 'example' => 'g1', - ], + 'AppId' => ['description' => '应用ID。', 'type' => 'string', 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****'], + 'Name' => ['description' => '应用名称。', 'type' => 'string', 'example' => 'test'], + 'RegionId' => ['description' => '命名空间ID。', 'type' => 'string', 'example' => 'cn-hangzhou'], + 'Count' => ['description' => '总请求量,单位个。', 'type' => 'integer', 'format' => 'int64', 'example' => '100'], + 'Error' => ['description' => '错误数,单位个。', 'type' => 'integer', 'format' => 'int64', 'example' => '0'], + 'Rt' => ['description' => '平均响应时间,单位ms。', 'type' => 'integer', 'format' => 'int64', 'example' => '100'], ], - 'required' => false, - ], - 'required' => false, - ], - 'IndependentPercentageEnable' => [ - 'description' => '是否启用按比例灰度。'."\n" - ."\n" - .'- true:启用,启用后需要配置PercentageByPath。'."\n" - .'- false:不启用。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], - 'PercentageByPath' => [ - 'description' => '流量配置。', - 'type' => 'object', - 'required' => false, - 'additionalProperties' => [ - 'type' => 'integer', - 'format' => 'int32', - 'description' => '为所配置的路径配置流量比例,范围为1~100。', - 'example' => '50', ], ], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '获取应用列表。取值说明如下:'."\n" + ."\n" + .'- **true**:获取成功。'."\n" + .'- **false**:获取失败。', 'type' => 'boolean', 'example' => 'true'], ], - 'required' => false, + 'description' => '', ], ], + ], + 'errorCodes' => [ + 400 => [ + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], + ], + ], + 'title' => 'GetArmsTopNMetric', + 'summary' => '调用GetArmsTopNMetric接口获取应用监控的Top N应用列表。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:27.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2024-03-28T05:28:44.000Z', 'description' => '请求参数发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GetArmsTopNMetric'], + ], + ], + 'ramActions' => [ [ - 'name' => 'MseGatewayEntryRule', - 'in' => 'query', - 'style' => 'json', - 'schema' => [ - 'description' => 'MSE网关路由配置。'."\n" - ."\n" - .'> 当**EntryAppType**配置为**apig**或**mse-gw**时,为必填字段。', - 'type' => 'object', - 'properties' => [ - 'RouteIds' => [ - 'description' => '路由ID。', - 'type' => 'array', - 'items' => [ - 'description' => '网关路由ID。调用[ListGatewayRoute](~~409437~~)获取。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '78830', - ], - 'required' => false, - ], - 'Percentage' => [ - 'description' => '流量复制比例(%),取值 0-100。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '100', - ], - 'ConditionJoiner' => [ - 'description' => '条件之间的逻辑连接符:'."\n" - ."\n" - .'- AND:同时满足所有条件'."\n" - .'- OR:满足任意条件', - 'type' => 'string', - 'required' => false, - 'example' => 'AND', - ], - 'Conditions' => [ - 'description' => '路由条件。', - 'type' => 'array', - 'items' => [ - 'description' => '配置路由条件。', - 'type' => 'object', - 'properties' => [ - 'Type' => [ - 'description' => '参数类型:'."\n" - ."\n" - .'- header:Header'."\n" - ."\n" - .'- param:Parameter'."\n" - ."\n" - .'- cookie:Cookie', - 'type' => 'string', - 'required' => false, - 'example' => 'header ', - ], - 'Name' => [ - 'description' => '条件参数名称。', - 'type' => 'string', - 'required' => false, - 'example' => 'test', - ], - 'Condition' => [ - 'description' => '匹配规则。'."\n" - ."\n" - .'- ==:精确匹配。'."\n" - .'- !=:精确匹配。'."\n" - .'- in:包含匹配。'."\n" - .'- 百分比:百分比匹配。'."\n" - .'- 正则匹配:正则表达式匹配。', - 'type' => 'string', - 'required' => false, - 'example' => '==', - ], - 'Value' => [ - 'description' => '条件的匹配值。', - 'type' => 'string', - 'required' => false, - 'example' => 'g1', - ], - ], - 'required' => false, - ], - 'required' => false, - ], - 'IndependentPercentageEnable' => [ - 'description' => '是否启用按比例灰度。'."\n" - ."\n" - .'- true:启用,启用后需要配置PercentageByPath。'."\n" - .'- false:不启用。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], - 'PercentageByRoute' => [ - 'description' => '流量配置。', - 'type' => 'object', - 'required' => false, - 'additionalProperties' => [ - 'type' => 'integer', - 'format' => 'int32', - 'example' => '100', - 'description' => '配置流量比例,范围为1~100。', - ], - ], + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'sae:GetArmsTopNMetric', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], - 'required' => false, ], ], ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"3B763F98-0BA2-5C23-B6B8-558568D2****\\",\\n \\"Data\\": [\\n {\\n \\"AppId\\": \\"7171a6ca-d1cd-4928-8642-7d5cfe69****\\",\\n \\"Name\\": \\"test\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"Count\\": 100,\\n \\"Error\\": 0,\\n \\"Rt\\": 100\\n }\\n ],\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<GetArmsTopNMetricResponse>\\n <Message>success</Message>\\n <RequestId>3B763F98-0BA2-5C23-B6B8-558568D2C1C2</RequestId>\\n <Data>\\n <AppId>7171a6ca-d1cd-4928-8642-7d5cfe69****</AppId>\\n <Name>test</Name>\\n <RegionId>cn-hangzhou</RegionId>\\n <Count>100</Count>\\n <Error>0</Error>\\n <Rt>100</Rt>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</GetArmsTopNMetricResponse>","errorExample":""}]', + ], + 'GetAvailabilityMetric' => [ + 'path' => '/pop/v1/sam/getAvailabilityMetric', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'abilityTreeCode' => '14389', + 'abilityTreeNodes' => ['FEATUREsaeD9PL61'], + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => ['description' => '地域ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou'], + ], + [ + 'name' => 'Limit', + 'in' => 'query', + 'schema' => ['description' => '返回数据条数,取值范围[0,100]。', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '10'], + ], + [ + 'name' => 'AppSource', + 'in' => 'query', + 'schema' => ['description' => 'SAE应用类型。'."\n" + ."\n" + .'- **micro_service。**'."\n" + .'- **web。**'."\n" + .'- **job。**', 'type' => 'string', 'required' => false, 'example' => 'micro_service'], + ], + [ + 'name' => 'CpuStrategy', + 'in' => 'query', + 'schema' => ['description' => 'CPU分配策略。'."\n" + ."\n" + .'- **request**:仅在有请求时分配CPU。'."\n" + .'- **always**:始终分配固定CPU。', 'type' => 'string', 'required' => false, 'example' => 'always'], + ], + ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => '创建或更新的泳道结果。', + 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求 ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回 success。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链 ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '3A92C4EA-4C53-5A1C-8AEB-F2DB1198****'], 'Data' => [ - 'description' => '返回信息。', - 'type' => 'object', - 'properties' => [ - 'LaneId' => [ - 'description' => '泳道ID。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '22318', + 'description' => '返回数据。', + 'type' => 'array', + 'items' => [ + 'description' => '结果列表。', + 'type' => 'object', + 'properties' => [ + 'AppId' => ['description' => '应用ID。', 'type' => 'string', 'example' => '017f39b8-dfa4-4e16-a84b-1dcee4b1****'], + 'Name' => ['description' => '应用名称。', 'type' => 'string', 'example' => 'test'], + 'RegionId' => ['description' => '命名空间ID。', 'type' => 'string', 'example' => 'cn-hangzhou'], + 'Runnings' => ['description' => '当前实例数。', 'type' => 'integer', 'format' => 'int64', 'example' => '1'], + 'Instances' => ['description' => '目标实例数。', 'type' => 'integer', 'format' => 'int64', 'example' => '0'], + 'ErrorInstances' => ['description' => '异常实例数。', 'type' => 'integer', 'format' => 'int64', 'example' => '0'], + 'EnableAutoscale' => ['description' => '是否启用弹性伸缩。取值说明如下:'."\n" + ."\n" + .'- **1**:启用弹性伸缩。'."\n" + .'- **0**:未启用弹性伸缩。', 'type' => 'integer', 'format' => 'int64', 'example' => '0'], ], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '是否成功创建或更新。取值说明如下:'."\n" - ."\n" - .'- true:创建成功'."\n" - .'- false:创建失败', - 'type' => 'boolean', - 'example' => 'true', - ], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '获取应用列表。取值说明如下:'."\n" + ."\n" + .'- **true**:获取成功。'."\n" + .'- **false**:获取失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], - [ - 'errorCode' => 'MseGatewayRule.CreateFailed', - 'errorMessage' => 'Create MSE Gateway rule failed.', - ], - [ - 'errorCode' => 'InternalApiError', - 'errorMessage' => 'An exception occurred when calling mse:%s, error message: %s.', - ], + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'title' => 'GetAvailabilityMetric', + 'summary' => '调用GetAvailabilityMetric接口获取实例总数异常的Top N应用列表。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:27.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2024-03-28T05:28:44.000Z', 'description' => '请求参数发生变更'], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"LaneId\\": 22318\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => '创建或更新泳道', - ], - 'ListApplicationsForSwimmingLane' => [ - 'summary' => '获取应用列表,供全链路灰度拉取应用列表。', - 'path' => '/pop/v1/cas/gray/listApplicationsForSwimmingLane', - 'methods' => [ - 'get', + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GetAvailabilityMetric'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'sae:GetAvailabilityMetric', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"3A92C4EA-4C53-5A1C-8AEB-F2DB1198****\\",\\n \\"Data\\": [\\n {\\n \\"AppId\\": \\"017f39b8-dfa4-4e16-a84b-1dcee4b1****\\",\\n \\"Name\\": \\"test\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"Runnings\\": 1,\\n \\"Instances\\": 0,\\n \\"ErrorInstances\\": 0,\\n \\"EnableAutoscale\\": 0\\n }\\n ],\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<GetAvailabilityMetricResponse>\\n <Message>success</Message>\\n <RequestId>3A92C4EA-4C53-5A1C-8AEB-F2DB11982D5F</RequestId>\\n <Data>\\n <AppId>017f39b8-dfa4-4e16-a84b-1dcee4b1****</AppId>\\n <Name>test</Name>\\n <RegionId>cn-hangzhou</RegionId>\\n <Runnings>1</Runnings>\\n <Instances>0</Instances>\\n <ErrorInstances>0</ErrorInstances>\\n <EnableAutoscale>0</EnableAutoscale>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</GetAvailabilityMetricResponse>","errorExample":""}]', + ], + 'GetChangeOrderMetric' => [ + 'path' => '/pop/v1/sam/getChangeOrderMetric', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'consumes' => [ - 'application/x-www-form-urlencoded', - ], - 'produces' => [ - 'application/json', - ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'list', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '221435', - 'abilityTreeNodes' => [ - 'FEATUREsaeUDWJ2L', - ], + 'operationType' => 'none', + 'abilityTreeCode' => '14387', + 'abilityTreeNodes' => ['FEATUREsaeRVPNSA'], ], 'parameters' => [ [ - 'name' => 'NamespaceId', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '命名空间ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-beijing:test', - ], + 'schema' => ['description' => '地域ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou'], ], [ - 'name' => 'GroupId', + 'name' => 'CreateTime', 'in' => 'query', - 'schema' => [ - 'description' => '应用分组ID。需要调用[DescribeApplicationGroups](~~126249~~)接口获取。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => 'b2a8a925-477a-eswa-b823-d5e22500****', - ], + 'schema' => ['description' => '变更单创建的起始时间。', 'type' => 'string', 'required' => true, 'example' => '1661152748883'], ], [ - 'name' => 'Tag', + 'name' => 'OrderBy', 'in' => 'query', - 'schema' => [ - 'description' => '灰度标签。', - 'type' => 'string', - 'required' => false, - 'example' => '{"alicloud.service.tag":"gray"}'."\n", - ], + 'schema' => ['description' => '排序字段,根据查询返回字段中的某个字段排序。', 'type' => 'string', 'required' => true, 'example' => 'errorPercent'], + ], + [ + 'name' => 'Limit', + 'in' => 'query', + 'schema' => ['description' => '返回数据条数,取值范围[0,100]。', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '10'], + ], + [ + 'name' => 'AppSource', + 'in' => 'query', + 'schema' => ['description' => 'SAE应用类型。'."\n" + ."\n" + .'- **micro_service。**'."\n" + .'- **web。**'."\n" + .'- **job。**', 'type' => 'string', 'required' => false, 'example' => 'micro_service'], + ], + [ + 'name' => 'CpuStrategy', + 'in' => 'query', + 'schema' => ['description' => 'CPU分配策略。'."\n" + ."\n" + .'- **request**:仅在有请求时分配CPU。'."\n" + .'- **always**:始终分配固定CPU。', 'type' => 'string', 'required' => false, 'example' => 'always'], + ], + [ + 'name' => 'AppId', + 'in' => 'query', + 'schema' => ['description' => '应用ID。', 'type' => 'string', 'required' => false], + ], + [ + 'name' => 'CoType', + 'in' => 'query', + 'schema' => ['description' => '变更单类型。', 'type' => 'string', 'required' => false], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回 **success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'RequestId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '3B763F98-0BA2-5C23-B6B8-558568D2****'], 'Data' => [ - 'description' => '应用列表。', + 'description' => '应用信息列表。', 'type' => 'array', 'items' => [ - 'description' => '应用列表信息。', + 'description' => '应用信息。', 'type' => 'object', 'properties' => [ - 'AppId' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****', - ], - 'AppName' => [ - 'description' => '应用名称。', - 'type' => 'string', - 'example' => 'demo-app', - ], - 'MseAppId' => [ - 'description' => 'MSE实例ID。', - 'type' => 'string', - 'example' => 'mse-cn-hvm47******', - ], - 'MseAppName' => [ - 'description' => 'MSE实例名称', - 'type' => 'string', - 'example' => 'test', - ], - 'MseNamespaceId' => [ - 'description' => 'MSE 实例所在的命名空间ID。', - 'type' => 'string', - 'example' => 'sae-test', - ], - 'BaseAppId' => [ - 'description' => '基线应用ID。', - 'type' => 'string', - 'example' => '8c573618-8d72-4407-baf4-f7b64b******', - ], - 'BaseAppName' => [ - 'description' => '基线应用名称。', - 'type' => 'string', - 'example' => 'demo', - ], - 'ServiceTags' => [ - 'description' => '应用配置的灰度标签', - 'type' => 'object', - 'additionalProperties' => [ - 'type' => 'string', - 'description' => '应用配置的灰度标签', - 'example' => '{"alicloud.service.tag":"gray"}', - ], - ], + 'AppId' => ['description' => '应用ID。', 'type' => 'string', 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****'], + 'Name' => ['description' => '应用名称。', 'type' => 'string', 'example' => 'test'], + 'RegionId' => ['description' => '命名空间ID。', 'type' => 'string', 'example' => 'cn-hangzhou'], + 'Total' => ['description' => '变更单总数。', 'type' => 'integer', 'format' => 'int64', 'example' => '4'], + 'Error' => ['description' => '异常变更单数量。', 'type' => 'integer', 'format' => 'int64', 'example' => '1'], + 'ErrorPercent' => ['description' => '变更失败的百分比。', 'type' => 'number', 'format' => 'float', 'example' => '0.25'], + 'TaskTimeCostMsAvg' => ['description' => '任务平均耗时(毫秒)。', 'type' => 'string'], + 'OptimizeSuggestions' => ['description' => '优化建议。', 'type' => 'string'], + 'MaxTimeCostMs' => ['description' => '最大耗时(毫秒)。', 'type' => 'number', 'format' => 'float'], + 'AvgTimeCostMs' => ['description' => '平均耗时(毫秒)。', 'type' => 'number', 'format' => 'float'], ], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**目录。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '获取应用实例列表是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:表示获取成功。'."\n" - .'- **false**:表示获取失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '获取服务列表是否成功。取值说明如下:'."\n" + ."\n" + .' - **true**:获取成功。'."\n" + .' - **false**:获取失败。', 'type' => 'boolean', 'example' => 'true'], ], + 'description' => '', ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InternalApiError', - 'errorMessage' => 'An exception occurred when calling mse:%s, error message: %s.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"3B763F98-0BA2-5C23-B6B8-558568D2****\\",\\n \\"Data\\": [\\n {\\n \\"AppId\\": \\"7171a6ca-d1cd-4928-8642-7d5cfe69****\\",\\n \\"Name\\": \\"test\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"Total\\": 4,\\n \\"Error\\": 1,\\n \\"ErrorPercent\\": 0.25,\\n \\"TaskTimeCostMsAvg\\": \\"\\",\\n \\"OptimizeSuggestions\\": \\"\\",\\n \\"MaxTimeCostMs\\": 0,\\n \\"AvgTimeCostMs\\": 0\\n }\\n ],\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<GetChangeOrderMetricResponse>\\n <Message>success</Message>\\n <RequestId>3B763F98-0BA2-5C23-B6B8-558568D2C1C2</RequestId>\\n <Data>\\n <AppId>7171a6ca-d1cd-4928-8642-7d5cfe69****</AppId>\\n <Name>test</Name>\\n <RegionId>cn-hangzhou</RegionId>\\n <Total>4</Total>\\n <Error>1</Error>\\n <ErrorPercent>0.25</ErrorPercent>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</GetChangeOrderMetricResponse>","errorExample":""}]', + 'title' => 'GetChangeOrderMetric', + 'summary' => '调用GetChangeOrderMetric接口获取异常变更单的Top N 应用列表。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:27.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-04-01T07:06:32.000Z', 'description' => '请求参数发生变更、响应参数发生变更'], + ['createdAt' => '2024-03-28T05:28:44.000Z', 'description' => '请求参数发生变更'], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": [\\n {\\n \\"AppId\\": \\"0099b7be-5f5b-4512-a7fc-56049ef1****\\",\\n \\"AppName\\": \\"demo-app\\",\\n \\"MseAppId\\": \\"mse-cn-hvm47******\\",\\n \\"MseAppName\\": \\"test\\",\\n \\"MseNamespaceId\\": \\"sae-test\\",\\n \\"BaseAppId\\": \\"8c573618-8d72-4407-baf4-f7b64b******\\",\\n \\"BaseAppName\\": \\"demo\\",\\n \\"ServiceTags\\": {\\n \\"key\\": \\"{\\\\\\"alicloud.service.tag\\\\\\":\\\\\\"gray\\\\\\"}\\"\\n }\\n }\\n ],\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => '查询泳道组应用列表', - ], - 'ListSwimmingLaneGatewayRoutes' => [ - 'summary' => '查询泳道可选的网关路由', - 'path' => '/pop/v1/cas/gray/listSwimmingLaneGatewayRoutes', - 'methods' => [ - 'get', + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GetChangeOrderMetric'], + ], ], - 'schemes' => [ - 'https', + 'ramActions' => [ + [ + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'sae:GetChangeOrderMetric', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + ], + 'GetScaleAppMetric' => [ + 'path' => '/pop/v1/sam/getScaleAppMetric', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'consumes' => [ - 'application/x-www-form-urlencoded', - ], - 'produces' => [ - 'application/json', - ], - 'operationType' => 'write', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'list', - 'abilityTreeCode' => '221887', - 'abilityTreeNodes' => [ - 'FEATUREsaeX255DA', - ], + 'operationType' => 'none', + 'abilityTreeCode' => '14220', + 'abilityTreeNodes' => ['FEATUREsae5HLO11'], ], 'parameters' => [ [ - 'name' => 'NamespaceId', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '命名空间ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-beijing:test', - ], + 'schema' => ['description' => '地域ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou'], ], [ - 'name' => 'GatewayUniqueId', + 'name' => 'Limit', 'in' => 'query', - 'schema' => [ - 'description' => '网关唯一标识ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'gw-277c0727535f4aae917e48de0f******', - ], + 'schema' => ['description' => '返回数据条数。', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '10'], + ], + [ + 'name' => 'AppSource', + 'in' => 'query', + 'schema' => ['description' => 'SAE应用类型。'."\n" + ."\n" + .'- **micro_service。**'."\n" + .'- **web。**'."\n" + .'- **job。**', 'type' => 'string', 'required' => false, 'example' => 'micro_service'], + ], + [ + 'name' => 'CpuStrategy', + 'in' => 'query', + 'schema' => ['description' => 'CPU分配策略。'."\n" + ."\n" + .'- **request**:仅在有请求时分配CPU。'."\n" + ."\n" + .'- a**lways**:始终分配固定CPU。', 'type' => 'string', 'required' => false, 'example' => 'always'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => '返回信息。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求 ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => 'ac1a0b2215622246421415014e****', - ], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '3B763F98-0BA2-5C23-B6B8-558568D2****'], 'Data' => [ - 'description' => '返回结果。', + 'description' => '应用信息列表。', 'type' => 'array', 'items' => [ - 'description' => '详细信息。', + 'description' => '应用信息。', 'type' => 'object', 'properties' => [ - 'RouteId' => [ - 'description' => '路由ID。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '16933', - ], - 'RouteName' => [ - 'description' => '路由名称。', - 'type' => 'string', - 'example' => 'test-route', - ], - 'RoutePredicate' => [ - 'description' => '路由规则。', - 'type' => 'object', - 'properties' => [ - 'PathPredicate' => [ - 'description' => '路径匹配规则。', - 'type' => 'object', - 'properties' => [ - 'Path' => [ - 'description' => '路由路径。', - 'type' => 'string', - 'example' => '/Path', - ], - 'Type' => [ - 'description' => '规则类型。', - 'type' => 'string', - 'example' => 'Header'."\n", - ], - ], - ], - ], - ], + 'AppId' => ['description' => '应用ID。', 'type' => 'string', 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****'], + 'Name' => ['description' => '应用名称。', 'type' => 'string', 'example' => 'test'], + 'RegionId' => ['description' => '命名空间ID。', 'type' => 'string', 'example' => 'cn-hangzhou'], + 'Runnings' => ['description' => '当前实例数。'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '10'], + 'MaxReplicas' => ['description' => '设置的最大实例数。', 'type' => 'integer', 'format' => 'int64', 'example' => '10'], ], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => 'HTTP状态码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:获取成功。'."\n" - .'- **false**:获取失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '获取服务列表是否成功。取值说明如下:'."\n" + ."\n" + .' - **true**:获取成功。'."\n" + .' - **false**:获取失败。', 'type' => 'boolean', 'example' => 'true'], ], + 'description' => '', ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], - [ - 'errorCode' => 'MseGatewayRule.CreateFailed', - 'errorMessage' => 'Create MSE Gateway rule failed.', - ], - [ - 'errorCode' => 'InternalApiError', - 'errorMessage' => 'An exception occurred when calling mse:%s, error message: %s.', - ], + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'title' => 'GetScaleAppMetric', + 'summary' => '调用GetScaleAppMetric接口获取弹性生效的Top N应用列表。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:27.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2024-03-28T05:28:44.000Z', 'description' => '请求参数发生变更'], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"ac1a0b2215622246421415014e****\\",\\n \\"Data\\": [\\n {\\n \\"RouteId\\": 16933,\\n \\"RouteName\\": \\"test-route\\",\\n \\"RoutePredicate\\": {\\n \\"PathPredicate\\": {\\n \\"Path\\": \\"/Path\\",\\n \\"Type\\": \\"Header\\\\n\\"\\n }\\n }\\n }\\n ],\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => '查询泳道可选的网关路由', - ], - 'ListSwimmingLaneGroupTags' => [ - 'summary' => '查询所有泳道标签列表。', - 'path' => '/pop/v1/cas/gray/listSwimmingLaneGroupTags', - 'methods' => [ - 'get', + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GetScaleAppMetric'], + ], ], - 'schemes' => [ - 'https', + 'ramActions' => [ + [ + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'sae:GetScaleAppMetric', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"3B763F98-0BA2-5C23-B6B8-558568D2****\\",\\n \\"Data\\": [\\n {\\n \\"AppId\\": \\"7171a6ca-d1cd-4928-8642-7d5cfe69****\\",\\n \\"Name\\": \\"test\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"Runnings\\": 10,\\n \\"MaxReplicas\\": 10\\n }\\n ],\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<GetScaleAppMetricResponse>\\n <Message>success</Message>\\n <RequestId>3B763F98-0BA2-5C23-B6B8-558568D2C1C2</RequestId>\\n <Data>\\n <AppId>7171a6ca-d1cd-4928-8642-7d5cfe69****</AppId>\\n <Name>test</Name>\\n <RegionId>cn-hangzhou</RegionId>\\n <Runnings>10</Runnings>\\n <MaxReplicas>10</MaxReplicas>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</GetScaleAppMetricResponse>","errorExample":""}]', + ], + 'GetWarningEventMetric' => [ + 'path' => '/pop/v1/sam/getWarningEventMetric', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'consumes' => [ - 'application/x-www-form-urlencoded', - ], - 'produces' => [ - 'application/json', - ], - 'operationType' => 'write', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'list', - 'abilityTreeCode' => '221498', - 'abilityTreeNodes' => [ - 'FEATUREsaeX255DA', - ], + 'operationType' => 'none', + 'abilityTreeCode' => '14386', + 'abilityTreeNodes' => ['FEATUREsaeD9PL61'], ], 'parameters' => [ [ - 'name' => 'NamespaceId', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '命名空间 ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-beijing:test', - ], + 'schema' => ['description' => '地域ID。'."\n" + ."\n", 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], ], [ - 'name' => 'GroupId', + 'name' => 'StartTime', 'in' => 'query', - 'schema' => [ - 'description' => '泳道组ID。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '2074', - ], + 'schema' => ['description' => '查询起始时间。'."\n" + ."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1675823135951'], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => ['description' => '查询终止时间。', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1675824035951'], + ], + [ + 'name' => 'Limit', + 'in' => 'query', + 'schema' => ['description' => '返回数据条数,取值范围[0,100]。', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '10'], + ], + [ + 'name' => 'AppSource', + 'in' => 'query', + 'schema' => ['description' => 'SAE应用类型。'."\n" + ."\n" + .'- **micro_service。**'."\n" + .'- **web。**'."\n" + .'- **job。**', 'type' => 'string', 'required' => false, 'example' => 'micro_service'], + ], + [ + 'name' => 'CpuStrategy', + 'in' => 'query', + 'schema' => ['description' => 'CPU分配策略。'."\n" + ."\n" + .'- **request**:仅在有请求时分配CPU。'."\n" + .'- **always**:始终分配固定CPU。', 'type' => 'string', 'required' => false, 'example' => 'always'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => '返回信息。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求 ID。', - 'type' => 'string', - 'example' => '30375C38-F4ED-4135-A0AE-5C75DC7F****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。'."\n" - ."\n", - 'type' => 'string', - 'example' => 'ac1a0b2215622920113732501e****', - ], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '3B763F98-0BA2-5C23-B6B8-558568D2****'], 'Data' => [ - 'description' => '返回结果。', + 'description' => '应用信息列表。', 'type' => 'array', 'items' => [ - 'description' => '详细信息。', + 'description' => '应用信息。', 'type' => 'object', 'properties' => [ - 'Tag' => [ - 'description' => '泳道标签。', - 'type' => 'string', - 'example' => 'g1'."\n", - ], - 'Metadata' => [ - 'description' => '元数据。', - 'type' => 'string', - 'example' => '{\\"tag\\":\\"g1\\",\\"priority\\":100,\\"type\\":\\"tag\\",\\"desc\\":\\"sys-label\\"}'."\n", - ], + 'AppId' => ['description' => '应用ID。', 'type' => 'string', 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****'], + 'Name' => ['description' => '应用名称。', 'type' => 'string', 'example' => 'test'], + 'RegionId' => ['description' => '命名空间ID。', 'type' => 'string', 'example' => 'cn-hangzhou'], + 'WarningCount' => ['description' => 'Warning事件数量。', 'type' => 'integer', 'format' => 'int64', 'example' => '10'], ], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:成功。'."\n" - .'- **false**:失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '获取应用列表。取值说明如下:'."\n" + ."\n" + .'- **true**:获取成功。'."\n" + .'- **false**:获取失败。', 'type' => 'boolean', 'example' => 'true'], ], + 'description' => '', ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], - [ - 'errorCode' => 'MseGatewayRule.CreateFailed', - 'errorMessage' => 'Create MSE Gateway rule failed.', - ], - [ - 'errorCode' => 'InternalApiError', - 'errorMessage' => 'An exception occurred when calling mse:%s, error message: %s.', - ], + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], + ['errorCode' => 'Sls.NotExist', 'errorMessage' => 'SLS configuration does not exist.', 'description' => 'sls资源不存在'], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"30375C38-F4ED-4135-A0AE-5C75DC7F****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"ac1a0b2215622920113732501e****\\",\\n \\"Data\\": [\\n {\\n \\"Tag\\": \\"g1\\\\n\\",\\n \\"Metadata\\": \\"{\\\\\\\\\\\\\\"tag\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"g1\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"priority\\\\\\\\\\\\\\":100,\\\\\\\\\\\\\\"type\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"tag\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"desc\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"sys-label\\\\\\\\\\\\\\"}\\\\n\\"\\n }\\n ],\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => '查询所有泳道标签列表', - ], - 'DescribeSwimmingLane' => [ - 'summary' => '查询泳道详情。', - 'path' => '/pop/v1/cas/gray/describeSwimmingLane', - 'methods' => [ - 'get', + 'title' => 'GetWarningEventMetric', + 'summary' => '调用GetWarningEventMetric接口获取Warning事件的Top N应用列表。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:27.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2024-03-28T05:28:44.000Z', 'description' => '请求参数发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GetWarningEventMetric'], + ], ], - 'schemes' => [ - 'https', + 'ramActions' => [ + [ + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'sae:GetWarningEventMetric', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"3B763F98-0BA2-5C23-B6B8-558568D2****\\",\\n \\"Data\\": [\\n {\\n \\"AppId\\": \\"7171a6ca-d1cd-4928-8642-7d5cfe69****\\",\\n \\"Name\\": \\"test\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"WarningCount\\": 10\\n }\\n ],\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<GetWarningEventMetricResponse>\\n <Message>success</Message>\\n <RequestId>3B763F98-0BA2-5C23-B6B8-558568D2C1C2</RequestId>\\n <Data>\\n <AppId>7171a6ca-d1cd-4928-8642-7d5cfe69****</AppId>\\n <Name>test</Name>\\n <RegionId>cn-hangzhou</RegionId>\\n <WarningCount>10</WarningCount>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</GetWarningEventMetricResponse>","errorExample":""}]', + ], + 'GetWebshellToken' => [ + 'path' => '/pop/v1/sam/instance/webshellToken', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'consumes' => [ - 'application/x-www-form-urlencoded', - ], - 'produces' => [ - 'application/json', - ], - 'operationType' => 'write', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '221504', - 'abilityTreeNodes' => [ - 'FEATUREsaeX255DA', - ], + 'abilityTreeCode' => '6366', + 'abilityTreeNodes' => ['FEATUREsaeRVPNSA'], ], 'parameters' => [ [ - 'name' => 'NamespaceId', + 'name' => 'AppId', 'in' => 'query', - 'schema' => [ - 'description' => '命名空间ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-beijing:test', - ], + 'schema' => ['description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => '017f39b8-dfa4-4e16-a84b-1dcee4b1****'], ], [ - 'name' => 'GroupId', + 'name' => 'PodName', 'in' => 'query', - 'schema' => [ - 'description' => '泳道组ID。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '2074', - ], + 'schema' => ['description' => 'Pod名称。', 'type' => 'string', 'required' => true, 'example' => 'hello-podsdfsdfsdfsdf'], ], [ - 'name' => 'LaneId', + 'name' => 'ContainerName', 'in' => 'query', + 'schema' => ['description' => '容器名称。'."\n" + ."\n" + .'注意事项:'."\n" + .'- 如果指定了该参数,云助手将在实例的指定容器内执行脚本。'."\n" + .'- 如果指定了该参数,仅支持在云助手Agent版本不低于2.2.3.344的Linux实例内运行。'."\n" + ."\n" + .' - 查看云助手Agent版本的具体操作,请参见[安装云助手Agent](~~64921~~) 。'."\n" + .' - 升级云助手Agent版本的具体操作,请参见[升级或禁止升级云助手Agent](~~134383~~)。'."\n" + .'- 如果指定了该参数,本接口中已指定的`Username`参数和[CreateCommand](~~64844~~)中指定的`WorkingDir`参数将不会生效。仅支持通过容器默认用户在容器的默认工作目录下执行命令。更多信息,请参见[使用云助手在容器内执行命令](~~456641~~)。'."\n" + .'- 如果指定了该参数,在Linux容器中只支持执行Shell脚本,不支持在脚本开头使用类似`#!/usr/bin/python`命令的形式指定脚本内容的解释器。更多信息,请参见[使用云助手在容器内执行命令](~~456641~~)。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'ad-helper'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '泳道ID。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '9637', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '调用结果的附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回success。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], + 'Data' => [ + 'description' => '返回结果。', + 'type' => 'object', + 'properties' => [ + 'Token' => ['description' => 'Token信息。', 'type' => 'string', 'example' => 'zWWpvRj_5pzof4hfo7-hGynM8oGMmO_7'], + 'HttpUrl' => ['description' => 'Webshell页面地址', 'type' => 'string', 'example' => 'HttpUrl : "https://saenext.console.aliyun.com/cn-shenzhen/app-list/app1/micro-app/shell/pod1?tokenId=xxx'], + 'WebSocketUrl' => ['description' => 'Websocket地址', 'type' => 'string', 'example' => 'wss://sae-webshell.console.aliyun.com/websocket/eamWebshell?tokenId=xxx®ion=cn-shenzhen'], + ], + ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**目录。', 'type' => 'string'], + 'Code' => ['description' => 'HTTP状态码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '是否成功。', 'type' => 'boolean', 'example' => 'true'], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + ['errorCode' => 'InvalidApplication.NotFound', 'errorMessage' => 'The current application does not exist.', 'description' => '找不到当前应用。'], + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], + ], + 500 => [ + ['errorCode' => 'OperationFailed.RPCError', 'errorMessage' => 'Internal RPC request processing error.', 'description' => '内部RPC请求处理报错。'], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"Token\\": \\"zWWpvRj_5pzof4hfo7-hGynM8oGMmO_7\\",\\n \\"HttpUrl\\": \\"HttpUrl : \\\\\\"https://saenext.console.aliyun.com/cn-shenzhen/app-list/app1/micro-app/shell/pod1?tokenId=xxx\\",\\n \\"WebSocketUrl\\": \\"wss://sae-webshell.console.aliyun.com/websocket/eamWebshell?tokenId=xxx®ion=cn-shenzhen\\"\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => '获取远程登录Token', + 'summary' => '获取远程登录实例 Web Shell 的 Token。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:27.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-05-07T09:45:49.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2025-01-02T02:45:29.000Z', 'description' => '请求参数发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '20', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GetWebshellToken'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:GetWebshellToken', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], ], + ], + 'ListAllSwimmingLaneGroups' => [ + 'summary' => '查询所有泳道组。', + 'path' => '/pop/v1/cas/gray/listSwimmingLaneGroups', + 'methods' => ['get'], + 'schemes' => ['https'], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'consumes' => ['application/x-www-form-urlencoded'], + 'produces' => ['application/json'], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'abilityTreeCode' => '221433', + 'abilityTreeNodes' => ['FEATUREsaeX255DA'], + ], + 'parameters' => [ + [ + 'name' => 'NamespaceId', + 'in' => 'query', + 'schema' => ['description' => '命名空间ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-beijing:test'], + ], + ], 'responses' => [ 200 => [ 'schema' => [ @@ -24483,383 +15014,136 @@ 'description' => '返回信息。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求 ID。', - 'type' => 'string', - 'example' => '30375C38-F4ED-4135-A0AE-5C75DC7F****', - ], - 'Message' => [ - 'description' => '调用结果的附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回 **success** 。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求 ID。', 'type' => 'string', 'example' => '30375C38-F4ED-4135-A0AE-5C75DC7F****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => 'ac1a0b2215622246421415014e****'], 'Data' => [ 'description' => '返回结果。', - 'type' => 'object', - 'properties' => [ - 'LaneId' => [ - 'description' => '泳道ID。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '9488', - ], - 'LaneName' => [ - 'description' => '泳道组名称。', - 'type' => 'string', - 'example' => 'mse-test', - ], - 'LaneTag' => [ - 'description' => '泳道标签。', - 'type' => 'string', - 'example' => '{"alicloud.service.tag":"g1"}', - ], - 'Enable' => [ - 'description' => '泳道状态:'."\n" - ."\n" - .'- true:开启'."\n" - .'- false:关闭', - 'type' => 'boolean', - 'example' => 'true', - ], - 'EnableRules' => [ - 'description' => '是否开启了流量规则。', - 'type' => 'boolean', - 'example' => 'true', - ], - 'CanaryModel' => [ - 'description' => '全链路灰度模式:'."\n" + 'type' => 'array', + 'items' => [ + 'description' => '泳道组纤细信息。', + 'type' => 'object', + 'properties' => [ + 'GroupId' => ['description' => '泳道组ID。', 'type' => 'integer', 'format' => 'int64', 'example' => '110283'], + 'GroupName' => ['description' => '泳道组名称。', 'type' => 'string', 'example' => 'mse-test'], + 'NamespaceId' => ['description' => '命名空间ID。', 'type' => 'string', 'example' => 'cn-beijing:test'], + 'MseNamespaceId' => ['description' => 'MSE 实例所在的命名空间ID。', 'type' => 'string', 'example' => 'sae-ent'."\n"], + 'CanaryModel' => ['description' => '全链路灰度模式:'."\n" ."\n\n" .'- 0: 按请求内容路由'."\n" ."\n" - .'- 1: 按比例路由', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '0', - ], - 'Apps' => [ - 'description' => '应用信息。', - 'type' => 'array', - 'items' => [ - 'description' => '应用信息。', - 'type' => 'object', - 'properties' => [ - 'AppId' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'example' => '6b4c0f64-f679-4580-8105-91eac4******', - ], - 'AppName' => [ - 'description' => '应用名称。', - 'type' => 'string', - 'example' => 'test', - ], - 'MseAppId' => [ - 'description' => 'MSE实例ID。', - 'type' => 'string', - 'example' => 'mse-cn-53y49******', - ], - 'MseAppName' => [ - 'description' => 'MSE实例名称。', - 'type' => 'string', - 'example' => 'sae-test', - ], - 'mseNamespaceId' => [ - 'description' => 'MSE命名空间ID。', - 'type' => 'string', - 'example' => '6733e538-d52f-48e6-91a4-192f91******', - ], - ], + .'- 1: 按比例路由', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], + 'AppIds' => [ + 'description' => '泳道组关联的应用 ID 列表。', + 'type' => 'array', + 'items' => ['description' => '应用 ID 列表。', 'type' => 'string', 'example' => '['."\n" + .' "1409e354-8b4c-4c53-ab35-f2765e******",'."\n" + .' "ef41218e-f96c-4d92-a5ed-1f6e83******",'."\n" + .' "52cc2015-265b-4cd6-8bb8-21ea4f******"'."\n" + .' ]'], ], - ], - 'AppEntryRule' => [ - 'description' => '应用入口规则。', - 'type' => 'object', - 'properties' => [ - 'Paths' => [ - 'description' => '请求路径。', - 'type' => 'array', - 'items' => [ - 'description' => 'URL路径。', - 'type' => 'string', - 'example' => '/Path', - ], - ], - 'Percentage' => [ - 'description' => '流量比例,按比例路由使用,取值0-100。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '50', - ], - 'ConditionJoiner' => [ - 'description' => '条件之间的逻辑连接符:'."\n" - ."\n" - .'- AND:同时满足所有条件'."\n" - .'- OR:满足任意条件', - 'type' => 'string', - 'example' => 'AND', - ], - 'Conditions' => [ - 'description' => '匹配条件。', - 'type' => 'array', - 'items' => [ - 'description' => '条件项。', - 'type' => 'object', - 'properties' => [ - 'Type' => [ - 'description' => '参数类型。', - 'type' => 'string', - 'example' => 'Header', - ], - 'Name' => [ - 'description' => '参数名称。', - 'type' => 'string', - 'example' => 't', - ], - 'Condition' => [ - 'description' => '匹配规则。', - 'type' => 'string', - 'example' => '==', - ], - 'Value' => [ - 'description' => '条件的匹配值。', - 'type' => 'string', - 'example' => 'g1', - ], - 'Values' => [ - 'description' => '条件的匹配值。', - 'type' => 'array', - 'items' => [ - 'description' => '条件的匹配值。', - 'type' => 'string', - 'example' => 'g1', - ], - ], - ], - ], - ], - 'IndependentPercentageEnable' => [ - 'description' => '是否启用按比例灰度。', - 'type' => 'boolean', - 'example' => 'true', - ], - 'PercentageByPath' => [ - 'description' => '流量匹配。', + 'Apps' => [ + 'description' => '应用信息。', + 'type' => 'array', + 'items' => [ + 'description' => '应用详细信息。', 'type' => 'object', - 'additionalProperties' => [ - 'type' => 'integer', - 'format' => 'int32', - 'description' => '流量比例。', - 'example' => '100', + 'properties' => [ + 'AppId' => ['description' => '应用 ID。', 'type' => 'string', 'example' => 'f5aad0d0-3e56-44cd-8199-9887a0******'], + 'AppName' => ['description' => '应用名称。', 'type' => 'string', 'example' => 'test'], + 'MseAppId' => ['description' => 'MSE实例ID。', 'type' => 'string', 'example' => 'mse-cn-53y49******'], + 'MseAppName' => ['description' => 'MSE实例名称。', 'type' => 'string', 'example' => 'demo'], + 'MseNamespaceId' => ['description' => 'MSE实例所在命名空间的 ID。', 'type' => 'string', 'example' => 'sae-ent'], ], ], ], - ], - 'MseGatewayEntryRule' => [ - 'description' => 'MSE 网关路由。', - 'type' => 'object', - 'properties' => [ - 'RouteIds' => [ - 'description' => '路由 ID 列表。', - 'type' => 'array', - 'items' => [ - 'description' => '路由 ID。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '["1001","1002"]', - ], - ], - 'Routes' => [ - 'description' => '路由规则的详细配置。', - 'type' => 'array', - 'items' => [ - 'description' => '路由配置。', - 'type' => 'object', - 'properties' => [ - 'RouteId' => [ - 'description' => '路由ID。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '9504', - ], - 'RouteName' => [ - 'description' => '路由名称。', - 'type' => 'string', - 'example' => 'demo'."\n", - ], - 'RoutePredicate' => [ - 'description' => '路由规则。', - 'type' => 'object', - 'properties' => [ - 'PathPredicate' => [ - 'description' => '路径匹配规则。', - 'type' => 'object', - 'properties' => [ - 'Path' => [ - 'description' => '路径。', - 'type' => 'string', - 'example' => '/Path', - ], - 'Type' => [ - 'description' => '匹配规则。', - 'type' => 'string', - 'example' => 'Header', - ], - ], - ], - ], - ], - ], - ], - ], - 'Percentage' => [ - 'description' => '路径流量比例。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '100', - ], - 'Conditions' => [ - 'description' => '匹配条件。', - 'type' => 'array', - 'items' => [ - 'description' => '条件项。', - 'type' => 'object', - 'properties' => [ - 'Type' => [ - 'description' => '参数类型。', - 'type' => 'string', - 'example' => 'Header', - ], - 'Name' => [ - 'description' => '参数名称。', - 'type' => 'string', - 'example' => 't', - ], - 'Condition' => [ - 'description' => '匹配规则。', - 'type' => 'string', - 'example' => '==', - ], - 'Value' => [ - 'description' => '条件的匹配值。', - 'type' => 'string', - 'example' => 'g1', - ], - ], - ], - ], - 'PercentageByRoute' => [ - 'description' => '流量配置。', - 'type' => 'object', - 'additionalProperties' => [ - 'type' => 'integer', - 'format' => 'int32', - 'description' => '配置流量比例,范围为1~100。', - 'example' => '100', - ], - ], - 'IndependentPercentageEnable' => [ - 'description' => '是否启用按比例灰度。', - 'type' => 'boolean', - 'example' => 'true', - ], - 'ConditionJoiner' => [ - 'description' => '条件之间的逻辑连接符。', - 'type' => 'string', - 'example' => 'AND', + 'EntryAppType' => ['description' => '应用入口类型(网关类型)。'."\n" + ."\n" + .'- **apig:** 云原生 API 网关'."\n" + .'- **mse-gw:** MSE 云原始网关'."\n" + .'- **mse:** Java 服务网关', 'type' => 'string', 'example' => 'mse-gw'], + 'EntryAppId' => ['description' => '对应网关实例ID。', 'type' => 'string', 'example' => 'bq4g5bumop@e05bd4328******'], + 'EntryApp' => [ + 'description' => '入口应用。', + 'type' => 'object', + 'properties' => [ + 'AppId' => ['description' => '应用ID。', 'type' => 'string', 'example' => '09805e5d-9b8d-42cd-9442-03c498******'], + 'AppName' => ['description' => '应用名称。', 'type' => 'string', 'example' => 'test'], + 'AppType' => ['description' => '应用类型。', 'type' => 'string', 'example' => 'mse'], + 'MseAppId' => ['description' => 'MSE实例ID。', 'type' => 'string', 'example' => 'mse-cn-53y49******'."\n"], + 'MseAppName' => ['description' => 'MSE实例名称', 'type' => 'string', 'example' => 'test'], + 'MseNamespaceId' => ['description' => 'MSE 实例所在的命名空间ID。', 'type' => 'string', 'example' => 'sae-ent'], ], ], + 'SwimVersion' => ['description' => '全链路灰度版本,取值范围:0,2(推荐使用)。', 'type' => 'string', 'example' => '2'], ], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:查询成功。'."\n" - .'- **false**:查询失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:查询成功。'."\n" + .'- **false**:查询失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], - [ - 'errorCode' => 'MseGatewayRule.CreateFailed', - 'errorMessage' => 'Create MSE Gateway rule failed.', - ], - [ - 'errorCode' => 'InternalApiError', - 'errorMessage' => 'An exception occurred when calling mse:%s, error message: %s.', - ], + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], + ['errorCode' => 'MseGatewayRule.CreateFailed', 'errorMessage' => 'Create MSE Gateway rule failed.', 'description' => '创建MSE微服务网关路由失败。'], + ['errorCode' => 'InternalApiError', 'errorMessage' => 'An exception occurred when calling mse:%s, error message: %s.', 'description' => '调用 mse:%s 接口异常,%s'], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"30375C38-F4ED-4135-A0AE-5C75DC7F****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"ac1a0b2215622246421415014e****\\",\\n \\"Data\\": [\\n {\\n \\"GroupId\\": 110283,\\n \\"GroupName\\": \\"mse-test\\",\\n \\"NamespaceId\\": \\"cn-beijing:test\\",\\n \\"MseNamespaceId\\": \\"sae-ent\\\\n\\",\\n \\"CanaryModel\\": 0,\\n \\"AppIds\\": [\\n \\"[\\\\n \\\\\\"1409e354-8b4c-4c53-ab35-f2765e******\\\\\\",\\\\n \\\\\\"ef41218e-f96c-4d92-a5ed-1f6e83******\\\\\\",\\\\n \\\\\\"52cc2015-265b-4cd6-8bb8-21ea4f******\\\\\\"\\\\n ]\\"\\n ],\\n \\"Apps\\": [\\n {\\n \\"AppId\\": \\"f5aad0d0-3e56-44cd-8199-9887a0******\\",\\n \\"AppName\\": \\"test\\",\\n \\"MseAppId\\": \\"mse-cn-53y49******\\",\\n \\"MseAppName\\": \\"demo\\",\\n \\"MseNamespaceId\\": \\"sae-ent\\"\\n }\\n ],\\n \\"EntryAppType\\": \\"mse-gw\\",\\n \\"EntryAppId\\": \\"bq4g5bumop@e05bd4328******\\",\\n \\"EntryApp\\": {\\n \\"AppId\\": \\"09805e5d-9b8d-42cd-9442-03c498******\\",\\n \\"AppName\\": \\"test\\",\\n \\"AppType\\": \\"mse\\",\\n \\"MseAppId\\": \\"mse-cn-53y49******\\\\n\\",\\n \\"MseAppName\\": \\"test\\",\\n \\"MseNamespaceId\\": \\"sae-ent\\"\\n },\\n \\"SwimVersion\\": \\"2\\"\\n }\\n ],\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => '查询所有泳道组', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:27.000Z', 'description' => 'OpenAPI 下线'], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'sae:ListAllSwimmingLaneGroups', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"30375C38-F4ED-4135-A0AE-5C75DC7F****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"LaneId\\": 9488,\\n \\"LaneName\\": \\"mse-test\\",\\n \\"LaneTag\\": \\"{\\\\\\"alicloud.service.tag\\\\\\":\\\\\\"g1\\\\\\"}\\",\\n \\"Enable\\": true,\\n \\"EnableRules\\": true,\\n \\"CanaryModel\\": 0,\\n \\"Apps\\": [\\n {\\n \\"AppId\\": \\"6b4c0f64-f679-4580-8105-91eac4******\\",\\n \\"AppName\\": \\"test\\",\\n \\"MseAppId\\": \\"mse-cn-53y49******\\",\\n \\"MseAppName\\": \\"sae-test\\",\\n \\"mseNamespaceId\\": \\"6733e538-d52f-48e6-91a4-192f91******\\"\\n }\\n ],\\n \\"AppEntryRule\\": {\\n \\"Paths\\": [\\n \\"/Path\\"\\n ],\\n \\"Percentage\\": 50,\\n \\"ConditionJoiner\\": \\"AND\\",\\n \\"Conditions\\": [\\n {\\n \\"Type\\": \\"Header\\",\\n \\"Name\\": \\"t\\",\\n \\"Condition\\": \\"==\\",\\n \\"Value\\": \\"g1\\",\\n \\"Values\\": [\\n \\"g1\\"\\n ]\\n }\\n ],\\n \\"IndependentPercentageEnable\\": true,\\n \\"PercentageByPath\\": {\\n \\"key\\": 100\\n }\\n },\\n \\"MseGatewayEntryRule\\": {\\n \\"RouteIds\\": [\\n 0\\n ],\\n \\"Routes\\": [\\n {\\n \\"RouteId\\": 9504,\\n \\"RouteName\\": \\"demo\\\\n\\",\\n \\"RoutePredicate\\": {\\n \\"PathPredicate\\": {\\n \\"Path\\": \\"/Path\\",\\n \\"Type\\": \\"Header\\"\\n }\\n }\\n }\\n ],\\n \\"Percentage\\": 100,\\n \\"Conditions\\": [\\n {\\n \\"Type\\": \\"Header\\",\\n \\"Name\\": \\"t\\",\\n \\"Condition\\": \\"==\\",\\n \\"Value\\": \\"g1\\"\\n }\\n ],\\n \\"PercentageByRoute\\": {\\n \\"key\\": 100\\n },\\n \\"IndependentPercentageEnable\\": true,\\n \\"ConditionJoiner\\": \\"AND\\"\\n }\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => '查询泳道详情', ], 'ListAllSwimmingLanes' => [ 'summary' => '查询所有泳道。', 'path' => '/pop/v1/cas/gray/listSwimmingLanes', - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'https', - ], + 'methods' => ['get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'consumes' => [ - 'application/x-www-form-urlencoded', - ], - 'produces' => [ - 'application/json', - ], + 'consumes' => ['application/x-www-form-urlencoded'], + 'produces' => ['application/json'], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ @@ -24867,31 +15151,18 @@ 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '221500', - 'abilityTreeNodes' => [ - 'FEATUREsaeX255DA', - ], + 'abilityTreeNodes' => ['FEATUREsaeX255DA'], ], 'parameters' => [ [ 'name' => 'NamespaceId', 'in' => 'query', - 'schema' => [ - 'description' => '命名空间 ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-beijing:test', - ], + 'schema' => ['description' => '命名空间 ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-beijing:test'], ], [ 'name' => 'GroupId', 'in' => 'query', - 'schema' => [ - 'description' => '泳道组ID。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '2074', - ], + 'schema' => ['description' => '泳道组ID。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '2074'], ], ], 'responses' => [ @@ -24901,25 +15172,12 @@ 'description' => '返回信息。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求 ID。', - 'type' => 'string', - 'example' => 'B4D805CA-926D-41B1-8E63-7AD0C1ED****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求 ID。', 'type' => 'string', 'example' => 'B4D805CA-926D-41B1-8E63-7AD0C1ED****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], 'Data' => [ 'description' => '返回结果。', 'type' => 'array', @@ -24927,45 +15185,19 @@ 'description' => '详细信息。', 'type' => 'object', 'properties' => [ - 'LaneId' => [ - 'description' => '泳道ID。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '16401', - ], - 'LaneName' => [ - 'description' => '泳道组名称。', - 'type' => 'string', - 'example' => 'test', - ], - 'LaneTag' => [ - 'description' => '泳道标签。', - 'type' => 'string', - 'example' => 'g1'."\n", - ], - 'CanaryModel' => [ - 'description' => '全链路灰度模式:'."\n" - ."\n\n" - .'- 0: 按请求内容路由'."\n" - ."\n" - .'- 1: 按比例路由', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '0', - ], - 'Enable' => [ - 'description' => '泳道状态:'."\n" - ."\n" - .'- true:开启'."\n" - .'- false:关闭', - 'type' => 'boolean', - 'example' => 'true', - ], - 'EnableRules' => [ - 'description' => '是否开启了流量规则。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'LaneId' => ['description' => '泳道ID。', 'type' => 'integer', 'format' => 'int64', 'example' => '16401'], + 'LaneName' => ['description' => '泳道组名称。', 'type' => 'string', 'example' => 'test'], + 'LaneTag' => ['description' => '泳道标签。', 'type' => 'string', 'example' => 'g1'."\n"], + 'CanaryModel' => ['description' => '全链路灰度模式:'."\n" + ."\n\n" + .'- 0: 按请求内容路由'."\n" + ."\n" + .'- 1: 按比例路由', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], + 'Enable' => ['description' => '泳道状态:'."\n" + ."\n" + .'- true:开启'."\n" + .'- false:关闭', 'type' => 'boolean', 'example' => 'true'], + 'EnableRules' => ['description' => '是否开启了流量规则。', 'type' => 'boolean', 'example' => 'true'], 'Apps' => [ 'description' => '关联的应用。', 'type' => 'array', @@ -24973,31 +15205,11 @@ 'description' => '应用详情。', 'type' => 'object', 'properties' => [ - 'AppId' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'example' => '8ea0c468-8165-416d-beae-531abb******', - ], - 'AppName' => [ - 'description' => '应用名称。', - 'type' => 'string', - 'example' => 'test', - ], - 'MseAppId' => [ - 'description' => 'MSE实例ID。', - 'type' => 'string', - 'example' => 'mse-cn-53y49******', - ], - 'MseAppName' => [ - 'description' => 'MSE实例名称。', - 'type' => 'string', - 'example' => 'sae-test', - ], - 'MseNamespaceId' => [ - 'description' => 'MSE实例所在命名空间的 ID。', - 'type' => 'string', - 'example' => 'sae-ent'."\n", - ], + 'AppId' => ['description' => '应用ID。', 'type' => 'string', 'example' => '8ea0c468-8165-416d-beae-531abb******'], + 'AppName' => ['description' => '应用名称。', 'type' => 'string', 'example' => 'test'], + 'MseAppId' => ['description' => 'MSE实例ID。', 'type' => 'string', 'example' => 'mse-cn-53y49******'], + 'MseAppName' => ['description' => 'MSE实例名称。', 'type' => 'string', 'example' => 'sae-test'], + 'MseNamespaceId' => ['description' => 'MSE实例所在命名空间的 ID。', 'type' => 'string', 'example' => 'sae-ent'."\n"], ], ], ], @@ -25008,26 +15220,13 @@ 'Paths' => [ 'description' => '请求路径。', 'type' => 'array', - 'items' => [ - 'description' => '请求路径。', - 'type' => 'string', - 'example' => '/', - ], - ], - 'Percentage' => [ - 'description' => '流量比例,按比例路由使用,取值0-100。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '50', - ], - 'ConditionJoiner' => [ - 'description' => '条件之间的逻辑连接符:'."\n" - ."\n" - .'- AND:同时满足所有条件'."\n" - .'- OR:满足任意条件', - 'type' => 'string', - 'example' => 'AND', + 'items' => ['description' => '请求路径。', 'type' => 'string', 'example' => '/'], ], + 'Percentage' => ['description' => '流量比例,按比例路由使用,取值0-100。', 'type' => 'integer', 'format' => 'int32', 'example' => '50'], + 'ConditionJoiner' => ['description' => '条件之间的逻辑连接符:'."\n" + ."\n" + .'- AND:同时满足所有条件'."\n" + .'- OR:满足任意条件', 'type' => 'string', 'example' => 'AND'], 'Conditions' => [ 'description' => '匹配条件。', 'type' => 'array', @@ -25035,52 +15234,23 @@ 'description' => '条件项。', 'type' => 'object', 'properties' => [ - 'Type' => [ - 'description' => '参数类型。', - 'type' => 'string', - 'example' => 'Header', - ], - 'Name' => [ - 'description' => '参数名称。', - 'type' => 'string', - 'example' => 't', - ], - 'Condition' => [ - 'description' => '匹配规则。', - 'type' => 'string', - 'example' => '==', - ], - 'Value' => [ - 'description' => '条件的匹配值。', - 'type' => 'string', - 'example' => 'g1', - ], + 'Type' => ['description' => '参数类型。', 'type' => 'string', 'example' => 'Header'], + 'Name' => ['description' => '参数名称。', 'type' => 'string', 'example' => 't'], + 'Condition' => ['description' => '匹配规则。', 'type' => 'string', 'example' => '=='], + 'Value' => ['description' => '条件的匹配值。', 'type' => 'string', 'example' => 'g1'], 'Values' => [ 'description' => '条件的匹配值。', 'type' => 'array', - 'items' => [ - 'description' => '条件的匹配值。', - 'type' => 'string', - 'example' => 'g1', - ], + 'items' => ['description' => '条件的匹配值。', 'type' => 'string', 'example' => 'g1'], ], ], ], ], - 'IndependentPercentageEnable' => [ - 'description' => '是否启用按比例灰度。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'IndependentPercentageEnable' => ['description' => '是否启用按比例灰度。', 'type' => 'boolean', 'example' => 'true'], 'PercentageByPath' => [ 'description' => '流量匹配。', 'type' => 'object', - 'additionalProperties' => [ - 'type' => 'integer', - 'format' => 'int32', - 'example' => '100', - 'description' => '流量比例。', - ], + 'additionalProperties' => ['type' => 'integer', 'format' => 'int32', 'example' => '100', 'description' => '流量比例。'], ], ], ], @@ -25091,12 +15261,7 @@ 'RouteIds' => [ 'description' => '路由 ID 列表。', 'type' => 'array', - 'items' => [ - 'description' => '路由 ID。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '103092', - ], + 'items' => ['description' => '路由 ID。', 'type' => 'integer', 'format' => 'int64', 'example' => '103092'], ], 'Routes' => [ 'description' => '路由规则的详细配置。', @@ -25105,17 +15270,8 @@ 'description' => '路由配置。', 'type' => 'object', 'properties' => [ - 'RouteId' => [ - 'description' => '路由ID。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '9504'."\n", - ], - 'RouteName' => [ - 'description' => '路由名称。', - 'type' => 'string', - 'example' => 'demo'."\n", - ], + 'RouteId' => ['description' => '路由ID。', 'type' => 'integer', 'format' => 'int64', 'example' => '9504'."\n"], + 'RouteName' => ['description' => '路由名称。', 'type' => 'string', 'example' => 'demo'."\n"], 'RoutePredicate' => [ 'description' => '路由规则。', 'type' => 'object', @@ -25124,16 +15280,8 @@ 'description' => '路径匹配规则。', 'type' => 'object', 'properties' => [ - 'path' => [ - 'description' => '路径。', - 'type' => 'string', - 'example' => '/Path'."\n", - ], - 'type' => [ - 'description' => '匹配规则。', - 'type' => 'string', - 'example' => 'Header'."\n", - ], + 'path' => ['description' => '路径。', 'type' => 'string', 'example' => '/Path'."\n"], + 'type' => ['description' => '匹配规则。', 'type' => 'string', 'example' => 'Header'."\n"], ], ], ], @@ -25141,17 +15289,8 @@ ], ], ], - 'Percentage' => [ - 'description' => '路径流量比例。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '100', - ], - 'ConditionJoiner' => [ - 'description' => '条件之间的逻辑连接符。', - 'type' => 'string', - 'example' => 'AND', - ], + 'Percentage' => ['description' => '路径流量比例。', 'type' => 'integer', 'format' => 'int32', 'example' => '100'], + 'ConditionJoiner' => ['description' => '条件之间的逻辑连接符。', 'type' => 'string', 'example' => 'AND'], 'Conditions' => [ 'description' => '匹配条件。', 'type' => 'array', @@ -25159,933 +15298,643 @@ 'description' => '条件项。', 'type' => 'object', 'properties' => [ - 'Type' => [ - 'description' => '参数类型。', - 'type' => 'string', - 'example' => 'Header'."\n", - ], - 'Name' => [ - 'description' => '参数名称。', - 'type' => 'string', - 'example' => 't'."\n", - ], - 'Condition' => [ - 'description' => '匹配规则。', - 'type' => 'string', - 'example' => '=='."\n", - ], - 'Value' => [ - 'description' => '条件的匹配值。', - 'type' => 'string', - 'example' => 'g1'."\n", - ], + 'Type' => ['description' => '参数类型。', 'type' => 'string', 'example' => 'Header'."\n"], + 'Name' => ['description' => '参数名称。', 'type' => 'string', 'example' => 't'."\n"], + 'Condition' => ['description' => '匹配规则。', 'type' => 'string', 'example' => '=='."\n"], + 'Value' => ['description' => '条件的匹配值。', 'type' => 'string', 'example' => 'g1'."\n"], ], ], ], - 'IndependentPercentageEnable' => [ - 'description' => '是否启用按比例灰度。', - 'type' => 'boolean', - 'example' => 'true'."\n", - ], + 'IndependentPercentageEnable' => ['description' => '是否启用按比例灰度。', 'type' => 'boolean', 'example' => 'true'."\n"], 'PercentageByRoute' => [ 'description' => '流量配置。', 'type' => 'object', - 'additionalProperties' => [ - 'type' => 'integer', - 'format' => 'int32', - 'example' => '"2":1'."\n", - 'description' => '配置流量比例,范围为1~100。', - ], + 'additionalProperties' => ['type' => 'integer', 'format' => 'int32', 'example' => '"2":1'."\n", 'description' => '配置流量比例,范围为1~100。'], ], ], ], ], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:重启成功。'."\n" - .'- **false**:重启失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:重启成功。'."\n" + .'- **false**:重启失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], - [ - 'errorCode' => 'MseGatewayRule.CreateFailed', - 'errorMessage' => 'Create MSE Gateway rule failed.', - ], - [ - 'errorCode' => 'InternalApiError', - 'errorMessage' => 'An exception occurred when calling mse:%s, error message: %s.', - ], + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], + ['errorCode' => 'MseGatewayRule.CreateFailed', 'errorMessage' => 'Create MSE Gateway rule failed.', 'description' => '创建MSE微服务网关路由失败。'], + ['errorCode' => 'InternalApiError', 'errorMessage' => 'An exception occurred when calling mse:%s, error message: %s.', 'description' => '调用 mse:%s 接口异常,%s'], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"B4D805CA-926D-41B1-8E63-7AD0C1ED****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": [\\n {\\n \\"LaneId\\": 16401,\\n \\"LaneName\\": \\"test\\",\\n \\"LaneTag\\": \\"g1\\\\n\\",\\n \\"CanaryModel\\": 0,\\n \\"Enable\\": true,\\n \\"EnableRules\\": true,\\n \\"Apps\\": [\\n {\\n \\"AppId\\": \\"8ea0c468-8165-416d-beae-531abb******\\",\\n \\"AppName\\": \\"test\\",\\n \\"MseAppId\\": \\"mse-cn-53y49******\\",\\n \\"MseAppName\\": \\"sae-test\\",\\n \\"MseNamespaceId\\": \\"sae-ent\\\\n\\"\\n }\\n ],\\n \\"AppEntryRule\\": {\\n \\"Paths\\": [\\n \\"/\\"\\n ],\\n \\"Percentage\\": 50,\\n \\"ConditionJoiner\\": \\"AND\\",\\n \\"Conditions\\": [\\n {\\n \\"Type\\": \\"Header\\",\\n \\"Name\\": \\"t\\",\\n \\"Condition\\": \\"==\\",\\n \\"Value\\": \\"g1\\",\\n \\"Values\\": [\\n \\"g1\\"\\n ]\\n }\\n ],\\n \\"IndependentPercentageEnable\\": true,\\n \\"PercentageByPath\\": {\\n \\"key\\": 100\\n }\\n },\\n \\"MseGatewayEntryRule\\": {\\n \\"RouteIds\\": [\\n 103092\\n ],\\n \\"Routes\\": [\\n {\\n \\"RouteId\\": 9504,\\n \\"RouteName\\": \\"demo\\\\n\\",\\n \\"RoutePredicate\\": {\\n \\"PathPredicate\\": {\\n \\"path\\": \\"/Path\\\\n\\",\\n \\"type\\": \\"Header\\\\n\\"\\n }\\n }\\n }\\n ],\\n \\"Percentage\\": 100,\\n \\"ConditionJoiner\\": \\"AND\\",\\n \\"Conditions\\": [\\n {\\n \\"Type\\": \\"Header\\\\n\\",\\n \\"Name\\": \\"t\\\\n\\",\\n \\"Condition\\": \\"==\\\\n\\",\\n \\"Value\\": \\"g1\\\\n\\"\\n }\\n ],\\n \\"IndependentPercentageEnable\\": true,\\n \\"PercentageByRoute\\": {\\n \\"key\\": 0\\n }\\n }\\n }\\n ],\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"B4D805CA-926D-41B1-8E63-7AD0C1ED****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": [\\n {\\n \\"LaneId\\": 16401,\\n \\"LaneName\\": \\"test\\",\\n \\"LaneTag\\": \\"g1\\\\n\\",\\n \\"CanaryModel\\": 0,\\n \\"Enable\\": true,\\n \\"EnableRules\\": true,\\n \\"Apps\\": [\\n {\\n \\"AppId\\": \\"8ea0c468-8165-416d-beae-531abb******\\",\\n \\"AppName\\": \\"test\\",\\n \\"MseAppId\\": \\"mse-cn-53y49******\\",\\n \\"MseAppName\\": \\"sae-test\\",\\n \\"MseNamespaceId\\": \\"sae-ent\\\\n\\"\\n }\\n ],\\n \\"AppEntryRule\\": {\\n \\"Paths\\": [\\n \\"/\\"\\n ],\\n \\"Percentage\\": 50,\\n \\"ConditionJoiner\\": \\"AND\\",\\n \\"Conditions\\": [\\n {\\n \\"Type\\": \\"Header\\",\\n \\"Name\\": \\"t\\",\\n \\"Condition\\": \\"==\\",\\n \\"Value\\": \\"g1\\",\\n \\"Values\\": [\\n \\"g1\\"\\n ]\\n }\\n ],\\n \\"IndependentPercentageEnable\\": true,\\n \\"PercentageByPath\\": {\\n \\"key\\": 100\\n }\\n },\\n \\"MseGatewayEntryRule\\": {\\n \\"RouteIds\\": [\\n 103092\\n ],\\n \\"Routes\\": [\\n {\\n \\"RouteId\\": 9504,\\n \\"RouteName\\": \\"demo\\\\n\\",\\n \\"RoutePredicate\\": {\\n \\"PathPredicate\\": {\\n \\"path\\": \\"/Path\\\\n\\",\\n \\"type\\": \\"Header\\\\n\\"\\n }\\n }\\n }\\n ],\\n \\"Percentage\\": 100,\\n \\"ConditionJoiner\\": \\"AND\\",\\n \\"Conditions\\": [\\n {\\n \\"Type\\": \\"Header\\\\n\\",\\n \\"Name\\": \\"t\\\\n\\",\\n \\"Condition\\": \\"==\\\\n\\",\\n \\"Value\\": \\"g1\\\\n\\"\\n }\\n ],\\n \\"IndependentPercentageEnable\\": true,\\n \\"PercentageByRoute\\": {\\n \\"key\\": 0\\n }\\n }\\n }\\n ],\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","type":"json"}]', 'title' => '查询所有泳道', - ], - 'ListAllSwimmingLaneGroups' => [ - 'summary' => '查询所有泳道组。', - 'path' => '/pop/v1/cas/gray/listSwimmingLaneGroups', - 'methods' => [ - 'get', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:27.000Z', 'description' => 'OpenAPI 下线'], ], - 'schemes' => [ - 'https', + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'sae:ListAllSwimmingLanes', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + ], + 'ListAppEvents' => [ + 'path' => '/pop/v1/sam/app/listAppEvents', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'consumes' => [ - 'application/x-www-form-urlencoded', - ], - 'produces' => [ - 'application/json', - ], - 'operationType' => 'write', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'list', - 'abilityTreeCode' => '221433', - 'abilityTreeNodes' => [ - 'FEATUREsaeX255DA', - ], + 'operationType' => 'get', + 'abilityTreeCode' => '6369', + 'abilityTreeNodes' => ['FEATUREsae5BSSHJ'], ], 'parameters' => [ [ - 'name' => 'NamespaceId', + 'name' => 'CurrentPage', 'in' => 'query', - 'schema' => [ - 'description' => '命名空间ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-beijing:test', - ], + 'schema' => ['description' => '当前页码。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => ['description' => '分页查询时设置的每页行数。取值范围\\[0,10000]。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], + ], + [ + 'name' => 'AppId', + 'in' => 'query', + 'schema' => ['description' => '应用ID。', 'type' => 'string', 'required' => false, 'example' => 'f7730764-d88f-4b9a-8d8e-cd8efbfe****'], + ], + [ + 'name' => 'ObjectKind', + 'in' => 'query', + 'schema' => ['description' => '对象类型。取值说明如下:'."\n" + ."\n" + .'- **Deployment**:应用。'."\n" + .'- **Pod**:应用实例。'."\n" + .'- **Service**:SLB。'."\n" + .'- **HorizontalPodAutoscaler**:自动弹性。'."\n" + .'- **CloneSet**:应用。', 'type' => 'string', 'required' => false, 'example' => 'Pod'], + ], + [ + 'name' => 'ObjectName', + 'in' => 'query', + 'schema' => ['description' => '对象名。支持前缀模糊搜索。', 'type' => 'string', 'required' => false, 'example' => 'errew-b86bf540-b4dc-47d8-a42f-b4997c14bd8f-5595cbddd6-x****'], + ], + [ + 'name' => 'EventType', + 'in' => 'query', + 'schema' => ['description' => '事件类型。取值说明如下:'."\n" + ."\n" + .'- **Warning**:告警。'."\n" + .'- **Normal**:正常。'."\n", 'type' => 'string', 'required' => false, 'example' => 'Warning'], + ], + [ + 'name' => 'Reason', + 'in' => 'query', + 'schema' => ['description' => '事件原因。支持前缀模糊搜索。', 'type' => 'string', 'required' => false, 'example' => 'Started'], + ], + [ + 'name' => 'Namespace', + 'in' => 'query', + 'schema' => ['description' => '命名空间ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-beijing'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => '返回信息。', + 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求 ID。', - 'type' => 'string', - 'example' => '30375C38-F4ED-4135-A0AE-5C75DC7F****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => 'ac1a0b2215622246421415014e****', - ], + 'Message' => ['description' => '调用结果的附加信息。', 'type' => 'string', 'example' => 'success'], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'B4D805CA-926D-41B1-8E63-7AD0C1ED****'], 'Data' => [ - 'description' => '返回结果。', - 'type' => 'array', - 'items' => [ - 'description' => '泳道组纤细信息。', - 'type' => 'object', - 'properties' => [ - 'GroupId' => [ - 'description' => '泳道组ID。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '110283', - ], - 'GroupName' => [ - 'description' => '泳道组名称。', - 'type' => 'string', - 'example' => 'mse-test', - ], - 'NamespaceId' => [ - 'description' => '命名空间ID。', - 'type' => 'string', - 'example' => 'cn-beijing:test', - ], - 'MseNamespaceId' => [ - 'description' => 'MSE 实例所在的命名空间ID。', - 'type' => 'string', - 'example' => 'sae-ent'."\n", - ], - 'CanaryModel' => [ - 'description' => '全链路灰度模式:'."\n" - ."\n\n" - .'- 0: 按请求内容路由'."\n" - ."\n" - .'- 1: 按比例路由', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '0', - ], - 'AppIds' => [ - 'description' => '泳道组关联的应用 ID 列表。', - 'type' => 'array', - 'items' => [ - 'description' => '应用 ID 列表。', - 'type' => 'string', - 'example' => '['."\n" - .' "1409e354-8b4c-4c53-ab35-f2765e******",'."\n" - .' "ef41218e-f96c-4d92-a5ed-1f6e83******",'."\n" - .' "52cc2015-265b-4cd6-8bb8-21ea4f******"'."\n" - .' ]', - ], - ], - 'Apps' => [ - 'description' => '应用信息。', - 'type' => 'array', - 'items' => [ - 'description' => '应用详细信息。', - 'type' => 'object', - 'properties' => [ - 'AppId' => [ - 'description' => '应用 ID。', - 'type' => 'string', - 'example' => 'f5aad0d0-3e56-44cd-8199-9887a0******', - ], - 'AppName' => [ - 'description' => '应用名称。', - 'type' => 'string', - 'example' => 'test', - ], - 'MseAppId' => [ - 'description' => 'MSE实例ID。', - 'type' => 'string', - 'example' => 'mse-cn-53y49******', - ], - 'MseAppName' => [ - 'description' => 'MSE实例名称。', - 'type' => 'string', - 'example' => 'demo', - ], - 'MseNamespaceId' => [ - 'description' => 'MSE实例所在命名空间的 ID。', - 'type' => 'string', - 'example' => 'sae-ent', - ], - ], - ], - ], - 'EntryAppType' => [ - 'description' => '应用入口类型(网关类型)。'."\n" - ."\n" - .'- **apig:** 云原生 API 网关'."\n" - .'- **mse-gw:** MSE 云原始网关'."\n" - .'- **mse:** Java 服务网关', - 'type' => 'string', - 'example' => 'mse-gw', - ], - 'EntryAppId' => [ - 'description' => '对应网关实例ID。', - 'type' => 'string', - 'example' => 'bq4g5bumop@e05bd4328******', - ], - 'EntryApp' => [ - 'description' => '入口应用。', + 'description' => '事件列表。', + 'type' => 'object', + 'properties' => [ + 'CurrentPage' => ['description' => '当前页码。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'AppEventEntity' => [ + 'description' => '事件。', + 'type' => 'array', + 'items' => [ + 'description' => '事件。', 'type' => 'object', 'properties' => [ - 'AppId' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'example' => '09805e5d-9b8d-42cd-9442-03c498******', - ], - 'AppName' => [ - 'description' => '应用名称。', - 'type' => 'string', - 'example' => 'test', - ], - 'AppType' => [ - 'description' => '应用类型。', - 'type' => 'string', - 'example' => 'mse', - ], - 'MseAppId' => [ - 'description' => 'MSE实例ID。', - 'type' => 'string', - 'example' => 'mse-cn-53y49******'."\n", - ], - 'MseAppName' => [ - 'description' => 'MSE实例名称', - 'type' => 'string', - 'example' => 'test', - ], - 'MseNamespaceId' => [ - 'description' => 'MSE 实例所在的命名空间ID。', - 'type' => 'string', - 'example' => 'sae-ent', - ], + 'ObjectKind' => ['description' => '对象种类。', 'type' => 'string', 'example' => 'Pod'], + 'EventType' => ['description' => '事件类型。', 'type' => 'string', 'example' => 'Normal'], + 'LastTimestamp' => ['description' => '最后出现时间。', 'type' => 'string', 'example' => '2020-02-19T05:01:28Z'], + 'Message' => ['description' => '事件信息。', 'type' => 'string', 'example' => 'Created container'], + 'ObjectName' => ['description' => '对象名称。', 'type' => 'string', 'example' => 'errew-b86bf540-b4dc-47d8-a42f-b4997c14bd8f-5595cbddd6-2****'], + 'Reason' => ['description' => '事件原因。', 'type' => 'string', 'example' => 'Created'], + 'FirstTimestamp' => ['description' => '首次出现时间。', 'type' => 'string', 'example' => '2020-02-19T05:01:28Z'], + 'CauseAnalysis' => ['description' => '原因分析。', 'type' => 'string'], ], ], - 'SwimVersion' => [ - 'description' => '全链路灰度版本,取值范围:0,2(推荐使用)。', - 'type' => 'string', - 'example' => '2', - ], ], + 'TotalSize' => ['description' => '应用事件总数。', 'type' => 'integer', 'format' => 'int32', 'example' => '20'], + 'PageSize' => ['description' => '分页查询时设置的每页数量。', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:查询成功。'."\n" - .'- **false**:查询失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '查看应用事件是否成功。取值说明如下:'."\n" + .'- **true**:查看成功。'."\n" + .'- **false**:查看失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], - [ - 'errorCode' => 'MseGatewayRule.CreateFailed', - 'errorMessage' => 'Create MSE Gateway rule failed.', - ], - [ - 'errorCode' => 'InternalApiError', - 'errorMessage' => 'An exception occurred when calling mse:%s, error message: %s.', - ], + ['errorCode' => 'get.event.error', 'errorMessage' => 'Failed to obtain event information.', 'description' => '获得事件信息失败。'], + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"B4D805CA-926D-41B1-8E63-7AD0C1ED****\\",\\n \\"Data\\": {\\n \\"CurrentPage\\": 1,\\n \\"AppEventEntity\\": [\\n {\\n \\"ObjectKind\\": \\"Pod\\",\\n \\"EventType\\": \\"Normal\\",\\n \\"LastTimestamp\\": \\"2020-02-19T05:01:28Z\\",\\n \\"Message\\": \\"Created container\\",\\n \\"ObjectName\\": \\"errew-b86bf540-b4dc-47d8-a42f-b4997c14bd8f-5595cbddd6-2****\\",\\n \\"Reason\\": \\"Created\\",\\n \\"FirstTimestamp\\": \\"2020-02-19T05:01:28Z\\",\\n \\"CauseAnalysis\\": \\"\\"\\n }\\n ],\\n \\"TotalSize\\": 20,\\n \\"PageSize\\": 10\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<ListAppEventsResponse>\\n <Message>success</Message>\\n <RequestId>B4D805CA-926D-41B1-8E63-7AD0C1ED****</RequestId>\\n <Data>\\n <CurrentPage>1</CurrentPage>\\n <AppEventEntity>\\n <ObjectKind>Pod</ObjectKind>\\n <EventType>Normal</EventType>\\n <LastTimestamp>2020-02-19T05:01:28Z</LastTimestamp>\\n <Message>Created container</Message>\\n <ObjectName>errew-b86bf540-b4dc-47d8-a42f-b4997c14bd8f-5595cbddd6-2****</ObjectName>\\n <Reason>Created</Reason>\\n <FirstTimestamp>2020-02-19T05:01:28Z</FirstTimestamp>\\n </AppEventEntity>\\n <TotalSize>20</TotalSize>\\n <PageSize>10</PageSize>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</ListAppEventsResponse>","errorExample":""}]', + 'title' => '查看应用事件', + 'summary' => '调用ListAppEvents接口查看应用事件。', + 'changeSet' => [ + ['createdAt' => '2026-04-16T07:39:54.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-04-13T12:48:10.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-04-13T02:34:54.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-12-25T03:03:27.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-06-20T10:09:44.000Z', 'description' => '响应参数发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListAppEvents'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:ListAppEvents', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"30375C38-F4ED-4135-A0AE-5C75DC7F****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"ac1a0b2215622246421415014e****\\",\\n \\"Data\\": [\\n {\\n \\"GroupId\\": 110283,\\n \\"GroupName\\": \\"mse-test\\",\\n \\"NamespaceId\\": \\"cn-beijing:test\\",\\n \\"MseNamespaceId\\": \\"sae-ent\\\\n\\",\\n \\"CanaryModel\\": 0,\\n \\"AppIds\\": [\\n \\"[\\\\n \\\\\\"1409e354-8b4c-4c53-ab35-f2765e******\\\\\\",\\\\n \\\\\\"ef41218e-f96c-4d92-a5ed-1f6e83******\\\\\\",\\\\n \\\\\\"52cc2015-265b-4cd6-8bb8-21ea4f******\\\\\\"\\\\n ]\\"\\n ],\\n \\"Apps\\": [\\n {\\n \\"AppId\\": \\"f5aad0d0-3e56-44cd-8199-9887a0******\\",\\n \\"AppName\\": \\"test\\",\\n \\"MseAppId\\": \\"mse-cn-53y49******\\",\\n \\"MseAppName\\": \\"demo\\",\\n \\"MseNamespaceId\\": \\"sae-ent\\"\\n }\\n ],\\n \\"EntryAppType\\": \\"mse-gw\\",\\n \\"EntryAppId\\": \\"bq4g5bumop@e05bd4328******\\",\\n \\"EntryApp\\": {\\n \\"AppId\\": \\"09805e5d-9b8d-42cd-9442-03c498******\\",\\n \\"AppName\\": \\"test\\",\\n \\"AppType\\": \\"mse\\",\\n \\"MseAppId\\": \\"mse-cn-53y49******\\\\n\\",\\n \\"MseAppName\\": \\"test\\",\\n \\"MseNamespaceId\\": \\"sae-ent\\"\\n },\\n \\"SwimVersion\\": \\"2\\"\\n }\\n ],\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => '查询所有泳道组', ], - 'DeleteSwimmingLaneGroup' => [ - 'summary' => '删除泳道组。', - 'path' => '/pop/v1/cas/gray/deleteSwimmingLaneGroup', - 'methods' => [ - 'post', - ], - 'schemes' => [ - 'https', - ], + 'ListAppServices' => [ + 'summary' => '查询微服务的服务列表。', + 'path' => '/pop/v1/sam/service/listAppServices', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'consumes' => [ - 'application/x-www-form-urlencoded', - ], - 'produces' => [ - 'application/json', - ], - 'operationType' => 'write', + 'consumes' => ['application/x-www-form-urlencoded'], + 'produces' => ['application/json'], + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'delete', - 'abilityTreeCode' => '221434', - 'abilityTreeNodes' => [ - 'FEATUREsaeX255DA', - ], + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '219797', + 'abilityTreeNodes' => ['FEATUREsaeUDWJ2L'], ], 'parameters' => [ [ - 'name' => 'NamespaceId', + 'name' => 'AppId', 'in' => 'query', - 'schema' => [ - 'description' => '命名空间ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-beijing:demo', - ], + 'schema' => ['description' => '应用ID,vpcId、命名空间ID、应用ID必须且只能填写一项。', 'type' => 'string', 'required' => false, 'example' => '017f39b8-dfa4-4e16-a84b-1dcee4b1****'], ], [ - 'name' => 'GroupId', + 'name' => 'ServiceType', 'in' => 'query', - 'schema' => [ - 'description' => '泳道组ID。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '2074', - ], + 'schema' => ['description' => '服务类型。取值说明如下:'."\n" + ."\n" + .'- **dubbo**'."\n" + .'- **springCloud**'."\n" + .'- **hsf**'."\n" + .'- **k8sService**', 'type' => 'string', 'required' => false, 'example' => 'springCloud'], + ], + [ + 'name' => 'RegistryType', + 'in' => 'query', + 'schema' => ['description' => '注册中心类型。取值:'."\n" + ."\n" + .'- **0**:SAE Nacos'."\n" + .'- **1**:自建注册中心'."\n" + .'- **2**:MSE Nacos'."\n" + .'- **9**:SAE K8s Service', 'type' => 'string', 'required' => false, 'example' => '0'], + ], + [ + 'name' => 'NacosInstanceId', + 'in' => 'query', + 'schema' => ['description' => 'MseNacos实例ID,当注册中心为MSE Nacos时必填。', 'type' => 'string', 'required' => false, 'example' => 'mse-cn-sco3r0u****'], + ], + [ + 'name' => 'NacosNamespaceId', + 'in' => 'query', + 'schema' => ['description' => 'MseNacos 命名空间ID,当注册中心为MSE Nacos时必填。', 'type' => 'string', 'required' => false, 'example' => 'mse-test'], + ], + [ + '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' => 'VpcId', + 'in' => 'query', + 'schema' => ['description' => 'VPC唯一标识,vpcId、命名空间ID、应用ID必须且只能填写一项。', 'type' => 'string', 'required' => false, 'example' => 'vpc-2ze0i263cnn311nvj****'], + ], + [ + 'name' => 'NamespaceId', + 'in' => 'query', + 'schema' => ['description' => '命名空间ID,VpcId、命名空间ID、应用ID必须且只能填写一项。', 'type' => 'string', 'required' => false, 'example' => 'cn-beijing:test'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => '返回信息。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求 ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => 'ac1a0b2215622920113732501e****', - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:删除成功。'."\n" - .'- **false**:删除失败。', - 'type' => 'boolean', - 'example' => 'true', + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], + 'Data' => [ + 'description' => '服务列表信息。', + 'type' => 'array', + 'items' => [ + 'description' => '服务信息。', + 'type' => 'object', + 'properties' => [ + 'ServiceName' => ['description' => '服务名称。', 'type' => 'string', 'example' => 'frontend'], + 'ServiceGroup' => ['description' => '服务分组。', 'type' => 'string', 'example' => 'DEFAULT_GROUP'], + 'ServiceVersion' => ['description' => '服务版本。', 'type' => 'string', 'example' => '1.0.0'], + 'InstanceCount' => ['description' => '服务的实例数。', 'type' => 'string', 'example' => '1'], + 'ServiceType' => ['description' => '服务类型。取值说明如下:'."\n" + ."\n" + .'- **dubbo**'."\n" + .'- **springCloud**'."\n" + .'- **hsf**'."\n" + .'- **k8sService**', 'type' => 'string', 'example' => 'springCloud'], + 'ServiceProtocol' => ['description' => '该服务使用的协议。', 'type' => 'string', 'example' => 'HTTP'], + 'ServicePorts' => [ + 'description' => '端口列表。', + 'type' => 'array', + 'items' => ['description' => '端口值。', 'type' => 'integer', 'format' => 'int32', 'example' => '8000'], + ], + 'ServicePortAndProtocol' => [ + 'description' => '端口和协议Map。', + 'type' => 'object', + 'additionalProperties' => ['type' => 'string', 'example' => '8000:TCP', 'description' => '端口和协议。'], + ], + 'RegistryType' => ['description' => '注册中心类型。取值:'."\n" + ."\n" + .'- **0**:SAE Nacos'."\n" + .'- **1**:自建注册中心'."\n" + .'- **2**:MSE Nacos'."\n" + .'- **9**:SAE K8s Service', 'type' => 'string', 'example' => '0'], + 'NamespaceId' => ['description' => '应用所属的命名空间ID。', 'type' => 'string', 'example' => 'cn-beijing:test'], + 'NamespaceName' => ['description' => '命名空间名称。', 'type' => 'string', 'example' => 'Test namespace'], + 'AppId' => ['description' => '应用ID。', 'type' => 'string', 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****'], + 'AppName' => ['description' => '应用名称。', 'type' => 'string', 'example' => 'demo-app'], + 'SecurityGroupId' => ['description' => '安全组ID。', 'type' => 'string', 'example' => 'sg-wz969ngg2e49q5i4****'], + ], + ], ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:成功。'."\n" + .'- **false**:失败。', 'type' => 'boolean', 'example' => 'true'], ], + 'description' => '', ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], - [ - 'errorCode' => 'MseGatewayRule.CreateFailed', - 'errorMessage' => 'Create MSE Gateway rule failed.', - ], - [ - 'errorCode' => 'InternalApiError', - 'errorMessage' => 'An exception occurred when calling mse:%s, error message: %s.', - ], + ['errorCode' => 'Micro.Service.NotFound', 'errorMessage' => 'The micro service not found {%s}.', 'description' => '服务不存在'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": [\\n {\\n \\"ServiceName\\": \\"frontend\\",\\n \\"ServiceGroup\\": \\"DEFAULT_GROUP\\",\\n \\"ServiceVersion\\": \\"1.0.0\\",\\n \\"InstanceCount\\": \\"1\\",\\n \\"ServiceType\\": \\"springCloud\\",\\n \\"ServiceProtocol\\": \\"HTTP\\",\\n \\"ServicePorts\\": [\\n 8000\\n ],\\n \\"ServicePortAndProtocol\\": {\\n \\"key\\": \\"8000:TCP\\"\\n },\\n \\"RegistryType\\": \\"0\\",\\n \\"NamespaceId\\": \\"cn-beijing:test\\",\\n \\"NamespaceName\\": \\"Test namespace\\",\\n \\"AppId\\": \\"0099b7be-5f5b-4512-a7fc-56049ef1****\\",\\n \\"AppName\\": \\"demo-app\\",\\n \\"SecurityGroupId\\": \\"sg-wz969ngg2e49q5i4****\\"\\n }\\n ],\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => '查询微服务的服务列表', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:27.000Z', 'description' => 'OpenAPI 下线'], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"ac1a0b2215622920113732501e****\\",\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => '删除泳道组', - ], - 'UpdateSwimmingLaneEnableAttribute' => [ - 'summary' => '更新泳道的启用属性。', - 'path' => '/pop/v1/cas/gray/updateSwimmingLaneEnableAttribute', - 'methods' => [ - 'post', + 'flowControl' => [ + 'flowControlList' => [], ], - 'schemes' => [ - 'https', + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'sae:ListAppServices', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + ], + 'ListAppServicesPage' => [ + 'summary' => '调用ListAppServicesPage接口获取应用服务列表。', + 'path' => '/pop/v1/sam/service/listAppServicesPage', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'consumes' => [ - 'application/x-www-form-urlencoded', - ], - 'produces' => [ - 'application/json', - ], - 'operationType' => 'write', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '221727', - 'abilityTreeNodes' => [ - 'FEATUREsaeX255DA', - ], + 'abilityTreeCode' => '100639', + 'abilityTreeNodes' => ['FEATUREsaeY046YN'], ], 'parameters' => [ [ - 'name' => 'NamespaceId', + 'name' => 'AppId', 'in' => 'query', - 'schema' => [ - 'description' => '命名空间ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-beijing:test', - ], + 'schema' => ['description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => '6dcc8c9e-d3da-478a-a066-86dcf820****'], ], [ - 'name' => 'GroupId', + 'name' => 'ServiceType', 'in' => 'query', - 'schema' => [ - 'description' => '泳道组ID。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '2074', - ], + 'schema' => ['description' => '服务类型。取值说明如下:'."\n" + ."\n" + .'- **dubbo**'."\n" + .'- **springCloud**', 'type' => 'string', 'required' => true, 'example' => 'springCloud'], ], [ - 'name' => 'LaneId', + 'name' => 'PageNumber', 'in' => 'query', - 'schema' => [ - 'description' => '泳道ID。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '9637', - ], + 'schema' => ['description' => '列表页码。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ - 'name' => 'Enable', + 'name' => 'PageSize', 'in' => 'query', - 'schema' => [ - 'description' => '泳道状态:'."\n" - ."\n" - .'- true:开启'."\n" - .'- false:关闭', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'schema' => ['description' => '页码大小。取值范围\\[0, 9999]。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '9999'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => '返回信息。', + 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求 ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => 'ac1a0b2215622920113732501e****', - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:删除成功。'."\n" - .'- **false**:删除失败。', - 'type' => 'boolean', - 'example' => 'true', + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '2583E089-99C2-562E-8B7E-73512136****'], + 'Message' => ['description' => '调用结果的附加信息。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0be3e0c816394483660457498e****'], + 'Data' => [ + 'description' => '服务列表信息。', + 'type' => 'array', + 'items' => [ + 'description' => '服务列表信息。', + 'type' => 'object', + 'properties' => [ + 'CurrentPage' => ['description' => '当前页数。', 'type' => 'string', 'example' => '1'], + 'TotalSize' => ['description' => '页码总数。', 'type' => 'string', 'example' => '1'], + 'PageNumber' => ['description' => '列表页码。', 'type' => 'string', 'example' => '1'], + 'PageSize' => ['description' => '页码大小。取值范围\\[0, 9999]。', 'type' => 'string', 'example' => '9999'], + 'Result' => [ + 'description' => '返回结果。', + 'type' => 'array', + 'items' => [ + 'description' => '返回结果。', + 'type' => 'object', + 'properties' => [ + 'EdasAppName' => ['description' => '应用名称。', 'type' => 'string', 'example' => 'cn-zhangjiakou-micro-service-******'], + 'Version' => ['description' => '服务版本。自定义。', 'type' => 'string', 'example' => '1.0.0'], + 'InstanceNum' => ['description' => '实例数量。', 'type' => 'integer', 'format' => 'int64', 'example' => '1'], + 'EdasAppId' => ['description' => '应用ID。', 'type' => 'string', 'example' => 'hc4fs1****@98314c8790b****'], + 'ServiceName' => ['description' => '服务名称。', 'type' => 'string', 'example' => 'edas.service.provider'], + 'Group' => ['description' => '服务分组。自定义。', 'type' => 'string', 'example' => 'springCloud'], + ], + ], + ], + ], + ], ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .' - **2xx**:成功。'."\n" + .' - **3xx**:重定向。'."\n" + .' - **4xx**:请求错误。'."\n" + .' - **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '获取服务列表是否成功。取值说明如下:'."\n" + ."\n" + .' - **true**:获取成功。'."\n" + .' - **false**:获取失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], - [ - 'errorCode' => 'MseGatewayRule.CreateFailed', - 'errorMessage' => 'Create MSE Gateway rule failed.', - ], - [ - 'errorCode' => 'InternalApiError', - 'errorMessage' => 'An exception occurred when calling mse:%s, error message: %s.', + ['errorCode' => 'Micro.Service.NotFound', 'errorMessage' => 'The micro service not found {%s}.', 'description' => '服务不存在'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"2583E089-99C2-562E-8B7E-73512136****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0be3e0c816394483660457498e****\\",\\n \\"Data\\": [\\n {\\n \\"CurrentPage\\": \\"1\\",\\n \\"TotalSize\\": \\"1\\",\\n \\"PageNumber\\": \\"1\\",\\n \\"PageSize\\": \\"9999\\",\\n \\"Result\\": [\\n {\\n \\"EdasAppName\\": \\"cn-zhangjiakou-micro-service-******\\",\\n \\"Version\\": \\"1.0.0\\",\\n \\"InstanceNum\\": 1,\\n \\"EdasAppId\\": \\"hc4fs1****@98314c8790b****\\",\\n \\"ServiceName\\": \\"edas.service.provider\\",\\n \\"Group\\": \\"springCloud\\"\\n }\\n ]\\n }\\n ],\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<ListAppServicesPageResponse>\\n <RequestId>2583E089-99C2-562E-8B7E-73512136****</RequestId>\\n <Message>success</Message>\\n <TraceId>0be3e0c816394483660457498e****</TraceId>\\n <Data>\\n <CurrentPage>1</CurrentPage>\\n <TotalSize>1</TotalSize>\\n <PageNumber>1</PageNumber>\\n <PageSize>9999</PageSize>\\n <Result>\\n <EdasAppName>cn-zhangjiakou-micro-service-******</EdasAppName>\\n <Version>1.0.0</Version>\\n <InstanceNum>1</InstanceNum>\\n <EdasAppId>hc4fs1****@98314c8790b****</EdasAppId>\\n <ServiceName>edas.service.provider</ServiceName>\\n <Group>springCloud</Group>\\n </Result>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</ListAppServicesPageResponse>","errorExample":""}]', + 'title' => 'ListAppServicesPage', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:26.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2022-10-25T08:48:55.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2022-03-03T12:42:21.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2021-11-17T02:28:51.000Z', 'description' => 'OpenAPI 下线'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '350', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListAppServicesPage'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => '', + 'ramAction' => [ + 'action' => 'sae:ListAppServicesPage', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"ac1a0b2215622920113732501e****\\",\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => '更新泳道的启用属性', ], - 'GetApplication' => [ - 'summary' => '查询应用基本信息。', - 'path' => '/pop/v1/sam/app/getApplication', - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'https', - ], + 'ListAppVersions' => [ + 'path' => '/pop/v1/sam/app/listAppVersions', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'consumes' => [ - 'application/x-www-form-urlencoded', - ], - 'produces' => [ - 'application/json', - ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '238172', - 'abilityTreeNodes' => [ - 'FEATUREsaeRVPNSA', - ], - 'autoTest' => true, - 'tenantRelevance' => 'tenant', + 'abilityTreeCode' => '6371', + 'abilityTreeNodes' => ['FEATUREsaeD9PL61'], ], 'parameters' => [ [ 'name' => 'AppId', 'in' => 'query', - 'schema' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'required' => false, - 'example' => '017f39b8-dfa4-4e16-a84b-1dcee4b1****', - ], - ], - [ - 'name' => 'AppName', - 'in' => 'query', - 'schema' => [ - 'description' => '应用名称。', - 'type' => 'string', - 'required' => false, - 'example' => 'test', - ], - ], - [ - 'name' => 'NamespaceId', - 'in' => 'query', - 'schema' => [ - 'description' => '命名空间ID', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-shenzhen', - ], + 'schema' => ['description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => '返回结果。', + 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '01CF26C7-00A3-4AA6-BA76-7E95F2A3****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => 'ac1a0b2215622920113732501e****', - ], - 'Application' => [ - 'description' => '应用详细信息。', - 'type' => 'object', - 'properties' => [ - 'AppId' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'example' => '443d638a-ef76-47c4-b707-61197d******', - ], - 'AppName' => [ - 'description' => '应用名称。', - 'type' => 'string', - 'example' => 'test', - ], - 'AppDescription' => [ - 'description' => '应用描述信息。', - 'type' => 'string', - 'example' => '测试', - ], - 'NamespaceId' => [ - 'description' => '命名空间ID。', - 'type' => 'string', - 'example' => 'cn-shenzhen', - ], - 'ScaleRuleType' => [ - 'description' => '弹性伸缩策略类型。取值说明如下:'."\n" - ."\n" - .'- **timing**:定时弹性。'."\n" - .'- **metric**:监控指标弹性。'."\n" - .'- **mix**:混合弹性。', - 'type' => 'string', - 'example' => 'timing', - ], - 'ScaleRuleEnabled' => [ - 'description' => '是否启用弹性伸缩策略。取值说明如下:'."\n" - ."\n" - .'- **true**:启用状态。'."\n" - .'- **false**:禁用状态。', - 'type' => 'string', - 'example' => 'true', - ], - 'RunningInstances' => [ - 'description' => '运行中的实例个数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '6', - ], - 'Instances' => [ - 'description' => '应用实例个数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '6', - ], - 'Cpu' => [ - 'description' => '每个实例所需的CPU,单位为毫核,不能为0。目前仅支持以下固定规格:'."\n" - .'- **500**'."\n" - .'- **1000**'."\n" - .'- **2000**'."\n" - .'- **4000**'."\n" - .'- **8000**'."\n" - .'- **12000**'."\n" - .'- **16000**'."\n" - .'- **32000**', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '2000', - ], - 'Mem' => [ - 'description' => '每个实例所需的内存,单位为MB,不能为0。与CPU为一一对应关系,目前仅支持以下固定规格:'."\n" - ."\n" - .'- **1024**:对应CPU为500毫核和1000毫核。'."\n" - .'- **2048**:对应CPU为500、1000毫核和2000毫核。'."\n" - .'- **4096**:对应CPU为1000、2000毫核和4000毫核。'."\n" - .'- **8192**:对应CPU为2000、4000毫核和8000毫核。'."\n" - .'- **12288**:对应CPU为12000毫核。'."\n" - .'- **16384**:对应CPU为4000、8000毫核和16000毫核。'."\n" - .'- **24576**:对应CPU为12000毫核。'."\n" - .'- **32768**:对应CPU为16000毫核。'."\n" - .'- **65536**:对应CPU为8000、16000和32000毫核。'."\n" - .'- **131072**:对应CPU为32000毫核。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '4096', - ], - 'MseEnabled' => [ - 'description' => '是否启用 WebAssemblyFilter。取值:'."\n" + 'Message' => ['description' => '调用结果的附加信息。', 'type' => 'string', 'example' => 'success'], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '01CF26C7-00A3-4AA6-BA76-7E95F2A3****'], + 'Data' => [ + 'description' => '版本信息。', + 'type' => 'array', + 'items' => [ + 'description' => '版本信息。', + 'type' => 'object', + 'properties' => [ + 'Type' => ['description' => '应用类型。取值说明如下:'."\n" ."\n" - .'- true:启用。'."\n" - .'- false:不启用。', - 'type' => 'boolean', - 'example' => 'true', - ], - 'MseNamespaceId' => [ - 'description' => 'MSE 实例所在的命名空间ID。', - 'type' => 'string', - 'example' => 'test', - ], - 'ProgrammingLanguage' => [ - 'description' => '创建应用的技术栈语言。取值说明如下:'."\n" + .'- **image**:表示此应用是通过镜像的方式部署的。'."\n" + .'- **url**:表示此应用是通过代码包的方式部署的。', 'type' => 'string', 'example' => 'image'], + 'CreateTime' => ['description' => '创建时间。', 'type' => 'string', 'example' => '1590124643553'], + 'BuildPackageUrl' => ['description' => '代码包下载地址,如果您的包是通过SAE上传的需要注意以下两点:'."\n" ."\n" - .'- **java**:Java语言。'."\n" - .'- **php**:PHP语言。'."\n" - .'- **other**:多语言,例如Python、C++、Go、.NET和Node.js等。', - 'type' => 'string', - 'example' => 'java', - ], - 'BaseAppId' => [ - 'description' => '基础应用ID。', - 'type' => 'string', - 'example' => 'ee99cce6-1c8e-4bfa-96c3-3e2fa9******', - ], - 'IsStateful' => [ - 'type' => 'boolean', + .'- 该地址不能直接下载,需要您通过GetPackageVersionAccessableUrl接口来获取可下载的地址(有效期10分钟)。'."\n" + .'- 该包SAE侧最长时间会保留90天,超过90天后不会返回给地址也不提供下载。', 'type' => 'string', 'example' => 'https://edas-hz.oss-cn-hangzhou.aliyuncs.com/apps/K8s_APP_ID/1d0e7884-60f0-41d2-89dd-ec1f3c69****/hello-sae.war'], + 'WarUrl' => ['description' => '镜像地址。', 'type' => 'string', 'example' => 'registry-vpc.cn-hangzhou.aliyuncs.com/****/1362469756373809_shared_repo:42646692-66e7-4a21-b629-897752975cdf_159012464****'], + 'Id' => ['description' => '版本ID。', 'type' => 'string', 'example' => 'a0ce266c-d354-423a-9bd6-4083405a****'], ], ], ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '查看应用的历史版本是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:查看历史版本成功。'."\n" + .'- **false**:查看历史版本失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidApplication.NotFound', - 'errorMessage' => 'The current application does not exist.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.NoPermission', - 'errorMessage' => 'Resource no permission', - ], - ], - 404 => [ - [ - 'errorCode' => 'InvalidAppId.NotFound', - 'errorMessage' => 'The specified AppId does not exist.', - ], + ['errorCode' => 'InvalidApplication.NotFound', 'errorMessage' => 'The current application does not exist.', 'description' => '找不到当前应用。'], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"01CF26C7-00A3-4AA6-BA76-7E95F2A3****\\",\\n \\"Data\\": [\\n {\\n \\"Type\\": \\"image\\",\\n \\"CreateTime\\": \\"1590124643553\\",\\n \\"BuildPackageUrl\\": \\"https://edas-hz.oss-cn-hangzhou.aliyuncs.com/apps/K8s_APP_ID/1d0e7884-60f0-41d2-89dd-ec1f3c69****/hello-sae.war\\",\\n \\"WarUrl\\": \\"registry-vpc.cn-hangzhou.aliyuncs.com/****/1362469756373809_shared_repo:42646692-66e7-4a21-b629-897752975cdf_159012464****\\",\\n \\"Id\\": \\"a0ce266c-d354-423a-9bd6-4083405a****\\"\\n }\\n ],\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<ListAppVersionsResponse>\\n <Message>success</Message>\\n <RequestId>01CF26C7-00A3-4AA6-BA76-7E95F2A3****</RequestId>\\n <Data>\\n <Type>image</Type>\\n <CreateTime>1590124643553</CreateTime>\\n <BuildPackageUrl>https://edas-hz.oss-cn-hangzhou.aliyuncs.com/apps/K8s_APP_ID/1d0e7884-60f0-41d2-89dd-ec1f3c69****/hello-sae.war</BuildPackageUrl>\\n <WarUrl>registry-vpc.cn-hangzhou.aliyuncs.com/****/1362469756373809_shared_repo:42646692-66e7-4a21-b629-897752975cdf_159012464****</WarUrl>\\n <Id>a0ce266c-d354-423a-9bd6-4083405a****</Id>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</ListAppVersionsResponse>","errorExample":""}]', + 'title' => '查看应用的历史版本', + 'summary' => '查看应用的历史版本。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:23.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2022-10-25T08:48:55.000Z', 'description' => '请求参数发生变更'], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"01CF26C7-00A3-4AA6-BA76-7E95F2A3****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"ac1a0b2215622920113732501e****\\",\\n \\"Application\\": {\\n \\"AppId\\": \\"443d638a-ef76-47c4-b707-61197d******\\",\\n \\"AppName\\": \\"test\\",\\n \\"AppDescription\\": \\"测试\\",\\n \\"NamespaceId\\": \\"cn-shenzhen\\",\\n \\"ScaleRuleType\\": \\"timing\\",\\n \\"ScaleRuleEnabled\\": \\"true\\",\\n \\"RunningInstances\\": 6,\\n \\"Instances\\": 6,\\n \\"Cpu\\": 2000,\\n \\"Mem\\": 4096,\\n \\"MseEnabled\\": true,\\n \\"MseNamespaceId\\": \\"test\\",\\n \\"ProgrammingLanguage\\": \\"java\\",\\n \\"BaseAppId\\": \\"ee99cce6-1c8e-4bfa-96c3-3e2fa9******\\",\\n \\"IsStateful\\": true\\n }\\n}","type":"json"}]', - 'title' => '查询应用基本信息', - ], - 'DescribeApplicationConfig' => [ - 'path' => '/pop/v1/sam/app/describeApplicationConfig', - 'methods' => [ - 'get', + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListAppVersions'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:ListAppVersions', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + ], + 'ListApplications' => [ + 'summary' => '获取应用列表。', + 'path' => '/pop/v1/sam/app/listApplications', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -26095,31 +15944,114 @@ 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', - 'abilityTreeCode' => '6317', - 'abilityTreeNodes' => [ - 'FEATUREsaeRVPNSA', - ], + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '6370', + 'abilityTreeNodes' => ['FEATUREsaeRVPNSA'], ], 'parameters' => [ [ - 'name' => 'AppId', + 'name' => 'CurrentPage', 'in' => 'query', - 'schema' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****', - ], + 'schema' => ['description' => '当前页数。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ - 'name' => 'VersionId', + 'name' => 'PageSize', 'in' => 'query', - 'schema' => [ - 'description' => '版本ID。', - 'type' => 'string', - 'required' => false, - 'example' => '0026ff7f-2b57-4127-bdd0-9bf202bb****', - ], + 'schema' => ['description' => '分页查询时获取的每页数量。取值范围\\[0,10000]。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20'], + ], + [ + 'name' => 'AppName', + 'in' => 'query', + 'schema' => ['description' => '应用名称。', 'type' => 'string', 'required' => false, 'example' => 'demo-app'], + ], + [ + 'name' => 'NamespaceId', + 'in' => 'query', + 'schema' => ['description' => '命名空间ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-beijing:demo'], + ], + [ + 'name' => 'Tags', + 'in' => 'query', + 'schema' => ['description' => '标签键值对。取值说明如下:'."\n" + .'- **key**:标签键,长度范围\\[1,128]。'."\n" + .'- **value**:标签值,长度范围\\[1,128]。'."\n" + ."\n" + .'区分大小写。如果指定多个标签,则会为指定资源同时创建并绑定多个标签。同一个资源上的同一个标签键只能对应一个标签值。如果您尝试添加已有标签键,则对应的标签值会更新为新值。'."\n" + ."\n" + .'不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。', 'type' => 'string', 'required' => false, 'example' => '[{"key":"key","value":"value"}]'], + ], + [ + 'name' => 'OrderBy', + 'in' => 'query', + 'schema' => ['description' => '对应用进行排序。取值说明如下:'."\n" + ."\n" + .'- **runnings**:按照当前实例数进行排序。'."\n" + .'- **instances**:按照目标实例数进行排序。', 'type' => 'string', 'required' => false, 'example' => 'runnings'], + ], + [ + 'name' => 'Reverse', + 'in' => 'query', + 'schema' => ['description' => '根据应用实例运行状态对其进行排序。如果状态相同,则按照实例ID排序。取值说明如下:'."\n" + .' - **true**:按升序排序。表示根据启动实例的步骤来排列,例如实例最终想要变更为运行状态,需先经过启动容器、拉取镜像、初始化实例等步骤。'."\n" + .' - **false**:按降序排序。'."\n" + ."\n" + .'实例升序排列如下:'."\n" + ."\n" + .'1. **Error**:实例启动过程中出错。'."\n" + .'2. **CrashLoopBackOff**:容器无法启动,在启动过程中出错,重启后又出错。'."\n" + .'3. **ErrImagePull**:拉取实例中的容器镜像出错。'."\n" + .'4. **ImagePullBackOff**:无法获取容器镜像。'."\n" + .'5. **Pending**:实例等待调度中。'."\n" + .'6. **Unknown**:未知异常。'."\n" + .'7. **Terminating**:实例终止接入中。'."\n" + .'8. **NotFound**:无法找到实例。'."\n" + .'9. **PodInitializing**:实例初始化中。'."\n" + .'10. **Init:0/1**:实例初始化。'."\n" + .'11. **Running**:实例运行中。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], + ], + [ + 'name' => 'FieldType', + 'in' => 'query', + 'schema' => ['description' => '设置筛选应用的维度。取值说明如下:'."\n" + ."\n" + .'- **appName**:应用名称。'."\n" + .'- **appIds**:应用ID。'."\n" + .'- **slbIps**:SLB IP地址。'."\n" + .'- **instanceIps**:实例IP地址。', 'type' => 'string', 'required' => false, 'example' => 'appName'], + ], + [ + 'name' => 'FieldValue', + 'in' => 'query', + 'schema' => ['description' => '输入目标应用的应用名称、应用ID、SLB IP地址或实例IP地址。', 'type' => 'string', 'required' => false, 'example' => 'demo-app'], + ], + [ + 'name' => 'AppSource', + 'in' => 'query', + 'schema' => ['description' => 'SAE应用类型。'."\n" + ."\n" + .'- **micro_service。**'."\n" + .'- **web。**'."\n" + .'- **job。**', 'type' => 'string', 'required' => false, 'example' => 'micro_service'], + ], + [ + 'name' => 'IsStateful', + 'in' => 'query', + 'schema' => ['description' => '是否为有状态应用。', 'type' => 'string', 'required' => false], + ], + [ + 'name' => 'NewSaeVersion', + 'in' => 'query', + 'schema' => ['description' => '应用版本:'."\n" + ."\n" + .'- lite:轻量版'."\n" + .'- std:标准版'."\n" + .'- pro:专业版', 'type' => 'string', 'required' => false], + ], + [ + 'name' => 'ProgrammingLanguage', + 'in' => 'query', + 'schema' => ['type' => 'string'], ], ], 'responses' => [ @@ -26128,1324 +16060,269 @@ 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '01CF26C7-00A3-4AA6-BA76-7E95F2A3****', - ], - 'Message' => [ - 'description' => '调用结果的附加信息。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => 'ac1a0b2215622246421415014e****', - ], + 'Message' => ['description' => '调用结果的附加信息。', 'type' => 'string', 'example' => 'success'], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'B4D805CA-926D-41B1-8E63-7AD0C1ED****'], 'Data' => [ - 'description' => '应用信息。', + 'description' => '应用列表。', 'type' => 'object', 'properties' => [ - 'VpcId' => [ - 'description' => 'VPC ID。', - 'type' => 'string', - 'example' => 'vpc-2ze0i263cnn311nvj****', - ], - 'Readiness' => [ - 'description' => '应用启动状态检查,多次健康检查失败的容器将被关闭并重启。不通过健康检查的容器将不会有SLB流量进入。支持**exec**、**httpGet**和**tcpSocket**方式。具体示例,请参见**Liveness**参数。'."\n" - ."\n" - .'> 只能选择一种方式进行健康检查。', - 'type' => 'string', - 'example' => '{"exec":{"command":["curl http://localhost:8080"]},"initialDelaySeconds":20,"timeoutSeconds":5}', - ], - 'ConfigMapMountDesc' => [ - 'description' => 'ConfigMap信息。', - 'type' => 'array', - 'items' => [ - 'description' => 'ConfigMap信息。', - 'type' => 'object', - 'properties' => [ - 'Key' => [ - 'description' => 'ConfigMap键值对。', - 'type' => 'string', - 'example' => 'k1', - ], - 'ConfigMapName' => [ - 'description' => 'ConfigMap名称。', - 'type' => 'string', - 'example' => 'test', - ], - 'MountPath' => [ - 'description' => '容器挂载路径。', - 'type' => 'string', - 'example' => '/tmp', - ], - 'ConfigMapId' => [ - 'description' => 'ConfigMap ID。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1', - ], - ], - ], - ], - 'SecurityGroupId' => [ - 'description' => '安全组ID。', - 'type' => 'string', - 'example' => 'sg-wz969ngg2e49q5i4****', - ], - 'BatchWaitTime' => [ - 'description' => '分批发布时批次间的等待时间,单位为秒。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'Jdk' => [ - 'description' => '部署包依赖的JDK版本。支持版本如下:'."\n" - ."\n" - .'- **Open JDK 8**'."\n" - .'- **Open JDK 7**'."\n" - .'- **Dragonwell 11**'."\n" - .'- **Dragonwell 8**'."\n" - .'- **openjdk-8u191-jdk-alpine3.9**'."\n" - .'- **openjdk-7u201-jdk-alpine3.9**'."\n" - ."\n" - .'当**Package Type**为**Image**时不支持。', - 'type' => 'string', - 'example' => 'Open JDK 8', - ], - 'ImageUrl' => [ - 'description' => '镜像地址。当**Package Type**为**Image**时必填。', - 'type' => 'string', - 'example' => 'docker.io/library/nginx:1.14.2', - ], - 'SlsConfigs' => [ - 'description' => '日志采集到SLS的配置。'."\n" - ."\n" - .'- 使用SAE自动创建的SLS资源:`[{"logDir":"","logType":"stdout"},{"logDir":"/tmp/a.log"}]`。'."\n" - .'- 使用自定义的SLS资源:`[{"projectName":"test-sls","logType":"stdout","logDir":"","logstoreName":"sae","logtailName":""},{"projectName":"test","logDir":"/tmp/a.log","logstoreName":"sae","logtailName":""}]`。'."\n" - ."\n" - .'参数说明如下:'."\n" - ."\n" - .'- **projectName**:配置SLS上的Project名称。 '."\n" - .'- **logDir**:日志路径。'."\n" - .'- **logType**:日志类型。**stdout**表示容器标准输出日志,仅可设置1条;如果不设置,则表示收集文件日志。'."\n" - .'- **logstoreName**:配置SLS上的Logstore名称。'."\n" - .'- **logtailName**:配置SLS上的Logtail名称,如果不指定,则表示新建Logtail。'."\n" - ."\n" - .'多次部署时如果SLS采集配置没有变更,则不需要设置该参数(即请求中无需包含**SlsConfigs**字段);如果不再需要使用SLS采集功能,您需要在请求中将该字段的值设置为空字符串(即请求中**SlsConfigs**字段的值为"")。', - 'type' => 'string', - 'example' => '[{"logDir":"","logType":"stdout"},{"logDir":"/tmp/a.log"}]', - ], - 'Liveness' => [ - 'description' => '容器健康检查,健康检查失败的容器将被关闭并恢复。支持方式如下:'."\n" - ."\n" - .'- **exec**:例如 `{"exec":{"command":\\["sh","-c","cat/home/admin/start.sh"]},"initialDelaySeconds":30,"periodSeconds":30,"timeoutSeconds":2}`'."\n" - .'- **httpGet**:例如`{"httpGet":{"path":"/","port":18091,"scheme":"HTTP","isContainKeyWord":true,"keyWord":"SAE"},"initialDelaySeconds":11,"periodSeconds":10,"timeoutSeconds":1}`'."\n" - .'- **tcpSocket**:例如`{"tcpSocket":{"port":18091},"initialDelaySeconds":11,"periodSeconds":10,"timeoutSeconds":1}`'."\n" - ."\n" - .'> 只能选择一种方式进行健康检查。'."\n" - ."\n" - .'参数说明如下:'."\n" - ."\n" - .'- **exec.command**:设置健康检查命令。'."\n" - .'- **httpGet.path**:访问路径。'."\n" - .'- **httpGet.scheme**:**HTTP**或**HTTPS**。'."\n" - .'- **httpGet.isContainKeyWord**:**true**表示包含关键字,**false**表示不包含关键字,缺失该字段表示不使用高级功能。'."\n" - .'- **httpGet.keyWord**:自定义的关键字,使用时不能缺失**isContainKeyWord**字段。'."\n" - .'- **tcpSocket.port**:tcp连接检测的端口 。'."\n" - .'- **initialDelaySeconds**:设置健康检查延迟检测时间,默认为10,单位为秒。'."\n" - .'- **periodSeconds**:设置健康检查周期,默认为30,单位为秒。'."\n" - .'- **timeoutSeconds**:设置健康检查超时等待时间,默认为1,单位为秒。如果设置为0或不设置,默认超时等待时间为1秒。', - 'type' => 'string', - 'example' => '{"exec":{"command":["curl http://localhost:8080"]},"initialDelaySeconds":20,"timeoutSeconds":3}', - ], - 'Tags' => [ - 'description' => '标签信息。', - 'type' => 'array', - 'items' => [ - 'description' => '标签信息。', - 'type' => 'object', - 'properties' => [ - 'Key' => [ - 'description' => '标签键。', - 'type' => 'string', - 'example' => 'k1', - ], - 'Value' => [ - 'description' => '标签值。', - 'type' => 'string', - 'example' => 'v1', - ], - ], - ], - ], - 'PackageUrl' => [ - 'description' => '部署包地址,如果您的部署包是通过SAE上传的需要注意以下两点:'."\n" - ."\n" - .'- 该地址不能直接下载,需要您通过GetPackageVersionAccessableUrl接口来获取可下载的地址(有效期10分钟)。'."\n" - .'- 该包SAE侧最长时间会保留90天,超过90天后不会返回给地址也不提供下载。', - 'type' => 'string', - 'example' => 'https://edas-bj.oss-cn-beijing.aliyuncs.com/apps/K8s_APP_ID/d4c97c37-aba3-403e-ae1e-6f7d8742****/hello-sae.war', - ], - 'PackageType' => [ - 'description' => '应用包类型。取值说明如下:'."\n" - ."\n" - .'- 当您选择用Java部署时,支持**FatJar**、**War**和**Image**。'."\n" - .'- 当您选择用PHP部署时,支持类型如下:'."\n" - .' - **PhpZip**'."\n" - .' - **IMAGE\\_PHP\\_5\\_4**'."\n" - .' - **IMAGE\\_PHP\\_5\\_4\\_ALPINE**'."\n" - .' - **IMAGE\\_PHP\\_5\\_5**'."\n" - .' - **IMAGE\\_PHP\\_5\\_5\\_ALPINE**'."\n" - .' - **IMAGE\\_PHP\\_5\\_6**'."\n" - .' - **IMAGE\\_PHP\\_5\\_6\\_ALPINE**'."\n" - .' - **IMAGE\\_PHP\\_7\\_0**'."\n" - .' - **IMAGE\\_PHP\\_7\\_0\\_ALPINE**'."\n" - .' - **IMAGE\\_PHP\\_7\\_1**'."\n" - .' - **IMAGE\\_PHP\\_7\\_1\\_ALPINE**'."\n" - .' - **IMAGE\\_PHP\\_7\\_2**'."\n" - .' - **IMAGE\\_PHP\\_7\\_2\\_ALPINE**'."\n" - .' - **IMAGE\\_PHP\\_7\\_3**'."\n" - .' - **IMAGE\\_PHP\\_7\\_3\\_ALPINE**', - 'type' => 'string', - 'example' => 'War', - ], - 'PreStop' => [ - 'description' => '容器停止前执行脚本。在容器被删除前触发执行一段脚本,格式如:`{"exec":{"command":\\["cat","/etc/group"\\]}}`', - 'type' => 'string', - 'example' => '{"exec":{"command":["cat","/etc/group"]}}', - ], - 'PackageVersion' => [ - 'description' => '部署包的版本号。当**Package Type**为**FatJar**或**War**时必填。', - 'type' => 'string', - 'example' => '1.0', - ], - 'JarStartArgs' => [ - 'description' => 'JAR包启动应用参数。应用默认启动命令:`$JAVA_HOME/bin/java $JarStartOptions -jar $CATALINA_OPTS "$package_path" $JarStartArgs`', - 'type' => 'string', - 'example' => 'start', - ], - 'AppName' => [ - 'description' => '应用名称。', - 'type' => 'string', - 'example' => 'demo-app', - ], - 'AppId' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****', - ], - 'JarStartOptions' => [ - 'description' => 'JAR包启动应用选项。应用默认启动命令:`$JAVA_HOME/bin/java $JarStartOptions -jar $CATALINA_OPTS "$package_path" $JarStartArgs`', - 'type' => 'string', - 'example' => '-Dtest=true', - ], - 'Replicas' => [ - 'description' => '应用实例个数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '2', - ], - 'UpdateStrategy' => [ - 'description' => '部署策略。当最小存活实例数等于1时,**UpdateStrategy**字段的值为""。当最小存活实例数大于1时,示例如下:'."\n" - ."\n" - .'- 灰度1台+后续分2批+自动分批+分批间隔1分钟:`{"type":"GrayBatchUpdate","batchUpdate":{"batch":2,"releaseType":"auto","batchWaitTime":1},"grayUpdate":{"gray":1}}`'."\n" - .' '."\n" - .'- 灰度1台+后续分2批+手动分批:`{"type":"GrayBatchUpdate","batchUpdate":{"batch":2,"releaseType":"manual"},"grayUpdate":{"gray":1}}`'."\n" - ."\n" - .'- 分2批+自动分批+分批间隔0分钟:`{"type":"BatchUpdate","batchUpdate":{"batch":2,"releaseType":"auto","batchWaitTime":0}}`'."\n" - ."\n" - .'参数说明如下:'."\n" - ."\n" - .'- **type**:发布策略类型,可选灰度发布**GrayBatchUpdate**或分批发布**BatchUpdate**。'."\n" - .'- **batchUpdate**:分批发布策略。'."\n" - .' - **batch**:发布批次。'."\n" - .' - **releaseType**:分批间处理方式,可选自动**auto**或手动**manual**。'."\n" - .' - **batchWaitTime**:批次内部署间隔时间,单位为秒。'."\n" - .'- **grayUpdate**:灰度后剩余批次,当**type**为**GrayBatchUpdate**时必填。'."\n" - ."\n", - 'type' => 'string', - 'example' => '{"type":"GrayBatchUpdate","batchUpdate":{"batch":2,"releaseType":"auto","batchWaitTime":1},"grayUpdate":{"gray":1}}', - ], - 'MinReadyInstances' => [ - 'description' => '最小存活实例数。取值说明如下:'."\n" - ."\n" - .'- 如果设置为**0**,应用在升级过程中将会中断业务。'."\n" - .'- 如果设置为**-1**,最小存活实例数将使用系统推荐值,即取现有实例数的25%。如果当前为5个实例,5×25%=1.25,向上取整后,最小存活实例数为2。'."\n" - ."\n" - .'> 每次滚动部署最小存活的实例数建议≥1,保证业务不中断。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'MinReadyInstanceRatio' => [ - 'description' => '最小存活实例数百分比。取值说明如下:'."\n" - ."\n" - .'- **-1**:默认值,表示不采用百分比。如果不填写,系统默认为**-1**。'."\n" - .'- **0~100**:单位为百分比,向上取整。例如设置为**50**%,如果当前为5个实例,则最小存活实例数为3。'."\n" - ."\n" - .'> 当**MinReadyInstance**和**MinReadyInstanceRatio**同时传递,且**MinReadyInstanceRatio**的取值非**-1**时,以**MinReadyInstanceRatio**参数为准。假设**MinReadyInstances**取值为**5**,**MinReadyInstanceRatio**取值为**50**,则会用**MinReadyInstanceRatio**来计算最小存活实例数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '-1', - ], - 'Memory' => [ - 'description' => '每个实例所需的内存,单位为MB,不能为0。与CPU为一一对应关系,目前仅支持以下固定规格:'."\n" - .'- **1024**:对应CPU为500毫核和1000毫核。'."\n" - .'- **2048**:对应CPU为500、1000毫核和2000毫核。'."\n" - .'- **4096**:对应CPU为1000、2000毫核和4000毫核。'."\n" - .'- **8192**:对应CPU为2000、4000毫核和8000毫核。'."\n" - .'- **12288**:对应CPU为12000毫核。'."\n" - .'- **16384**:对应CPU为4000、8000毫核和16000毫核。'."\n" - .'- **24576**:对应CPU为12000毫核。'."\n" - .'- **32768**:对应CPU为16000毫核。'."\n" - .'- **65536**:对应CPU为8000、16000和32000毫核。'."\n" - .'- **131072**:对应CPU为32000毫核。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '2048', - ], - 'Php' => [ - 'description' => 'PHP部署包依赖的PHP版本。镜像不支持。', - 'type' => 'string', - 'example' => 'PHP-FPM 7.0', - ], - 'PhpConfig' => [ - 'description' => 'PHP配置文件内容。', - 'type' => 'string', - 'example' => 'k1=v1', - ], - 'PhpConfigLocation' => [ - 'description' => 'PHP应用启动配置挂载路径,需要您保证PHP服务器会使用这个配置文件启动。', - 'type' => 'string', - 'example' => '/usr/local/etc/php/php.ini', - ], - 'PostStart' => [ - 'description' => '容器启动后执行脚本。在容器被创建后立刻触发执行一段脚本,格式如:`{"exec":{"command":\\["cat","/etc/group"\\]}}`', - 'type' => 'string', - 'example' => '{"exec":{"command":["cat","/etc/group"]}}', - ], - 'TerminationGracePeriodSeconds' => [ - 'description' => '优雅下线超时时间,默认为30,单位为秒。取值范围为1~300。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'CommandArgs' => [ - 'description' => '镜像启动命令参数。启动命令**Command**所需参数。格式如下:'."\n" - ."\n" - .'`["a","b"]`'."\n" - ."\n" - .'在**Command**参数的示例中,`CommandArgs=["abc", ">", "file0"]`,其中`["abc", ">", "file0"]`需要转成String类型,里面的格式为JSON数组。如果无此参数,则无需填写。', - 'type' => 'string', - 'example' => '["a","b"]', - ], - 'NamespaceId' => [ - 'description' => '命名空间ID。', - 'type' => 'string', - 'example' => 'cn-beijing:test', - ], - 'MountHost' => [ - 'description' => 'NAS在应用VPC内的挂载点。部署时如果配置没有变更,则不需要设置该参数(即请求中无需包含**MountHost**字段);如果需要清除NAS配置,您需要在请求中将该字段的值设置为空字符串(即请求中**MountHost**字段的值为"")。', - 'type' => 'string', - 'example' => 'example.com', - ], - 'TomcatConfig' => [ - 'description' => 'Tomcat文件配置,设置为""或"{}"表示删除配置:'."\n" - ."\n" - .'- **port**:端口范围为1024~65535,小于1024的端口需要Root权限才能操作。因为容器配置的是Admin权限,所以请填写大于1024的端口。如果不配置,则默认为8080。'."\n" - .'- **contextPath**:访问路径,默认为根目录"/"。'."\n" - .'- **maxThreads**:配置连接池的连接数大小,默认大小为400。'."\n" - .'- **uriEncoding**:Tomcat的编码格式,包括**UTF-8**、**ISO-8859-1**、**GBK**和**GB2312**。如果不设置,则默认为**ISO-8859-1**。'."\n" - .'- **useBodyEncoding**:是否使用**BodyEncoding for URL**,默认为**true**。', - 'type' => 'string', - 'example' => '{"port":8080,"contextPath":"/","maxThreads":400,"uriEncoding":"ISO-8859-1","useBodyEncodingForUri":true}', - ], - 'RegionId' => [ - 'description' => '地域ID。', - 'type' => 'string', - 'example' => 'cn-beijing', - ], - 'VSwitchId' => [ - 'description' => 'vSwitch ID。', - 'type' => 'string', - 'example' => 'vsw-2ze559r1z1bpwqxwp****', - ], - 'Cpu' => [ - 'description' => '每个实例所需的CPU,单位为毫核,不能为0。目前仅支持以下固定规格:'."\n" - ."\n" - .'- **500**'."\n" - .'- **1000**'."\n" - .'- **2000**'."\n" - .'- **4000**'."\n" - .'- **8000**'."\n" - .'- **16000**'."\n" - .'- **32000**', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1000', - ], - 'Envs' => [ - 'description' => '容器环境变量参数。支持自定义或引用配置项。如需引用配置项,请先创建ConfigMap实例。更多信息,请参见[CreateConfigMap](~~176914~~)。取值说明如下:'."\n" - .'- 自定义配置'."\n" - .' - **name**:环境变量名称。'."\n" - .' - **value**:环境变量值。'."\n" - .'- 引用配置项'."\n" - .' - **name**:环境变量名称。支持引用单个或全部键,如果引用全部键,需输入`sae-sys-configmap-all-<配置项名称>`,例如`sae-sys-configmap-all-test1`。'."\n" - .' - **valueFrom**:环境变量引用。取值为`configMapRef`。'."\n" - .' - **configMapId**:配置项ID。'."\n" - .' - **key**:键。如果引用全部健值,则不设置该字段。', - 'type' => 'string', - 'example' => '[{"name":"TEST_ENV_KEY","value":"TEST_ENV_VAR"}]', - ], - 'MountDesc' => [ - 'description' => '挂载描述信息。', - 'type' => 'array', - 'items' => [ - 'description' => '挂载描述信息。', - 'type' => 'object', - 'properties' => [ - 'MountPath' => [ - 'description' => '容器挂载路径。', - 'type' => 'string', - 'example' => '/tmp', - ], - 'NasPath' => [ - 'description' => 'NAS相对文件目录。', - 'type' => 'string', - 'example' => '/', - ], - ], - ], - ], - 'EnableAhas' => [ - 'description' => '是否接入AHAS。取值说明如下:'."\n" - ."\n" - .'- **true**:接入AHAS。'."\n" - .'- **false**:不接入AHAS。', - 'type' => 'string', - 'example' => 'true', - ], - 'CustomHostAlias' => [ - 'description' => '容器内自定义Host映射。取值说明如下:'."\n" - ."\n" - .'- **hostName**:域名或主机名。'."\n" - .'- **ip**:IP地址。', - 'type' => 'string', - 'example' => '[{"hostName":"test.host.name","ip":"0.0.0.0"}]', - ], - 'WebContainer' => [ - 'description' => '部署包依赖的Tomcat版本。支持版本如下:'."\n" - ."\n" - .'- **apache-tomcat-7.0.91**'."\n" - .'- **apache-tomcat-8.5.42**'."\n" - ."\n" - .'当**Package Type**为**Image**时不支持。', - 'type' => 'string', - 'example' => 'apache-tomcat-7.0.91', - ], - 'Command' => [ - 'description' => '镜像启动命令。该命令必须为容器内存在的可执行的对象。示例如下:'."\n" - ."\n" - .'```'."\n" - .'command:'."\n" - .' - echo'."\n" - .' - abc'."\n" - .' - >'."\n" - .' - file0'."\n" - .'```'."\n" - .'根据上述示例,则`Command="echo", CommandArgs=["abc", ">", "file0"]`。', - 'type' => 'string', - 'example' => 'echo', - ], - 'WarStartOptions' => [ - 'description' => 'WAR包启动应用选项。应用默认启动命令:`java $JAVA_OPTS $CATALINA_OPTS -Options org.apache.catalina.startup.Bootstrap "$@" start`。', - 'type' => 'string', - 'example' => 'custom-option', - ], - 'PhpArmsConfigLocation' => [ - 'description' => 'PHP应用监控挂载路径,需要您保证PHP服务器一定会加载这个路径的配置文件。'."\n" - ."\n" - .'您无需关注配置内容,SAE会自动渲染正确的配置文件。', - 'type' => 'string', - 'example' => '/usr/local/etc/php/conf.d/arms.ini', - ], - 'NasId' => [ - 'description' => 'NAS ID。', - 'type' => 'string', - 'example' => 'AKSN****', - ], - 'OssAkId' => [ - 'title' => 'OSS读写的AK', - 'description' => 'OSS读写的AccessKey ID。', - 'type' => 'string', - 'example' => 'xxxxxx', - ], - 'OssAkSecret' => [ - 'title' => 'OSS读写的secret', - 'description' => 'OSS读写的AccessKey Secret。', - 'type' => 'string', - 'example' => 'xxxxxx', - ], - 'OssMountDescs' => [ - 'title' => 'OSS挂载描述信息', - 'description' => 'OSS挂载描述信息。', - 'type' => 'array', - 'items' => [ - 'description' => 'OSS挂载描述信息。', - 'type' => 'object', - 'properties' => [ - 'bucketName' => [ - 'title' => 'Bucket名称', - 'description' => 'Bucket名称。', - 'type' => 'string', - 'example' => 'oss-bucket', - ], - 'bucketPath' => [ - 'title' => 'Bucket中Oss Key名称', - 'description' => '您在OSS创建的目录或OSS对象,如果OSS挂载目录不存在,会触发异常。', - 'type' => 'string', - 'example' => 'data/user.data', - ], - 'mountPath' => [ - 'title' => '挂载到容器的路径', - 'description' => '您在SAE的容器路径。如果路径已存在,为覆盖关系;如果路径不存在,会新建。', - 'type' => 'string', - 'example' => '/usr/data/user.data', - ], - 'readOnly' => [ - 'title' => '是否只读', - 'description' => '容器路径是否对挂载目录资源有可读权限,取值说明如下:'."\n" - ."\n" - .'- **true**:只读权限。'."\n" - .'- **false**:读写权限。', - 'type' => 'boolean', - 'example' => 'true', - ], - ], - ], - ], - 'EdasContainerVersion' => [ - 'description' => 'HSF框架中应用运行环境版本,例如Ali-Tomcat容器。', - 'type' => 'string', - 'example' => '3.5.3', - ], - 'Timezone' => [ - 'description' => '时区,默认为**Asia/Shanghai**。', - 'type' => 'string', - 'example' => 'Asia/Shanghai', - ], - 'AppDescription' => [ - 'description' => '应用描述信息。', - 'type' => 'string', - 'example' => '示例应用', - ], - 'EnableGreyTagRoute' => [ - 'title' => '开启流量灰度', - 'description' => '是否启用流量灰度规则。该规则仅适用于Spring Cloud和Dubbo框架的应用。取值说明如下:'."\n" - ."\n" - .'- **true**:启用灰度规则。'."\n" - .'- **false**:禁用灰度规则。', - 'type' => 'boolean', - 'example' => 'false', - ], - 'MseApplicationId' => [ - 'title' => '对应MSE产品侧应用ID', - 'description' => '对应MSE产品侧应用ID。', - 'type' => 'string', - 'example' => 'xxxxxxx@xxxxx', - ], - 'AcrInstanceId' => [ - 'title' => 'ACR 企业版实例 ID', - 'description' => 'ACR企业版实例ID。', - 'type' => 'string', - 'example' => 'cri-xxxxxx', - ], - 'AcrAssumeRoleArn' => [ - 'description' => '跨账号拉取镜像时所需的RAM角色的ARN。更多信息,请参见[跨账号拉取阿里云镜像](~~190675~~)和[通过RAM角色实现跨云账号授权](~~223585~~)。', - 'type' => 'string', - 'example' => 'acs:ram::123456789012****:role/adminrole', - ], - 'ImagePullSecrets' => [ - 'description' => '对应保密字典ID。', - 'type' => 'string', - 'example' => '10', - ], - 'AssociateEip' => [ - 'title' => '是否绑定EIP', - 'description' => '是否绑定EIP。取值说明如下:'."\n" - ."\n" - .'- **true**:绑定。'."\n" - .'- **false**:不绑定。', - 'type' => 'boolean', - 'example' => 'true', - ], - 'KafkaConfigs' => [ - 'description' => '日志采集到Kafka的配置汇总信息。取值说明如下:'."\n" - ."\n" - .'- **kafkaEndpoint**:Kafka API的服务接入地址。'."\n" - .'- **kafkaInstanceId**:Kafka实例ID。'."\n" - .'- **kafkaConfigs**:单条或多条日志的配置汇总信息。示例值与参数说明,请参见本文的请求参数**kafkaConfigs**。', - 'type' => 'string', - 'example' => '{"kafkaEndpoint":"10.0.X.XXX:XXXX,10.0.X.XXX:XXXX,10.0.X.XXX:XXXX","kafkaInstanceId":"alikafka_pre-cn-7pp2l8kr****","kafkaConfigs":[{"logType":"file_log","logDir":"/tmp/a.log","kafkaTopic":"test2"},{"logType":"stdout","logDir":"","kafkaTopic":"test"}]}', - ], - 'ProgrammingLanguage' => [ - 'description' => '创建应用的技术栈语言。取值说明如下:'."\n" - ."\n" - .'- **java**:Java语言。'."\n" - .'- **php**:PHP语言。'."\n" - .'- **other**:多语言,例如Python、C++、Go、.NET和Node.js等。', - 'type' => 'string', - 'example' => 'java', - ], - 'PvtzDiscovery' => [ - 'description' => '开启K8s Service服务注册发现。', - 'type' => 'string', - 'example' => '{ "serviceName": "bwm-poc-sc-gateway-cn-beijing-front", "namespaceId": "cn-beijing:front", "portAndProtocol": { "18012": "TCP" }, "portProtocols": [ { "port": "18012", "protocol": "TCP" } ], "enable": true }', - ], - 'SwimlanePvtzDiscovery' => [ - 'description' => '配置基于 K8s Service 服务注册发现和全链路灰度功能。', - 'type' => 'string', - 'example' => '{\\"enable\\":\\"false\\",\\"namespaceId\\":\\"cn-beijing:test\\",\\"portAndProtocol\\":{\\"2000:TCP\\":\\"18081\\"},\\"portProtocols\\":[{\\"port\\":2000,\\"protocol\\":\\"TCP\\",\\"targetPort\\":18081}],\\"pvtzDiscoveryName\\":\\"cn-beijing-1421801774382676\\",\\"serviceId\\":\\"3513\\",\\"serviceName\\":\\"demo-gray.test\\"}', - ], - 'MicroRegistration' => [ - 'description' => '选择Nacos注册中心,取值说明如下:'."\n" - .'- **0**:SAE内置Nacos。'."\n" - .'- **1**:用户自建Nacos。'."\n" - .'- **2**:MSE商业版Nacos。', - 'type' => 'string', - 'example' => '"0"', - ], - 'NasConfigs' => [ - 'description' => '挂载NAS的配置。', - 'type' => 'string', - 'example' => '[{"mountPath":"/test1","readOnly":false,"nasId":"nasId1","mountDomain":"nasId1.cn-shenzhen.nas.aliyuncs.com","nasPath":"/test1"},{"nasId":"nasId2","mountDomain":"nasId2.cn-shenzhen.nas.aliyuncs.com","readOnly":false,"nasPath":"/test2","mountPath":"/test2"}]', - ], - 'Python' => [ - 'description' => 'Python环境。支持PYTHON 3.9.15。', - 'type' => 'string', - 'example' => 'PYTHON 3.9.15', - ], - 'PythonModules' => [ - 'description' => '自定义安装模块依赖。默认安装根目录下requirements.txt定义的依赖项。如果未配置或自定义软件包,可以指定安装的依赖。', - 'type' => 'string', - 'example' => 'Flask==2.0', - ], - 'MseApplicationName' => [ - 'description' => 'SAE服务注册到MSE后的应用名。', - 'type' => 'string', - 'example' => 'cn-shenzhen-alb-demo-5c****', - ], - 'AppSource' => [ - 'description' => 'SAE应用类型。'."\n" - ."\n" - .'- micro_service。'."\n" - ."\n" - .'- web。'."\n" - ."\n" - .'- job。', - 'type' => 'string', - 'example' => 'micro_service', - ], - 'ServiceTags' => [ - 'description' => '应用配置的灰度标签', - 'type' => 'object', - 'additionalProperties' => [ - 'type' => 'string', - 'example' => 'tag1', - 'description' => '灰度标签值', - ], - ], - 'Dotnet' => [ - 'description' => '.NET 框架的版本号:'."\n" - ."\n" - .'- .NET 3.1'."\n" - .'- .NET 5.0'."\n" - .'- .NET 6.0'."\n" - .'- .NET 7.0'."\n" - .'- .NET 8.0', - 'type' => 'string', - 'example' => '.NET 8.0', - ], - 'MicroRegistrationConfig' => [ - 'description' => '注册中心配置,仅在注册中心类型为MSE Nacos企业版时生效。', - 'type' => 'string', - 'example' => '{\\"instanceId\\":\\"mse-cn-1ls43******\\",\\"namespace\\":\\"62ee12fb-c279-4da4-be96-21**********\\"}', - ], - 'EnableIdle' => [ - 'description' => '是否开启闲置模式:'."\n" - ."\n" - .'- 开启:true'."\n" - .'- 关闭:false', - 'type' => 'boolean', - 'example' => 'false', - ], - 'EnableNewArms' => [ - 'description' => '是否启用新的ARMS功能:'."\n" - ."\n" - .'- true:启用'."\n" - .'- false:不启用', - 'type' => 'boolean', - 'example' => 'false', - ], - 'EnableCpuBurst' => [ - 'description' => '是否启用CPU Burst功能:'."\n" - ."\n" - .'- true:启用'."\n" - .'- false:不启用', - 'type' => 'string', - 'example' => 'true', - ], - 'OidcRoleName' => [ - 'description' => '设置身份认证服务RAM角色。'."\n" - .'> 需要提前创建同地域的OIDC身份供应商和身份供应商角色。具体信息,请参见[创建OIDC身份供应商](~~2331022~~)和[创建角色SSO身份提供商](~~2331016~~)。', - 'type' => 'string', - 'example' => 'sae-test', - ], - 'SecretMountDesc' => [ - 'description' => 'Secret挂载描述。', - 'type' => 'array', - 'items' => [ - 'description' => 'Secret挂载描述', - 'type' => 'object', - 'properties' => [ - 'Key' => [ - 'description' => '对数据值进行Base64编码的Key。', - 'type' => 'string', - 'example' => 'task-center', - ], - 'SecretName' => [ - 'description' => 'Secret实例名称。', - 'type' => 'string', - 'example' => 'dummy-name-opaque-894', - ], - 'MountPath' => [ - 'description' => '挂载路径。', - 'type' => 'string', - 'example' => '/opt/www/runtime/logs', - ], - 'SecretId' => [ - 'description' => '查询的Secret实例ID。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '520', - ], - ], - ], - ], - 'SidecarContainersConfig' => [ - 'description' => 'Sidecar容器配置。', - 'type' => 'array', - 'items' => [ - 'description' => 'Sidecar容器配置。', - 'type' => 'object', - 'properties' => [ - 'Name' => [ - 'description' => '容器名称。', - 'type' => 'string', - 'example' => 'test', - ], - 'Cpu' => [ - 'description' => '设置Sidecar容器可以使用主容器的CPU资源上限。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '500', - ], - 'Memory' => [ - 'description' => '设置Sidecar容器可以使用主容器的内存资源上限。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1024', - ], - 'ImageUrl' => [ - 'description' => '镜像地址。', - 'type' => 'string', - 'example' => 'registry.cn-beijing.aliyuncs.com/sae-dev-test/nginx:stable', - ], - 'AcrInstanceId' => [ - 'description' => '容器镜像服务ACR企业版实例ID。当**ImageUrl**为容器镜像服务企业版时必填。', - 'type' => 'string', - 'example' => 'cri-fhzlneorxala66ip', - ], - 'Command' => [ - 'description' => '镜像启动命令。该命令必须为容器内存在的可执行的对象。示例如下:'."\n" - ."\n" - .'```'."\n" - .'command:'."\n" - .' - echo'."\n" - .' - abc'."\n" - .' - >'."\n" - .' - file0'."\n" - .'```'."\n" - .'根据上述示例,则`Command="echo", CommandArgs=["abc", ">", "file0"]`。', - 'type' => 'string', - 'example' => '/bin/sh', - ], - 'CommandArgs' => [ - 'description' => '镜像启动命令参数。上述启动命令**Command**所需参数。格式如下:'."\n" - ."\n" - .'`["a","b"]`'."\n" - ."\n" - .'在上述示例中,`CommandArgs=["abc", ">", "file0"]`,其中`["abc", ">", "file0"]`需要转成String类型,里面的格式为JSON数组。如果无此参数,则无需填写。', - 'type' => 'string', - 'example' => '[\\"-c\\",\\"echo \\\\\\"test\\\\\\" > /home/nas/test.log && sleep 10000000s\\"]', - ], - 'Envs' => [ - 'description' => '容器环境变量参数。支持自定义或引用配置项。如需引用配置项,请先创建ConfigMap实例。更多信息,请参见[CreateConfigMap](~~176914~~)。取值说明如下:'."\n" - .'- 自定义配置'."\n" - .' - **name**:环境变量名称。'."\n" - .' - **value**:环境变量值。优先级高于valueFrom。'."\n" - .'- 引用配置项(valueFrom)'."\n" - .' - **name**:环境变量名称。支持引用单个或全部键,如果引用全部键,需输入`sae-sys-configmap-all-<配置项名称>`,例如`sae-sys-configmap-all-test1`。'."\n" - .' - **valueFrom**:环境变量引用。取值为`configMapRef`。'."\n" - .' - **configMapId**:配置项ID。'."\n" - .' - **key**:键。如果引用全部健值,则不设置该字段。', - 'type' => 'string', - 'example' => '[{\\"name\\":\\"k1\\",\\"value\\":\\"c8e3a815-e5d3-4adf-abb3-98b106a607c4\\"}]', - ], - 'ConfigMapMountDesc' => [ - 'description' => 'ConfigMap挂载描述。使用在命名空间配置项页面创建的配置项来向容器中注入配置信息。参数说明如下:'."\n" - .'- **configMapId**:ConfigMap实例ID。可通过调用[ListNamespacedConfigMaps](~~176917~~)接口获取。'."\n" - .'- **key**:键值。'."\n" - .'> 可通过传递`sae-sys-configmap-all`参数挂载所有键。'."\n" - .'- **mountPath**:挂载路径。'."\n" - .'- **ConfigMapName**:ConfigMap名称。', - 'type' => 'array', - 'items' => [ - 'description' => 'ConfigMap挂载描述。', - 'type' => 'object', - 'properties' => [ - 'Key' => [ - 'description' => 'ConfigMap键。', - 'type' => 'string', - 'example' => 'key', - ], - 'ConfigMapName' => [ - 'description' => 'ConfigMap名称。', - 'type' => 'string', - 'example' => 'ConfigMap-test', - ], - 'MountPath' => [ - 'description' => '容器挂载路径。', - 'type' => 'string', - 'example' => '/mnt/test', - ], - 'ConfigMapId' => [ - 'description' => 'ConfigMap实例ID。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '7361', - ], - ], - ], - ], - 'EmptyDirDesc' => [ - 'description' => '共享临时存储。设置临时存储目录,并挂载到主容器和Sidecar容器。', - 'type' => 'array', - 'items' => [ - 'description' => '共享临时存储。', - 'type' => 'object', - 'properties' => [ - 'Name' => [ - 'description' => '临时存储名称。', - 'type' => 'string', - 'example' => 'sidecar-container', - ], - 'MountPath' => [ - 'description' => '数据卷在容器内的挂载路径。', - 'type' => 'string', - 'example' => '/mnt/cache', - ], - ], - ], - ], - ], - ], - ], - 'InitContainersConfig' => [ - 'description' => '初始化容器配置。', + 'CurrentPage' => ['description' => '当前页数。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'TotalSize' => ['description' => '应用总个数。', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], + 'PageSize' => ['description' => '页面大小。', 'type' => 'integer', 'format' => 'int32', 'example' => '20'], + 'Applications' => [ + 'description' => '应用列表。', 'type' => 'array', 'items' => [ - 'description' => '初始化容器配置。', + 'description' => '应用列表信息。', 'type' => 'object', 'properties' => [ - 'Name' => [ - 'description' => '初始化容器名称。', - 'type' => 'string', - 'example' => 'init-container', - ], - 'ImageUrl' => [ - 'description' => '初始化容器使用的镜像地址。', - 'type' => 'string', - 'example' => 'registry.cn-shenzhen.aliyuncs.com/sae-serverless-demo/sae-demo:microservice-java-provider-v1.0', - ], - 'Command' => [ - 'description' => '镜像启动命令。该命令必须为容器内存在的可执行的对象。示例如下:'."\n" - ."\n" - .'```'."\n" - .'command:'."\n" - .' - echo'."\n" - .' - abc'."\n" - .' - >'."\n" - .' - file0'."\n" - .'```'."\n" - .'根据上述示例,则`Command="echo", CommandArgs=["abc", ">", "file0"]`。', - 'type' => 'string', - 'example' => '/bin/sh', - ], - 'CommandArgs' => [ - 'description' => '镜像启动命令参数。上述启动命令**Command**所需参数。格式如下:'."\n" - ."\n" - .'`["a","b"]`'."\n" - ."\n" - .'在上述示例中,`CommandArgs=["abc", ">", "file0"]`,其中`["abc", ">", "file0"]`需要转成String类型,里面的格式为JSON数组。如果无此参数,则无需填写。', - 'type' => 'string', - 'example' => '["a","b"]'."\n", - ], - 'Envs' => [ - 'description' => '容器环境变量参数。支持自定义或引用配置项。如需引用配置项,请先创建ConfigMap实例。更多信息,请参见[CreateConfigMap](~~176914~~)。取值说明如下:'."\n" - .'- 自定义配置'."\n" - .' - **name**:环境变量名称。'."\n" - .' - **value**:环境变量值。优先级高于valueFrom。'."\n" - .'- 引用配置项(valueFrom)'."\n" - .' - **name**:环境变量名称。支持引用单个或全部键,如果引用全部键,需输入`sae-sys-configmap-all-<配置项名称>`,例如`sae-sys-configmap-all-test1`。'."\n" - .' - **valueFrom**:环境变量引用。取值为`configMapRef`。'."\n" - .' - **configMapId**:配置项ID。'."\n" - .' - **key**:键。如果引用全部健值,则不设置该字段。'."\n" - .'- 引用保密字典(valueFrom)'."\n" - .' - **name**:环境变量名称。支持引用单个或全部键,如果引用全部键,需输入`sae-sys-secret-all-<保密字典名称>`,例如`sae-sys-secret-all-test1`。'."\n" - .' - **valueFrom**:环境变量引用。取值为`secretRef`。'."\n" - .' - **secretId**:保密字典ID。'."\n" - .' - **key**:键。如果引用全部健值,则不设置该字段。', - 'type' => 'string', - 'example' => '[{"name":"TEST_ENV_KEY","value":"TEST_ENV_VAR"}]'."\n", - ], - 'ConfigMapMountDesc' => [ - 'description' => 'ConfigMap信息。', + 'AppName' => ['description' => '应用名称。', 'type' => 'string', 'example' => 'demo-app'], + 'NamespaceId' => ['description' => '命名空间ID。', 'type' => 'string', 'example' => 'cn-beijing:demo'], + 'AppDeletingStatus' => ['description' => '是否正在删除应用。取值说明如下:'."\n" + ."\n" + .'- **true**:应用正在被删除。'."\n" + .'- **false**:应用没有被删除。', 'type' => 'boolean', 'example' => 'false'], + 'AppId' => ['description' => '应用ID。', 'type' => 'string', 'example' => 'f7730764-d88f-4b9a-8d8e-cd8efbfe****'], + 'Tags' => [ + 'description' => '应用标签。', 'type' => 'array', 'items' => [ - 'description' => 'ConfigMap键值对。', + 'description' => '应用标签信息。', 'type' => 'object', 'properties' => [ - 'Key' => [ - 'description' => 'ConfigMap键值对。', - 'type' => 'string', - 'example' => 'k1'."\n", - ], - 'ConfigMapName' => [ - 'description' => 'ConfigMap名称。', - 'type' => 'string', - 'example' => 'test'."\n", - ], - 'MountPath' => [ - 'description' => '容器挂载路径。', - 'type' => 'string', - 'example' => '/tmp'."\n", - ], - 'ConfigMapId' => [ - 'description' => 'ConfigMap ID。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1', - ], + 'Key' => ['description' => '标签键。', 'type' => 'string', 'example' => 'key'], + 'Value' => ['description' => '标签值。', 'type' => 'string', 'example' => 'value'], ], ], ], - 'EmptyDirDesc' => [ + 'RunningInstances' => ['description' => '运行中的实例个数。', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], + 'Instances' => ['description' => '应用实例个数。', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], + 'RegionId' => ['description' => '地域ID。', 'type' => 'string', 'example' => 'cn-beijing'], + 'AppDescription' => ['description' => '应用描述信息。', 'type' => 'string', 'example' => 'description'], + 'Cpu' => ['description' => '每个实例所需的CPU,单位为毫核,不能为0。目前仅支持以下固定规格:'."\n" + ."\n" + .'- **500**'."\n" + .'- **1000**'."\n" + .'- **2000**'."\n" + .'- **4000**'."\n" + .'- **8000**'."\n" + .'- **16000**'."\n" + .'- **32000**', 'type' => 'integer', 'format' => 'int32', 'example' => '1000'], + 'Mem' => ['description' => '每个实例所需的内存,单位为MB,不能为0。与CPU为一一对应关系,目前仅支持以下固定规格:'."\n" + ."\n" + .'- **1024**:对应CPU为500毫核和1000毫核。'."\n" + .'- **2048**:对应CPU为500、1000毫核和2000毫核。'."\n" + .'- **4096**:对应CPU为1000、2000毫核和4000毫核。'."\n" + .'- **8192**:对应CPU为2000、4000毫核和8000毫核。'."\n" + .'- **12288**:对应CPU为12000毫核。'."\n" + .'- **16384**:对应CPU为4000、8000毫核和16000毫核。'."\n" + .'- **24576**:对应CPU为12000毫核。'."\n" + .'- **32768**:对应CPU为16000毫核。'."\n" + .'- **65536**:对应CPU为8000、16000和32000毫核。'."\n" + .'- **131072**:对应CPU为32000毫核。', 'type' => 'integer', 'format' => 'int32', 'example' => '1024'], + 'MseEnabled' => ['description' => '该应用是否已启用MSE微服务治理', 'type' => 'boolean', 'example' => 'true'], + 'MseNamespaceId' => ['description' => 'MSE微服务治理命名空间'."\n" + ."\n" + .'- default:免费版'."\n" + ."\n" + .'- sae-pro:专业版'."\n" + ."\n" + .'- sae-ent:企业版', 'type' => 'string', 'example' => 'sae-ent'], + 'BaseAppId' => ['description' => 'Base应用ID,仅灰度应用存在此属性', 'type' => 'string', 'example' => 'xxx-xxx-xx-xxx'], + 'ProgrammingLanguage' => ['description' => '应用的编程语言', 'type' => 'string', 'example' => 'java'], + 'Children' => [ + 'description' => '该应用的灰度应用列表', 'type' => 'array', 'items' => [ + 'description' => '详细信息。', 'type' => 'object', 'properties' => [ - 'Name' => [ - 'type' => 'string', - ], - 'MountPath' => [ - 'type' => 'string', + 'AppName' => ['description' => '应用名称。', 'type' => 'string', 'example' => 'app1'], + 'NamespaceId' => ['description' => '命名空间 ID。', 'type' => 'string', 'example' => 'cn-beijing:demo'], + 'AppDeletingStatus' => ['description' => '是否正在删除该应用。', 'type' => 'boolean', 'example' => 'false'], + 'AppId' => ['description' => '应用 ID。', 'type' => 'string', 'example' => 'xxx-xxx-xxx-xxx'], + 'ScaleRuleEnabled' => ['description' => '是否开启弹性伸缩策略。', 'type' => 'boolean', 'example' => 'false'], + 'ScaleRuleType' => ['description' => '弹性规则的类型', 'type' => 'string', 'example' => 'timing'], + 'Tags' => [ + 'description' => '应用标签。', + 'type' => 'array', + 'items' => [ + 'description' => '应用标签。', + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => '标签键。', 'type' => 'string', 'example' => 'key'], + 'Value' => ['description' => '标签值。', 'type' => 'string', 'example' => 'value'], + ], + ], ], + 'RunningInstances' => ['description' => '运行中的实例个数。', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], + 'Instances' => ['description' => '实例个数。', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], + 'RegionId' => ['description' => '地域 ID。', 'type' => 'string', 'example' => 'cn-beijing'], + 'AppDescription' => ['description' => '应用描述信息。', 'type' => 'string', 'example' => 'Test application'], + 'Cpu' => ['description' => 'CPU大小。', 'type' => 'integer', 'format' => 'int32', 'example' => '2000'], + 'Mem' => ['description' => '内存大小。', 'type' => 'integer', 'format' => 'int32', 'example' => '2048'], + 'MseEnabled' => ['description' => '该应用是否已启用MSE微服务治理。', 'type' => 'boolean', 'example' => 'true'], + 'BaseAppId' => ['description' => '基础应用 ID。', 'type' => 'string', 'example' => ' ee99cce6-1c8e-4bfa-96c3-3e2fa9******'], + 'ProgrammingLanguage' => ['description' => '应用所用的语言。', 'type' => 'string', 'example' => 'java'], + 'AppType' => ['description' => '应用部署的方式。', 'type' => 'string', 'example' => 'Image'], + 'NamespaceName' => ['description' => '命名空间名称', 'type' => 'string', 'example' => 'demo'], + 'IsStateful' => ['description' => '是否为有状态应用。', 'type' => 'boolean'], + 'NewSaeVersion' => ['description' => '应用版本:'."\n" + ."\n" + .'- lite:轻量版'."\n" + .'- std:标准版'."\n" + .'- pro:专业版', 'type' => 'string', 'example' => 'pro'], + 'ResourceType' => ['description' => '资源类型。', 'type' => 'string'], + 'EnableIdle' => ['description' => '是否开启闲置。', 'type' => 'string'], ], ], ], - ], - ], - ], - 'CustomImageNetworkType' => [ - 'description' => '自定义镜像类型,如果非自定义镜像,需要设置为空字符串:'."\n" - ."\n" - .'- internet:公网镜像'."\n" - .'- intranet:私网镜像', - 'type' => 'string', - 'example' => 'internet', - ], - 'ResourceType' => [ - 'description' => '资源类型,仅支持`application`。', - 'type' => 'string', - 'example' => 'application', - ], - 'BaseAppId' => [ - 'description' => '基线应用ID。', - 'type' => 'string', - 'example' => '8c573618-8d72-4407-baf4-f7b64b******', - ], - 'MicroserviceEngineConfig' => [ - 'description' => '配置微服务治理功能。'."\n" - ."\n" - .'- 是否开启微服务治理(enable):'."\n" - ."\n" - .' - ture:开启'."\n" - ."\n" - .' - false:不开启'."\n" - ."\n" - .'- 配置无损上下线(mseLosslessRule):'."\n" - ."\n" - .' - delayTime:延迟事件'."\n" - ."\n" - .' - enable:是否启用无损上线功能,ture为开启,false为不开启。'."\n" - ."\n" - .' - notice:是否启用通知功能,ture为启用,false为启用。'."\n" - ."\n" - .' - warmupTime:小流量预热时长,单位为秒。', - 'type' => 'string', - 'example' => '{\\"Enable\\":true,\\"MseLosslessRule\\":{\\"enable\\":true,\\"notice\\":true,\\"delayTime\\":10,\\"warmupTime\\":120,\\"funcType\\":2,\\"aligned\\":false,\\"related\\":false,\\"lossLessDetail\\":false}}', - ], - 'NewSaeVersion' => [ - 'description' => '应用版本:'."\n" - ."\n" - .'- lite:轻量版'."\n" - .'- std:标准版'."\n" - .'- pro:专业版', - 'type' => 'string', - 'example' => 'pro', - ], - 'ClusterId' => [ - 'description' => '集群ID。', - 'type' => 'string', - 'example' => '495fc79c-ae61-4600-866d-a09d68******', - ], - 'DiskSize' => [ - 'description' => '磁盘存储大小(单位GB)。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '20', - ], - 'StartupProbe' => [ - 'description' => '应用启动探测。', - 'type' => 'string', - 'example' => '{\\"exec\\":{\\"command\\":[\\"/bin/sh\\",\\"-c\\",\\"#!Note: If microservice config is enabled, the application will be automatically injected with the prestop configuration for lossless offline. If you delete this prestop configuration, lossless offline will not be effective.\\\\n echo stop > /tmp/prestop; /home/admin/.tools/curl http://127.0.0.1:54199/offline; sleep 30\\"]}}', - ], - 'GpuCount' => [ - 'type' => 'string', - ], - 'GpuType' => [ - 'type' => 'string', - ], - 'EnablePrometheus' => [ - 'type' => 'boolean', - ], - 'IsStateful' => [ - 'type' => 'boolean', - ], - 'CmsServiceId' => [ - 'type' => 'string', - ], - 'HeadlessPvtzDiscovery' => [ - 'type' => 'string', - ], - 'Html' => [ - 'type' => 'string', - ], - 'EmptyDirDesc' => [ - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'Name' => [ - 'type' => 'string', - ], - 'MountPath' => [ - 'type' => 'string', + 'ImageUrl' => ['description' => '镜像地址。', 'type' => 'string', 'example' => 'registry.cn-hangzhou.aliyuncs.com/sae-serverless-demo/sae-demo:microservice-java-provider-v1.0'], + 'PackageUrl' => ['description' => '部署包地址。', 'type' => 'string', 'example' => 'https://sae-oss-cn-hangzhou.oss-cn-hangzhou.aliyuncs.com/apps/K8S_APP_ID/1421801774382676/adf2624a-66fd-4a2b-8caa-6921da******/hello-sae.jar'], + 'AppType' => ['description' => '应用部署的方式。', 'type' => 'string', 'example' => 'Image'], + 'NamespaceName' => ['description' => '命名空间名称。', 'type' => 'string', 'example' => 'demo'], + 'IsStateful' => ['description' => '是否为有状态应用。', 'type' => 'boolean'], + 'NewSaeVersion' => ['description' => '应用版本:'."\n" + ."\n" + .'- lite:轻量版'."\n" + .'- std:标准版'."\n" + .'- pro:专业版', 'type' => 'string', 'example' => 'pro'], + 'EnableIdle' => ['description' => '是否开启闲置。', 'type' => 'string', 'example' => 'false'], + 'DiskSize' => ['description' => '磁盘存储大小(单位GB)。', 'type' => 'integer', 'format' => 'int32', 'example' => '20'], + 'VpcId' => ['description' => 'VPC ID。', 'type' => 'string'], + 'ResourceType' => ['description' => '资源类型。', 'type' => 'string'], + 'Labels' => [ + 'description' => '标签。', + 'type' => 'object', + 'additionalProperties' => ['type' => 'string', 'description' => ''], ], + 'RaspEnabled' => ['type' => 'boolean'], ], ], ], - 'DeploymentName' => [ - 'type' => 'string', - ], - 'AlbIngressReadinessGate' => [ - 'type' => 'string', - ], - 'MaxSurgeInstances' => [ - 'type' => 'integer', - 'format' => 'int32', - ], - 'MaxSurgeInstanceRatio' => [ - 'type' => 'integer', - 'format' => 'int32', - ], - 'AgentVersion' => [ - 'type' => 'string', - ], - 'EnableNamespaceAgentVersion' => [ - 'type' => 'boolean', - ], - 'SlsLogEnvTags' => [ - 'title' => 'sls log env tags', - 'description' => 'sls log env tags', - 'type' => 'string', - ], - 'LokiConfigs' => [ - 'type' => 'string', - ], - 'IdleHour' => [ - 'type' => 'string', - ], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '获取应用配置信息是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:获取成功。'."\n" - .'- **false**:获取失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**目录。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '获取应用列表。取值说明如下:'."\n" + ."\n" + .'- **true**:获取成功。'."\n" + .'- **false**:获取失败。', 'type' => 'boolean', 'example' => 'true'], + 'CurrentPage' => ['description' => '当前页数。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'TotalSize' => ['description' => '应用总个数。', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], + 'PageSize' => ['description' => '页面大小。', 'type' => 'integer', 'format' => 'int32', 'example' => '20'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidApplication.NotFound', - 'errorMessage' => 'The current application does not exist.', - ], - ], - 404 => [ - [ - 'errorCode' => 'InvalidAppId.NotFound', - 'errorMessage' => 'The specified AppId does not exist.', - ], + ['errorCode' => 'Illegal.argument', 'errorMessage' => 'Illegal argument', 'description' => '参数异常'], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"01CF26C7-00A3-4AA6-BA76-7E95F2A3****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"ac1a0b2215622246421415014e****\\",\\n \\"Data\\": {\\n \\"VpcId\\": \\"vpc-2ze0i263cnn311nvj****\\",\\n \\"Readiness\\": \\"{\\\\\\"exec\\\\\\":{\\\\\\"command\\\\\\":[\\\\\\"curl http://localhost:8080\\\\\\"]},\\\\\\"initialDelaySeconds\\\\\\":20,\\\\\\"timeoutSeconds\\\\\\":5}\\",\\n \\"ConfigMapMountDesc\\": [\\n {\\n \\"Key\\": \\"k1\\",\\n \\"ConfigMapName\\": \\"test\\",\\n \\"MountPath\\": \\"/tmp\\",\\n \\"ConfigMapId\\": 1\\n }\\n ],\\n \\"SecurityGroupId\\": \\"sg-wz969ngg2e49q5i4****\\",\\n \\"BatchWaitTime\\": 10,\\n \\"Jdk\\": \\"Open JDK 8\\",\\n \\"ImageUrl\\": \\"docker.io/library/nginx:1.14.2\\",\\n \\"SlsConfigs\\": \\"[{\\\\\\"logDir\\\\\\":\\\\\\"\\\\\\",\\\\\\"logType\\\\\\":\\\\\\"stdout\\\\\\"},{\\\\\\"logDir\\\\\\":\\\\\\"/tmp/a.log\\\\\\"}]\\",\\n \\"Liveness\\": \\"{\\\\\\"exec\\\\\\":{\\\\\\"command\\\\\\":[\\\\\\"curl http://localhost:8080\\\\\\"]},\\\\\\"initialDelaySeconds\\\\\\":20,\\\\\\"timeoutSeconds\\\\\\":3}\\",\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"k1\\",\\n \\"Value\\": \\"v1\\"\\n }\\n ],\\n \\"PackageUrl\\": \\"https://edas-bj.oss-cn-beijing.aliyuncs.com/apps/K8s_APP_ID/d4c97c37-aba3-403e-ae1e-6f7d8742****/hello-sae.war\\",\\n \\"PackageType\\": \\"War\\",\\n \\"PreStop\\": \\"{\\\\\\"exec\\\\\\":{\\\\\\"command\\\\\\":[\\\\\\"cat\\\\\\",\\\\\\"/etc/group\\\\\\"]}}\\",\\n \\"PackageVersion\\": \\"1.0\\",\\n \\"JarStartArgs\\": \\"start\\",\\n \\"AppName\\": \\"demo-app\\",\\n \\"AppId\\": \\"7171a6ca-d1cd-4928-8642-7d5cfe69****\\",\\n \\"JarStartOptions\\": \\"-Dtest=true\\",\\n \\"Replicas\\": 2,\\n \\"UpdateStrategy\\": \\"{\\\\\\"type\\\\\\":\\\\\\"GrayBatchUpdate\\\\\\",\\\\\\"batchUpdate\\\\\\":{\\\\\\"batch\\\\\\":2,\\\\\\"releaseType\\\\\\":\\\\\\"auto\\\\\\",\\\\\\"batchWaitTime\\\\\\":1},\\\\\\"grayUpdate\\\\\\":{\\\\\\"gray\\\\\\":1}}\\",\\n \\"MinReadyInstances\\": 1,\\n \\"MinReadyInstanceRatio\\": -1,\\n \\"Memory\\": 2048,\\n \\"Php\\": \\"PHP-FPM 7.0\\",\\n \\"PhpConfig\\": \\"k1=v1\\",\\n \\"PhpConfigLocation\\": \\"/usr/local/etc/php/php.ini\\",\\n \\"PostStart\\": \\"{\\\\\\"exec\\\\\\":{\\\\\\"command\\\\\\":[\\\\\\"cat\\\\\\",\\\\\\"/etc/group\\\\\\"]}}\\",\\n \\"TerminationGracePeriodSeconds\\": 10,\\n \\"CommandArgs\\": \\"[\\\\\\"a\\\\\\",\\\\\\"b\\\\\\"]\\",\\n \\"NamespaceId\\": \\"cn-beijing:test\\",\\n \\"MountHost\\": \\"example.com\\",\\n \\"TomcatConfig\\": \\"{\\\\\\"port\\\\\\":8080,\\\\\\"contextPath\\\\\\":\\\\\\"/\\\\\\",\\\\\\"maxThreads\\\\\\":400,\\\\\\"uriEncoding\\\\\\":\\\\\\"ISO-8859-1\\\\\\",\\\\\\"useBodyEncodingForUri\\\\\\":true}\\",\\n \\"RegionId\\": \\"cn-beijing\\",\\n \\"VSwitchId\\": \\"vsw-2ze559r1z1bpwqxwp****\\",\\n \\"Cpu\\": 1000,\\n \\"Envs\\": \\"[{\\\\\\"name\\\\\\":\\\\\\"TEST_ENV_KEY\\\\\\",\\\\\\"value\\\\\\":\\\\\\"TEST_ENV_VAR\\\\\\"}]\\",\\n \\"MountDesc\\": [\\n {\\n \\"MountPath\\": \\"/tmp\\",\\n \\"NasPath\\": \\"/\\"\\n }\\n ],\\n \\"EnableAhas\\": \\"true\\",\\n \\"CustomHostAlias\\": \\"[{\\\\\\"hostName\\\\\\":\\\\\\"test.host.name\\\\\\",\\\\\\"ip\\\\\\":\\\\\\"0.0.0.0\\\\\\"}]\\",\\n \\"WebContainer\\": \\"apache-tomcat-7.0.91\\",\\n \\"Command\\": \\"echo\\",\\n \\"WarStartOptions\\": \\"custom-option\\",\\n \\"PhpArmsConfigLocation\\": \\"/usr/local/etc/php/conf.d/arms.ini\\",\\n \\"NasId\\": \\"AKSN****\\",\\n \\"OssAkId\\": \\"xxxxxx\\",\\n \\"OssAkSecret\\": \\"xxxxxx\\",\\n \\"OssMountDescs\\": [\\n {\\n \\"bucketName\\": \\"oss-bucket\\",\\n \\"bucketPath\\": \\"data/user.data\\",\\n \\"mountPath\\": \\"/usr/data/user.data\\",\\n \\"readOnly\\": true\\n }\\n ],\\n \\"EdasContainerVersion\\": \\"3.5.3\\",\\n \\"Timezone\\": \\"Asia/Shanghai\\",\\n \\"AppDescription\\": \\"示例应用\\",\\n \\"EnableGreyTagRoute\\": false,\\n \\"MseApplicationId\\": \\"xxxxxxx@xxxxx\\",\\n \\"AcrInstanceId\\": \\"cri-xxxxxx\\",\\n \\"AcrAssumeRoleArn\\": \\"acs:ram::123456789012****:role/adminrole\\",\\n \\"ImagePullSecrets\\": \\"10\\",\\n \\"AssociateEip\\": true,\\n \\"KafkaConfigs\\": \\"{\\\\\\"kafkaEndpoint\\\\\\":\\\\\\"10.0.X.XXX:XXXX,10.0.X.XXX:XXXX,10.0.X.XXX:XXXX\\\\\\",\\\\\\"kafkaInstanceId\\\\\\":\\\\\\"alikafka_pre-cn-7pp2l8kr****\\\\\\",\\\\\\"kafkaConfigs\\\\\\":[{\\\\\\"logType\\\\\\":\\\\\\"file_log\\\\\\",\\\\\\"logDir\\\\\\":\\\\\\"/tmp/a.log\\\\\\",\\\\\\"kafkaTopic\\\\\\":\\\\\\"test2\\\\\\"},{\\\\\\"logType\\\\\\":\\\\\\"stdout\\\\\\",\\\\\\"logDir\\\\\\":\\\\\\"\\\\\\",\\\\\\"kafkaTopic\\\\\\":\\\\\\"test\\\\\\"}]}\\",\\n \\"ProgrammingLanguage\\": \\"java\\",\\n \\"PvtzDiscovery\\": \\"{ \\\\\\"serviceName\\\\\\": \\\\\\"bwm-poc-sc-gateway-cn-beijing-front\\\\\\", \\\\\\"namespaceId\\\\\\": \\\\\\"cn-beijing:front\\\\\\", \\\\\\"portAndProtocol\\\\\\": { \\\\\\"18012\\\\\\": \\\\\\"TCP\\\\\\" }, \\\\\\"portProtocols\\\\\\": [ { \\\\\\"port\\\\\\": \\\\\\"18012\\\\\\", \\\\\\"protocol\\\\\\": \\\\\\"TCP\\\\\\" } ], \\\\\\"enable\\\\\\": true }\\",\\n \\"SwimlanePvtzDiscovery\\": \\"{\\\\\\\\\\\\\\"enable\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"false\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"namespaceId\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"cn-beijing:test\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"portAndProtocol\\\\\\\\\\\\\\":{\\\\\\\\\\\\\\"2000:TCP\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"18081\\\\\\\\\\\\\\"},\\\\\\\\\\\\\\"portProtocols\\\\\\\\\\\\\\":[{\\\\\\\\\\\\\\"port\\\\\\\\\\\\\\":2000,\\\\\\\\\\\\\\"protocol\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"TCP\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"targetPort\\\\\\\\\\\\\\":18081}],\\\\\\\\\\\\\\"pvtzDiscoveryName\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"cn-beijing-1421801774382676\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"serviceId\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"3513\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"serviceName\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"demo-gray.test\\\\\\\\\\\\\\"}\\",\\n \\"MicroRegistration\\": \\"\\\\\\"0\\\\\\"\\",\\n \\"NasConfigs\\": \\"[{\\\\\\"mountPath\\\\\\":\\\\\\"/test1\\\\\\",\\\\\\"readOnly\\\\\\":false,\\\\\\"nasId\\\\\\":\\\\\\"nasId1\\\\\\",\\\\\\"mountDomain\\\\\\":\\\\\\"nasId1.cn-shenzhen.nas.aliyuncs.com\\\\\\",\\\\\\"nasPath\\\\\\":\\\\\\"/test1\\\\\\"},{\\\\\\"nasId\\\\\\":\\\\\\"nasId2\\\\\\",\\\\\\"mountDomain\\\\\\":\\\\\\"nasId2.cn-shenzhen.nas.aliyuncs.com\\\\\\",\\\\\\"readOnly\\\\\\":false,\\\\\\"nasPath\\\\\\":\\\\\\"/test2\\\\\\",\\\\\\"mountPath\\\\\\":\\\\\\"/test2\\\\\\"}]\\",\\n \\"Python\\": \\"PYTHON 3.9.15\\",\\n \\"PythonModules\\": \\"Flask==2.0\\",\\n \\"MseApplicationName\\": \\"cn-shenzhen-alb-demo-5c****\\",\\n \\"AppSource\\": \\"micro_service\\",\\n \\"ServiceTags\\": {\\n \\"key\\": \\"tag1\\"\\n },\\n \\"Dotnet\\": \\".NET 8.0\\",\\n \\"MicroRegistrationConfig\\": \\"{\\\\\\\\\\\\\\"instanceId\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"mse-cn-1ls43******\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"namespace\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"62ee12fb-c279-4da4-be96-21**********\\\\\\\\\\\\\\"}\\",\\n \\"EnableIdle\\": false,\\n \\"EnableNewArms\\": false,\\n \\"EnableCpuBurst\\": \\"true\\",\\n \\"OidcRoleName\\": \\"sae-test\\",\\n \\"SecretMountDesc\\": [\\n {\\n \\"Key\\": \\"task-center\\",\\n \\"SecretName\\": \\"dummy-name-opaque-894\\",\\n \\"MountPath\\": \\"/opt/www/runtime/logs\\",\\n \\"SecretId\\": 520\\n }\\n ],\\n \\"SidecarContainersConfig\\": [\\n {\\n \\"Name\\": \\"test\\",\\n \\"Cpu\\": 500,\\n \\"Memory\\": 1024,\\n \\"ImageUrl\\": \\"registry.cn-beijing.aliyuncs.com/sae-dev-test/nginx:stable\\",\\n \\"AcrInstanceId\\": \\"cri-fhzlneorxala66ip\\",\\n \\"Command\\": \\"/bin/sh\\",\\n \\"CommandArgs\\": \\"[\\\\\\\\\\\\\\"-c\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"echo \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"test\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\" > /home/nas/test.log && sleep 10000000s\\\\\\\\\\\\\\"]\\",\\n \\"Envs\\": \\"[{\\\\\\\\\\\\\\"name\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"k1\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"value\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"c8e3a815-e5d3-4adf-abb3-98b106a607c4\\\\\\\\\\\\\\"}]\\",\\n \\"ConfigMapMountDesc\\": [\\n {\\n \\"Key\\": \\"key\\",\\n \\"ConfigMapName\\": \\"ConfigMap-test\\",\\n \\"MountPath\\": \\"/mnt/test\\",\\n \\"ConfigMapId\\": 7361\\n }\\n ],\\n \\"EmptyDirDesc\\": [\\n {\\n \\"Name\\": \\"sidecar-container\\",\\n \\"MountPath\\": \\"/mnt/cache\\"\\n }\\n ]\\n }\\n ],\\n \\"InitContainersConfig\\": [\\n {\\n \\"Name\\": \\"init-container\\",\\n \\"ImageUrl\\": \\"registry.cn-shenzhen.aliyuncs.com/sae-serverless-demo/sae-demo:microservice-java-provider-v1.0\\",\\n \\"Command\\": \\"/bin/sh\\",\\n \\"CommandArgs\\": \\"[\\\\\\"a\\\\\\",\\\\\\"b\\\\\\"]\\\\n\\",\\n \\"Envs\\": \\"[{\\\\\\"name\\\\\\":\\\\\\"TEST_ENV_KEY\\\\\\",\\\\\\"value\\\\\\":\\\\\\"TEST_ENV_VAR\\\\\\"}]\\\\n\\",\\n \\"ConfigMapMountDesc\\": [\\n {\\n \\"Key\\": \\"k1\\\\n\\",\\n \\"ConfigMapName\\": \\"test\\\\n\\",\\n \\"MountPath\\": \\"/tmp\\\\n\\",\\n \\"ConfigMapId\\": 1\\n }\\n ],\\n \\"EmptyDirDesc\\": [\\n {\\n \\"Name\\": \\"\\",\\n \\"MountPath\\": \\"\\"\\n }\\n ]\\n }\\n ],\\n \\"CustomImageNetworkType\\": \\"internet\\",\\n \\"ResourceType\\": \\"application\\",\\n \\"BaseAppId\\": \\"8c573618-8d72-4407-baf4-f7b64b******\\",\\n \\"MicroserviceEngineConfig\\": \\"{\\\\\\\\\\\\\\"Enable\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"MseLosslessRule\\\\\\\\\\\\\\":{\\\\\\\\\\\\\\"enable\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"notice\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"delayTime\\\\\\\\\\\\\\":10,\\\\\\\\\\\\\\"warmupTime\\\\\\\\\\\\\\":120,\\\\\\\\\\\\\\"funcType\\\\\\\\\\\\\\":2,\\\\\\\\\\\\\\"aligned\\\\\\\\\\\\\\":false,\\\\\\\\\\\\\\"related\\\\\\\\\\\\\\":false,\\\\\\\\\\\\\\"lossLessDetail\\\\\\\\\\\\\\":false}}\\",\\n \\"NewSaeVersion\\": \\"pro\\",\\n \\"ClusterId\\": \\"495fc79c-ae61-4600-866d-a09d68******\\",\\n \\"DiskSize\\": 20,\\n \\"StartupProbe\\": \\"{\\\\\\\\\\\\\\"exec\\\\\\\\\\\\\\":{\\\\\\\\\\\\\\"command\\\\\\\\\\\\\\":[\\\\\\\\\\\\\\"/bin/sh\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"-c\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"#!Note: If microservice config is enabled, the application will be automatically injected with the prestop configuration for lossless offline. If you delete this prestop configuration, lossless offline will not be effective.\\\\\\\\\\\\\\\\n echo stop > /tmp/prestop; /home/admin/.tools/curl http://127.0.0.1:54199/offline; sleep 30\\\\\\\\\\\\\\"]}}\\",\\n \\"GpuCount\\": \\"\\",\\n \\"GpuType\\": \\"\\",\\n \\"EnablePrometheus\\": true,\\n \\"IsStateful\\": true,\\n \\"CmsServiceId\\": \\"\\",\\n \\"HeadlessPvtzDiscovery\\": \\"\\",\\n \\"Html\\": \\"\\",\\n \\"EmptyDirDesc\\": [\\n {\\n \\"Name\\": \\"\\",\\n \\"MountPath\\": \\"\\"\\n }\\n ],\\n \\"DeploymentName\\": \\"\\",\\n \\"AlbIngressReadinessGate\\": \\"\\",\\n \\"MaxSurgeInstances\\": 0,\\n \\"MaxSurgeInstanceRatio\\": 0,\\n \\"AgentVersion\\": \\"\\",\\n \\"EnableNamespaceAgentVersion\\": true,\\n \\"SlsLogEnvTags\\": \\"\\",\\n \\"LokiConfigs\\": \\"\\",\\n \\"IdleHour\\": \\"\\"\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeApplicationConfigResponse>\\n <RequestId>01CF26C7-00A3-4AA6-BA76-7E95F2A3****</RequestId>\\n <Message>success</Message>\\n <TraceId>ac1a0b2215622246421415014e****</TraceId>\\n <Data>\\n <VpcId>vpc-2ze0i263cnn311nvj****</VpcId>\\n <Readiness>{\\"exec\\":{\\"command\\":[\\"curl http://localhost:8080\\"]},\\"initialDelaySeconds\\":20,\\"timeoutSeconds\\":5}</Readiness>\\n <ConfigMapMountDesc>\\n <Key>k1</Key>\\n <ConfigMapName>test</ConfigMapName>\\n <MountPath>/tmp</MountPath>\\n <ConfigMapId>1</ConfigMapId>\\n </ConfigMapMountDesc>\\n <SecurityGroupId>sg-wz969ngg2e49q5i4****</SecurityGroupId>\\n <BatchWaitTime>10</BatchWaitTime>\\n <Jdk>Open JDK 8</Jdk>\\n <ImageUrl>docker.io/library/nginx:1.14.2</ImageUrl>\\n <SlsConfigs>[{\\"logDir\\":\\"\\",\\"logType\\":\\"stdout\\"},{\\"logDir\\":\\"/tmp/a.log\\"}]</SlsConfigs>\\n <Liveness>{\\"exec\\":{\\"command\\":[\\"curl http://localhost:8080\\"]},\\"initialDelaySeconds\\":20,\\"timeoutSeconds\\":3}</Liveness>\\n <Tags>\\n <Key>k1</Key>\\n <Value>v1</Value>\\n </Tags>\\n <PackageUrl>https://edas-bj.oss-cn-beijing.aliyuncs.com/apps/K8s_APP_ID/d4c97c37-aba3-403e-ae1e-6f7d8742****/hello-sae.war</PackageUrl>\\n <PackageType>War</PackageType>\\n <PreStop>{\\"exec\\":{\\"command\\":[\\"cat\\",\\"/etc/group\\"]}}</PreStop>\\n <PackageVersion>1.0</PackageVersion>\\n <JarStartArgs>start</JarStartArgs>\\n <AppName>demo-app</AppName>\\n <AppId>7171a6ca-d1cd-4928-8642-7d5cfe69****</AppId>\\n <JarStartOptions>-Dtest=true</JarStartOptions>\\n <Replicas>2</Replicas>\\n <UpdateStrategy>{\\"type\\":\\"GrayBatchUpdate\\",\\"batchUpdate\\":{\\"batch\\":2,\\"releaseType\\":\\"auto\\",\\"batchWaitTime\\":1},\\"grayUpdate\\":{\\"gray\\":1}}</UpdateStrategy>\\n <MinReadyInstances>1</MinReadyInstances>\\n <MinReadyInstanceRatio>-1</MinReadyInstanceRatio>\\n <Memory>2048</Memory>\\n <Php>PHP-FPM 7.0</Php>\\n <PhpConfig>k1=v1</PhpConfig>\\n <PhpConfigLocation>/usr/local/etc/php/php.ini</PhpConfigLocation>\\n <PostStart>{\\"exec\\":{\\"command\\":[\\"cat\\",\\"/etc/group\\"]}}</PostStart>\\n <TerminationGracePeriodSeconds>10</TerminationGracePeriodSeconds>\\n <CommandArgs>[\\"a\\",\\"b\\"]</CommandArgs>\\n <NamespaceId>cn-beijing:test</NamespaceId>\\n <MountHost>example.com</MountHost>\\n <TomcatConfig>{\\"port\\":8080,\\"contextPath\\":\\"/\\",\\"maxThreads\\":400,\\"uriEncoding\\":\\"ISO-8859-1\\",\\"useBodyEncodingForUri\\":true}</TomcatConfig>\\n <RegionId>cn-beijing</RegionId>\\n <VSwitchId>vsw-2ze559r1z1bpwqxwp****</VSwitchId>\\n <Cpu>1000</Cpu>\\n <Envs>[{\\"name\\":\\"TEST_ENV_KEY\\",\\"value\\":\\"TEST_ENV_VAR\\"}]</Envs>\\n <MountDesc>\\n <MountPath>/tmp</MountPath>\\n <NasPath>/</NasPath>\\n </MountDesc>\\n <EnableAhas>true</EnableAhas>\\n <CustomHostAlias>[{\\"hostName\\":\\"test.host.name\\",\\"ip\\":\\"0.0.0.0\\"}]</CustomHostAlias>\\n <WebContainer>apache-tomcat-7.0.91</WebContainer>\\n <Command>echo</Command>\\n <WarStartOptions>custom-option</WarStartOptions>\\n <PhpArmsConfigLocation>/usr/local/etc/php/conf.d/arms.ini</PhpArmsConfigLocation>\\n <NasId>AKSN89**</NasId>\\n <OssAkId>xxxxxx</OssAkId>\\n <OssAkSecret>xxxxxx</OssAkSecret>\\n <OssMountDescs>\\n <bucketName>oss-bucket</bucketName>\\n <bucketPath>data/user.data</bucketPath>\\n <mountPath>/usr/data/user.data</mountPath>\\n <readOnly>true</readOnly>\\n </OssMountDescs>\\n <EdasContainerVersion>3.5.3</EdasContainerVersion>\\n <Timezone>Asia/Shanghai</Timezone>\\n <AppDescription>示例应用</AppDescription>\\n <EnableGreyTagRoute>false</EnableGreyTagRoute>\\n <MseApplicationId>xxxxxxx@xxxxx</MseApplicationId>\\n <AcrInstanceId>cri-xxxxxx</AcrInstanceId>\\n <AcrAssumeRoleArn>acs:ram::123456789012****:role/adminrole</AcrAssumeRoleArn>\\n <ImagePullSecrets>10</ImagePullSecrets>\\n <AssociateEip>true</AssociateEip>\\n <KafkaConfigs>{\\"kafkaEndpoint\\":\\"10.0.X.XXX:XXXX,10.0.X.XXX:XXXX,10.0.X.XXX:XXXX\\",\\"kafkaInstanceId\\":\\"alikafka_pre-cn-7pp2l8kr****\\",\\"kafkaConfigs\\":[{\\"logType\\":\\"file_log\\",\\"logDir\\":\\"/tmp/a.log\\",\\"kafkaTopic\\":\\"test2\\"},{\\"logType\\":\\"stdout\\",\\"logDir\\":\\"\\",\\"kafkaTopic\\":\\"test\\"}]}</KafkaConfigs>\\n <ProgrammingLanguage>java</ProgrammingLanguage>\\n <PvtzDiscovery>{ \\"serviceName\\": \\"bwm-poc-sc-gateway-cn-beijing-front\\", \\"namespaceId\\": \\"cn-beijing:front\\", \\"portAndProtocol\\": { \\"18012\\": \\"TCP\\" }, \\"portProtocols\\": [ { \\"port\\": \\"18012\\", \\"protocol\\": \\"TCP\\" } ], \\"enable\\": true }</PvtzDiscovery>\\n <MicroRegistration>\\"0\\"</MicroRegistration>\\n <NasConfigs>[{\\"mountPath\\":\\"/test1\\",\\"readOnly\\":false,\\"nasId\\":\\"nasId1\\",\\"mountDomain\\":\\"nasId1.cn-shenzhen.nas.aliyuncs.com\\",\\"nasPath\\":\\"/test1\\"},{\\"nasId\\":\\"nasId2\\",\\"mountDomain\\":\\"nasId2.cn-shenzhen.nas.aliyuncs.com\\",\\"readOnly\\":false,\\"nasPath\\":\\"/test2\\",\\"mountPath\\":\\"/test2\\"}]</NasConfigs>\\n <Python>PYTHON 3.9.15</Python>\\n <PythonModules>Flask==2.0</PythonModules>\\n <MseApplicationName>cn-shenzhen-alb-demo-5c****</MseApplicationName>\\n <SaeVersion>v1</SaeVersion>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeApplicationConfigResponse>","errorExample":""}]', - 'title' => '获取应用配置信息', - 'summary' => '获取应用配置信息。', + 'title' => '获取应用列表', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', - ], - 'DescribeRegions' => [ - 'path' => '/pop/v1/paas/regionConfig', - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ - [ - 'AK' => [], - ], - ], - 'operationType' => 'read', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '6344', - 'abilityTreeNodes' => [ - 'FEATUREsaeRVPNSA', - ], - ], - 'parameters' => [], - 'responses' => [ - 200 => [ - 'schema' => [ - 'description' => '返回数据。', - 'type' => 'object', - 'properties' => [ - 'Message' => [ - 'description' => '调用结果的附加信息。', - 'type' => 'string', - 'example' => 'success', - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'DDE85827-B0B3-4E56-86E8-17C42009****', - ], - 'Regions' => [ - 'type' => 'object', - 'itemNode' => true, - 'properties' => [ - 'Region' => [ - 'description' => '地域列表。', - 'type' => 'array', - 'items' => [ - 'description' => '地域数据。', - 'type' => 'object', - 'properties' => [ - 'LocalName' => [ - 'description' => '地域名称。取值说明如下:'."\n" - ."\n" - .'- **华东1(杭州)**'."\n" - .'- **华东2(上海)**'."\n" - .'- **华北2(北京)**'."\n" - .'- **华北3(张家口)**'."\n" - .'- **华南1(深圳)**'."\n" - .'- **华南3(广州)**'."\n" - .'- **中国(香港)**'."\n" - .'- **新加坡**'."\n" - .'- **美国(硅谷)**', - 'type' => 'string', - 'example' => '华东2(上海)', - ], - 'RegionEndpoint' => [ - 'description' => '地域对应的接入地址。取值说明如下:'."\n" - ."\n" - .'- **sae.cn-hangzhou.aliyuncs.com**'."\n" - .'- **sae.cn-shanghai.aliyuncs.com**'."\n" - .'- **sae.cn-beijing.aliyuncs.com**'."\n" - .'- **sae.cn-zhangjiakou.aliyuncs.com**'."\n" - .'- **sae.cn-shenzhen.aliyuncs.com**'."\n" - .'- **sae.cn-guangzhou.aliyuncs.com**'."\n" - .'- **sae.cn-hongkong.aliyuncs.com**'."\n" - .'- **sae.ap-southeast-1.aliyuncs.com**'."\n" - .'- **sae.us-west-1.aliyuncs.com**', - 'type' => 'string', - 'example' => 'sae.cn-shanghai.aliyuncs.com', - ], - 'RegionId' => [ - 'description' => '地域ID。取值说明如下:'."\n" - ."\n" - .'- **cn-hangzhou**:华东1(杭州)地域的ID。'."\n" - .'- **cn-shanghai**:华东2(上海)地域的ID。'."\n" - .'- **cn-beijing**:华北2(北京)地域的ID。'."\n" - .'- **cn-zhangjiakou**:华北3(张家口)地域的ID。'."\n" - .'- **cn-shenzhen**:华南1(深圳)地域的ID。'."\n" - .'- **cn-guangzhou**:华南3(广州)地域的ID。'."\n" - .'- **cn-hongkong**:中国香港地域的ID。'."\n" - .'- **ap-southeast-1**:新加坡地域的ID。'."\n" - .'- **us-west-1**:美国(硅谷)地域的ID。', - 'type' => 'string', - 'example' => 'cn-shanghai', - ], - 'RecommendZones' => [ - 'type' => 'object', - 'itemNode' => true, - 'properties' => [ - 'RecommendZone' => [ - 'description' => '推荐可用区。', - 'type' => 'array', - 'items' => [ - 'description' => '推荐可用区。所有地域下,整体库存量相对充足的可用区。格式如下:'."\n" - ."\n" - .'- 如果地域内有推荐可用区:`"RecommendZone": ["cn-hongkong-b", "cn-hongkong-d", "cn-hongkong-c"]`'."\n" - ."\n" - .'- 如果地域内无推荐可用区:`"RecommendZone": []`', - 'type' => 'string', - 'example' => 'cn-hongkong-b', - ], - ], - ], - ], - ], - ], - ], - ], - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], + 'changeSet' => [ + ['createdAt' => '2026-02-27T07:12:56.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2026-02-27T07:10:50.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-02-27T07:10:39.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-02-24T11:14:31.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-02-24T11:09:21.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-02-24T11:05:31.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-02-24T11:00:23.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-02-24T10:52:37.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-02-04T02:09:22.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-02-03T03:18:30.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-02-03T02:36:34.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-01-30T08:18:18.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-01-30T02:57:30.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-01-29T06:14:24.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-01-13T13:04:14.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-01-13T12:45:37.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-01-13T12:32:00.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-01-13T09:00:18.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2026-01-13T08:52:08.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-12-25T03:03:23.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-12-05T01:41:36.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2025-12-01T03:11:51.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2025-07-04T06:12:37.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2025-06-24T11:14:19.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2025-04-07T03:09:05.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2025-03-14T02:30:15.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2025-03-12T08:03:00.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2025-02-27T03:42:14.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2024-09-13T02:13:19.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2024-05-24T09:20:53.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2024-05-21T02:16:45.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2024-01-22T11:44:40.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2021-07-21T09:58:57.000Z', 'description' => '错误码发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListApplications'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:ListApplications', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"DDE85827-B0B3-4E56-86E8-17C42009****\\",\\n \\"Regions\\": {\\n \\"Region\\": [\\n {\\n \\"LocalName\\": \\"华东2(上海)\\",\\n \\"RegionEndpoint\\": \\"sae.cn-shanghai.aliyuncs.com\\",\\n \\"RegionId\\": \\"cn-shanghai\\",\\n \\"RecommendZones\\": {\\n \\"RecommendZone\\": [\\n \\"cn-hongkong-b\\"\\n ]\\n }\\n }\\n ]\\n },\\n \\"Code\\": 200\\n}","errorExample":""},{"type":"xml","example":"<DescribeRegionsResponse>\\n <Message>success</Message>\\n <RequestId>DDE85827-B0B3-4E56-86E8-17C42009****</RequestId>\\n <Regions>\\n <LocalName>华东2(上海)</LocalName>\\n <RegionEndpoint>sae.cn-shanghai.aliyuncs.com</RegionEndpoint>\\n <RegionId>cn-shanghai</RegionId>\\n <RecommendZones>cn-hongkong-b</RecommendZones>\\n </Regions>\\n <Code>200</Code>\\n</DescribeRegionsResponse>","errorExample":""}]', - 'title' => '查询可用地域', - 'summary' => '调用DescribeRegions接口查询可用地域。', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"B4D805CA-926D-41B1-8E63-7AD0C1ED****\\",\\n \\"Data\\": {\\n \\"CurrentPage\\": 1,\\n \\"TotalSize\\": 2,\\n \\"PageSize\\": 20,\\n \\"Applications\\": [\\n {\\n \\"AppName\\": \\"demo-app\\",\\n \\"NamespaceId\\": \\"cn-beijing:demo\\",\\n \\"AppDeletingStatus\\": false,\\n \\"AppId\\": \\"f7730764-d88f-4b9a-8d8e-cd8efbfe****\\",\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"key\\",\\n \\"Value\\": \\"value\\"\\n }\\n ],\\n \\"RunningInstances\\": 2,\\n \\"Instances\\": 2,\\n \\"RegionId\\": \\"cn-beijing\\",\\n \\"AppDescription\\": \\"description\\",\\n \\"Cpu\\": 1000,\\n \\"Mem\\": 1024,\\n \\"MseEnabled\\": true,\\n \\"MseNamespaceId\\": \\"sae-ent\\",\\n \\"BaseAppId\\": \\"xxx-xxx-xx-xxx\\",\\n \\"ProgrammingLanguage\\": \\"java\\",\\n \\"Children\\": [\\n {\\n \\"AppName\\": \\"app1\\",\\n \\"NamespaceId\\": \\"cn-beijing:demo\\",\\n \\"AppDeletingStatus\\": false,\\n \\"AppId\\": \\"xxx-xxx-xxx-xxx\\",\\n \\"ScaleRuleEnabled\\": false,\\n \\"ScaleRuleType\\": \\"timing\\",\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"key\\",\\n \\"Value\\": \\"value\\"\\n }\\n ],\\n \\"RunningInstances\\": 2,\\n \\"Instances\\": 2,\\n \\"RegionId\\": \\"cn-beijing\\",\\n \\"AppDescription\\": \\"Test application\\",\\n \\"Cpu\\": 2000,\\n \\"Mem\\": 2048,\\n \\"MseEnabled\\": true,\\n \\"BaseAppId\\": \\" ee99cce6-1c8e-4bfa-96c3-3e2fa9******\\",\\n \\"ProgrammingLanguage\\": \\"java\\",\\n \\"AppType\\": \\"Image\\",\\n \\"NamespaceName\\": \\"demo\\",\\n \\"IsStateful\\": true,\\n \\"NewSaeVersion\\": \\"pro\\",\\n \\"ResourceType\\": \\"\\",\\n \\"EnableIdle\\": \\"\\"\\n }\\n ],\\n \\"ImageUrl\\": \\"registry.cn-hangzhou.aliyuncs.com/sae-serverless-demo/sae-demo:microservice-java-provider-v1.0\\",\\n \\"PackageUrl\\": \\"https://sae-oss-cn-hangzhou.oss-cn-hangzhou.aliyuncs.com/apps/K8S_APP_ID/1421801774382676/adf2624a-66fd-4a2b-8caa-6921da******/hello-sae.jar\\",\\n \\"AppType\\": \\"Image\\",\\n \\"NamespaceName\\": \\"demo\\",\\n \\"IsStateful\\": true,\\n \\"NewSaeVersion\\": \\"pro\\",\\n \\"EnableIdle\\": \\"false\\",\\n \\"DiskSize\\": 20,\\n \\"VpcId\\": \\"\\",\\n \\"ResourceType\\": \\"\\",\\n \\"Labels\\": {\\n \\"key\\": \\"\\"\\n },\\n \\"RaspEnabled\\": true\\n }\\n ]\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true,\\n \\"CurrentPage\\": 1,\\n \\"TotalSize\\": 2,\\n \\"PageSize\\": 20\\n}","errorExample":""},{"type":"xml","example":"<ListApplicationsResponse>\\n <Message>success</Message>\\n <RequestId>B4D805CA-926D-41B1-8E63-7AD0C1ED****</RequestId>\\n <Data>\\n <CurrentPage>1</CurrentPage>\\n <TotalSize>2</TotalSize>\\n <PageSize>20</PageSize>\\n <Applications>\\n <AppName>demo-app</AppName>\\n <NamespaceId>cn-beijing:demo</NamespaceId>\\n <AppDeletingStatus>false</AppDeletingStatus>\\n <AppId>f7730764-d88f-4b9a-8d8e-cd8efbfe****</AppId>\\n <Tags>\\n <Key>key</Key>\\n <Value>value</Value>\\n </Tags>\\n <RunningInstances>2</RunningInstances>\\n <Instances>2</Instances>\\n <RegionId>cn-beijing</RegionId>\\n <AppDescription>description</AppDescription>\\n <Cpu>1000</Cpu>\\n <Mem>1024</Mem>\\n </Applications>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n <CurrentPage>1</CurrentPage>\\n <TotalSize>2</TotalSize>\\n <PageSize>20</PageSize>\\n</ListApplicationsResponse>","errorExample":""}]', ], - 'DescribeInstanceLog' => [ - 'path' => '/pop/v1/sam/instance/describeInstanceLog', - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'ListApplicationsForSwimmingLane' => [ + 'summary' => '获取应用列表,供全链路灰度拉取应用列表。', + 'path' => '/pop/v1/cas/gray/listApplicationsForSwimmingLane', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], + 'consumes' => ['application/x-www-form-urlencoded'], + 'produces' => ['application/json'], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '6336', - 'abilityTreeNodes' => [ - 'FEATUREsaeKWESKE', - ], + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '221435', + 'abilityTreeNodes' => ['FEATUREsaeUDWJ2L'], ], 'parameters' => [ [ - 'name' => 'InstanceId', + 'name' => 'NamespaceId', 'in' => 'query', - 'schema' => [ - 'description' => '实例ID。', - 'type' => 'string', - 'required' => true, - 'example' => '******-d700e680-aa4d-4ec1-afc2-6566b5ff4d7a-85d44d4bfc-*****', - ], + 'schema' => ['description' => '命名空间ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-beijing:test'], ], [ - 'name' => 'ContainerId', + 'name' => 'GroupId', 'in' => 'query', - 'schema' => [ - 'description' => 'Sidecar容器ID。需要调用'."\n" - .'[获取应用实例列表](~~2834847~~)接口获取。', - 'type' => 'string', - 'required' => false, - 'example' => 'sidecar-test-01', - ], + 'schema' => ['description' => '应用分组ID。需要调用[DescribeApplicationGroups](~~126249~~)接口获取。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => 'b2a8a925-477a-eswa-b823-d5e22500****'], ], [ - 'name' => 'Previous', + 'name' => 'Tag', 'in' => 'query', - 'schema' => [ - 'description' => '查看实例上次重启前的日志。注意:仅在实例出现重启时可用。', - 'type' => 'string', - 'required' => false, - 'example' => 'false', - ], + 'schema' => ['description' => '灰度标签。', 'type' => 'string', 'required' => false, 'example' => '{"alicloud.service.tag":"gray"}'."\n"], ], ], 'responses' => [ @@ -27454,80 +16331,85 @@ 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回 **success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'RequestId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], 'Data' => [ - 'description' => '实例日志信息。', - 'type' => 'string', - 'example' => 'hello\\nsae\\n', - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '获取实例日志是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:获取成功。'."\n" - .'- **false**:获取失败。', - 'type' => 'boolean', - 'example' => 'true', + 'description' => '应用列表。', + 'type' => 'array', + 'items' => [ + 'description' => '应用列表信息。', + 'type' => 'object', + 'properties' => [ + 'AppId' => ['description' => '应用ID。', 'type' => 'string', 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****'], + 'AppName' => ['description' => '应用名称。', 'type' => 'string', 'example' => 'demo-app'], + 'MseAppId' => ['description' => 'MSE实例ID。', 'type' => 'string', 'example' => 'mse-cn-hvm47******'], + 'MseAppName' => ['description' => 'MSE实例名称', 'type' => 'string', 'example' => 'test'], + 'MseNamespaceId' => ['description' => 'MSE 实例所在的命名空间ID。', 'type' => 'string', 'example' => 'sae-test'], + 'BaseAppId' => ['description' => '基线应用ID。', 'type' => 'string', 'example' => '8c573618-8d72-4407-baf4-f7b64b******'], + 'BaseAppName' => ['description' => '基线应用名称。', 'type' => 'string', 'example' => 'demo'], + 'ServiceTags' => [ + 'description' => '应用配置的灰度标签', + 'type' => 'object', + 'additionalProperties' => ['type' => 'string', 'description' => '应用配置的灰度标签', 'example' => '{"alicloud.service.tag":"gray"}'], + ], + ], + ], ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**目录。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '获取应用实例列表是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:表示获取成功。'."\n" + .'- **false**:表示获取失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InternalApiError', 'errorMessage' => 'An exception occurred when calling mse:%s, error message: %s.', 'description' => '调用 mse:%s 接口异常,%s'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": \\"hello\\\\\\\\nsae\\\\\\\\n\\",\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeInstanceLogResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>hello\\\\nsae\\\\n</Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeInstanceLogResponse>","errorExample":""}]', - 'title' => '获取实例日志', - 'summary' => '获取实例日志。', - ], - 'DescribeComponents' => [ - 'path' => '/pop/v1/sam/resource/components', - 'methods' => [ - 'get', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": [\\n {\\n \\"AppId\\": \\"0099b7be-5f5b-4512-a7fc-56049ef1****\\",\\n \\"AppName\\": \\"demo-app\\",\\n \\"MseAppId\\": \\"mse-cn-hvm47******\\",\\n \\"MseAppName\\": \\"test\\",\\n \\"MseNamespaceId\\": \\"sae-test\\",\\n \\"BaseAppId\\": \\"8c573618-8d72-4407-baf4-f7b64b******\\",\\n \\"BaseAppName\\": \\"demo\\",\\n \\"ServiceTags\\": {\\n \\"key\\": \\"{\\\\\\"alicloud.service.tag\\\\\\":\\\\\\"gray\\\\\\"}\\"\\n }\\n }\\n ],\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => '查询泳道组应用列表', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:27.000Z', 'description' => 'OpenAPI 下线'], + ], + 'flowControl' => [ + 'flowControlList' => [], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'sae:ListApplicationsForSwimmingLane', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + ], + 'ListChangeOrders' => [ + 'path' => '/pop/v1/sam/changeorder/ListChangeOrders', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -27537,34 +16419,84 @@ 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', - 'abilityTreeCode' => '6327', - 'abilityTreeNodes' => [ - 'FEATUREsae25O0WL', - ], + 'abilityTreeCode' => '6372', + 'abilityTreeNodes' => ['FEATUREsaeRVPNSA'], ], 'parameters' => [ [ 'name' => 'AppId', 'in' => 'query', - 'schema' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'd700e680-aa4d-4ec1-afc2-6566b5ff****', - ], + 'schema' => ['description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => '145341c-9708-4967-b3ec-24933767****'], ], [ - 'name' => 'Type', + 'name' => 'CurrentPage', 'in' => 'query', - 'schema' => [ - 'description' => '支持的组件类型。取值说明如下:'."\n" - ."\n" - .'- **TOMCAT**'."\n" - .'- **JDK**', - 'type' => 'string', - 'required' => true, - 'example' => 'TOMCAT', - ], + 'schema' => ['description' => '当前分页。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => ['description' => '分页大小。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20'], + ], + [ + 'name' => 'Key', + 'in' => 'query', + 'schema' => ['description' => '发布单描述信息模糊查询(包含这此**key**的都会返回)。', 'type' => 'string', 'required' => false, 'example' => 'test'], + ], + [ + 'name' => 'CoType', + 'in' => 'query', + 'schema' => ['description' => '变更单类型。取值说明如下:'."\n" + ."\n" + .'- **CoBindSlb**:绑定SLB。'."\n" + .'- **CoUnbindSlb**:解绑SLB。'."\n" + .'- **CoCreateApp**:创建应用。'."\n" + .'- **CoDeleteApp**:删除应用。'."\n" + .'- **CoDeploy**:部署应用。'."\n" + .'- **CoRestartApplication**:重启应用。'."\n" + .'- **CoRollback**:回滚应用。'."\n" + .'- **CoScaleIn**:应用缩容。'."\n" + .'- **CoScaleOut**:应用扩容。'."\n" + .'- **CoStartApplication**:启动应用。'."\n" + .'- **CoStopApplication**:停止应用。'."\n" + .'- **CoRescaleApplicationVertically**:修改实例规格。'."\n" + .'- **CoDeployHistroy**:回退历史版本。'."\n" + .'- **CoBindNas**:绑定NAS。'."\n" + .'- **CoUnbindNas**:解绑NAS。'."\n" + .'- **CoBatchStartApplication**:批量启动应用。'."\n" + .'- **CoBatchStopApplication**:批量停止应用。'."\n" + .'- **CoRestartInstances**:重启实例。'."\n" + .'- **CoDeleteInstances**:删除实例。'."\n" + .'- **CoScaleInAppWithInstances**:指定实例缩容。', 'type' => 'string', 'required' => false, 'example' => 'CoCreateApp'], + ], + [ + 'name' => 'CoStatus', + 'in' => 'query', + 'schema' => ['description' => '变更单状态。取值说明如下:'."\n" + ."\n" + .'- **0**:准备。'."\n" + .'- **1**:执行中。'."\n" + .'- **2**:执行成功。'."\n" + .'- **3**:执行失败。'."\n" + .'- **6**:终止。'."\n" + .'- **8**:等待手工确认分批。'."\n" + .'- **9**:等待自动确认分批。'."\n" + .'- **10**:系统异常执行失败。'."\n" + .'- **11**:等待审批。'."\n" + .'- **12**:审批通过,等待执行。', 'type' => 'string', 'required' => false, 'example' => '2'], + ], + [ + 'name' => 'OrderBy', + 'in' => 'query', + 'schema' => ['description' => '排序条件。', 'type' => 'string', 'required' => false], + ], + [ + 'name' => 'Reverse', + 'in' => 'query', + 'schema' => ['description' => '根据**OrderBy**参数传入的字段名排序。取值说明如下:'."\n" + ."\n" + .' - **true**:按升序排序。'."\n" + .' - **false**:按降序排序。', 'type' => 'boolean', 'required' => false], ], ], 'responses' => [ @@ -27573,105 +16505,133 @@ 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '附加信息。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '65E1F-43BA-4D0C-8E61-E4D1337F****'], + 'Message' => ['description' => '调用结果的附加信息。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0bb6f815638568884597879d****'], 'Data' => [ - 'description' => '支持的应用组件信息。', - 'type' => 'array', - 'items' => [ - 'description' => '支持的应用组件信息。', - 'type' => 'object', - 'properties' => [ - 'Type' => [ - 'description' => '组件类型。', - 'type' => 'string', - 'example' => 'JDK', - ], - 'ComponentKey' => [ - 'description' => '组件ID。', - 'type' => 'string', - 'example' => 'Open JDK 8', - ], - 'ComponentDescription' => [ - 'description' => '组件描述。', - 'type' => 'string', - 'example' => 'Open JDK 8', - ], - 'Expired' => [ - 'description' => '组件是否过期。取值说明如下:'."\n" - ."\n" - .'- **true**:组件已过期。 '."\n" - .'- **false**:组件未过期。', - 'type' => 'boolean', - 'example' => 'false', + 'description' => '变更单列表信息。', + 'type' => 'object', + 'properties' => [ + 'CurrentPage' => ['description' => '当前分页。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'TotalSize' => ['description' => '变更单总数。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'ChangeOrderList' => [ + 'description' => '变更单列表。', + 'type' => 'array', + 'items' => [ + 'description' => '变更单列表信息。', + 'type' => 'object', + 'properties' => [ + 'Status' => ['description' => '变更单状态。取值说明如下:'."\n" + ."\n" + .'- **0**:准备。'."\n" + .'- **1**:执行中。'."\n" + .'- **2**:执行成功。'."\n" + .'- **3**:执行失败。'."\n" + .'- **6**:终止。'."\n" + .'- **8**:等待手工确认分批。'."\n" + .'- **9**:等待自动确认分批。'."\n" + .'- **10**:系统异常执行失败。'."\n" + .'- **11**:等待审批。'."\n" + .'- **12**:审批通过,等待执行。', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], + 'FinishTime' => ['description' => '结束时间。', 'type' => 'string', 'example' => '2019-07-11 20:12:58'], + 'CreateTime' => ['description' => '创建时间。', 'type' => 'string', 'example' => '2019-07-11 15:54:49'], + 'UserId' => ['description' => '用户ID。', 'type' => 'string', 'example' => 'sae-beta-test'], + 'Source' => ['description' => '变更单操作入口来源。', 'type' => 'string', 'example' => 'console'], + 'BatchCount' => ['description' => '分批数。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'CreateUserId' => ['description' => '创建用户ID。', 'type' => 'string', 'example' => 'sae-beta-test'], + 'CoTypeCode' => ['description' => '变更类型Code。取值说明如下:'."\n" + .' '."\n" + .'- **CoBindSlb**:绑定SLB。'."\n" + .'- **CoUnbindSlb**:解绑SLB。'."\n" + .'- **CoCreateApp**:创建应用。'."\n" + .'- **CoDeleteApp**:删除应用。'."\n" + .'- **CoDeploy**:部署应用。'."\n" + .'- **CoRestartApplication**:重启应用。'."\n" + .'- **CoRollback**:回滚应用。'."\n" + .'- **CoScaleIn**:应用缩容。'."\n" + .'- **CoScaleOut**:应用扩容。'."\n" + .'- **CoStartApplication**:启动应用。'."\n" + .'- **CoStopApplication**:停止应用。'."\n" + .'- **CoRescaleApplicationVertically**:修改实例规格。'."\n" + .'- **CoDeployHistroy**:回退历史版本。'."\n" + .'- **CoBindNas**:绑定NAS。'."\n" + .'- **CoUnbindNas**:解绑NAS。'."\n" + .'- **CoBatchStartApplication**:批量启动应用。'."\n" + .'- **CoBatchStopApplication**:批量停止应用。'."\n" + .'- **CoRestartInstances**:重启实例。'."\n" + .'- **CoDeleteInstances**:删除实例。'."\n" + .'- **CoScaleInAppWithInstances**:指定实例缩容。', 'type' => 'string', 'example' => 'CoCreateApp'], + 'ChangeOrderId' => ['description' => '变更单ID。', 'type' => 'string', 'example' => '7fa5c0-9ebb-4bb4-b383-1f885447****'], + 'BatchType' => ['description' => '分批类型。取值说明如下:'."\n" + .' - **auto**:自动。'."\n" + .' - **manual**:手动。', 'type' => 'string', 'example' => 'auto'], + 'GroupId' => ['description' => '分组ID。', 'type' => 'string', 'example' => 'c9ecd2-cf6c-46c3-9f20-525de202****'], + 'Description' => ['description' => '描述信息。', 'type' => 'string', 'example' => 'Version: 1.0 | image name: nginx'], + 'CoType' => ['description' => '变更类型,是对**CoTypeCode**的描述。', 'type' => 'string', 'example' => 'Create application'], + 'AppId' => ['description' => '应用ID。', 'type' => 'string', 'example' => '164341c-9708-4967-b3ec-24933767****'], + ], ], ], + 'PageSize' => ['description' => '分页大小。', 'type' => 'integer', 'format' => 'int32', 'example' => '20'], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '获取组件版本是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:获取成功。'."\n" - .'- **false**:获取失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '获取变更单列表是否成功。取值说明如下:'."\n" + .'- **true**:获取成功。'."\n" + .'- **false**:获取失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidComponentType.NotFound', - 'errorMessage' => 'The specified Type does not exist.', + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'Resouce.no.permission', 'errorMessage' => 'You are not authorized to operate on the specified resources.', 'description' => '没有权限操作资源。'], + ], + 404 => [ + ['errorCode' => 'InvalidAppId.NotFound', 'errorMessage' => 'The specified AppId does not exist.', 'description' => '指定的AppId不存在。'], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"65E1F-43BA-4D0C-8E61-E4D1337F****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0bb6f815638568884597879d****\\",\\n \\"Data\\": {\\n \\"CurrentPage\\": 1,\\n \\"TotalSize\\": 1,\\n \\"ChangeOrderList\\": [\\n {\\n \\"Status\\": 2,\\n \\"FinishTime\\": \\"2019-07-11 20:12:58\\",\\n \\"CreateTime\\": \\"2019-07-11 15:54:49\\",\\n \\"UserId\\": \\"sae-beta-test\\",\\n \\"Source\\": \\"console\\",\\n \\"BatchCount\\": 1,\\n \\"CreateUserId\\": \\"sae-beta-test\\",\\n \\"CoTypeCode\\": \\"CoCreateApp\\",\\n \\"ChangeOrderId\\": \\"7fa5c0-9ebb-4bb4-b383-1f885447****\\",\\n \\"BatchType\\": \\"auto\\",\\n \\"GroupId\\": \\"c9ecd2-cf6c-46c3-9f20-525de202****\\",\\n \\"Description\\": \\"Version: 1.0 | image name: nginx\\",\\n \\"CoType\\": \\"Create application\\",\\n \\"AppId\\": \\"164341c-9708-4967-b3ec-24933767****\\"\\n }\\n ],\\n \\"PageSize\\": 20\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<ListChangeOrdersResponse>\\n <RequestId>65E1F-43BA-4D0C-8E61-E4D1337F****</RequestId>\\n <Message>success</Message>\\n <TraceId>0bb6f815638568884597879d****</TraceId>\\n <Data>\\n <CurrentPage>1</CurrentPage>\\n <TotalSize>1</TotalSize>\\n <ChangeOrderList>\\n <Status>2</Status>\\n <FinishTime>2019-07-11 20:12:58</FinishTime>\\n <CreateTime>2019-07-11 15:54:49</CreateTime>\\n <UserId>sae-beta-test</UserId>\\n <Source>console</Source>\\n <BatchCount>1</BatchCount>\\n <CreateUserId>sae-beta-test</CreateUserId>\\n <CoTypeCode>CoCreateApp</CoTypeCode>\\n <ChangeOrderId>7fa5c0-9ebb-4bb4-b383-1f885447****</ChangeOrderId>\\n <BatchType>auto</BatchType>\\n <GroupId>c9ecd2-cf6c-46c3-9f20-525de202****</GroupId>\\n <Description>版本:1.0 | 镜像名称:nginx</Description>\\n <CoType>创建应用</CoType>\\n <AppId>164341c-9708-4967-b3ec-24933767****</AppId>\\n </ChangeOrderList>\\n <PageSize>20</PageSize>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</ListChangeOrdersResponse>","errorExample":""}]', + 'title' => '获取变更单列表', + 'summary' => '获取变更单列表。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [ + ['createdAt' => '2026-04-14T09:42:36.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-12-25T03:03:23.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-04-01T07:06:31.000Z', 'description' => '请求参数发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:ListChangeOrders', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": [\\n {\\n \\"Type\\": \\"JDK\\",\\n \\"ComponentKey\\": \\"Open JDK 8\\",\\n \\"ComponentDescription\\": \\"Open JDK 8\\",\\n \\"Expired\\": false\\n }\\n ],\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeComponentsResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <Type>JDK</Type>\\n <ComponentKey>Open JDK 8</ComponentKey>\\n <ComponentDescription>Open JDK 8</ComponentDescription>\\n <Expired>false</Expired>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeComponentsResponse>","errorExample":""}]', - 'title' => '获取应用创建部署时所需的组件版本', - 'summary' => '调用DescribeComponents接口获取应用创建部署时所需的组件版本。', ], - 'DescribeEdasContainers' => [ - 'path' => '/pop/v1/sam/resource/edasContainers', - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'ListConsumedServices' => [ + 'path' => '/pop/v1/sam/service/listConsumedServices', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -27681,349 +16641,119 @@ 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', - 'abilityTreeCode' => '6334', - 'abilityTreeNodes' => [ - 'FEATUREsaeD9PL61', + 'abilityTreeCode' => '6373', + 'abilityTreeNodes' => ['FEATUREsaeY046YN'], + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + 'schema' => ['description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => 'b2a8a925-477a-4ed7-b825-d5e22500****'], ], ], - 'parameters' => [], 'responses' => [ 200 => [ 'schema' => [ + 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '调用结果的附加信息。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], 'Data' => [ - 'description' => '组件列表。', + 'description' => '微服务列表信息。', 'type' => 'array', 'items' => [ + 'description' => '微服务列表信息。', 'type' => 'object', 'properties' => [ - 'Disabled' => [ - 'description' => '微服务组件是否禁用。取值说明如下:'."\n" - ."\n" - .'- **true**:表示组件被禁用。'."\n" - .'- **false**:表示组件未被禁用。', - 'type' => 'boolean', - 'example' => 'false', + 'Type' => ['description' => '发布的服务类型。', 'type' => 'string', 'example' => 'RPC'], + 'Groups' => [ + 'description' => '消费的服务对应的组别。', + 'type' => 'array', + 'items' => ['description' => '消费的服务对应的组别。', 'type' => 'string', 'example' => 'HSF'], ], - 'EdasContainerVersion' => [ - 'description' => 'HSF框架中应用运行环境版本,例如Ali-Tomcat容器。', - 'type' => 'string', - 'example' => '3.5.3', + 'Version' => ['description' => '发布的服务版本。', 'type' => 'string', 'example' => '1.0.0'], + 'AppId' => ['description' => '应用ID。', 'type' => 'string', 'example' => 'b2a8a925-477a-4ed7-b825-d5e22500****'], + 'Group2Ip' => ['description' => '保留字段。', 'type' => 'string', 'example' => '{}'], + 'Ips' => [ + 'description' => '服务订阅地址。', + 'type' => 'array', + 'items' => ['description' => '服务订阅地址。', 'type' => 'string', 'example' => '10.0.0.1'], ], + 'Name' => ['description' => '发布的服务名称。', 'type' => 'string', 'example' => 'com.alibaba.nodejs.ItemService'], ], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**目录。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '获取应用微服务容器组件列表是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:表示获取成功。'."\n" - .'- **false**:表示获取失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '获取订阅的微服务列表是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:获取成功。'."\n" + .'- **false**:获取失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": [\\n {\\n \\"Disabled\\": false,\\n \\"EdasContainerVersion\\": \\"3.5.3\\"\\n }\\n ],\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeEdasContainersResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <Disabled>false</Disabled>\\n <EdasContainerVersion>3.5.3</EdasContainerVersion>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeEdasContainersResponse>","errorExample":""}]', - 'title' => '获取应用微服务容器组件列表', - 'summary' => '调用DescribeEdasContainers接口获取应用微服务容器组件列表。', - ], - 'DescribeApplicationImage' => [ - 'path' => '/pop/v1/sam/container/describeApplicationImage', - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ - [ - 'AK' => [], - ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": [\\n {\\n \\"Type\\": \\"RPC\\",\\n \\"Groups\\": [\\n \\"HSF\\"\\n ],\\n \\"Version\\": \\"1.0.0\\",\\n \\"AppId\\": \\"b2a8a925-477a-4ed7-b825-d5e22500****\\",\\n \\"Group2Ip\\": \\"{}\\",\\n \\"Ips\\": [\\n \\"10.0.0.1\\"\\n ],\\n \\"Name\\": \\"com.alibaba.nodejs.ItemService\\"\\n }\\n ],\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<ListConsumedServicesResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <Type>RPC</Type>\\n <Groups>HSF</Groups>\\n <Version>1.0.0</Version>\\n <AppId>b2a8a925-477a-4ed7-b825-d5e22500****</AppId>\\n <Group2Ip>{}</Group2Ip>\\n <Ips>10.0.0.1</Ips>\\n <Name>com.alibaba.nodejs.ItemService</Name>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</ListConsumedServicesResponse>","errorExample":""}]', + 'title' => '获取订阅的微服务列表', + 'summary' => '调用ListConsumedServices接口获取订阅的微服务列表。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:27.000Z', 'description' => 'OpenAPI 下线'], ], - 'operationType' => 'read', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '6319', - 'abilityTreeNodes' => [ - 'FEATUREsaeD9PL61', - ], + 'flowControl' => [ + 'flowControlList' => [], ], - 'parameters' => [ - [ - 'name' => 'AppId', - 'in' => 'query', - 'schema' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'd700e680-aa4d-4ec1-afc2-6566b5ff****', - ], - ], + 'ramActions' => [ [ - 'name' => 'ImageUrl', - 'in' => 'query', - 'schema' => [ - 'description' => '镜像URL。', - 'type' => 'string', - 'required' => true, - 'example' => 'registry-vpc.cn-hangzhou.aliyuncs.com/demo/demo:latest', - ], - ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'description' => '返回数据。', - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], - 'Data' => [ - 'description' => '应用镜像信息。', - 'type' => 'object', - 'properties' => [ - 'Logo' => [ - 'description' => '保留字段,暂无特殊含义。', - 'type' => 'string', - 'example' => '保留字段', - ], - 'RepoOriginType' => [ - 'description' => '镜像仓库类型。当前仅支持容器镜像服务。', - 'type' => 'string', - 'example' => 'ALI_HUB', - ], - 'CrUrl' => [ - 'description' => '保留字段,暂无特殊含义。', - 'type' => 'string', - 'example' => '保留字段', - ], - 'RepoTag' => [ - 'description' => '镜像标签。', - 'type' => 'string', - 'example' => 'latest', - ], - 'RepoType' => [ - 'description' => '保留字段。', - 'type' => 'string', - 'example' => '保留字段', - ], - 'RepoName' => [ - 'description' => '镜像仓库名称。', - 'type' => 'string', - 'example' => 'demo', - ], - 'RepoNamespace' => [ - 'description' => '镜像命名空间。', - 'type' => 'string', - 'example' => 'demo', - ], - 'RegionId' => [ - 'description' => '地域。', - 'type' => 'string', - 'example' => 'cn-beijing', - ], - ], - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '获取应用镜像信息是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:获取成功。'."\n" - .'- **false**:获取失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:ListConsumedServices', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"Logo\\": \\"保留字段\\",\\n \\"RepoOriginType\\": \\"ALI_HUB\\",\\n \\"CrUrl\\": \\"保留字段\\",\\n \\"RepoTag\\": \\"latest\\",\\n \\"RepoType\\": \\"保留字段\\",\\n \\"RepoName\\": \\"demo\\",\\n \\"RepoNamespace\\": \\"demo\\",\\n \\"RegionId\\": \\"cn-beijing\\"\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeApplicationImageResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <Logo>保留字段</Logo>\\n <RepoOriginType>ALI_HUB</RepoOriginType>\\n <CrUrl>保留字段</CrUrl>\\n <RepoTag>latest</RepoTag>\\n <RepoType>保留字段</RepoType>\\n <RepoName>demo</RepoName>\\n <RepoNamespace>demo</RepoNamespace>\\n <RegionId>cn-beijing</RegionId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeApplicationImageResponse>","errorExample":""}]', - 'title' => '描述应用镜像信息', - 'summary' => '调用DescribeApplicationImage接口描述应用镜像信息。', ], - 'DescribeApplicationInstances' => [ - 'path' => '/pop/v1/sam/app/describeApplicationInstances', - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'ListGreyTagRoute' => [ + 'summary' => '根据应用ID查询灰度规则详情。', + 'path' => '/pop/v1/sam/tagroute/greyTagRouteList', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', - 'abilityTreeCode' => '8972', - 'abilityTreeNodes' => [ - 'FEATUREsaeRVPNSA', - ], + 'abilityTreeCode' => '10488', + 'abilityTreeNodes' => ['FEATUREsaeCJEQQD'], ], 'parameters' => [ [ 'name' => 'AppId', 'in' => 'query', - 'schema' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'd700e680-aa4d-4ec1-afc2-6566b5ff****', - ], - ], - [ - 'name' => 'GroupId', - 'in' => 'query', - 'schema' => [ - 'description' => '应用分组ID。需要调用[DescribeApplicationGroups](~~126249~~)接口获取。', - 'type' => 'string', - 'required' => true, - 'example' => 'b2a8a925-477a-4ed7-b825-d5e22500****', - ], - ], - [ - 'name' => 'CurrentPage', - 'in' => 'query', - 'schema' => [ - 'description' => '当前页码。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], - ], - [ - 'name' => 'PageSize', - 'in' => 'query', - 'schema' => [ - 'description' => '分页查询时设置的每页行数。默认为**10**,取值范围\\(0,1000000000)。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', - ], - ], - [ - 'name' => 'Reverse', - 'in' => 'query', - 'schema' => [ - 'description' => '根据应用实例运行状态对其进行排序。如果状态相同,则按照实例ID排序。取值说明如下:'."\n" - ."\n" - .'- **true**:按倒序排序。'."\n" - .'- **false**:按正序排序。'."\n" - ."\n" - .'实例正序排列如下:'."\n" - ."\n" - .'1. **Error**:实例启动过程中出错。'."\n" - .'2. **CrashLoopBackOff**:容器无法启动,在启动过程中出错,重启后又出错。'."\n" - .'3. **ErrImagePull**:拉取实例中的容器镜像出错。'."\n" - .'4. **ImagePullBackOff**:无法获取容器镜像。'."\n" - .'5. **Pending**:实例等待调度中。'."\n" - .'6. **Unknown**:未知异常。'."\n" - .'7. **Terminating**:终止实例接入中。'."\n" - .'8. **NotFound**:无法找到实例。'."\n" - .'9. **PodInitializing**:实例初始化中。'."\n" - .'10. **Init:0/1**:实例初始化。'."\n" - .'11. **Running**:实例运行中。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], - ], - [ - 'name' => 'InstanceId', - 'in' => 'query', - 'schema' => [ - 'description' => '应用实例ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'demo-faaca66c-5959-45cc-b3bf-d26093b2e9c0******', - ], - ], - [ - 'name' => 'PipelineId', - 'in' => 'query', - 'schema' => [ - 'description' => '批次ID。通过调用[DescribeChangeOrder](~~126617~~)接口获取。', - 'type' => 'string', - 'required' => false, - 'example' => '85750d48-6cfc-4dbf-8ea0-840397******', - ], + 'schema' => ['title' => '应用ID', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****'], ], ], 'responses' => [ @@ -28032,252 +16762,245 @@ 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '调用结果的附加信息。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求ID。', 'type' => 'string', 'example' => '9D29CBD0-45D3-410B-9826-52F86F90****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], 'Data' => [ - 'description' => '应用实例信息。', + 'description' => '灰度规则信息。', 'type' => 'object', 'properties' => [ - 'CurrentPage' => [ - 'description' => '当前页码。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'TotalSize' => [ - 'description' => '实例总数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'PageSize' => [ - 'description' => '分页查询时设置的每页数量。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'Instances' => [ - 'description' => '应用实例列表。', + 'CurrentPage' => ['description' => '当前页码。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'PageSize' => ['description' => '分页查询时设置的每页数量。目前只能为**1**。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'TotalSize' => ['description' => '总个数。目前只能为**1**。', 'type' => 'integer', 'format' => 'int64', 'example' => '1'], + 'Result' => [ + 'description' => '返回结果。', 'type' => 'array', 'items' => [ - 'description' => '应用实例列表。', + 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'CreateTimeStamp' => [ - 'description' => '实例开始创建的时间戳。单位:毫秒。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1558442609000', - ], - 'VSwitchId' => [ - 'description' => '实例所在可用区。', - 'type' => 'string', - 'example' => 'vsw-***', - ], - 'InstanceContainerStatus' => [ - 'description' => '实例运行状态。取值说明如下:'."\n" - ."\n" - .'- **Error**:实例启动过程中出错。'."\n" - .'- **CrashLoopBackOff**:容器无法启动,在启动过程中出错,重启后又出错。'."\n" - .'- **ErrImagePull**:拉取实例中的容器镜像出错。'."\n" - .'- **ImagePullBackOff**:无法获取容器镜像。'."\n" - .'- **Pending**:实例等待调度中。'."\n" - .'- **Unknown**:未知异常。'."\n" - .'- **Terminating**:终止实例接入中。'."\n" - .'- **NotFound**:无法找到实例。'."\n" - .'- **PodInitializing**:实例初始化中。'."\n" - .'- **Init:0/1**:实例初始化。'."\n" - .'- **Running**:实例运行中。', - 'type' => 'string', - 'example' => 'Running', - ], - 'InstanceHealthStatus' => [ - 'description' => '健康检查配置信息。取值说明如下:'."\n" - ."\n" - .'- **WithoutHealthCheckConfig**:Liveness与Readiness健康检查未配置。'."\n" - .'- **WithoutLivenessConfig**:Liveness健康检查未配置。'."\n" - .'- **WithoutReadinessConfig**:Readiness健康检查未配置。'."\n" - .'- **NotCheckedYet**:实例正在或等待进行健康检查。'."\n" - .'- **LivenessUnhealthy**:Liveness健康检查失败,实例不健康。'."\n" - .'- **ReadinessUnhealthy**:Readiness健康检查失败,实例不健康。'."\n" - .'- **Unhealthy**:Liveness与Readiness健康检查失败,实例不健康。'."\n" - .'- **Healthy**:健康检查通过,实例健康。', - 'type' => 'string', - 'example' => 'WithoutHealthCheckConfig', - ], - 'InstanceContainerRestarts' => [ - 'description' => '实例重启次数。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '0', - ], - 'GroupId' => [ - 'description' => '实例所属分组ID。', - 'type' => 'string', - 'example' => 'b2a8a925-477a-4ed7-b825-d5e22500****', - ], - 'InstanceContainerIp' => [ - 'description' => '实例内网IP。', - 'type' => 'string', - 'example' => '192.168.X.X', - ], - 'InstanceId' => [ - 'description' => '实例ID。', - 'type' => 'string', - 'example' => 'b2a8a925-477a-4ed7-b825-d5e22500****', - ], - 'ImageUrl' => [ - 'description' => '镜像仓库地址。'."\n" - .'> 如果您是通过JAR包或WAR包部署,那么由SAE平台所生成的镜像不对外开放下载。', - 'type' => 'string', - 'example' => 'registry-vpc.cn-beijing.aliyuncs.com/sae-demo-image/cartservice:1.0', - ], - 'PackageVersion' => [ - 'description' => '版本信息。', - 'type' => 'string', - 'example' => '1609939496200', - ], - 'Timestamp' => [ - 'description' => '时间戳。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1750061980000', - ], - 'Eip' => [ - 'description' => '弹性公网IP。', - 'type' => 'string', - 'example' => '8.129.XX.XXX', - ], - 'FinishTimeStamp' => [ - 'description' => '实例创建完成的时间戳。单位:毫秒。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1642757283000', - ], - 'DebugStatus' => [ - 'description' => '实例是否在调试中。取值说明如下:'."\n" - ."\n" - .'- **True**:是。'."\n" - .'- **False**:否。', - 'type' => 'boolean', - 'example' => 'False', - ], - 'SidecarContainersStatus' => [ - 'description' => 'Sidecar容器状态信息。', + 'GreyTagRouteId' => ['description' => '规则ID。', 'type' => 'integer', 'format' => 'int64', 'example' => '1'], + 'Name' => ['description' => '规则名称。', 'type' => 'string', 'example' => 'rule-name'], + 'Description' => ['description' => '规则描述。', 'type' => 'string', 'example' => 'test'], + 'ScRules' => [ + 'description' => 'Spring Cloud灰度规则。', 'type' => 'array', 'items' => [ - 'description' => 'Sidecar容器状态信息。', + 'description' => '规则详情。', 'type' => 'object', 'properties' => [ - 'ContainerId' => [ - 'description' => 'Sidecar容器ID。', - 'type' => 'string', - 'example' => 'sidecar-test-01', - ], - 'ContainerStatus' => [ - 'description' => '容器状态。', - 'type' => 'string', - 'example' => 'Running', - ], - 'ImageUrl' => [ - 'description' => '镜像地址。', - 'type' => 'string', - 'example' => 'registry.cn-beijing.aliyuncs.com/sae-dev-test/******', + 'path' => ['description' => 'Spring Cloud应用灰度规则对应的路径。', 'type' => 'string', 'example' => '/path'], + 'condition' => ['description' => '灰度规则的条件模式。取值说明如下:'."\n" + .'- **AND**:表示与,即同时满足条件列表中的所有条件。'."\n" + .'- **OR**:表示或,即满足条件列表中的任一条件。', 'type' => 'string', 'example' => 'OR'], + 'items' => [ + 'description' => '条件列表。', + 'type' => 'array', + 'items' => [ + 'description' => '条件列表数据。', + 'type' => 'object', + 'properties' => [ + 'type' => ['description' => '比较类型。取值说明如下:'."\n" + .'- **param**:表示Parameter。'."\n" + .'- **cookie**:表示Cookie。'."\n" + .'- **header**:表示Header。', 'type' => 'string', 'example' => 'cookie'], + 'name' => ['description' => '参数名。', 'type' => 'string', 'example' => 'test'], + 'operator' => ['description' => '运算符。取值说明如下:'."\n" + .'- **rawvalue**:表示直接比较。'."\n" + .'- **list**:表示白名单。'."\n" + .'- **mod**:表示对100取模。'."\n" + .'- **deterministic\\_proportional\\_steaming\\_division**:表示百分比。', 'type' => 'string', 'example' => 'rawvalue'], + 'value' => ['description' => '参数取值,根据**type**和**name**得到的值跟这个值进行比较。', 'type' => 'string', 'example' => 'test'], + 'cond' => ['description' => '比较操作符。可取值:**>**、**<**、**>=**、**<=**、**==**以及**!=**。', 'type' => 'string', 'example' => '=='], + 'index' => ['title' => 'abandon', 'description' => 'Spring Cloud应用不涉及。', 'type' => 'integer', 'format' => 'int32', 'example' => 'N/A'], + 'expr' => ['description' => 'Spring Cloud应用不涉及。', 'type' => 'string', 'example' => 'N/A'], + ], + ], ], ], ], ], - 'MainContainerStatus' => [ - 'description' => '主容器状态。', - 'type' => 'string', - 'example' => 'Running', - ], - 'UnhealthyMessage' => [ - 'description' => '当应用实例的健康检查失败时,此字段将返回具体的失败原因或错误信息。如果实例健康检查通过,则此字段不返回任何信息。', - 'type' => 'string', - 'example' => '空', - ], - 'TrafficStatus' => [ - 'type' => 'string', - ], - 'Tags' => [ + 'AlbRules' => [ + 'description' => '为配置好ALB网关路由的应用创建的灰度规则。', 'type' => 'array', 'items' => [ + 'description' => '灰度规则详情。', 'type' => 'object', 'properties' => [ - 'Key' => [ - 'type' => 'string', + 'ingressId' => ['description' => '网关路由ID。', 'type' => 'string', 'example' => '23'], + 'condition' => ['description' => '灰度规则的条件模式,当前只支持AND:表示同时满足条件列表中的所有条件。', 'type' => 'string', 'example' => 'AND'], + 'items' => [ + 'description' => '条件列表。', + 'type' => 'array', + 'items' => [ + 'description' => '条件列表详情。', + 'type' => 'object', + 'properties' => [ + 'type' => ['description' => '比较类型。取值说明如下:'."\n" + .'- **sourceIp**:表示SourceIp。'."\n" + .'- **cookie**:表示Cookie。'."\n" + .'- **header**:表示Header。', 'type' => 'string', 'example' => 'cookie'], + 'name' => ['description' => '参数名。', 'type' => 'string', 'example' => 'example'], + 'operator' => ['description' => '运算符。取值说明如下:目前只支持rawvalue:直接比较。', 'type' => 'string', 'example' => 'rawvalue'], + 'value' => ['description' => '参数取值,根据type和name得到的值跟这个值进行比较。', 'type' => 'string', 'example' => 'test'], + 'cond' => ['description' => '暂支持==。', 'type' => 'string', 'example' => '=='], + 'index' => ['title' => 'abandon', 'description' => 'ALB应用无需填写。', 'type' => 'integer', 'format' => 'int32', 'example' => 'N/A'], + 'expr' => ['description' => 'ALB应用无需填写。', 'type' => 'string', 'example' => 'N/A'], + ], + ], ], - 'Value' => [ - 'type' => 'string', + 'serviceName' => ['description' => '服务名称。', 'type' => 'string', 'example' => 's-6366-e3****-99**'], + ], + ], + ], + 'DubboRules' => [ + 'description' => 'Dubbo服务灰度规则。', + 'type' => 'array', + 'items' => [ + 'description' => '灰度规则信息。', + 'type' => 'object', + 'properties' => [ + 'serviceName' => ['description' => 'Dubbo服务名称。', 'type' => 'string', 'example' => 'com.alibaba.edas.boot.EchoService'], + 'group' => ['description' => '灰度规则对应的Dubbo服务的分组。', 'type' => 'string', 'example' => 'DUBBO'], + 'version' => ['description' => 'Dubbo服务版本。', 'type' => 'string', 'example' => '1.0.0'], + 'methodName' => ['description' => 'Dubbo服务的方法名。', 'type' => 'string', 'example' => 'echo'], + 'condition' => ['description' => '灰度规则的条件模式。取值说明如下:'."\n" + .'- **AND**:表示与,即同时满足条件列表中的所有条件。'."\n" + .'- **OR**:表示或,即满足条件列表中的任一条件。', 'type' => 'string', 'example' => 'OR'], + 'items' => [ + 'description' => '条件列表。', + 'type' => 'array', + 'items' => [ + 'description' => '条件详情。', + 'type' => 'object', + 'properties' => [ + 'index' => ['description' => '参数编号,0表示第一个参数。', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], + 'expr' => ['description' => '参数值获取表达式。语法遵循SpEL(link)表达式,取值说明如下:'."\n" + .'- **留空**:表示直接取当前参数的值。'."\n" + .'- **.name**:表示取参数的name属性,相当于args0.getName()。'."\n" + .'- **.isEnabled()**:表示取参数的enabled属性,相当于args0.isEnabled()。'."\n" + .'- **[0]**:表示当前参数应是一个数组,取数组的第一个值,相当于args0\\[0],注意开始没有英文句点(.)。'."\n" + .'- **.get(0)**:表示当前参数应是一个List,取List的第一个值,相当于args0.get(0)。'."\n" + .'- **.get("key")**:表示当前参数是一个Map,获取key对应的值,相当于args0.get("key")。', 'type' => 'string', 'example' => '.name'], + 'operator' => ['description' => '运算符。取值说明如下:'."\n" + .'- **rawvalue**:表示直接比较。'."\n" + .'- **list**:表示白名单。'."\n" + .'- **mod**:表示对100取模。'."\n" + .'- **deterministic\\_proportional\\_steaming\\_division**:表示百分比。', 'type' => 'string', 'example' => 'rawvalue'], + 'value' => ['description' => '参数取值,根据**expr**和**index**得到的值跟这个值进行比较。', 'type' => 'string', 'example' => 'test'], + 'cond' => ['description' => '比较操作符。可取值:**>**、**<**、**>=**、**<=**、**==**以及**!=**。', 'type' => 'string', 'example' => '=='], + 'type' => ['title' => 'abandon', 'description' => 'Dubbo服务不涉及。', 'type' => 'string', 'example' => 'N/A'], + 'name' => ['title' => 'abandon', 'description' => 'Dubbo服务不涉及。', 'type' => 'string', 'example' => 'N/A'], + ], + ], ], ], ], ], + 'CreateTime' => ['description' => '规则被创建的时间戳。单位:毫秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1619007592013'], + 'UpdateTime' => ['description' => '规则被更新的时间戳。单位:毫秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1609434061000'], ], ], ], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**目录。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '获取应用实例列表是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:获取成功。'."\n" - .'- **false**:获取失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '查询变更单信息是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:表示查询成功。'."\n" + .'- **false**:表示查询失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"CurrentPage\\": 1,\\n \\"TotalSize\\": 10,\\n \\"PageSize\\": 10,\\n \\"Instances\\": [\\n {\\n \\"CreateTimeStamp\\": 1558442609000,\\n \\"VSwitchId\\": \\"vsw-***\\",\\n \\"InstanceContainerStatus\\": \\"Running\\",\\n \\"InstanceHealthStatus\\": \\"WithoutHealthCheckConfig\\",\\n \\"InstanceContainerRestarts\\": 0,\\n \\"GroupId\\": \\"b2a8a925-477a-4ed7-b825-d5e22500****\\",\\n \\"InstanceContainerIp\\": \\"192.168.X.X\\",\\n \\"InstanceId\\": \\"b2a8a925-477a-4ed7-b825-d5e22500****\\",\\n \\"ImageUrl\\": \\"registry-vpc.cn-beijing.aliyuncs.com/sae-demo-image/cartservice:1.0\\",\\n \\"PackageVersion\\": \\"1609939496200\\",\\n \\"Timestamp\\": 1750061980000,\\n \\"Eip\\": \\"8.129.XX.XXX\\",\\n \\"FinishTimeStamp\\": 1642757283000,\\n \\"DebugStatus\\": true,\\n \\"SidecarContainersStatus\\": [\\n {\\n \\"ContainerId\\": \\"sidecar-test-01\\",\\n \\"ContainerStatus\\": \\"Running\\",\\n \\"ImageUrl\\": \\"registry.cn-beijing.aliyuncs.com/sae-dev-test/******\\"\\n }\\n ],\\n \\"MainContainerStatus\\": \\"Running\\",\\n \\"UnhealthyMessage\\": \\"空\\",\\n \\"TrafficStatus\\": \\"\\",\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"\\",\\n \\"Value\\": \\"\\"\\n }\\n ]\\n }\\n ]\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeApplicationInstancesResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <CurrentPage>1</CurrentPage>\\n <TotalSize>10</TotalSize>\\n <PageSize>10</PageSize>\\n <Instances>\\n <CreateTimeStamp>1558442609000</CreateTimeStamp>\\n <VSwitchId>vsw-***</VSwitchId>\\n <InstanceContainerStatus>Running</InstanceContainerStatus>\\n <InstanceHealthStatus>WithoutHealthCheckConfig</InstanceHealthStatus>\\n <InstanceContainerRestarts>0</InstanceContainerRestarts>\\n <GroupId>b2a8a925-477a-4ed7-b825-d5e22500****</GroupId>\\n <InstanceContainerIp>192.168.X.X</InstanceContainerIp>\\n <InstanceId>b2a8a925-477a-4ed7-b825-d5e22500****</InstanceId>\\n <ImageUrl>registry-vpc.cn-beijing.aliyuncs.com/sae-demo-image/cartservice:1.0</ImageUrl>\\n <PackageVersion>1609939496200</PackageVersion>\\n <Eip>8.129.XX.XXX</Eip>\\n <FinishTimeStamp>1642757283000</FinishTimeStamp>\\n <DebugStatus>false</DebugStatus>\\n </Instances>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeApplicationInstancesResponse>","errorExample":""}]', - 'title' => '获取应用实例列表', - 'summary' => '获取应用实例列表。', - 'requestParamsDescription' => ' ', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', - ], - 'DescribeApplicationGroups' => [ - 'path' => '/pop/v1/sam/app/describeApplicationGroups', - 'methods' => [ - 'get', + 'errorCodes' => [ + 400 => [ + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"9D29CBD0-45D3-410B-9826-52F86F90****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"CurrentPage\\": 1,\\n \\"PageSize\\": 1,\\n \\"TotalSize\\": 1,\\n \\"Result\\": [\\n {\\n \\"GreyTagRouteId\\": 1,\\n \\"Name\\": \\"rule-name\\",\\n \\"Description\\": \\"test\\",\\n \\"ScRules\\": [\\n {\\n \\"path\\": \\"/path\\",\\n \\"condition\\": \\"OR\\",\\n \\"items\\": [\\n {\\n \\"type\\": \\"cookie\\",\\n \\"name\\": \\"test\\",\\n \\"operator\\": \\"rawvalue\\",\\n \\"value\\": \\"test\\",\\n \\"cond\\": \\"==\\",\\n \\"index\\": 0,\\n \\"expr\\": \\"N/A\\"\\n }\\n ]\\n }\\n ],\\n \\"AlbRules\\": [\\n {\\n \\"ingressId\\": \\"23\\",\\n \\"condition\\": \\"AND\\",\\n \\"items\\": [\\n {\\n \\"type\\": \\"cookie\\",\\n \\"name\\": \\"example\\",\\n \\"operator\\": \\"rawvalue\\",\\n \\"value\\": \\"test\\",\\n \\"cond\\": \\"==\\",\\n \\"index\\": 0,\\n \\"expr\\": \\"N/A\\"\\n }\\n ],\\n \\"serviceName\\": \\"s-6366-e3****-99**\\"\\n }\\n ],\\n \\"DubboRules\\": [\\n {\\n \\"serviceName\\": \\"com.alibaba.edas.boot.EchoService\\",\\n \\"group\\": \\"DUBBO\\",\\n \\"version\\": \\"1.0.0\\",\\n \\"methodName\\": \\"echo\\",\\n \\"condition\\": \\"OR\\",\\n \\"items\\": [\\n {\\n \\"index\\": 0,\\n \\"expr\\": \\".name\\",\\n \\"operator\\": \\"rawvalue\\",\\n \\"value\\": \\"test\\",\\n \\"cond\\": \\"==\\",\\n \\"type\\": \\"N/A\\",\\n \\"name\\": \\"N/A\\"\\n }\\n ]\\n }\\n ],\\n \\"CreateTime\\": 1619007592013,\\n \\"UpdateTime\\": 1609434061000\\n }\\n ]\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<ListGreyTagRouteResponse>\\n <RequestId>9D29CBD0-45D3-410B-9826-52F86F90****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <CurrentPage>1</CurrentPage>\\n <PageSize>1</PageSize>\\n <TotalSize>1</TotalSize>\\n <Result>\\n <GreyTagRouteId>1</GreyTagRouteId>\\n <Name>rule-name</Name>\\n <Description>test</Description>\\n <ScRules>\\n <path>/path</path>\\n <condition>OR</condition>\\n <items>\\n <type>cookie</type>\\n <name>test</name>\\n <operator>rawvalue</operator>\\n <value>test</value>\\n <cond>==</cond>\\n <expr>N/A</expr>\\n </items>\\n </ScRules>\\n <AlbRules>\\n <ingressId>23</ingressId>\\n <condition>AND</condition>\\n <items>\\n <type>cookie</type>\\n <name>example</name>\\n <operator>rawvalue</operator>\\n <value>test</value>\\n <cond>==</cond>\\n <expr>N/A</expr>\\n </items>\\n <serviceName>s-6366-e3****-99**</serviceName>\\n </AlbRules>\\n <DubboRules>\\n <serviceName>com.alibaba.edas.boot.EchoService</serviceName>\\n <group>DUBBO</group>\\n <version>1.0.0</version>\\n <methodName>echo</methodName>\\n <condition>OR</condition>\\n <items>\\n <index>0</index>\\n <expr>.name</expr>\\n <operator>rawvalue</operator>\\n <value>test</value>\\n <cond>==</cond>\\n <type>N/A</type>\\n <name>N/A</name>\\n </items>\\n </DubboRules>\\n <CreateTime>1619007592013</CreateTime>\\n <UpdateTime>1609434061000</UpdateTime>\\n </Result>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</ListGreyTagRouteResponse>","errorExample":""}]', + 'title' => 'ListGreyTagRoute', + 'description' => '> 目前一个应用只能配置一条灰度规则。', + 'requestParamsDescription' => '- **ScRule参数说明**'."\n" + ."\n" + .'|参数名称 |类型|示例 |描述 |'."\n" + .'| --- | --- | --- | --- |'."\n" + .'|condition|String|OR |灰度规则的条件模式。取值说明如下:<br />- **AND**:表示与,即同时满足条件列表中的所有条件。<br />- **OR**:表示或,即满足条件列表中的任一条件。|'."\n" + .'|path|String | /path| Spring Cloud应用灰度规则对应的path。|'."\n" + .'|items |Array of items | |条件列表。|'."\n" + ."\n" + .'**Item参数说明**'."\n" + ."\n" + .'|参数名称 |类型|示例 |描述 |'."\n" + .'| --- | --- | --- | --- |'."\n" + .'|name|String|test |参数名。|'."\n" + .'|cond |String | == |比较操作符。可取值:**>**、**<**、**>=**、**<=**、**==**以及**!=**。|'."\n" + .'|type | String| cookie |比较类型。取值说明如下:<br />- **param**:表示Parameter。<br />- **cookie**:表示Cookie。<br />- **header**:表示Header。 |'."\n" + .'|value|String | test| 参数取值,根据**type**和**name**得到的值跟这个值进行比较。|'."\n" + .'|operator| String| rawvalue|运算符。取值说明如下:<br />- **rawvalue**:表示直接比较。<br />- **list**:表示白名单。<br />- **mod**:表示对100取模。<br />- **deterministic_proportional_steaming_division**:表示百分比。|'."\n" + ."\n" + .'- **DubboRule参数说明**'."\n" + ."\n" + .'|参数名称 |类型|示例 |描述 |'."\n" + .'| --- | --- | --- | --- |'."\n" + .'|condition|String|OR |灰度规则的条件模式。取值说明如下:<br />- **AND**:表示与,即同时满足条件列表中的所有条件。<br />- **OR**:表示或,即满足条件列表中的任一条件。|'."\n" + .'|methodName|String | echo| Dubbo服务的方法名。|'."\n" + .'|serviceName| String| com.alibaba.edas.boot.EchoService| Dubbo服务名称。|'."\n" + .'|version |String | 1.0.0| Dubbo服务版本。|'."\n" + .'|items |Array of items | |条件列表。|'."\n" + .'|group|String|DUBBO|灰度规则对应的Dubbo服务的分组。|'."\n" + ."\n" + .'**Item参数说明**'."\n" + ."\n" + .'|参数名称 |类型|示例 |描述 |'."\n" + .'| --- | --- | --- | --- |'."\n" + .'|index|Integer|0 |参数编号,0表示第一个参数。|'."\n" + .'|expr|String|.name|参数值获取表达式。语法遵循SpEL(link)表达式,取值说明如下:<br />- **留空**:表示直接取当前参数的值。<br />- **.name**:表示取参数的name属性,相当于args0.getName()。<br />- **.isEnabled()** :表示取参数的enabled属性,相当于args0.isEnabled()。<br />- **[0]**:表示当前参数应是一个数组,取数组的第一个值,相当于args0[0],注意开始没有英文句点(.)。<br />- **.get(0) **:表示当前参数应是一个List,取List的第一个值,相当于args0.get(0)。<br />- **.get("key")**:表示当前参数是一个Map,获取key对应的值,相当于args0.get("key")。|'."\n" + .'|cond |String | == |比较操作符。可取值:**>**、**<**、**>=**、**<=**、**==**以及**!=**。|'."\n" + .'|value|String | test| 参数取值,根据**expr**和**index**得到的值跟这个值进行比较。|'."\n" + .'|operator| String| rawvalue|运算符。取值说明如下:<br />- **rawvalue**:表示直接比较。<br />- **list**:表示白名单。<br />- **mod**:表示对100取模。<br />- **deterministic_proportional_steaming_division**:表示百分比。|', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:23.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2023-01-09T07:10:28.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2022-12-29T03:14:27.000Z', 'description' => '响应参数发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListGreyTagRoute'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:ListGreyTagRoute', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + ], + 'ListIngresses' => [ + 'path' => '/pop/v1/sam/ingress/IngressList', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -28287,201 +17010,204 @@ 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', - 'abilityTreeCode' => '6318', - 'abilityTreeNodes' => [ - 'FEATUREsaeRVPNSA', - ], + 'abilityTreeCode' => '6374', + 'abilityTreeNodes' => ['FEATUREsaeRW2OE6'], ], 'parameters' => [ [ + 'name' => 'NamespaceId', + 'in' => 'query', + 'schema' => ['description' => '命名空间ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-beijing'], + ], + [ 'name' => 'AppId', 'in' => 'query', - 'schema' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'd700e680-aa4d-4ec1-afc2-6566b5ff****', - ], + 'schema' => ['description' => '应用ID。', 'type' => 'string', 'required' => false, 'example' => 'bbf3a590-6d13-46fe-8ca9-c947a20b****'], ], [ 'name' => 'CurrentPage', 'in' => 'query', - 'schema' => [ - 'description' => '页码。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], + 'schema' => ['description' => '当前页数。', 'type' => 'integer', 'format' => 'int32', 'required' => false], ], [ 'name' => 'PageSize', 'in' => 'query', - 'schema' => [ - 'description' => '页面大小。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', - ], + 'schema' => ['description' => '分页大小。', 'type' => 'integer', 'format' => 'int32', 'required' => false], ], ], 'responses' => [ 200 => [ 'schema' => [ + 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '调用结果的附加信息。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], 'Data' => [ - 'description' => '应用分组信息。', - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'Jdk' => [ - 'description' => '部署包依赖的JDK版本。当**Package Type**为**Image**时不支持。', - 'type' => 'string', - 'example' => 'Open JDK 8', - ], - 'ImageUrl' => [ - 'description' => '镜像地址。当**Package Type**为**Image**时必填。', - 'type' => 'string', - 'example' => 'registry-vpc.cn-hangzhou.aliyuncs.com/demo/nginx:latest', - ], - 'PackageUrl' => [ - 'description' => '部署包地址。当**Package Type**为**FatJar**、**War**或**PhpZip**时必填。', - 'type' => 'string', - 'example' => 'registry-vpc.cn-hangzhou.aliyuncs.com/demo/nginx:latest', - ], - 'PackageType' => [ - 'description' => '应用包类型。取值说明如下:'."\n" - ."\n" - .'- 当您选择用Java部署时,支持**FatJar**、**War**和**Image**。'."\n" - .'- 当您选择用PHP部署时,支持类型如下:'."\n" - .' - **PhpZip**'."\n" - .' - **IMAGE\\_PHP\\_5\\_4**'."\n" - .' - **IMAGE\\_PHP\\_5\\_4\\_ALPINE**'."\n" - .' - **IMAGE\\_PHP\\_5\\_5**'."\n" - .' - **IMAGE\\_PHP\\_5\\_5\\_ALPINE**'."\n" - .' - **IMAGE\\_PHP\\_5\\_6**'."\n" - .' - **IMAGE\\_PHP\\_5\\_6\\_ALPINE**'."\n" - .' - **IMAGE\\_PHP\\_7\\_0**'."\n" - .' - **IMAGE\\_PHP\\_7\\_0\\_ALPINE**'."\n" - .' - **IMAGE\\_PHP\\_7\\_1**'."\n" - .' - **IMAGE\\_PHP\\_7\\_1\\_ALPINE**'."\n" - .' - **IMAGE\\_PHP\\_7\\_2**'."\n" - .' - **IMAGE\\_PHP\\_7\\_2\\_ALPINE**'."\n" - .' - **IMAGE\\_PHP\\_7\\_3**'."\n" - .' - **IMAGE\\_PHP\\_7\\_3\\_ALPINE**', - 'type' => 'string', - 'example' => 'Image', - ], - 'PackageVersion' => [ - 'description' => '部署包的版本号。当**Package Type**为**FatJar**、**War**或**PhpZip**时必填。若为**ImageUrl**部署,则自动生成。', - 'type' => 'string', - 'example' => '1.0.0', - ], - 'PackageVersionId' => [ - 'type' => 'string', - ], - 'GroupName' => [ - 'description' => '分组名称。', - 'type' => 'string', - 'example' => '_DEFAULT_GROUP', - ], - 'GroupId' => [ - 'description' => '分组ID。', - 'type' => 'string', - 'example' => 'b2a8a925-477a-eswa-b823-d5e22500****', - ], - 'WebContainer' => [ - 'description' => '部署包依赖的Tomcat版本。当**Package Type**为**Image**时不支持。', - 'type' => 'string', - 'example' => 'Apache Tomcat 7', - ], - 'Replicas' => [ - 'description' => '所有实例数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'EdasContainerVersion' => [ - 'description' => 'HSF框架中应用运行环境版本,例如Ali-Tomcat容器。', - 'type' => 'string', - 'example' => '3.5.3', - ], - 'RunningInstances' => [ - 'description' => '运行中的实例数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'GroupType' => [ - 'description' => '分组类型。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '0', + 'description' => '返回结果。', + 'type' => 'object', + 'properties' => [ + 'CurrentPage' => ['description' => '当前页。', 'type' => 'integer', 'format' => 'int32'], + 'TotalSize' => ['description' => '查询到的总数。', 'type' => 'integer', 'format' => 'int32'], + 'PageSize' => ['description' => '每页数据条数。', 'type' => 'integer', 'format' => 'int32'], + 'IngressList' => [ + 'description' => '路由规则列表。', + 'type' => 'array', + 'items' => [ + 'description' => '路由规则信息。', + 'type' => 'object', + 'properties' => [ + 'SlbId' => ['description' => 'SLB ID。', 'type' => 'string', 'example' => 'lb-uf62****6d13tq2u5'], + 'NamespaceId' => ['description' => '命名空间ID。', 'type' => 'string', 'example' => 'cn-shanghai'], + 'Description' => ['description' => '路由规则名称。', 'type' => 'string', 'example' => 'test'], + 'ListenerPort' => ['description' => 'SLB监听端口。', 'type' => 'string', 'example' => '80'], + 'SlbType' => ['description' => 'SLB类型。取值说明如下:'."\n" + ."\n" + .'- **internet**:公网。'."\n" + .'- **intranet**:私网。', 'type' => 'string', 'example' => 'internet'], + 'CertId' => ['description' => '**CLB**证书ID。', 'type' => 'string', 'example' => '13624*****73809_16f8e549a20_1175189789_12****3210'], + 'CertIds' => ['description' => '**ALB**多证书ID。', 'type' => 'string', 'example' => '87***35-cn-hangzhou,812***3-cn-hangzhou'], + 'Name' => ['description' => '路由规则名称。', 'type' => 'string', 'example' => 'lb-uf6jt0nu4z6ior943****-80-f5****'], + 'Id' => ['description' => '路由规则ID。', 'type' => 'integer', 'format' => 'int64', 'example' => '18'], + 'LoadBalanceType' => ['description' => '负载均衡SLB的类型。取值说明如下:'."\n" + ."\n" + .'- **clb**:传统型负载均衡CLB(原SLB)。'."\n" + .'- **alb**:应用型负载均衡ALB。', 'type' => 'string', 'example' => 'clb'], + 'ListenerProtocol' => ['description' => '负载均衡SLB支持的请求转发协议。取值说明如下:'."\n" + ."\n" + .'- **HTTP**:适用于需要对数据内容进行识别的应用。'."\n" + .'- **HTTPS**:适用于需要加密传输的应用。'."\n" + ."\n" + .'在**CreateIngress**和**UpadateIngress**中,该参数非必填项,如果创建或更新网关路由规则时未填写该参数,则调用该API时不返回。', 'type' => 'string', 'example' => 'HTTP'], + 'MseGatewayId' => ['description' => 'MSE云原生网关实例ID。', 'type' => 'string', 'example' => 'gw-d5df01a1bae748f1a7c4e325d2fd****'], + 'MseGatewayPort' => ['description' => '服务对应的端口。', 'type' => 'string', 'example' => '80'], + 'MseGatewayProtocol' => ['description' => 'MSE云原生网关支持的请求转发协议。取值说明如下:'."\n" + ."\n" + .'- **HTTP**:适用于需要对数据内容进行识别的应用。'."\n" + .'- **HTTPS**:适用于需要加密传输的应用。', 'type' => 'string', 'example' => 'HTTP'], + 'RequestTimeout' => ['description' => '请求超时时间。', 'type' => 'integer', 'format' => 'int64'], + 'IdleTimeout' => ['description' => '连接空闲超时时间。', 'type' => 'integer', 'format' => 'int64'], + 'CreateTime' => ['description' => '创建时间。', 'type' => 'integer', 'format' => 'int64'], + 'DefaultRule' => [ + 'description' => '默认规则。', + 'type' => 'object', + 'properties' => [ + 'ContainerPort' => ['description' => '容器端口。', 'type' => 'integer', 'format' => 'int32'], + 'AppName' => ['description' => '应用名称。', 'type' => 'string'], + 'AppId' => ['description' => '应用ID。', 'type' => 'string'], + 'BackendProtocol' => ['description' => '后端协议。', 'type' => 'string'], + ], + ], + 'Rules' => [ + 'description' => '规则。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'AppName' => ['description' => '应用名称。', 'type' => 'string'], + 'ContainerPort' => ['description' => '容器端口。', 'type' => 'integer', 'format' => 'int32'], + 'Domain' => ['description' => '域名。', 'type' => 'string'], + 'AppId' => ['description' => '应用ID。', 'type' => 'string'], + 'Path' => ['description' => '路径。', 'type' => 'string'], + 'BackendProtocol' => ['description' => '后端协议。', 'type' => 'string'], + 'RewritePath' => ['description' => '重写路径。', 'type' => 'string'], + 'RuleActions' => [ + 'description' => '规则动作列表。', + 'type' => 'array', + 'items' => [ + 'description' => '规则动作。', + 'type' => 'object', + 'properties' => [ + 'ActionType' => ['description' => '动作类型。', 'type' => 'string'], + 'ActionConfig' => ['description' => '动作配置。', 'type' => 'string'], + ], + ], + ], + ], + 'description' => '', + ], + ], + 'CorsConfig' => [ + 'description' => '跨域配置。', + 'type' => 'object', + 'properties' => [ + 'Enable' => ['description' => '是否开启。', 'type' => 'string'], + 'ExposeHeaders' => ['description' => '允许暴露的Header。', 'type' => 'string'], + 'AllowHeaders' => ['description' => '允许的Header。', 'type' => 'string'], + 'AllowMethods' => ['description' => '允许的方法。', 'type' => 'string'], + 'AllowOrigin' => ['description' => '允许访问的来源。', 'type' => 'string'], + 'AllowCredentials' => ['description' => '允许的携带凭证。', 'type' => 'string'], + 'MaxAge' => ['description' => '过期时间。', 'type' => 'string'], + ], + ], + ], ], ], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**目录。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '获取应用实例分组是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:表示获取成功。'."\n" - .'- **false**:表示获取失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '获取Ingress列表是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:获取成功。'."\n" + .'- **false**:获取失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": [\\n {\\n \\"Jdk\\": \\"Open JDK 8\\",\\n \\"ImageUrl\\": \\"registry-vpc.cn-hangzhou.aliyuncs.com/demo/nginx:latest\\",\\n \\"PackageUrl\\": \\"registry-vpc.cn-hangzhou.aliyuncs.com/demo/nginx:latest\\",\\n \\"PackageType\\": \\"Image\\",\\n \\"PackageVersion\\": \\"1.0.0\\",\\n \\"PackageVersionId\\": \\"\\",\\n \\"GroupName\\": \\"_DEFAULT_GROUP\\",\\n \\"GroupId\\": \\"b2a8a925-477a-eswa-b823-d5e22500****\\",\\n \\"WebContainer\\": \\"Apache Tomcat 7\\",\\n \\"Replicas\\": 10,\\n \\"EdasContainerVersion\\": \\"3.5.3\\",\\n \\"RunningInstances\\": 1,\\n \\"GroupType\\": 0\\n }\\n ],\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeApplicationGroupsResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <Jdk>Open JDK 8</Jdk>\\n <ImageUrl>registry-vpc.cn-hangzhou.aliyuncs.com/demo/nginx:latest</ImageUrl>\\n <PackageUrl>registry-vpc.cn-hangzhou.aliyuncs.com/demo/nginx:latest</PackageUrl>\\n <PackageType>Image</PackageType>\\n <PackageVersion>1.0.0</PackageVersion>\\n <GroupName>_DEFAULT_GROUP</GroupName>\\n <GroupId>b2a8a925-477a-eswa-b823-d5e22500****</GroupId>\\n <WebContainer>Apache Tomcat 7</WebContainer>\\n <Replicas>10</Replicas>\\n <EdasContainerVersion>3.5.3</EdasContainerVersion>\\n <RunningInstances>1</RunningInstances>\\n <GroupType>0</GroupType>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeApplicationGroupsResponse>","errorExample":""}]', - 'title' => '获取应用实例分组', - 'summary' => '调用DescribeApplicationGroups接口获取应用实例分组。', - ], - 'ListApplications' => [ - 'path' => '/pop/v1/sam/app/listApplications', - 'methods' => [ - 'get', + 'errorCodes' => [ + 400 => [ + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"CurrentPage\\": 0,\\n \\"TotalSize\\": 0,\\n \\"PageSize\\": 0,\\n \\"IngressList\\": [\\n {\\n \\"SlbId\\": \\"lb-uf62****6d13tq2u5\\",\\n \\"NamespaceId\\": \\"cn-shanghai\\",\\n \\"Description\\": \\"test\\",\\n \\"ListenerPort\\": \\"80\\",\\n \\"SlbType\\": \\"internet\\",\\n \\"CertId\\": \\"13624*****73809_16f8e549a20_1175189789_12****3210\\",\\n \\"CertIds\\": \\"87***35-cn-hangzhou,812***3-cn-hangzhou\\",\\n \\"Name\\": \\"lb-uf6jt0nu4z6ior943****-80-f5****\\",\\n \\"Id\\": 18,\\n \\"LoadBalanceType\\": \\"clb\\",\\n \\"ListenerProtocol\\": \\"HTTP\\",\\n \\"MseGatewayId\\": \\"gw-d5df01a1bae748f1a7c4e325d2fd****\\",\\n \\"MseGatewayPort\\": \\"80\\",\\n \\"MseGatewayProtocol\\": \\"HTTP\\",\\n \\"RequestTimeout\\": 0,\\n \\"IdleTimeout\\": 0,\\n \\"CreateTime\\": 0,\\n \\"DefaultRule\\": {\\n \\"ContainerPort\\": 0,\\n \\"AppName\\": \\"\\",\\n \\"AppId\\": \\"\\",\\n \\"BackendProtocol\\": \\"\\"\\n },\\n \\"Rules\\": [\\n {\\n \\"AppName\\": \\"\\",\\n \\"ContainerPort\\": 0,\\n \\"Domain\\": \\"\\",\\n \\"AppId\\": \\"\\",\\n \\"Path\\": \\"\\",\\n \\"BackendProtocol\\": \\"\\",\\n \\"RewritePath\\": \\"\\",\\n \\"RuleActions\\": [\\n {\\n \\"ActionType\\": \\"\\",\\n \\"ActionConfig\\": \\"\\"\\n }\\n ]\\n }\\n ],\\n \\"CorsConfig\\": {\\n \\"Enable\\": \\"\\",\\n \\"ExposeHeaders\\": \\"\\",\\n \\"AllowHeaders\\": \\"\\",\\n \\"AllowMethods\\": \\"\\",\\n \\"AllowOrigin\\": \\"\\",\\n \\"AllowCredentials\\": \\"\\",\\n \\"MaxAge\\": \\"\\"\\n }\\n }\\n ]\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<ListIngressesResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <IngressList>\\n <SlbId>lb-uf62****6d13tq2u5</SlbId>\\n <NamespaceId>cn-shanghai</NamespaceId>\\n <Description>test</Description>\\n <ListenerPort>80</ListenerPort>\\n <SlbType>internet</SlbType>\\n <CertId>13624*****73809_16f8e549a20_1175189789_12****3210</CertId>\\n <CertIds>87***35-cn-hangzhou,812***3-cn-hangzhou</CertIds>\\n <Name>lb-uf6jt0nu4z6ior943****-80-f5****</Name>\\n <Id>18</Id>\\n <LoadBalanceType>clb</LoadBalanceType>\\n <ListenerProtocol>HTTP</ListenerProtocol>\\n <MseGatewayId>gw-d5df01a1bae748f1a7c4e325d2fd****</MseGatewayId>\\n <MseGatewayPort>80</MseGatewayPort>\\n <MseGatewayProtocol>HTTP</MseGatewayProtocol>\\n </IngressList>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</ListIngressesResponse>","errorExample":""}]', + 'title' => '获取ingress列表', + 'summary' => '调用ListIngresses接口获取Ingress列表。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:23.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-07-14T12:57:02.000Z', 'description' => '请求参数发生变更、响应参数发生变更'], + ['createdAt' => '2025-03-21T02:11:41.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2025-02-26T08:53:44.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2023-09-25T08:34:30.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2022-12-02T02:40:58.000Z', 'description' => '响应参数发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListIngresses'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:ListIngresses', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + ], + 'ListJobs' => [ + 'path' => '/pop/v1/sam/job/listJobs', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -28490,164 +17216,72 @@ 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '6370', - 'abilityTreeNodes' => [ - 'FEATUREsaeRVPNSA', - ], + 'operationType' => 'list', + 'abilityTreeCode' => '100750', + 'abilityTreeNodes' => ['FEATUREsaeN5OIM9'], ], 'parameters' => [ [ 'name' => 'CurrentPage', 'in' => 'query', - 'schema' => [ - 'description' => '当前页数。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], + 'schema' => ['description' => '当前页数。取值从1开始。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ 'name' => 'PageSize', 'in' => 'query', - 'schema' => [ - 'description' => '分页查询时获取的每页数量。取值范围\\[0,10000]。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '20', - ], + 'schema' => ['description' => '页面大小。取值范围为\\[0,200]。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20'], ], [ 'name' => 'AppName', 'in' => 'query', - 'schema' => [ - 'description' => '应用名称。', - 'type' => 'string', - 'required' => false, - 'example' => 'demo-app', - ], + 'schema' => ['description' => '任务模板名称。', 'type' => 'string', 'required' => false, 'example' => 'demo-app'], ], [ 'name' => 'NamespaceId', 'in' => 'query', - 'schema' => [ - 'description' => '命名空间ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-beijing:demo', - ], + 'schema' => ['description' => '命名空间ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-beijing:demo'], ], [ 'name' => 'Tags', 'in' => 'query', - 'schema' => [ - 'description' => '标签键值对。取值说明如下:'."\n" - .'- **key**:标签键,长度范围\\[1,128]。'."\n" - .'- **value**:标签值,长度范围\\[1,128]。'."\n" - ."\n" - .'区分大小写。如果指定多个标签,则会为指定资源同时创建并绑定多个标签。同一个资源上的同一个标签键只能对应一个标签值。如果您尝试添加已有标签键,则对应的标签值会更新为新值。'."\n" - ."\n" - .'不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。', - 'type' => 'string', - 'required' => false, - 'example' => '[{"key":"key","value":"value"}]', - ], + 'schema' => ['description' => '标签列表,JSON字符串。取值说明如下:'."\n" + ."\n" + .'- **key**:标签键。'."\n" + .'- **value**:标签值。', 'type' => 'string', 'required' => false, 'example' => '[{"key":"key","value":"value"}]'], ], [ 'name' => 'OrderBy', 'in' => 'query', - 'schema' => [ - 'description' => '对应用进行排序。取值说明如下:'."\n" - ."\n" - .'- **runnings**:按照当前实例数进行排序。'."\n" - .'- **instances**:按照目标实例数进行排序。', - 'type' => 'string', - 'required' => false, - 'example' => 'runnings', - ], + 'schema' => ['description' => '对任务模板进行排序。取值说明如下:'."\n" + ."\n" + .'- **running**:按照当前实例数进行排序。'."\n" + .'- **instances**:按照目标实例数进行排序。', 'type' => 'string', 'required' => false, 'example' => 'running'], ], [ 'name' => 'Reverse', 'in' => 'query', - 'schema' => [ - 'description' => '根据应用实例运行状态对其进行排序。如果状态相同,则按照实例ID排序。取值说明如下:'."\n" - .' - **true**:按升序排序。表示根据启动实例的步骤来排列,例如实例最终想要变更为运行状态,需先经过启动容器、拉取镜像、初始化实例等步骤。'."\n" - .' - **false**:按降序排序。'."\n" - ."\n" - .'实例升序排列如下:'."\n" - ."\n" - .'1. **Error**:实例启动过程中出错。'."\n" - .'2. **CrashLoopBackOff**:容器无法启动,在启动过程中出错,重启后又出错。'."\n" - .'3. **ErrImagePull**:拉取实例中的容器镜像出错。'."\n" - .'4. **ImagePullBackOff**:无法获取容器镜像。'."\n" - .'5. **Pending**:实例等待调度中。'."\n" - .'6. **Unknown**:未知异常。'."\n" - .'7. **Terminating**:实例终止接入中。'."\n" - .'8. **NotFound**:无法找到实例。'."\n" - .'9. **PodInitializing**:实例初始化中。'."\n" - .'10. **Init:0/1**:实例初始化。'."\n" - .'11. **Running**:实例运行中。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'schema' => ['description' => '根据**OrderBy**参数传入的字段名排序。取值说明如下:'."\n" + ."\n" + .' - **true**:按升序排序。'."\n" + .' - **false**:按降序排序。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], [ 'name' => 'FieldType', 'in' => 'query', - 'schema' => [ - 'description' => '设置筛选应用的维度。取值说明如下:'."\n" - ."\n" - .'- **appName**:应用名称。'."\n" - .'- **appIds**:应用ID。'."\n" - .'- **slbIps**:SLB IP地址。'."\n" - .'- **instanceIps**:实例IP地址。', - 'type' => 'string', - 'required' => false, - 'example' => 'appName', - ], + 'schema' => ['description' => '设置筛选任务模板的维度。取值说明如下:'."\n" + ."\n" + .'- **appName**:任务模板名称。'."\n" + .'- **appIds**:任务模板ID。', 'type' => 'string', 'required' => false, 'example' => 'appName'], ], [ 'name' => 'FieldValue', 'in' => 'query', - 'schema' => [ - 'description' => '输入目标应用的应用名称、应用ID、SLB IP地址或实例IP地址。', - 'type' => 'string', - 'required' => false, - 'example' => 'demo-app', - ], - ], - [ - 'name' => 'AppSource', - 'in' => 'query', - 'schema' => [ - 'description' => 'SAE应用类型。'."\n" - ."\n" - .'- **micro_service。**'."\n" - .'- **web。**'."\n" - .'- **job。**', - 'type' => 'string', - 'required' => false, - 'example' => 'micro_service', - ], + 'schema' => ['description' => '根据已设置的**FieldType**筛选维度,选择输入目标任务模板的任务模板名称或任务模板ID。', 'type' => 'string', 'required' => false, 'example' => 'demo-app'], ], [ - 'name' => 'IsStateful', - 'in' => 'query', - 'schema' => [ - 'type' => 'string', - 'required' => false, - ], - ], - [ - 'name' => 'NewSaeVersion', + 'name' => 'Workload', 'in' => 'query', - 'schema' => [ - 'type' => 'string', - 'required' => false, - ], + 'schema' => ['description' => 'Workload需指定为`job`。', 'type' => 'string', 'required' => false, 'example' => 'job'], ], ], 'responses' => [ @@ -28656,621 +17290,148 @@ 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'Message' => [ - 'description' => '调用结果的附加信息。', - 'type' => 'string', - 'example' => 'success', - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'B4D805CA-926D-41B1-8E63-7AD0C1ED****', - ], + 'Message' => ['description' => '调用结果的附加信息。', 'type' => 'string', 'example' => 'success'], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'B4D805CA-926D-41B1-8E63-7AD0C1ED****'], 'Data' => [ - 'description' => '应用列表。', + 'description' => '任务模板列表。', 'type' => 'object', 'properties' => [ - 'CurrentPage' => [ - 'description' => '当前页数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'TotalSize' => [ - 'description' => '应用总个数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '2', - ], - 'PageSize' => [ - 'description' => '页面大小。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '20', - ], + 'CurrentPage' => ['description' => '当前页数。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'TotalSize' => ['description' => '任务模板总个数。', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], + 'PageSize' => ['description' => '页面大小。', 'type' => 'integer', 'format' => 'int32', 'example' => '20'], 'Applications' => [ - 'description' => '应用列表。', + 'description' => '任务模板列表。', 'type' => 'array', 'items' => [ - 'description' => '应用列表信息。', + 'description' => '任务模板详细信息。', 'type' => 'object', 'properties' => [ - 'AppName' => [ - 'description' => '应用名称。', - 'type' => 'string', - 'example' => 'demo-app', - ], - 'NamespaceId' => [ - 'description' => '命名空间ID。', - 'type' => 'string', - 'example' => 'cn-beijing:demo', - ], - 'AppDeletingStatus' => [ - 'description' => '是否正在删除应用。取值说明如下:'."\n" - ."\n" - .'- **true**:应用正在被删除。'."\n" - .'- **false**:应用没有被删除。', - 'type' => 'boolean', - 'example' => 'false', - ], - 'AppId' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'example' => 'f7730764-d88f-4b9a-8d8e-cd8efbfe****', - ], + 'AppName' => ['description' => '任务模板名称。', 'type' => 'string', 'example' => 'demo-app'], + 'NamespaceId' => ['description' => '命名空间ID。', 'type' => 'string', 'example' => 'cn-beijing:demo'], + 'AppId' => ['description' => '任务模板ID。', 'type' => 'string', 'example' => 'f7730764-d88f-4b9a-8d8e-cd8efbfe****'], 'Tags' => [ - 'description' => '应用标签。', - 'type' => 'array', - 'items' => [ - 'description' => '应用标签信息。', - 'type' => 'object', - 'properties' => [ - 'Key' => [ - 'description' => '标签键。', - 'type' => 'string', - 'example' => 'key', - ], - 'Value' => [ - 'description' => '标签值。', - 'type' => 'string', - 'example' => 'value', - ], - ], - ], - ], - 'RunningInstances' => [ - 'description' => '运行中的实例个数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '2', - ], - 'Instances' => [ - 'description' => '应用实例个数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '2', - ], - 'RegionId' => [ - 'description' => '地域ID。', - 'type' => 'string', - 'example' => 'cn-beijing', - ], - 'AppDescription' => [ - 'description' => '应用描述信息。', - 'type' => 'string', - 'example' => 'description', - ], - 'Cpu' => [ - 'description' => '每个实例所需的CPU,单位为毫核,不能为0。目前仅支持以下固定规格:'."\n" - ."\n" - .'- **500**'."\n" - .'- **1000**'."\n" - .'- **2000**'."\n" - .'- **4000**'."\n" - .'- **8000**'."\n" - .'- **16000**'."\n" - .'- **32000**', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1000', - ], - 'Mem' => [ - 'description' => '每个实例所需的内存,单位为MB,不能为0。与CPU为一一对应关系,目前仅支持以下固定规格:'."\n" - ."\n" - .'- **1024**:对应CPU为500毫核和1000毫核。'."\n" - .'- **2048**:对应CPU为500、1000毫核和2000毫核。'."\n" - .'- **4096**:对应CPU为1000、2000毫核和4000毫核。'."\n" - .'- **8192**:对应CPU为2000、4000毫核和8000毫核。'."\n" - .'- **12288**:对应CPU为12000毫核。'."\n" - .'- **16384**:对应CPU为4000、8000毫核和16000毫核。'."\n" - .'- **24576**:对应CPU为12000毫核。'."\n" - .'- **32768**:对应CPU为16000毫核。'."\n" - .'- **65536**:对应CPU为8000、16000和32000毫核。'."\n" - .'- **131072**:对应CPU为32000毫核。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1024', - ], - 'MseEnabled' => [ - 'description' => '该应用是否已启用MSE微服务治理', - 'type' => 'boolean', - 'example' => 'true', - ], - 'MseNamespaceId' => [ - 'description' => 'MSE微服务治理命名空间'."\n" - ."\n" - .'- default:免费版'."\n" - ."\n" - .'- sae-pro:专业版'."\n" - ."\n" - .'- sae-ent:企业版', - 'type' => 'string', - 'example' => 'sae-ent', - ], - 'BaseAppId' => [ - 'description' => 'Base应用ID,仅灰度应用存在此属性', - 'type' => 'string', - 'example' => 'xxx-xxx-xx-xxx', - ], - 'ProgrammingLanguage' => [ - 'description' => '应用的编程语言', - 'type' => 'string', - 'example' => 'java', - ], - 'Children' => [ - 'description' => '该应用的灰度应用列表', + 'description' => '任务模板标签。', 'type' => 'array', 'items' => [ - 'description' => '详细信息。', + 'description' => '任务模板标签详细信息。', 'type' => 'object', 'properties' => [ - 'AppName' => [ - 'description' => '应用名称。', - 'type' => 'string', - 'example' => 'app1', - ], - 'NamespaceId' => [ - 'description' => '命名空间 ID。', - 'type' => 'string', - 'example' => 'cn-beijing:demo', - ], - 'AppDeletingStatus' => [ - 'description' => '是否正在删除该应用。', - 'type' => 'boolean', - 'example' => 'false', - ], - 'AppId' => [ - 'description' => '应用 ID。', - 'type' => 'string', - 'example' => 'xxx-xxx-xxx-xxx', - ], - 'ScaleRuleEnabled' => [ - 'description' => '是否开启弹性伸缩策略。', - 'type' => 'boolean', - 'example' => 'false', - ], - 'ScaleRuleType' => [ - 'description' => '弹性规则的类型', - 'type' => 'string', - 'example' => 'timing', - ], - 'Tags' => [ - 'description' => '应用标签。', - 'type' => 'array', - 'items' => [ - 'description' => '应用标签。', - 'type' => 'object', - 'properties' => [ - 'Key' => [ - 'description' => '标签键。', - 'type' => 'string', - 'example' => 'key', - ], - 'Value' => [ - 'description' => '标签值。', - 'type' => 'string', - 'example' => 'value', - ], - ], - ], - ], - 'RunningInstances' => [ - 'description' => '运行中的实例个数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '2', - ], - 'Instances' => [ - 'description' => '实例个数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '2', - ], - 'RegionId' => [ - 'description' => '地域 ID。', - 'type' => 'string', - 'example' => 'cn-beijing', - ], - 'AppDescription' => [ - 'description' => '应用描述信息。', - 'type' => 'string', - 'example' => '测试应用', - ], - 'Cpu' => [ - 'description' => 'CPU大小。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '2000', - ], - 'Mem' => [ - 'description' => '内存大小。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '2048', - ], - 'MseEnabled' => [ - 'description' => '该应用是否已启用MSE微服务治理。', - 'type' => 'boolean', - 'example' => 'true', - ], - 'BaseAppId' => [ - 'description' => '基础应用 ID。', - 'type' => 'string', - 'example' => ' ee99cce6-1c8e-4bfa-96c3-3e2fa9******', - ], - 'ProgrammingLanguage' => [ - 'description' => '应用所用的语言。', - 'type' => 'string', - 'example' => 'java', - ], - 'AppType' => [ - 'description' => '应用部署的方式。', - 'type' => 'string', - 'example' => 'Image', - ], - 'NamespaceName' => [ - 'description' => '命名空间名称', - 'type' => 'string', - 'example' => 'demo', - ], - 'IsStateful' => [ - 'type' => 'boolean', - ], - 'NewSaeVersion' => [ - 'description' => '应用版本:'."\n" - ."\n" - .'- lite:轻量版'."\n" - .'- std:标准版'."\n" - .'- pro:专业版', - 'type' => 'string', - 'example' => 'pro', - ], - 'ResourceType' => [ - 'type' => 'string', - ], - 'EnableIdle' => [ - 'type' => 'string', - ], + 'Key' => ['description' => '标签键。', 'type' => 'string', 'example' => 'key'], + 'Value' => ['description' => '标签值。', 'type' => 'string', 'example' => 'value'], ], ], ], - 'ImageUrl' => [ - 'description' => '镜像地址。', - 'type' => 'string', - 'example' => 'registry.cn-hangzhou.aliyuncs.com/sae-serverless-demo/sae-demo:microservice-java-provider-v1.0', - ], - 'PackageUrl' => [ - 'description' => '部署包地址。', - 'type' => 'string', - 'example' => 'https://sae-oss-cn-hangzhou.oss-cn-hangzhou.aliyuncs.com/apps/K8S_APP_ID/1421801774382676/adf2624a-66fd-4a2b-8caa-6921da******/hello-sae.jar', - ], - 'AppType' => [ - 'description' => '应用部署的方式。', - 'type' => 'string', - 'example' => 'Image', - ], - 'NamespaceName' => [ - 'description' => '命名空间名称。', - 'type' => 'string', - 'example' => 'demo', - ], - 'IsStateful' => [ - 'type' => 'boolean', - ], - 'NewSaeVersion' => [ - 'description' => '应用版本:'."\n" - ."\n" - .'- lite:轻量版'."\n" - .'- std:标准版'."\n" - .'- pro:专业版', - 'type' => 'string', - 'example' => 'pro', - ], - 'EnableIdle' => [ - 'description' => '是否开启闲置。', - 'type' => 'string', - 'example' => 'false', - ], - 'DiskSize' => [ - 'description' => '磁盘存储大小(单位GB)。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '20', - ], - 'VpcId' => [ - 'type' => 'string', - ], - 'ResourceType' => [ - 'type' => 'string', - ], + 'RegionId' => ['description' => '地域ID。', 'type' => 'string', 'example' => 'cn-beijing'], + 'AppDescription' => ['description' => '任务模板描述信息。', 'type' => 'string', 'example' => 'description'], + 'TriggerConfig' => ['description' => '任务触发配置,根据任务类型进行配置。'."\n" + .'- **定时任务**:**type**字段设为time,**config**字段为具体Cron表达式,**timezone**字段为指定时区。'."\n" + .'配置示例:`{"type":"time","config":"0 1 */1 * ?","timezone":"GMT+8:00"}`'."\n" + .'- **一次性任务**:**type**字段设为http,**config**配置具体的HTTP触发规则。更多信息,请参见[请求参数SourceHttpEventParameters](https://help.aliyun.com/document_detail/347586.html#section-lp1-vq0-ho3)。'."\n" + .'配置示例:`{"type":"http","config":{"type":"HTTPS","method"、["GET"],"ip":[],"referer":[],"securityConfig":"none"}}`', 'type' => 'string', 'example' => '{"type":"time","config":"0 1 */1 * ?","timezone":"GMT+8:00"}'], + 'Suspend' => ['description' => '是否暂停任务模板。', 'type' => 'boolean', 'example' => 'false'], + 'Active' => ['description' => '正在运行的实例数。', 'type' => 'integer', 'format' => 'int64', 'example' => '0'], + 'Succeeded' => ['description' => '运行成功的实例数。', 'type' => 'integer', 'format' => 'int64', 'example' => '3'], + 'Failed' => ['description' => '运行失败的实例数。', 'type' => 'integer', 'format' => 'int64', 'example' => '0'], + 'LastStartTime' => ['description' => '上一次任务启动时间。', 'type' => 'integer', 'format' => 'int64', 'example' => '1657522800'], + 'CompletionTime' => ['description' => '上一次任务完成时间。', 'type' => 'integer', 'format' => 'int64', 'example' => '1657522839'], + 'LastChangeorderState' => ['description' => '上一次发布单执行是否成功,取值说明如下:'."\n" + .'- **0**:发布单执行失败。'."\n" + .'- **1**:发布单执行成功。', 'type' => 'string', 'example' => '1'], + 'LastJobState' => ['description' => '上一次任务的运行状态。取值说明如下:'."\n" + ."\n" + .'- **0**:未执行。'."\n" + .'- **1**:执行成功。'."\n" + .'- **2**:执行失败。'."\n" + .'- **3**:正在执行。', 'type' => 'string', 'example' => '0'], + 'Cpu' => ['description' => '每个实例所需的CPU,单位为毫核,不能为0。目前仅支持以下固定规格:'."\n" + ."\n" + .'- **500**'."\n" + .'- **1000**'."\n" + .'- **2000**'."\n" + .'- **4000**'."\n" + .'- **8000**'."\n" + .'- **16000**'."\n" + .'- **32000**', 'type' => 'integer', 'format' => 'int32', 'example' => '500'], + 'Mem' => ['description' => '每个实例所需的内存,单位为MB,不能为0。与CPU为一一对应关系,目前仅支持以下固定规格:'."\n" + ."\n" + .'- **1024**:对应CPU为500毫核和1000毫核。'."\n" + .'- **2048**:对应CPU为500、1000毫核和2000毫核。'."\n" + .'- **4096**:对应CPU为1000、2000毫核和4000毫核。'."\n" + .'- **8192**:对应CPU为2000、4000毫核和8000毫核。'."\n" + .'- **12288**:对应CPU为12000毫核。'."\n" + .'- **16384**:对应CPU为4000、8000毫核和16000毫核。'."\n" + .'- **24576**:对应CPU为12000毫核。'."\n" + .'- **32768**:对应CPU为16000毫核。'."\n" + .'- **65536**:对应CPU为8000、16000和32000毫核。'."\n" + .'- **131072**:对应CPU为32000毫核。', 'type' => 'integer', 'format' => 'int32', 'example' => '1024'], + 'Message' => ['description' => '调用结果的附加信息。', 'type' => 'string', 'example' => 'success'], + 'ImageUrl' => ['description' => '镜像地址。', 'type' => 'string'], ], ], ], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**目录。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '获取应用列表。取值说明如下:'."\n" - ."\n" - .'- **true**:获取成功。'."\n" - .'- **false**:获取失败。', - 'type' => 'boolean', - 'example' => 'true', - ], - 'CurrentPage' => [ - 'description' => '当前页数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'TotalSize' => [ - 'description' => '应用总个数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '2', - ], - 'PageSize' => [ - 'description' => '页面大小。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '20', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**目录。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '获取任务模板列表是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:获取成功。'."\n" + .'- **false**:获取失败。', 'type' => 'boolean', 'example' => 'true'], + 'CurrentPage' => ['description' => '当前页数。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'TotalSize' => ['description' => '任务模板总个数。', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], + 'PageSize' => ['description' => '页面大小。', 'type' => 'integer', 'format' => 'int32', 'example' => '20'], ], ], ], ], 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'Illegal.argument', - 'errorMessage' => 'Illegal argument', - ], + 404 => [ + ['errorCode' => 'InvalidAppId.NotFound', 'errorMessage' => 'The specified AppId does not exist.', 'description' => '指定的AppId不存在。'], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"B4D805CA-926D-41B1-8E63-7AD0C1ED****\\",\\n \\"Data\\": {\\n \\"CurrentPage\\": 1,\\n \\"TotalSize\\": 2,\\n \\"PageSize\\": 20,\\n \\"Applications\\": [\\n {\\n \\"AppName\\": \\"demo-app\\",\\n \\"NamespaceId\\": \\"cn-beijing:demo\\",\\n \\"AppDeletingStatus\\": false,\\n \\"AppId\\": \\"f7730764-d88f-4b9a-8d8e-cd8efbfe****\\",\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"key\\",\\n \\"Value\\": \\"value\\"\\n }\\n ],\\n \\"RunningInstances\\": 2,\\n \\"Instances\\": 2,\\n \\"RegionId\\": \\"cn-beijing\\",\\n \\"AppDescription\\": \\"description\\",\\n \\"Cpu\\": 1000,\\n \\"Mem\\": 1024,\\n \\"MseEnabled\\": true,\\n \\"MseNamespaceId\\": \\"sae-ent\\",\\n \\"BaseAppId\\": \\"xxx-xxx-xx-xxx\\",\\n \\"ProgrammingLanguage\\": \\"java\\",\\n \\"Children\\": [\\n {\\n \\"AppName\\": \\"app1\\",\\n \\"NamespaceId\\": \\"cn-beijing:demo\\",\\n \\"AppDeletingStatus\\": false,\\n \\"AppId\\": \\"xxx-xxx-xxx-xxx\\",\\n \\"ScaleRuleEnabled\\": false,\\n \\"ScaleRuleType\\": \\"timing\\",\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"key\\",\\n \\"Value\\": \\"value\\"\\n }\\n ],\\n \\"RunningInstances\\": 2,\\n \\"Instances\\": 2,\\n \\"RegionId\\": \\"cn-beijing\\",\\n \\"AppDescription\\": \\"测试应用\\",\\n \\"Cpu\\": 2000,\\n \\"Mem\\": 2048,\\n \\"MseEnabled\\": true,\\n \\"BaseAppId\\": \\" ee99cce6-1c8e-4bfa-96c3-3e2fa9******\\",\\n \\"ProgrammingLanguage\\": \\"java\\",\\n \\"AppType\\": \\"Image\\",\\n \\"NamespaceName\\": \\"demo\\",\\n \\"IsStateful\\": true,\\n \\"NewSaeVersion\\": \\"pro\\",\\n \\"ResourceType\\": \\"\\",\\n \\"EnableIdle\\": \\"\\"\\n }\\n ],\\n \\"ImageUrl\\": \\"registry.cn-hangzhou.aliyuncs.com/sae-serverless-demo/sae-demo:microservice-java-provider-v1.0\\",\\n \\"PackageUrl\\": \\"https://sae-oss-cn-hangzhou.oss-cn-hangzhou.aliyuncs.com/apps/K8S_APP_ID/1421801774382676/adf2624a-66fd-4a2b-8caa-6921da******/hello-sae.jar\\",\\n \\"AppType\\": \\"Image\\",\\n \\"NamespaceName\\": \\"demo\\",\\n \\"IsStateful\\": true,\\n \\"NewSaeVersion\\": \\"pro\\",\\n \\"EnableIdle\\": \\"false\\",\\n \\"DiskSize\\": 20,\\n \\"VpcId\\": \\"\\",\\n \\"ResourceType\\": \\"\\"\\n }\\n ]\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true,\\n \\"CurrentPage\\": 1,\\n \\"TotalSize\\": 2,\\n \\"PageSize\\": 20\\n}","errorExample":""},{"type":"xml","example":"<ListApplicationsResponse>\\n <Message>success</Message>\\n <RequestId>B4D805CA-926D-41B1-8E63-7AD0C1ED****</RequestId>\\n <Data>\\n <CurrentPage>1</CurrentPage>\\n <TotalSize>2</TotalSize>\\n <PageSize>20</PageSize>\\n <Applications>\\n <AppName>demo-app</AppName>\\n <NamespaceId>cn-beijing:demo</NamespaceId>\\n <AppDeletingStatus>false</AppDeletingStatus>\\n <AppId>f7730764-d88f-4b9a-8d8e-cd8efbfe****</AppId>\\n <Tags>\\n <Key>key</Key>\\n <Value>value</Value>\\n </Tags>\\n <RunningInstances>2</RunningInstances>\\n <Instances>2</Instances>\\n <RegionId>cn-beijing</RegionId>\\n <AppDescription>description</AppDescription>\\n <Cpu>1000</Cpu>\\n <Mem>1024</Mem>\\n </Applications>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n <CurrentPage>1</CurrentPage>\\n <TotalSize>2</TotalSize>\\n <PageSize>20</PageSize>\\n</ListApplicationsResponse>","errorExample":""}]', - 'title' => '获取应用列表', - 'summary' => '获取应用列表。', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"B4D805CA-926D-41B1-8E63-7AD0C1ED****\\",\\n \\"Data\\": {\\n \\"CurrentPage\\": 1,\\n \\"TotalSize\\": 2,\\n \\"PageSize\\": 20,\\n \\"Applications\\": [\\n {\\n \\"AppName\\": \\"demo-app\\",\\n \\"NamespaceId\\": \\"cn-beijing:demo\\",\\n \\"AppId\\": \\"f7730764-d88f-4b9a-8d8e-cd8efbfe****\\",\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"key\\",\\n \\"Value\\": \\"value\\"\\n }\\n ],\\n \\"RegionId\\": \\"cn-beijing\\",\\n \\"AppDescription\\": \\"description\\",\\n \\"TriggerConfig\\": \\"{\\\\\\"type\\\\\\":\\\\\\"time\\\\\\",\\\\\\"config\\\\\\":\\\\\\"0 1 */1 * ?\\\\\\",\\\\\\"timezone\\\\\\":\\\\\\"GMT+8:00\\\\\\"}\\",\\n \\"Suspend\\": false,\\n \\"Active\\": 0,\\n \\"Succeeded\\": 3,\\n \\"Failed\\": 0,\\n \\"LastStartTime\\": 1657522800,\\n \\"CompletionTime\\": 1657522839,\\n \\"LastChangeorderState\\": \\"1\\",\\n \\"LastJobState\\": \\"0\\",\\n \\"Cpu\\": 500,\\n \\"Mem\\": 1024,\\n \\"Message\\": \\"success\\",\\n \\"ImageUrl\\": \\"\\"\\n }\\n ]\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true,\\n \\"CurrentPage\\": 1,\\n \\"TotalSize\\": 2,\\n \\"PageSize\\": 20\\n}","errorExample":""},{"type":"xml","example":"<ListJobsResponse>\\n <Message>success</Message>\\n <RequestId>B4D805CA-926D-41B1-8E63-7AD0C1ED****</RequestId>\\n <Data>\\n <CurrentPage>1</CurrentPage>\\n <TotalSize>2</TotalSize>\\n <PageSize>20</PageSize>\\n <Applications>\\n <AppName>demo-app</AppName>\\n <NamespaceId>cn-beijing:demo</NamespaceId>\\n <AppId>f7730764-d88f-4b9a-8d8e-cd8efbfe****</AppId>\\n <Tags>\\n <Key>key</Key>\\n <Value>value</Value>\\n </Tags>\\n <RegionId>cn-beijing</RegionId>\\n <AppDescription>description</AppDescription>\\n <TriggerConfig>{\\"type\\":\\"time\\",\\"config\\":\\"0 1 */1 * ?\\",\\"timezone\\":\\"GMT+8:00\\"}</TriggerConfig>\\n <Suspend>false</Suspend>\\n <Active>0</Active>\\n <Succeeded>3</Succeeded>\\n <Failed>0</Failed>\\n <LastStartTime>1657522800</LastStartTime>\\n <CompletionTime>1657522839</CompletionTime>\\n <LastChangeorderState>1</LastChangeorderState>\\n <LastJobState>0</LastJobState>\\n <Cpu>500</Cpu>\\n <Mem>1024</Mem>\\n <Message>success</Message>\\n </Applications>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n <CurrentPage>1</CurrentPage>\\n <TotalSize>2</TotalSize>\\n <PageSize>20</PageSize>\\n</ListJobsResponse>","errorExample":""}]', + 'title' => 'ListJobs', + 'summary' => '调用ListJobs接口获取任务模板列表。', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', - ], - 'QueryResourceStatics' => [ - 'path' => '/pop/v1/paas/quota/queryResourceStatics', - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ - [ - 'AK' => [], - ], - ], - 'operationType' => 'read', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '6384', - 'abilityTreeNodes' => [ - 'FEATUREsae8U8CHA', - ], - ], - 'parameters' => [ - [ - 'name' => 'AppId', - 'in' => 'query', - 'schema' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****', - ], - ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'description' => '返回数据。', - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '7CCF7092-72CA-4431-90D6-C7D98752****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => 'ac1a08a015623098794277264e****', - ], - 'Data' => [ - 'description' => '资源使用信息。', - 'type' => 'object', - 'properties' => [ - 'Summary' => [ - 'description' => '当月资源使用信息。', - 'type' => 'object', - 'properties' => [ - 'Cu' => [ - 'description' => '已经使用的CU用量。', - 'type' => 'number', - 'format' => 'float', - 'example' => '2312145'."\n", - ], - 'Cpu' => [ - 'description' => 'CPU使用量,单位:Core*min。', - 'type' => 'number', - 'format' => 'float', - 'example' => '3354', - ], - 'Memory' => [ - 'description' => '内存使用量,单位:GiB*min。', - 'type' => 'number', - 'format' => 'float', - 'example' => '6708', - ], - 'ActiveCpu' => [ - 'description' => '活跃 vCPU使用量 单位 Core·min', - 'type' => 'number', - 'format' => 'float', - 'example' => '10', - ], - 'IdleCpu' => [ - 'description' => '闲置 vCPU使用量 单位 Core·min', - 'type' => 'number', - 'format' => 'float', - 'example' => '10', - ], - 'EphemeralStorage' => [ - 'description' => '临时磁盘使用量,单位GiB·min。', - 'type' => 'number', - 'format' => 'float', - 'example' => '20', - ], - 'GpuA10' => [ - 'type' => 'number', - 'format' => 'float', - ], - 'GpuPpu810e' => [ - 'type' => 'number', - 'format' => 'float', - ], - ], - ], - 'RealTimeRes' => [ - 'description' => '实时资源使用量。', - 'type' => 'object', - 'properties' => [ - 'Cpu' => [ - 'description' => 'CPU使用量,单位:Core*min。', - 'type' => 'number', - 'format' => 'float', - 'example' => '13', - ], - 'Memory' => [ - 'description' => '内存使用量,单位:GiB*min。', - 'type' => 'number', - 'format' => 'float', - 'example' => '26', - ], - 'EphemeralStorage' => [ - 'description' => '临时磁盘使用量,单位GiB·min。', - 'type' => 'number', - 'format' => 'float', - 'example' => '0', - ], - ], - ], - ], - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '获取应用资源使用量是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:获取成功。'."\n" - .'- **false**:获取失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:23.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-07-10T07:32:19.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2023-03-30T11:11:44.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2022-11-22T13:03:50.000Z', 'description' => '响应参数发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '40', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListJobs'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'sae:ListJobs', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], ], - 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'InvalidServerlessRegion.Unsupported', - 'errorMessage' => 'The current region is not supported: %s', - ], - [ - 'errorCode' => 'InvalidApplication.NotFound', - 'errorMessage' => 'The current application does not exist.', - ], - ], - 500 => [ - [ - 'errorCode' => 'Measuredata.Query.Error', - 'errorMessage' => 'An error occurred while querying measurement information.', - ], - ], - ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"7CCF7092-72CA-4431-90D6-C7D98752****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"ac1a08a015623098794277264e****\\",\\n \\"Data\\": {\\n \\"Summary\\": {\\n \\"Cu\\": 2312145,\\n \\"Cpu\\": 3354,\\n \\"Memory\\": 6708,\\n \\"ActiveCpu\\": 10,\\n \\"IdleCpu\\": 10,\\n \\"EphemeralStorage\\": 20,\\n \\"GpuA10\\": 0,\\n \\"GpuPpu810e\\": 0\\n },\\n \\"RealTimeRes\\": {\\n \\"Cpu\\": 13,\\n \\"Memory\\": 26,\\n \\"EphemeralStorage\\": 0\\n }\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<QueryResourceStaticsResponse>\\n <RequestId>7CCF7092-72CA-4431-90D6-C7D98752****</RequestId>\\n <Message>success</Message>\\n <TraceId>ac1a08a015623098794277264e****</TraceId>\\n <Data>\\n <Summary>\\n <Cpu>3354</Cpu>\\n <Memory>6708</Memory>\\n </Summary>\\n <RealTimeRes>\\n <Cpu>13</Cpu>\\n <Memory>26</Memory>\\n </RealTimeRes>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</QueryResourceStaticsResponse>","errorExample":""}]', - 'title' => '获取应用的资源使用量', - 'summary' => '获取应用的资源使用量。', ], 'ListLogConfigs' => [ 'path' => '/pop/v1/sam/log/listLogConfigs', - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -29280,42 +17441,23 @@ 'systemTags' => [ 'operationType' => 'get', 'abilityTreeCode' => '6375', - 'abilityTreeNodes' => [ - 'FEATUREsaeI5LKBU', - ], + 'abilityTreeNodes' => ['FEATUREsaeI5LKBU'], ], 'parameters' => [ [ 'name' => 'AppId', 'in' => 'query', - 'schema' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '56f77b65-788d-442a-9885-7f20d91f****', - ], + 'schema' => ['description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => '56f77b65-788d-442a-9885-7f20d91f****'], ], [ 'name' => 'PageSize', 'in' => 'query', - 'schema' => [ - 'description' => '分页查询时设置的每页数量。取值范围\\[1,10000]。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => true, - 'example' => '10', - ], + 'schema' => ['description' => '分页查询时设置的每页数量。取值范围\\[1,10000]。', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '10'], ], [ 'name' => 'CurrentPage', 'in' => 'query', - 'schema' => [ - 'description' => '当前页码。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => true, - 'example' => '1', - ], + 'schema' => ['description' => '当前页码。', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '1'], ], ], 'responses' => [ @@ -29324,24 +17466,12 @@ 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => 'ac1d5e2c15671581252413581d****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => 'ac1d5e2c15671581252413581d****'], 'Data' => [ 'description' => '文件日志信息。', 'type' => 'object', @@ -29353,112 +17483,70 @@ 'description' => '日志配置。', 'type' => 'object', 'properties' => [ - 'ConfigName' => [ - 'description' => '日志服务配置名称。', - 'type' => 'string', - 'example' => 'sae-1f240907a6faf58c653f09e81b7e****', - ], - 'LogDir' => [ - 'description' => '日志文件路径(日志源)。', - 'type' => 'string', - 'example' => '/root/logs/hsf/hsf.log', - ], - 'SlsLogStore' => [ - 'description' => '日志服务日志存储名。', - 'type' => 'string', - 'example' => 'sae-1f240907a6faf58c653f09e81b7e****', - ], - 'CreateTime' => [ - 'description' => '日志配置创建时间。', - 'type' => 'string', - 'example' => '2019-08-29 17:18:00', - ], - 'StoreType' => [ - 'description' => '日志服务存储类型。', - 'type' => 'string', - 'example' => 'sls', - ], - 'SlsProject' => [ - 'description' => '日志服务项目ID。', - 'type' => 'string', - 'example' => 'sae-56f77b65-788d-442a-9885-7f20d91f****', - ], - 'LogType' => [ - 'description' => '日志类型,当前只支持**file_log**。', - 'type' => 'string', - 'example' => 'file_log', - ], - 'RegionId' => [ - 'description' => '地域ID。', - 'type' => 'string', - 'example' => 'cn-beijing', - ], + 'ConfigName' => ['description' => '日志服务配置名称。', 'type' => 'string', 'example' => 'sae-1f240907a6faf58c653f09e81b7e****'], + 'LogDir' => ['description' => '日志文件路径(日志源)。', 'type' => 'string', 'example' => '/root/logs/hsf/hsf.log'], + 'SlsLogStore' => ['description' => '日志服务日志存储名。', 'type' => 'string', 'example' => 'sae-1f240907a6faf58c653f09e81b7e****'], + 'CreateTime' => ['description' => '日志配置创建时间。', 'type' => 'string', 'example' => '2019-08-29 17:18:00'], + 'StoreType' => ['description' => '日志服务存储类型。', 'type' => 'string', 'example' => 'sls'], + 'SlsProject' => ['description' => '日志服务项目ID。', 'type' => 'string', 'example' => 'sae-56f77b65-788d-442a-9885-7f20d91f****'], + 'LogType' => ['description' => '日志类型,当前只支持**file_log**。', 'type' => 'string', 'example' => 'file_log'], + 'RegionId' => ['description' => '地域ID。', 'type' => 'string', 'example' => 'cn-beijing'], ], ], ], - 'CurrentPage' => [ - 'description' => '当前页码。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'TotalSize' => [ - 'description' => '总条数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'PageSize' => [ - 'description' => '分页查询时设置的每页数量。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], + 'CurrentPage' => ['description' => '当前页码。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'TotalSize' => ['description' => '总条数。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'PageSize' => ['description' => '分页查询时设置的每页数量。', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '获取应用日志列表是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:获取成功。'."\n" - .'- **false**:获取失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '获取应用日志列表是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:获取成功。'."\n" + .'- **false**:获取失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"ac1d5e2c15671581252413581d****\\",\\n \\"Data\\": {\\n \\"LogConfigs\\": [\\n {\\n \\"ConfigName\\": \\"sae-1f240907a6faf58c653f09e81b7e****\\",\\n \\"LogDir\\": \\"/root/logs/hsf/hsf.log\\",\\n \\"SlsLogStore\\": \\"sae-1f240907a6faf58c653f09e81b7e****\\",\\n \\"CreateTime\\": \\"2019-08-29 17:18:00\\",\\n \\"StoreType\\": \\"sls\\",\\n \\"SlsProject\\": \\"sae-56f77b65-788d-442a-9885-7f20d91f****\\",\\n \\"LogType\\": \\"file_log\\",\\n \\"RegionId\\": \\"cn-beijing\\"\\n }\\n ],\\n \\"CurrentPage\\": 1,\\n \\"TotalSize\\": 1,\\n \\"PageSize\\": 10\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<ListLogConfigsResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>ac1d5e2c15671581252413581d****</TraceId>\\n <Data>\\n <LogConfigs>\\n <ConfigName>sae-1f240907a6faf58c653f09e81b7e****</ConfigName>\\n <LogDir>/root/logs/hsf/hsf.log</LogDir>\\n <SlsLogStore>sae-1f240907a6faf58c653f09e81b7e****</SlsLogStore>\\n <CreateTime>2019-08-29 17:18:00</CreateTime>\\n <StoreType>sls</StoreType>\\n <SlsProject>sae-56f77b65-788d-442a-9885-7f20d91f****</SlsProject>\\n <LogType>file_log</LogType>\\n <RegionId>cn-beijing</RegionId>\\n </LogConfigs>\\n <CurrentPage>1</CurrentPage>\\n <TotalSize>1</TotalSize>\\n <PageSize>10</PageSize>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</ListLogConfigsResponse>","errorExample":""}]', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"ac1d5e2c15671581252413581d****\\",\\n \\"Data\\": {\\n \\"LogConfigs\\": [\\n {\\n \\"ConfigName\\": \\"sae-1f240907a6faf58c653f09e81b7e****\\",\\n \\"LogDir\\": \\"/root/logs/hsf/hsf.log\\",\\n \\"SlsLogStore\\": \\"sae-1f240907a6faf58c653f09e81b7e****\\",\\n \\"CreateTime\\": \\"2019-08-29 17:18:00\\",\\n \\"StoreType\\": \\"sls\\",\\n \\"SlsProject\\": \\"sae-56f77b65-788d-442a-9885-7f20d91f****\\",\\n \\"LogType\\": \\"file_log\\",\\n \\"RegionId\\": \\"cn-beijing\\"\\n }\\n ],\\n \\"CurrentPage\\": 1,\\n \\"TotalSize\\": 1,\\n \\"PageSize\\": 10\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<ListLogConfigsResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>ac1d5e2c15671581252413581d****</TraceId>\\n <Data>\\n <LogConfigs>\\n <ConfigName>sae-1f240907a6faf58c653f09e81b7e****</ConfigName>\\n <LogDir>/root/logs/hsf/hsf.log</LogDir>\\n <SlsLogStore>sae-1f240907a6faf58c653f09e81b7e****</SlsLogStore>\\n <CreateTime>2019-08-29 17:18:00</CreateTime>\\n <StoreType>sls</StoreType>\\n <SlsProject>sae-56f77b65-788d-442a-9885-7f20d91f****</SlsProject>\\n <LogType>file_log</LogType>\\n <RegionId>cn-beijing</RegionId>\\n </LogConfigs>\\n <CurrentPage>1</CurrentPage>\\n <TotalSize>1</TotalSize>\\n <PageSize>10</PageSize>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</ListLogConfigsResponse>","errorExample":""}]', 'title' => '获取应用日志列表', 'summary' => '获取应用日志列表。', - ], - 'ListAppVersions' => [ - 'path' => '/pop/v1/sam/app/listAppVersions', - 'methods' => [ - 'get', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:26.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2023-03-09T05:58:11.000Z', 'description' => '错误码发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '20', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListLogConfigs'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:ListLogConfigs', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + ], + 'ListNamespaceChangeOrders' => [ + 'path' => '/pop/v1/sam/changeorder/listNamespaceChangeOrders', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -29468,21 +17556,49 @@ 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', - 'abilityTreeCode' => '6371', - 'abilityTreeNodes' => [ - 'FEATUREsaeD9PL61', - ], + 'abilityTreeCode' => '75166', + 'abilityTreeNodes' => ['FEATUREsaeD9PL61'], ], 'parameters' => [ [ - 'name' => 'AppId', + 'name' => 'NamespaceId', 'in' => 'query', - 'schema' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****', - ], + 'schema' => ['description' => '命名空间ID。', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-shanghai:test'], + ], + [ + 'name' => 'CoStatus', + 'in' => 'query', + 'schema' => ['description' => '发布单状态。取值说明如下:'."\n" + ."\n" + .'- **0**:准备。'."\n" + .'- **1**:执行中。'."\n" + .'- **2**:执行成功。'."\n" + .'- **3**:执行失败。'."\n" + .'- **6**:终止。'."\n" + .'- **10**:系统异常执行失败。', 'type' => 'string', 'required' => false, 'example' => '2'], + ], + [ + 'name' => 'CoType', + 'in' => 'query', + 'schema' => ['description' => '发布单类型。取值说明如下:'."\n" + ."\n" + .'- **CoBatchStartApplication**:批量启动应用。'."\n" + .'- **CoBatchStopApplication**:批量停止应用。', 'type' => 'string', 'required' => false, 'example' => 'CoBatchStartApplication'], + ], + [ + 'name' => 'Key', + 'in' => 'query', + 'schema' => ['description' => '发布单描述信息模糊查询(包含此**key**的都会返回)。', 'type' => 'string', 'required' => false, 'example' => 'test'], + ], + [ + 'name' => 'CurrentPage', + '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' => '20'], ], ], 'responses' => [ @@ -29491,142 +17607,124 @@ 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'Message' => [ - 'description' => '调用结果的附加信息。', - 'type' => 'string', - 'example' => 'success', - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '01CF26C7-00A3-4AA6-BA76-7E95F2A3****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '0bc3915638507554994370d****'], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Success' => ['description' => '获取发布单列表是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:获取成功。'."\n" + .'- **false**:获取失败。', 'type' => 'boolean', 'example' => 'true'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Message' => ['description' => '调用结果的附加信息。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0bc3915638507554994370d****'], 'Data' => [ - 'description' => '版本信息。', - 'type' => 'array', - 'items' => [ - 'description' => '版本信息。', - 'type' => 'object', - 'properties' => [ - 'Type' => [ - 'description' => '应用类型。取值说明如下:'."\n" - ."\n" - .'- **image**:表示此应用是通过镜像的方式部署的。'."\n" - .'- **url**:表示此应用是通过代码包的方式部署的。', - 'type' => 'string', - 'example' => 'image', - ], - 'CreateTime' => [ - 'description' => '创建时间。', - 'type' => 'string', - 'example' => '1590124643553', - ], - 'BuildPackageUrl' => [ - 'description' => '代码包下载地址,如果您的包是通过SAE上传的需要注意以下两点:'."\n" - ."\n" - .'- 该地址不能直接下载,需要您通过GetPackageVersionAccessableUrl接口来获取可下载的地址(有效期10分钟)。'."\n" - .'- 该包SAE侧最长时间会保留90天,超过90天后不会返回给地址也不提供下载。', - 'type' => 'string', - 'example' => 'https://edas-hz.oss-cn-hangzhou.aliyuncs.com/apps/K8s_APP_ID/1d0e7884-60f0-41d2-89dd-ec1f3c69****/hello-sae.war', - ], - 'WarUrl' => [ - 'description' => '镜像地址。', - 'type' => 'string', - 'example' => 'registry-vpc.cn-hangzhou.aliyuncs.com/****/1362469756373809_shared_repo:42646692-66e7-4a21-b629-897752975cdf_159012464****', - ], - 'Id' => [ - 'description' => '版本ID。', - 'type' => 'string', - 'example' => 'a0ce266c-d354-423a-9bd6-4083405a****', + 'description' => '返回结果。', + 'type' => 'object', + 'properties' => [ + 'CurrentPage' => ['description' => '当前分页。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'PageSize' => ['description' => '分页大小。', 'type' => 'integer', 'format' => 'int32', 'example' => '20'], + 'TotalSize' => ['description' => '变更单总数。', 'type' => 'integer', 'format' => 'int32', 'example' => '32'], + 'ChangeOrderList' => [ + 'description' => '发布单列表。', + 'type' => 'array', + 'items' => [ + 'description' => '发布单列表数据。', + 'type' => 'object', + 'properties' => [ + 'Status' => ['description' => '发布单状态。取值说明如下:'."\n" + ."\n" + .'- **0**:准备。'."\n" + .'- **1**:执行中。'."\n" + .'- **2**:执行成功。'."\n" + .'- **3**:执行失败。'."\n" + .'- **6**:终止。'."\n" + .'- **10**:系统异常执行失败。', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], + 'FinishTime' => ['description' => '结束时间。', 'type' => 'string', 'example' => '2019-07-11 20:12:58'], + 'NamespaceId' => ['description' => '命名空间ID。', 'type' => 'string', 'example' => 'cn-shanghai:test'], + 'CreateTime' => ['description' => '创建时间。', 'type' => 'string', 'example' => '2019-07-11 15:54:49'], + 'UserId' => ['description' => '用户ID。', 'type' => 'string', 'example' => 'test_sae'], + 'Source' => ['description' => '变更单操作入口来源。', 'type' => 'string', 'example' => 'console'], + 'CreateUserId' => ['description' => '创建用户ID。', 'type' => 'string', 'example' => 'test@aliyun.com'], + 'BatchCount' => ['description' => '分批数。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'CoTypeCode' => ['description' => '发布单类型Code。取值说明如下:'."\n" + ."\n" + .'- **CoBatchStartApplication**:批量启动应用。'."\n" + .'- **CoBatchStopApplication**:批量停止应用。', 'type' => 'string', 'example' => 'CoBatchStartApplication'], + 'ChangeOrderId' => ['description' => '发布单ID。', 'type' => 'string', 'example' => '7fa5c0-9ebb-4bb4-b383-1f885447****'], + 'BatchType' => ['description' => '分批类型。', 'type' => 'string', 'example' => 'Automatic'], + 'Description' => ['description' => '发布单描述信息。', 'type' => 'string', 'example' => 'Batch Start Applications'], + 'GroupId' => ['description' => '分组ID。', 'type' => 'string', 'example' => 'c9ecd2-cf6c-46c3-9f20-525de202****'], + 'CoType' => ['description' => '发布单类型,是对**CoTypeCode**的描述。', 'type' => 'string', 'example' => 'msg.docker.app.actions.CoBatchStartApplication'], + 'Pipelines' => ['description' => '变更流水线。', 'type' => 'string', 'example' => 'xxxx'], + ], ], ], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '查看应用的历史版本是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:查看历史版本成功。'."\n" - .'- **false**:查看历史版本失败。', - 'type' => 'boolean', - 'example' => 'true', - ], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidApplication.NotFound', - 'errorMessage' => 'The current application does not exist.', - ], + ['errorCode' => 'Resouce.no.permission', 'errorMessage' => 'You are not authorized to operate on the specified resources.', 'description' => '没有权限操作资源。'], + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"01CF26C7-00A3-4AA6-BA76-7E95F2A3****\\",\\n \\"Data\\": [\\n {\\n \\"Type\\": \\"image\\",\\n \\"CreateTime\\": \\"1590124643553\\",\\n \\"BuildPackageUrl\\": \\"https://edas-hz.oss-cn-hangzhou.aliyuncs.com/apps/K8s_APP_ID/1d0e7884-60f0-41d2-89dd-ec1f3c69****/hello-sae.war\\",\\n \\"WarUrl\\": \\"registry-vpc.cn-hangzhou.aliyuncs.com/****/1362469756373809_shared_repo:42646692-66e7-4a21-b629-897752975cdf_159012464****\\",\\n \\"Id\\": \\"a0ce266c-d354-423a-9bd6-4083405a****\\"\\n }\\n ],\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<ListAppVersionsResponse>\\n <Message>success</Message>\\n <RequestId>01CF26C7-00A3-4AA6-BA76-7E95F2A3****</RequestId>\\n <Data>\\n <Type>image</Type>\\n <CreateTime>1590124643553</CreateTime>\\n <BuildPackageUrl>https://edas-hz.oss-cn-hangzhou.aliyuncs.com/apps/K8s_APP_ID/1d0e7884-60f0-41d2-89dd-ec1f3c69****/hello-sae.war</BuildPackageUrl>\\n <WarUrl>registry-vpc.cn-hangzhou.aliyuncs.com/****/1362469756373809_shared_repo:42646692-66e7-4a21-b629-897752975cdf_159012464****</WarUrl>\\n <Id>a0ce266c-d354-423a-9bd6-4083405a****</Id>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</ListAppVersionsResponse>","errorExample":""}]', - 'title' => '查看应用的历史版本', - 'summary' => '查看应用的历史版本。', - ], - 'RestartInstances' => [ - 'path' => '/pop/v1/sam/app/restartInstances', - 'methods' => [ - 'put', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"0bc3915638507554994370d****\\",\\n \\"ErrorCode\\": \\"\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0bc3915638507554994370d****\\",\\n \\"Data\\": {\\n \\"CurrentPage\\": 1,\\n \\"PageSize\\": 20,\\n \\"TotalSize\\": 32,\\n \\"ChangeOrderList\\": [\\n {\\n \\"Status\\": 2,\\n \\"FinishTime\\": \\"2019-07-11 20:12:58\\",\\n \\"NamespaceId\\": \\"cn-shanghai:test\\",\\n \\"CreateTime\\": \\"2019-07-11 15:54:49\\",\\n \\"UserId\\": \\"test_sae\\",\\n \\"Source\\": \\"console\\",\\n \\"CreateUserId\\": \\"test@aliyun.com\\",\\n \\"BatchCount\\": 1,\\n \\"CoTypeCode\\": \\"CoBatchStartApplication\\",\\n \\"ChangeOrderId\\": \\"7fa5c0-9ebb-4bb4-b383-1f885447****\\",\\n \\"BatchType\\": \\"Automatic\\",\\n \\"Description\\": \\"Batch Start Applications\\",\\n \\"GroupId\\": \\"c9ecd2-cf6c-46c3-9f20-525de202****\\",\\n \\"CoType\\": \\"msg.docker.app.actions.CoBatchStartApplication\\",\\n \\"Pipelines\\": \\"xxxx\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<ListNamespaceChangeOrdersResponse>\\n <RequestId>0bc3915638507554994370d****</RequestId>\\n <Success>true</Success>\\n <Code>200</Code>\\n <Message>success</Message>\\n <TraceId>0bc3915638507554994370d****</TraceId>\\n <Data>\\n <CurrentPage>1</CurrentPage>\\n <PageSize>20</PageSize>\\n <TotalSize>32</TotalSize>\\n <ChangeOrderList>\\n <Status>2</Status>\\n <FinishTime>2019-07-11 20:12:58</FinishTime>\\n <NamespaceId>cn-shanghai:test</NamespaceId>\\n <CreateTime>2019-07-11 15:54:49</CreateTime>\\n <UserId>test_sae</UserId>\\n <Source>console</Source>\\n <CreateUserId>test@aliyun.com</CreateUserId>\\n <BatchCount>1</BatchCount>\\n <CoTypeCode>CoBatchStartApplication</CoTypeCode>\\n <ChangeOrderId>7fa5c0-9ebb-4bb4-b383-1f885447****</ChangeOrderId>\\n <BatchType>自动</BatchType>\\n <Description>批量启动应用</Description>\\n <GroupId>c9ecd2-cf6c-46c3-9f20-525de202****</GroupId>\\n <CoType>msg.docker.app.actions.CoBatchStartApplication</CoType>\\n <Pipelines>xxxx</Pipelines>\\n </ChangeOrderList>\\n </Data>\\n</ListNamespaceChangeOrdersResponse>","errorExample":""}]', + 'title' => '获取命名空间发布单列表', + 'summary' => '获取命名空间发布单列表。', + 'changeSet' => [ + ['createdAt' => '2026-04-14T09:43:35.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-12-25T03:03:23.000Z', 'description' => 'OpenAPI 下线'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '40', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListNamespaceChangeOrders'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:ListNamespaceChangeOrders', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + ], + 'ListNamespacedConfigMaps' => [ + 'path' => '/pop/v1/sam/configmap/listNamespacedConfigMaps', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'none', - 'abilityTreeCode' => '8961', - 'abilityTreeNodes' => [ - 'FEATUREsaeD9PL61', - ], + 'operationType' => 'get', + 'abilityTreeCode' => '6377', + 'abilityTreeNodes' => ['FEATUREsaeD9PL61'], ], 'parameters' => [ [ - 'name' => 'AppId', - 'in' => 'query', - 'schema' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '1daa7236-3844-4f36-b39a-605b0cc0****', - ], - ], - [ - 'name' => 'InstanceIds', + 'name' => 'NamespaceId', 'in' => 'query', - 'schema' => [ - 'description' => '需要重启的实例ID。多个实例时使用英文逗号(,)分隔。', - 'type' => 'string', - 'required' => true, - 'example' => 'mysae-1daa7236-3844-4f36-b39a-605b0cc0caa6-*****', - ], + 'schema' => ['description' => '命名空间ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], ], ], 'responses' => [ @@ -29635,131 +17733,108 @@ 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。'."\n" - ."\n", - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], 'Data' => [ - 'description' => '应用信息。', + 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'ChangeOrderId' => [ - 'description' => '发布单ID。', - 'type' => 'string', - 'example' => '5afa5b98-0c64-4637-983f-15eaa888****', + 'ConfigMaps' => [ + 'description' => 'ConfigMap实例列表。', + 'type' => 'array', + 'items' => [ + 'description' => 'ConfigMap实例的具体信息。', + 'type' => 'object', + 'properties' => [ + 'UpdateTime' => ['description' => '更新时间。', 'type' => 'integer', 'format' => 'int64', 'example' => '1593760185111'], + 'Data' => ['description' => 'ConfigMap实例键值对数据。格式如下:'."\n" + ."\n" + .'{"k1":"v1", "k2":"v2"}'."\n" + ."\n" + .'k表示键,v表示值。关于配置项的更多信息,请参见[管理和使用配置项](~~171326~~)。', 'type' => 'object', 'example' => '{"k1":"v1","k2":"v2"}'], + 'NamespaceId' => ['description' => '命名空间ID。', 'type' => 'string', 'example' => 'cn-hangzhou'], + 'Description' => ['description' => '描述信息。', 'type' => 'string', 'example' => 'test-desc'], + 'CreateTime' => ['description' => '创建时间。', 'type' => 'integer', 'format' => 'int64', 'example' => '1593760185111'], + 'RelateApps' => [ + 'description' => '关联应用。', + 'type' => 'array', + 'items' => [ + 'description' => '应用的具体信息。', + 'type' => 'object', + 'properties' => [ + 'AppName' => ['description' => '应用名称。', 'type' => 'string', 'example' => 'test-app'], + 'AppId' => ['description' => '应用ID。', 'type' => 'string', 'example' => 'f16b4000-9058-4c22-a49d-49a28f0b****'], + ], + ], + ], + 'ConfigMapId' => ['description' => 'ConfigMap实例ID。', 'type' => 'integer', 'format' => 'int64', 'example' => '1'], + 'Name' => ['description' => 'ConfigMap实例名称。', 'type' => 'string', 'example' => 'test-name'], + ], + ], ], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '重启应用实例是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:重启成功。'."\n" - .'- **false**:重启失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '是否成功获取ConfigMap实例列表。取值说明如下:'."\n" + ."\n" + .'- **true**:获取成功。'."\n" + .'- **false**:获取失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidApplication.NotFound', - 'errorMessage' => 'The current application does not exist.', - ], - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], - [ - 'errorCode' => 'NoComputeResourceQuota.Exceed', - 'errorMessage' => 'Your compute resource is insufficient. Please contact us to raise the quota.', - ], - [ - 'errorCode' => 'user.indebt', - 'errorMessage' => 'The user has an outstanding payment.', - ], - [ - 'errorCode' => 'NoComputeResourceQuota.App.Exceed', - 'errorMessage' => 'You can create %s instances for each application. Please submit a ticket to raise the quota.', - ], - [ - 'errorCode' => 'NoComputeResourceQuota.User.Exceed', - 'errorMessage' => 'Your account is limited to create %s instances. Please submit a ticket to raise the quota.', - ], - [ - 'errorCode' => 'System.Upgrading', - 'errorMessage' => 'The system is being upgraded. Please try again later.', - ], - [ - 'errorCode' => 'Application.ChangerOrderRunning', - 'errorMessage' => 'An application change process is in progress. Please try again later.', - ], - [ - 'errorCode' => 'Application.InvalidStatus', - 'errorMessage' => 'The application status is abnormal. Please try again later.', - ], - [ - 'errorCode' => 'Application.NotDeployYet', - 'errorMessage' => 'The application has not been deployed. Please deploy it and try again.', - ], + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], + ], + 404 => [ + ['errorCode' => 'InvalidNamespaceId.NotFound', 'errorMessage' => 'The specified NamespaceId does not exist.', 'description' => '指定的NamespaceId不存在。'], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"ChangeOrderId\\": \\"5afa5b98-0c64-4637-983f-15eaa888****\\"\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<RestartInstancesResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <ChangeOrderId>5afa5b98-0c64-4637-983f-15eaa888****</ChangeOrderId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</RestartInstancesResponse>","errorExample":""}]', - 'title' => '重启应用实例', - 'summary' => '调用RestartInstances接口重启应用实例。', - ], - 'GetAvailabilityMetric' => [ - 'path' => '/pop/v1/sam/getAvailabilityMetric', - 'methods' => [ - 'get', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"ConfigMaps\\": [\\n {\\n \\"UpdateTime\\": 1593760185111,\\n \\"Data\\": {\\n \\"k1\\": \\"v1\\",\\n \\"k2\\": \\"v2\\"\\n },\\n \\"NamespaceId\\": \\"cn-hangzhou\\",\\n \\"Description\\": \\"test-desc\\",\\n \\"CreateTime\\": 1593760185111,\\n \\"RelateApps\\": [\\n {\\n \\"AppName\\": \\"test-app\\",\\n \\"AppId\\": \\"f16b4000-9058-4c22-a49d-49a28f0b****\\"\\n }\\n ],\\n \\"ConfigMapId\\": 1,\\n \\"Name\\": \\"test-name\\"\\n }\\n ]\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<ListNamespacedConfigMapsResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <ConfigMaps>\\n <UpdateTime>1593760185111</UpdateTime>\\n <NamespaceId>cn-hangzhou</NamespaceId>\\n <Description>test-desc</Description>\\n <CreateTime>1593760185111</CreateTime>\\n <RelateApps>\\n <AppName>test-app</AppName>\\n <AppId>f16b4000-9058-4c22-a49d-49a28f0b****</AppId>\\n </RelateApps>\\n <ConfigMapId>1</ConfigMapId>\\n <Name>test-name</Name>\\n </ConfigMaps>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</ListNamespacedConfigMapsResponse>","errorExample":""}]', + 'title' => '获取ConfigMap实例列表', + 'summary' => '获取命名空间内ConfigMap实例列表。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:23.000Z', 'description' => 'OpenAPI 下线'], ], - 'schemes' => [ - 'http', - 'https', + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListNamespacedConfigMaps'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:ListNamespacedConfigMaps', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + ], + 'ListPublishedServices' => [ + 'path' => '/pop/v1/sam/service/listPublishedServices', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -29768,60 +17843,15 @@ 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'none', - 'abilityTreeCode' => '14389', - 'abilityTreeNodes' => [ - 'FEATUREsaeD9PL61', - ], + 'operationType' => 'get', + 'abilityTreeCode' => '6378', + 'abilityTreeNodes' => ['FEATUREsaeY046YN'], ], 'parameters' => [ [ - 'name' => 'RegionId', - 'in' => 'query', - 'schema' => [ - 'description' => '地域ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-hangzhou', - ], - ], - [ - 'name' => 'Limit', - 'in' => 'query', - 'schema' => [ - 'description' => '返回数据条数,取值范围[0,100]。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'example' => '10', - ], - ], - [ - 'name' => 'AppSource', - 'in' => 'query', - 'schema' => [ - 'description' => 'SAE应用类型。'."\n" - ."\n" - .'- **micro_service。**'."\n" - .'- **web。**'."\n" - .'- **job。**', - 'type' => 'string', - 'required' => false, - 'example' => 'micro_service', - ], - ], - [ - 'name' => 'CpuStrategy', + 'name' => 'AppId', 'in' => 'query', - 'schema' => [ - 'description' => 'CPU分配策略。'."\n" - ."\n" - .'- **request**:仅在有请求时分配CPU。'."\n" - .'- **always**:始终分配固定CPU。', - 'type' => 'string', - 'required' => false, - 'example' => 'always', - ], + 'schema' => ['description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => 'b2a8a925-477a-4ed7-b825-d5e22500****'], ], ], 'responses' => [ @@ -29830,123 +17860,89 @@ 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '3A92C4EA-4C53-5A1C-8AEB-F2DB1198****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], 'Data' => [ - 'description' => '返回数据。', + 'description' => '微服务列表信息。', 'type' => 'array', 'items' => [ - 'description' => '结果列表。', + 'description' => '微服务列表信息。', 'type' => 'object', 'properties' => [ - 'AppId' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'example' => '017f39b8-dfa4-4e16-a84b-1dcee4b1****', - ], - 'Name' => [ - 'description' => '应用名称。', - 'type' => 'string', - 'example' => 'test', - ], - 'RegionId' => [ - 'description' => '命名空间ID。', - 'type' => 'string', - 'example' => 'cn-hangzhou', - ], - 'Runnings' => [ - 'description' => '当前实例数。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1', - ], - 'Instances' => [ - 'description' => '目标实例数。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '0', - ], - 'ErrorInstances' => [ - 'description' => '异常实例数。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '0', + 'Type' => ['description' => '发布的服务类型。', 'type' => 'string', 'example' => 'RPC'], + 'Groups' => [ + 'description' => '消费的服务对应的组别。', + 'type' => 'array', + 'items' => ['description' => '消费的服务对应的组别。', 'type' => 'string', 'example' => 'HSF'], ], - 'EnableAutoscale' => [ - 'description' => '是否启用弹性伸缩。取值说明如下:'."\n" - ."\n" - .'- **1**:启用弹性伸缩。'."\n" - .'- **0**:未启用弹性伸缩。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '0', + 'Version' => ['description' => '发布的服务版本。', 'type' => 'string', 'example' => '1.0.0'], + 'AppId' => ['description' => '应用ID。', 'type' => 'string', 'example' => 'b2a8a925-477a-4ed7-b825-d5e22500****'], + 'Group2Ip' => ['description' => '保留字段,暂时无意义。', 'type' => 'string', 'example' => '{}'], + 'Ips' => [ + 'description' => '服务订阅地址。', + 'type' => 'array', + 'items' => ['description' => '服务订阅地址。', 'type' => 'string', 'example' => '10.0.0.1'], ], + 'Name' => ['description' => '发布的服务名称。', 'type' => 'string', 'example' => 'com.alibaba.nodejs.ItemService'], ], ], ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '获取应用列表。取值说明如下:'."\n" - ."\n" - .'- **true**:获取成功。'."\n" - .'- **false**:获取失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '获取发布的微服务列表是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:获取成功。'."\n" + .'- **false**:获取失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"3A92C4EA-4C53-5A1C-8AEB-F2DB1198****\\",\\n \\"Data\\": [\\n {\\n \\"AppId\\": \\"017f39b8-dfa4-4e16-a84b-1dcee4b1****\\",\\n \\"Name\\": \\"test\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"Runnings\\": 1,\\n \\"Instances\\": 0,\\n \\"ErrorInstances\\": 0,\\n \\"EnableAutoscale\\": 0\\n }\\n ],\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<GetAvailabilityMetricResponse>\\n <Message>success</Message>\\n <RequestId>3A92C4EA-4C53-5A1C-8AEB-F2DB11982D5F</RequestId>\\n <Data>\\n <AppId>017f39b8-dfa4-4e16-a84b-1dcee4b1****</AppId>\\n <Name>test</Name>\\n <RegionId>cn-hangzhou</RegionId>\\n <Runnings>1</Runnings>\\n <Instances>0</Instances>\\n <ErrorInstances>0</ErrorInstances>\\n <EnableAutoscale>0</EnableAutoscale>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</GetAvailabilityMetricResponse>","errorExample":""}]', - 'title' => 'GetAvailabilityMetric', - 'summary' => '调用GetAvailabilityMetric接口获取实例总数异常的Top N应用列表。', - ], - 'DescribeAppServiceDetail' => [ - 'summary' => '获取应用服务的元数据详情。', - 'path' => '/pop/v1/sam/service/describeAppServiceDetail', - 'methods' => [ - 'get', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": [\\n {\\n \\"Type\\": \\"RPC\\",\\n \\"Groups\\": [\\n \\"HSF\\"\\n ],\\n \\"Version\\": \\"1.0.0\\",\\n \\"AppId\\": \\"b2a8a925-477a-4ed7-b825-d5e22500****\\",\\n \\"Group2Ip\\": \\"{}\\",\\n \\"Ips\\": [\\n \\"10.0.0.1\\"\\n ],\\n \\"Name\\": \\"com.alibaba.nodejs.ItemService\\"\\n }\\n ],\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<ListPublishedServicesResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <Type>RPC</Type>\\n <Groups>HSF</Groups>\\n <Version>1.0.0</Version>\\n <AppId>b2a8a925-477a-4ed7-b825-d5e22500****</AppId>\\n <Group2Ip>{}</Group2Ip>\\n <Ips>10.0.0.1</Ips>\\n <Name>com.alibaba.nodejs.ItemService</Name>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</ListPublishedServicesResponse>","errorExample":""}]', + 'title' => '获取发布的微服务列表', + 'summary' => '调用ListPublishedServices接口获取发布的微服务列表。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:26.000Z', 'description' => 'OpenAPI 下线'], + ], + 'flowControl' => [ + 'flowControlList' => [], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:ListPublishedServices', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + ], + 'ListSecrets' => [ + 'summary' => '调用ListSecrets接口获取命名空间内Secret实例列表。', + 'path' => '/pop/v1/sam/secret/secrets', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -29955,88 +17951,14 @@ 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'list', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '101579', - 'abilityTreeNodes' => [ - 'FEATUREsaeUDWJ2L', - ], + 'abilityTreeCode' => '159992', + 'abilityTreeNodes' => ['FEATUREsaeD9PL61'], ], 'parameters' => [ [ - 'name' => 'AppId', - 'in' => 'query', - 'schema' => [ - 'title' => 'mse 的 appId', - 'description' => '应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '6dcc8c9e-d3da-478a-a066-86dcf820****', - ], - ], - [ - 'name' => 'ServiceType', - 'in' => 'query', - 'schema' => [ - 'description' => '服务类型。取值说明如下:'."\n" - ."\n" - .'- **dubbo**'."\n" - .'- **springCloud**', - 'type' => 'string', - 'required' => false, - 'example' => 'springCloud', - ], - ], - [ - 'name' => 'ServiceGroup', - 'in' => 'query', - 'schema' => [ - 'description' => '服务分组。自定义。', - 'type' => 'string', - 'required' => false, - 'example' => 'springCloud', - ], - ], - [ - 'name' => 'ServiceVersion', - 'in' => 'query', - 'schema' => [ - 'description' => '服务版本。自定义。', - 'type' => 'string', - 'required' => false, - 'example' => '1.0.0', - ], - ], - [ - 'name' => 'ServiceName', - 'in' => 'query', - 'schema' => [ - 'description' => '服务名称。', - 'type' => 'string', - 'required' => false, - 'example' => 'edas.service.provider', - ], - ], - [ - 'name' => 'NacosInstanceId', - 'in' => 'query', - 'schema' => [ - 'description' => 'MseNacos实例ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'mse-cn-sco3r0u****', - ], - ], - [ - 'name' => 'NacosNamespaceId', + 'name' => 'NamespaceId', 'in' => 'query', - 'schema' => [ - 'description' => 'MseNacos 命名空间ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'public', - ], + 'schema' => ['description' => 'Secret实例所在命名空间ID。如果所在命名空间为默认命名空间,则只需填写RegionId,例如`cn-beijing`。', 'type' => 'string', 'required' => true, 'example' => 'cn-beijing:test'], ], ], 'responses' => [ @@ -30045,395 +17967,165 @@ 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'B2C7874F-F109-5B34-8618-2C10BBA2****', - ], - 'Message' => [ - 'description' => '调用结果的附加信息。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0b16399316402420740034918e****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], 'Data' => [ - 'description' => '返回数据。', + 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'Group' => [ - 'description' => '服务分组。自定义。', - 'type' => 'string', - 'example' => 'springCloud', - ], - 'ServiceName' => [ - 'description' => '服务名称。', - 'type' => 'string', - 'example' => 'service-provider', - ], - 'Version' => [ - 'description' => '服务版本。自定义。', - 'type' => 'string', - 'example' => '1.0.0', - ], - 'ServiceType' => [ - 'description' => '服务类型。取值说明如下:'."\n" - ."\n" - .'- **dubbo**'."\n" - .'- **springCloud**', - 'type' => 'string', - 'example' => 'springCloud', - ], - 'ServiceProtocol' => [ - 'description' => '该服务使用的协议。', - 'type' => 'string', - 'example' => 'HTTP', - ], - 'ServicePorts' => [ - 'description' => '该服务使用的端口。', - 'type' => 'array', - 'items' => [ - 'description' => '端口值。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '8000', - ], - ], - 'ServiceTags' => [ - 'description' => '该服务的标签。', - 'type' => 'array', - 'items' => [ - 'description' => '该服务的标签值。', - 'type' => 'string', - 'example' => 'tag1', - ], - ], - 'EdasAppName' => [ - 'description' => '应用名称。', - 'type' => 'string', - 'example' => 'cn-zhangjiakou-micro-service-******', - ], - 'Metadata' => [ - 'description' => '元数据。示例如下:`{side: "provider", port: "18081", preserved: {register: {source: "SPRING_CLOUD"}},…}`', - 'type' => 'object', - 'example' => '{side: "provider", port: "18081", preserved: {register: {source: "SPRING_CLOUD"}},…}', - ], - 'SpringApplicationName' => [ - 'description' => 'Spring Cloud应用名称。', - 'type' => 'string', - 'example' => 'service-provider', - ], - 'DubboApplicationName' => [ - 'description' => 'Dubbo应用名称。', - 'type' => 'string', - 'example' => 'service-consumer', - ], - 'Methods' => [ - 'description' => '方法列表。', + 'Secrets' => [ + 'description' => 'Secret实例列表。', 'type' => 'array', 'items' => [ - 'description' => '方法列表。', + 'description' => 'Secret实例的具体信息。', 'type' => 'object', 'properties' => [ - 'MethodController' => [ - 'description' => '所属类。', - 'type' => 'string', - 'example' => 'com.serverless.sae.controller.EchoController', - ], - 'ReturnType' => [ - 'description' => '返回类型。', - 'type' => 'string', - 'example' => 'java.lang.String', - ], - 'ReturnDetails' => [ - 'description' => '返回详情。', - 'type' => 'string', - 'example' => 'test', - ], - 'Name' => [ - 'description' => '方法名。', - 'type' => 'string', - 'example' => 'echo', - ], - 'NameDetail' => [ - 'description' => '方法详情。', - 'type' => 'string', - 'example' => 'description', - ], - 'ParameterDetails' => [ - 'description' => '参数详情。', - 'type' => 'array', - 'items' => [ - 'description' => '参数详情。', - 'type' => 'string', - 'example' => 'description', - ], - ], - 'RequestMethods' => [ - 'description' => '请求方法。', - 'type' => 'array', - 'items' => [ - 'description' => '请求方法。取值说明如下:'."\n" - ."\n" - .'- **GET**'."\n" - .'- **ALL**', - 'type' => 'string', - 'example' => 'ALL', - ], - ], - 'ParameterTypes' => [ - 'description' => '参数类型。', - 'type' => 'array', - 'items' => [ - 'description' => '参数类型。', - 'type' => 'string', - 'example' => '["java.lang.String"]', - ], - ], - 'Paths' => [ - 'description' => '请求路径。', - 'type' => 'array', - 'items' => [ - 'description' => '请求路径。格式如下:'."\n" - ."\n" - .'`/path`', - 'type' => 'string', - 'example' => '["/echo/{str}"]', - ], - ], - 'ParameterDefinitions' => [ - 'description' => '参数定义。', + 'NamespaceId' => ['description' => '命名空间ID。', 'type' => 'string', 'example' => 'cn-beijing:test'], + 'SecretId' => ['description' => 'Secret实例ID。', 'type' => 'integer', 'format' => 'int64', 'example' => '16'], + 'SecretName' => ['description' => 'Secret实例名称。', 'type' => 'string', 'example' => 'registry-auth'], + 'SecretType' => ['description' => 'Secret实例类型。取值说明如下:'."\n" + ."\n" + .'**kubernetes.io/dockerconfigjson**:存储镜像仓库用户名和密码的保密字典,用于部署时拉取镜像鉴权。', 'type' => 'string', 'example' => 'kubernetes.io/dockerconfigjson'], + 'RelateApps' => [ + 'description' => '关联应用。', 'type' => 'array', 'items' => [ - 'description' => '参数定义。', + 'description' => '应用的具体信息。', 'type' => 'object', 'properties' => [ - 'Type' => [ - 'description' => '参数类型。', - 'type' => 'string', - 'example' => 'java.lang.String', - ], - 'Description' => [ - 'description' => '参数描述。', - 'type' => 'string', - 'example' => 'description', - ], - 'Name' => [ - 'description' => '参数名称。', - 'type' => 'string', - 'example' => 'arg0', - ], + 'AppName' => ['description' => '应用名称。', 'type' => 'string', 'example' => 'test-app'], + 'AppId' => ['description' => '应用ID。', 'type' => 'string', 'example' => 'f16b4000-9058-4c22-a49d-49a28f0b****'], ], ], ], + 'CreateTime' => ['description' => '创建时间。', 'type' => 'integer', 'format' => 'int64', 'example' => '1593760185111'], + 'UpdateTime' => ['description' => '更新时间。', 'type' => 'integer', 'format' => 'int64', 'example' => '1593760185111'], ], ], ], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '是否成功获取元数据。取值说明如下:'."\n" - ."\n" - .'- **true**:获取成功。'."\n" - .'- **false**:获取失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '是否成功获取Secret实例列表。取值说明如下:'."\n" + ."\n" + .'- **true**:获取成功。'."\n" + .'- **false**:获取失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'Micro.Service.MetaData.NotFound', - 'errorMessage' => 'The micro service metadata not found {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], + ], + 404 => [ + ['errorCode' => 'InvalidNamespaceId.NotFound', 'errorMessage' => 'The specified NamespaceId does not exist.', 'description' => '指定的NamespaceId不存在。'], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"B2C7874F-F109-5B34-8618-2C10BBA2****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0b16399316402420740034918e****\\",\\n \\"Data\\": {\\n \\"Group\\": \\"springCloud\\",\\n \\"ServiceName\\": \\"service-provider\\",\\n \\"Version\\": \\"1.0.0\\",\\n \\"ServiceType\\": \\"springCloud\\",\\n \\"ServiceProtocol\\": \\"HTTP\\",\\n \\"ServicePorts\\": [\\n 8000\\n ],\\n \\"ServiceTags\\": [\\n \\"tag1\\"\\n ],\\n \\"EdasAppName\\": \\"cn-zhangjiakou-micro-service-******\\",\\n \\"Metadata\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"SpringApplicationName\\": \\"service-provider\\",\\n \\"DubboApplicationName\\": \\"service-consumer\\",\\n \\"Methods\\": [\\n {\\n \\"MethodController\\": \\"com.serverless.sae.controller.EchoController\\",\\n \\"ReturnType\\": \\"java.lang.String\\",\\n \\"ReturnDetails\\": \\"test\\",\\n \\"Name\\": \\"echo\\",\\n \\"NameDetail\\": \\"description\\",\\n \\"ParameterDetails\\": [\\n \\"description\\"\\n ],\\n \\"RequestMethods\\": [\\n \\"ALL\\"\\n ],\\n \\"ParameterTypes\\": [\\n \\"[\\\\\\"java.lang.String\\\\\\"]\\"\\n ],\\n \\"Paths\\": [\\n \\"[\\\\\\"/echo/{str}\\\\\\"]\\"\\n ],\\n \\"ParameterDefinitions\\": [\\n {\\n \\"Type\\": \\"java.lang.String\\",\\n \\"Description\\": \\"description\\",\\n \\"Name\\": \\"arg0\\"\\n }\\n ]\\n }\\n ]\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeAppServiceDetailResponse>\\n <RequestId>B2C7874F-F109-5B34-8618-2C10BBA2****</RequestId>\\n <Message>success</Message>\\n <TraceId>0b16399316402420740034918e****</TraceId>\\n <Data>\\n <Group>springCloud</Group>\\n <ServiceName>service-provider</ServiceName>\\n <Version>1.0.0</Version>\\n <ServiceType>springCloud</ServiceType>\\n <EdasAppName>cn-zhangjiakou-micro-service-******</EdasAppName>\\n <SpringApplicationName>service-provider</SpringApplicationName>\\n <DubboApplicationName>service-consumer</DubboApplicationName>\\n <Methods>\\n <MethodController>com.serverless.sae.controller.EchoController</MethodController>\\n <ReturnType>java.lang.String</ReturnType>\\n <ReturnDetails>test</ReturnDetails>\\n <Name>echo</Name>\\n <NameDetail>description</NameDetail>\\n <ParameterDetails>description</ParameterDetails>\\n <RequestMethods>ALL</RequestMethods>\\n <ParameterTypes>[\\"java.lang.String\\"]</ParameterTypes>\\n <Paths>[\\"/echo/{str}\\"]</Paths>\\n <ParameterDefinitions>\\n <Type>java.lang.String</Type>\\n <Description>description</Description>\\n <Name>arg0</Name>\\n </ParameterDefinitions>\\n </Methods>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeAppServiceDetailResponse>","errorExample":""}]', - 'title' => 'DescribeAppServiceDetail', - ], - 'ListAppServicesPage' => [ - 'summary' => '调用ListAppServicesPage接口获取应用服务列表。', - 'path' => '/pop/v1/sam/service/listAppServicesPage', - 'methods' => [ - 'get', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"Secrets\\": [\\n {\\n \\"NamespaceId\\": \\"cn-beijing:test\\",\\n \\"SecretId\\": 16,\\n \\"SecretName\\": \\"registry-auth\\",\\n \\"SecretType\\": \\"kubernetes.io/dockerconfigjson\\",\\n \\"RelateApps\\": [\\n {\\n \\"AppName\\": \\"test-app\\",\\n \\"AppId\\": \\"f16b4000-9058-4c22-a49d-49a28f0b****\\"\\n }\\n ],\\n \\"CreateTime\\": 1593760185111,\\n \\"UpdateTime\\": 1593760185111\\n }\\n ]\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<ListSecretsResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <Secrets>\\n <NamespaceId>cn-beijing:test</NamespaceId>\\n <SecretId>16</SecretId>\\n <SecretName>registry-auth</SecretName>\\n <SecretType>kubernetes.io/dockerconfigjson</SecretType>\\n <RelateApps>\\n <AppName>test-app</AppName>\\n <AppId>f16b4000-9058-4c22-a49d-49a28f0b****</AppId>\\n </RelateApps>\\n <CreateTime>1593760185111</CreateTime>\\n <UpdateTime>1593760185111</UpdateTime>\\n </Secrets>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</ListSecretsResponse>","errorExample":""}]', + 'title' => 'ListSecrets', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:23.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2022-11-22T13:28:09.000Z', 'description' => 'OpenAPI 下线'], ], - 'schemes' => [ - 'http', - 'https', + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListSecrets'], + ], ], + 'ramActions' => [ + [ + 'operationType' => '', + 'ramAction' => [ + 'action' => 'sae:ListSecrets', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], + ], + ], + 'ListSwimmingLaneGatewayRoutes' => [ + 'summary' => '查询泳道可选的网关路由', + 'path' => '/pop/v1/cas/gray/listSwimmingLaneGatewayRoutes', + 'methods' => ['get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'consumes' => ['application/x-www-form-urlencoded'], + 'produces' => ['application/json'], + 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ - 'abilityTreeCode' => '100639', - 'abilityTreeNodes' => [ - 'FEATUREsaeY046YN', - ], + 'operationType' => 'list', + 'abilityTreeCode' => '221887', + 'abilityTreeNodes' => ['FEATUREsaeX255DA'], ], 'parameters' => [ [ - 'name' => 'AppId', - 'in' => 'query', - 'schema' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '6dcc8c9e-d3da-478a-a066-86dcf820****', - ], - ], - [ - 'name' => 'ServiceType', + 'name' => 'NamespaceId', 'in' => 'query', - 'schema' => [ - 'description' => '服务类型。取值说明如下:'."\n" - ."\n" - .'- **dubbo**'."\n" - .'- **springCloud**', - 'type' => 'string', - 'required' => true, - 'example' => 'springCloud', - ], + 'schema' => ['description' => '命名空间ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-beijing:test'], ], [ - 'name' => 'PageNumber', + 'name' => 'GatewayUniqueId', 'in' => 'query', - 'schema' => [ - 'description' => '列表页码。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], - ], - [ - 'name' => 'PageSize', - 'in' => 'query', - 'schema' => [ - 'description' => '页码大小。取值范围\\[0, 9999]。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '9999', - ], + 'schema' => ['description' => '网关唯一标识ID。', 'type' => 'string', 'required' => false, 'example' => 'gw-277c0727535f4aae917e48de0f******'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'description' => '返回数据。', + 'title' => 'Schema of Response', + 'description' => '返回信息。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '2583E089-99C2-562E-8B7E-73512136****', - ], - 'Message' => [ - 'description' => '调用结果的附加信息。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0be3e0c816394483660457498e****', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求 ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => 'ac1a0b2215622246421415014e****'], 'Data' => [ - 'description' => '服务列表信息。', + 'description' => '返回结果。', 'type' => 'array', 'items' => [ - 'description' => '服务列表信息。', + 'description' => '详细信息。', 'type' => 'object', 'properties' => [ - 'CurrentPage' => [ - 'description' => '当前页数。', - 'type' => 'string', - 'example' => '1', - ], - 'TotalSize' => [ - 'description' => '页码总数。', - 'type' => 'string', - 'example' => '1', - ], - 'PageNumber' => [ - 'description' => '列表页码。', - 'type' => 'string', - 'example' => '1', - ], - 'PageSize' => [ - 'description' => '页码大小。取值范围\\[0, 9999]。', - 'type' => 'string', - 'example' => '9999', - ], - 'Result' => [ - 'description' => '返回结果。', - 'type' => 'array', - 'items' => [ - 'description' => '返回结果。', - 'type' => 'object', - 'properties' => [ - 'EdasAppName' => [ - 'description' => '应用名称。', - 'type' => 'string', - 'example' => 'cn-zhangjiakou-micro-service-******', - ], - 'Version' => [ - 'description' => '服务版本。自定义。', - 'type' => 'string', - 'example' => '1.0.0', - ], - 'InstanceNum' => [ - 'description' => '实例数量。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1', - ], - 'EdasAppId' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'example' => 'hc4fs1****@98314c8790b****', - ], - 'ServiceName' => [ - 'description' => '服务名称。', - 'type' => 'string', - 'example' => 'edas.service.provider', - ], - 'Group' => [ - 'description' => '服务分组。自定义。', - 'type' => 'string', - 'example' => 'springCloud', + 'RouteId' => ['description' => '路由ID。', 'type' => 'integer', 'format' => 'int64', 'example' => '16933'], + 'RouteName' => ['description' => '路由名称。', 'type' => 'string', 'example' => 'test-route'], + 'RoutePredicate' => [ + 'description' => '路由规则。', + 'type' => 'object', + 'properties' => [ + 'PathPredicate' => [ + 'description' => '路径匹配规则。', + 'type' => 'object', + 'properties' => [ + 'Path' => ['description' => '路由路径。', 'type' => 'string', 'example' => '/Path'], + 'Type' => ['description' => '规则类型。', 'type' => 'string', 'example' => 'Header'."\n"], ], ], ], @@ -30441,429 +18133,209 @@ ], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .' - **2xx**:成功。'."\n" - .' - **3xx**:重定向。'."\n" - .' - **4xx**:请求错误。'."\n" - .' - **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '获取服务列表是否成功。取值说明如下:'."\n" - ."\n" - .' - **true**:获取成功。'."\n" - .' - **false**:获取失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => 'HTTP状态码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:获取成功。'."\n" + .'- **false**:获取失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'Micro.Service.NotFound', - 'errorMessage' => 'The micro service not found {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], + ['errorCode' => 'MseGatewayRule.CreateFailed', 'errorMessage' => 'Create MSE Gateway rule failed.', 'description' => '创建MSE微服务网关路由失败。'], + ['errorCode' => 'InternalApiError', 'errorMessage' => 'An exception occurred when calling mse:%s, error message: %s.', 'description' => '调用 mse:%s 接口异常,%s'], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"2583E089-99C2-562E-8B7E-73512136****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0be3e0c816394483660457498e****\\",\\n \\"Data\\": [\\n {\\n \\"CurrentPage\\": \\"1\\",\\n \\"TotalSize\\": \\"1\\",\\n \\"PageNumber\\": \\"1\\",\\n \\"PageSize\\": \\"9999\\",\\n \\"Result\\": [\\n {\\n \\"EdasAppName\\": \\"cn-zhangjiakou-micro-service-******\\",\\n \\"Version\\": \\"1.0.0\\",\\n \\"InstanceNum\\": 1,\\n \\"EdasAppId\\": \\"hc4fs1****@98314c8790b****\\",\\n \\"ServiceName\\": \\"edas.service.provider\\",\\n \\"Group\\": \\"springCloud\\"\\n }\\n ]\\n }\\n ],\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<ListAppServicesPageResponse>\\n <RequestId>2583E089-99C2-562E-8B7E-73512136****</RequestId>\\n <Message>success</Message>\\n <TraceId>0be3e0c816394483660457498e****</TraceId>\\n <Data>\\n <CurrentPage>1</CurrentPage>\\n <TotalSize>1</TotalSize>\\n <PageNumber>1</PageNumber>\\n <PageSize>9999</PageSize>\\n <Result>\\n <EdasAppName>cn-zhangjiakou-micro-service-******</EdasAppName>\\n <Version>1.0.0</Version>\\n <InstanceNum>1</InstanceNum>\\n <EdasAppId>hc4fs1****@98314c8790b****</EdasAppId>\\n <ServiceName>edas.service.provider</ServiceName>\\n <Group>springCloud</Group>\\n </Result>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</ListAppServicesPageResponse>","errorExample":""}]', - 'title' => 'ListAppServicesPage', - ], - 'DescribeApplicationNlbs' => [ - 'summary' => '查看应用绑定的NLB配置。', - 'path' => '/pop/v1/sam/app/nlb', - 'methods' => [ - 'get', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"ac1a0b2215622246421415014e****\\",\\n \\"Data\\": [\\n {\\n \\"RouteId\\": 16933,\\n \\"RouteName\\": \\"test-route\\",\\n \\"RoutePredicate\\": {\\n \\"PathPredicate\\": {\\n \\"Path\\": \\"/Path\\",\\n \\"Type\\": \\"Header\\\\n\\"\\n }\\n }\\n }\\n ],\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => '查询泳道可选的网关路由', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:26.000Z', 'description' => 'OpenAPI 下线'], ], - 'schemes' => [ - 'https', + 'flowControl' => [ + 'flowControlList' => [], ], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'sae:ListSwimmingLaneGatewayRoutes', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], + ], + ], + 'ListSwimmingLaneGroupTags' => [ + 'summary' => '查询所有泳道标签列表。', + 'path' => '/pop/v1/cas/gray/listSwimmingLaneGroupTags', + 'methods' => ['get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'consumes' => ['application/x-www-form-urlencoded'], + 'produces' => ['application/json'], + 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '261358', - 'abilityTreeNodes' => [ - 'FEATUREsaeBRTWZ3', - ], + 'operationType' => 'list', + 'abilityTreeCode' => '221498', + 'abilityTreeNodes' => ['FEATUREsaeX255DA'], ], 'parameters' => [ [ - 'name' => 'AppId', + 'name' => 'NamespaceId', 'in' => 'query', - 'schema' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'required' => false, - 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****', - ], + 'schema' => ['description' => '命名空间 ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-beijing:test'], + ], + [ + 'name' => 'GroupId', + 'in' => 'query', + 'schema' => ['description' => '泳道组ID。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '2074'], ], ], 'responses' => [ 200 => [ 'schema' => [ + 'title' => 'Schema of Response', + 'description' => '返回信息。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:请求正常,返回success。请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => 'ac1a0b2215622246421415014e****', - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**目录。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => 'HTTP状态码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '绑定是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:启动成功。'."\n" - .'- **false**:启动失败。', - 'type' => 'string', - 'example' => 'true', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求 ID。', 'type' => 'string', 'example' => '30375C38-F4ED-4135-A0AE-5C75DC7F****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。'."\n" + ."\n", 'type' => 'string', 'example' => 'ac1a0b2215622920113732501e****'], 'Data' => [ - 'description' => '返回数据。', - 'type' => 'object', - 'properties' => [ - 'Instances' => [ - 'description' => '实例信息。', - 'type' => 'object', - 'additionalProperties' => [ - 'type' => 'object', - 'properties' => [ - 'DnsName' => [ - 'type' => 'string', - 'description' => 'DNS 域名。', - 'example' => 'nlb-wb7r6dlwetvt5j****.cn-hangzhou.nlb.aliyuncs.com', - ], - 'Listeners' => [ - 'type' => 'object', - 'additionalProperties' => [ - 'type' => 'object', - 'properties' => [ - 'Protocol' => [ - 'type' => 'string', - 'description' => '监听协议', - 'example' => 'TCPSSL', - ], - 'Port' => [ - 'type' => 'integer', - 'format' => 'int32', - 'description' => '负载均衡监听端口', - 'example' => '80', - ], - 'Status' => [ - 'type' => 'string', - 'example' => 'Bounded', - 'description' => 'NLB监听状态'."\n" - ."\n" - .'- **Creating**:监听正在创建中。'."\n" - .'- **Configuring**:监听正在配置中。'."\n" - .'- **Bounded**:监听已正常运行。'."\n" - .'- **Unbinding**:监听正在删除中。'."\n" - .'- **Failed**:监听不可用。', - ], - 'TargetPort' => [ - 'type' => 'integer', - 'format' => 'int32', - 'example' => '8080', - 'description' => '实例开放端口', - ], - 'CertIds' => [ - 'type' => 'string', - 'example' => '123157******', - 'description' => '服务器证书', - ], - ], - 'description' => '监听信息', - ], - 'description' => '监听信息', - ], - 'CreatedBySae' => [ - 'type' => 'boolean', - 'description' => 'SAE代购标识:'."\n" - .'- **true**:实例由SAE代购创建'."\n" - .'- **false**:复用已有实例', - 'example' => 'true', - ], - ], - 'description' => '实例信息', - ], + 'description' => '返回结果。', + 'type' => 'array', + 'items' => [ + 'description' => '详细信息。', + 'type' => 'object', + 'properties' => [ + 'Tag' => ['description' => '泳道标签。', 'type' => 'string', 'example' => 'g1'."\n"], + 'Metadata' => ['description' => '元数据。', 'type' => 'string', 'example' => '{\\"tag\\":\\"g1\\",\\"priority\\":100,\\"type\\":\\"tag\\",\\"desc\\":\\"sys-label\\"}'."\n"], ], ], ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:成功。'."\n" + .'- **false**:失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidApplication.NotFound', - 'errorMessage' => 'The current application does not exist.', - ], - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], + ['errorCode' => 'MseGatewayRule.CreateFailed', 'errorMessage' => 'Create MSE Gateway rule failed.', 'description' => '创建MSE微服务网关路由失败。'], + ['errorCode' => 'InternalApiError', 'errorMessage' => 'An exception occurred when calling mse:%s, error message: %s.', 'description' => '调用 mse:%s 接口异常,%s'], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"30375C38-F4ED-4135-A0AE-5C75DC7F****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"ac1a0b2215622920113732501e****\\",\\n \\"Data\\": [\\n {\\n \\"Tag\\": \\"g1\\\\n\\",\\n \\"Metadata\\": \\"{\\\\\\\\\\\\\\"tag\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"g1\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"priority\\\\\\\\\\\\\\":100,\\\\\\\\\\\\\\"type\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"tag\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"desc\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"sys-label\\\\\\\\\\\\\\"}\\\\n\\"\\n }\\n ],\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => '查询所有泳道标签列表', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:26.000Z', 'description' => 'OpenAPI 下线'], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"ac1a0b2215622246421415014e****\\",\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": \\"true\\",\\n \\"Data\\": {\\n \\"Instances\\": {\\n \\"key\\": {\\n \\"DnsName\\": \\"nlb-wb7r6dlwetvt5j****.cn-hangzhou.nlb.aliyuncs.com\\",\\n \\"Listeners\\": {\\n \\"key\\": {\\n \\"Protocol\\": \\"TCPSSL\\",\\n \\"Port\\": 80,\\n \\"Status\\": \\"Bounded\\",\\n \\"TargetPort\\": 8080,\\n \\"CertIds\\": \\"123157******\\"\\n }\\n },\\n \\"CreatedBySae\\": true\\n }\\n }\\n }\\n}","type":"json"}]', - 'title' => '查看应用绑定的NLB配置', - ], - 'BindNlb' => [ - 'summary' => '应用访问支持NLB', - 'path' => '/pop/v1/sam/app/nlb', - 'methods' => [ - 'post', + 'flowControl' => [ + 'flowControlList' => [], ], - 'schemes' => [ - 'https', + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'sae:ListSwimmingLaneGroupTags', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + ], + 'ListTagResources' => [ + 'path' => '/tags', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'create', - 'abilityTreeCode' => '259781', - 'abilityTreeNodes' => [ - 'FEATUREsaeBRTWZ3', - ], + 'operationType' => 'get', + 'abilityTreeCode' => '6379', + 'abilityTreeNodes' => ['FEATUREsaeD9PL61'], ], 'parameters' => [ [ - 'name' => 'AppId', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '目标应用ID。', - 'type' => 'string', - 'required' => false, - 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****', - ], + 'schema' => ['description' => '地域ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-beijing'], ], [ - 'name' => 'NlbId', - 'in' => 'query', - 'schema' => [ - 'description' => 'NLB实例ID', - 'type' => 'string', - 'required' => false, - 'example' => 'nlb-7z7jjbzz44d82c9***', - ], - ], - [ - 'name' => 'Listeners', + 'name' => 'ResourceType', 'in' => 'query', - 'schema' => [ - 'description' => '传入要操作的Listeners的JSON数组串,每个Listener的具体结构描述如下:'."\n" - ."\n" - .'- **Port**,Integer类型,必选,负载均衡监听端口。取值范围:0~65535。'."\n" - ."\n" - .'- **TargetPort**,Integer类型,必选,实例容器监听端口。取值范围:0~65535。'."\n" - ."\n" - .'- **Protocol**,String类型,必选,监听协议。取值:TCP、UDP 或 TCPSSL。'."\n" - ."\n" - .'- **CertIds**,String类型,可选,服务器证书列表信息。仅对 TCPSSL 监听生效。', - 'type' => 'string', - 'required' => false, - 'example' => '无', - ], + 'schema' => ['description' => '资源类型,仅支持`application`。', 'type' => 'string', 'required' => true, 'example' => 'application'], ], [ - 'name' => 'ZoneMappings', + 'name' => 'NextToken', 'in' => 'query', - 'schema' => [ - 'description' => '可用区及交换机映射列表的JSON字符串。最多支持添加 10 个可用区。若当前地域支持 2 个及以上的可用区,至少需要添加 2 个可用区。一个ZoneMapping结构为:'."\n" - ."\n" - .'- VSwitchId,String类型,可用区对应的交换机,每个可用区只能使用一台交换机和一个子网。'."\n" - ."\n" - .'- ZoneId,String类型,网络型负载均衡实例的可用区 ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'vsw-sersdf****'."\n" - .'cn-hangzhou-a', - ], + 'schema' => ['description' => '一次查询最多返回50条结果,当结果超过50条时,会同时返回一个NextToken,下一次查询使用该NextToken即可查询前50条结果之外的结果。', 'type' => 'string', 'required' => false, 'example' => 'A2RN'], ], [ - 'name' => 'AddressType', + 'name' => 'ResourceIds', 'in' => 'query', - 'schema' => [ - 'description' => '地址类型:'."\n" - .'- Internet:公网地址。'."\n" - .'- Intranet:私网地址。', - 'type' => 'string', - 'required' => false, - 'example' => 'Internet', - ], - ], - ], - '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' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a06dfe717389800573793090e0589', - ], - 'Data' => [ - 'description' => '返回结果。', - 'type' => 'object', - 'properties' => [ - 'ChangeOrderId' => [ - 'description' => '返回的发布单ID,用于查询任务执行状态。', - 'type' => 'string', - 'example' => 'ba386059-69b1-4e65-b1e5-0682d9fa****', - ], - ], - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => 'HTTP状态码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '批量停止应用是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:停止成功。'."\n" - .'- **false**:停止失败。', - 'type' => 'boolean', - 'example' => 'true', - ], - ], - ], - ], - ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a06dfe717389800573793090e0589\\",\\n \\"Data\\": {\\n \\"ChangeOrderId\\": \\"ba386059-69b1-4e65-b1e5-0682d9fa****\\"\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => '为应用绑定NLB', - ], - 'DescribeApplicationSlbs' => [ - 'path' => '/pop/v1/sam/app/slb', - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ - [ - 'AK' => [], - ], - ], - 'operationType' => 'read', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '6323', - 'abilityTreeNodes' => [ - 'FEATUREsaeBRTWZ3', + 'schema' => ['description' => '资源ID。可填写多个资源ID,用英文逗号(,)分隔。当您未输入**Tags**参数时必填。', 'type' => 'string', 'required' => false, 'example' => '["d42921c4-5433-4abd-8075-0e536f8b****"]'], ], - ], - 'parameters' => [ [ - 'name' => 'AppId', + 'name' => 'Tags', 'in' => 'query', - 'schema' => [ - 'description' => '目标应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '017f39b8-dfa4-4e16-a84b-1dcee4b1****', - ], + 'schema' => ['description' => '标签键值对,当您未输入**ResourceIds**参数时必填。取值说明如下:'."\n" + .'- **key**:标签键,字符长度范围\\[1,128]。'."\n" + .'- **value**:标签值,字符长度范围\\[1,128]。'."\n" + ."\n" + .'区分大小写。如果指定多个标签,则会为指定资源同时创建并绑定多个标签。同一个资源上的同一个标签键只能对应一个标签值。如果您尝试添加已有标签键,则对应的标签值会更新为新值。'."\n" + ."\n" + .'不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。', 'type' => 'string', 'required' => false, 'example' => '[{"key":"k1","value":"v1"}]'], ], ], 'responses' => [ @@ -30872,6266 +18344,4359 @@ 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '7414187F-4F59-4585-9BCF-5F0804E4****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,可用于精确查询调用信息。', 'type' => 'string', 'example' => '0bc5f84e15916043198032146d****'], 'Data' => [ - 'description' => '返回结果。', + 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'Intranet' => [ - 'description' => '内网SLB配置。', + 'NextToken' => ['description' => '一次查询最多返回50条结果,当结果超过50条时,会同时返回一个NextToken,下一次查询使用该NextToken即可查询前50条结果之外的结果。', 'type' => 'string', 'example' => '""'], + 'TagResources' => [ + 'description' => '应用和标签的对应关系。', 'type' => 'array', 'items' => [ - 'description' => '内网SLB配置详情。', + 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'HttpsCertId' => [ - 'description' => 'HTTPS协议对应的阿里云证书ID。', - 'type' => 'string', - 'example' => '1513561019707729_16f37aae5f3_-375882821_-169099****', - ], - 'Protocol' => [ - 'description' => '支持的协议。', - 'type' => 'string', - 'example' => 'TCP', - ], - 'TargetPort' => [ - 'description' => '容器端口。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '8080', - ], - 'Port' => [ - 'description' => 'SLB监听端口。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '80', - ], - 'HttpsCaCertId' => [ - 'description' => 'HTTPS协议对应的阿里云CA证书ID。', - 'type' => 'string', - 'example' => '1513561019707729_16f37aae5f3_-375882821_-169099****', - ], - 'StickySession' => [ - 'description' => '是否开启会话保持。', - 'type' => 'boolean', - 'example' => 'false', - ], - 'StickySessionType' => [ - 'description' => 'Cookie处理方式。取值:'."\n" - ."\n" - .'- **insert**:植入Cookie。客户端第一次访问时,负载均衡会在返回请求中植入Cookie,下次客户端携带此Cookie访问,负载均衡服务会将请求定向转发给之前记录到的后端服务器上。'."\n" - ."\n" - .'- **server**:重写Cookie。负载均衡发现用户自定义了Cookie,将会对原来的Cookie进行重写,下次客户端携带新的Cookie访问,负载均衡服务会将请求定向转发给之前记录到的后端服务器。'."\n" - ."\n" - .'> 当**StickySession**值为**on**时,该参数必选且有效。', - 'type' => 'string', - 'example' => 'insert', - ], - 'CookieTimeout' => [ - 'description' => 'Cookie超时时间。单位:秒。取值范围:**1**~**86400**。'."\n" - ."\n" - .'> 当**StickySession**为**on**且**StickySessionType**为**insert**时,该参数必选且有效。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '56', - ], - 'Cookie' => [ - 'description' => '服务器上配置的Cookie。'."\n" - ."\n" - .'长度为1~200个字符,只能包含ASCII英文字母和数字字符,不能包含半角逗号(,)、半角分号(;)或空格,不能以$开头。'."\n" - ."\n" - .'>当**StickySession**为**on**且**StickySessionType**为**server**时,该参数必选且有效。', - 'type' => 'string', - 'example' => 'wwe', - ], - 'CreateTime' => [ - 'description' => '规则被创建的时间戳。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1741247308294', - ], - 'VServerGroupId' => [ - 'type' => 'string', - ], - 'EnableConnectionDrain' => [ - 'type' => 'boolean', - ], - 'ConnectionDrainTimeout' => [ - 'type' => 'integer', - 'format' => 'int32', - ], + 'ResourceType' => ['description' => '资源类型,仅支持`application`。', 'type' => 'string', 'example' => 'ALIYUN::SAE::APPLICATION'], + 'TagValue' => ['description' => '标签值。', 'type' => 'string', 'example' => 'v1'], + 'ResourceId' => ['description' => '应用ID。', 'type' => 'string', 'example' => 'd42921c4-5433-4abd-8075-0e536f8b****'], + 'TagKey' => ['description' => '标签键。', 'type' => 'string', 'example' => 'k1'], ], ], ], - 'InternetIp' => [ - 'description' => '公网SLB地址。', - 'type' => 'string', - 'example' => '59.74.**.**', - ], - 'InternetSlbId' => [ - 'description' => '公网SLB ID。', - 'type' => 'string', - 'example' => 'lb-uf6xc7wybefehnv45****', - ], - 'Internet' => [ - 'description' => '公网SLB配置。', - 'type' => 'array', - 'items' => [ - 'description' => '公网SLB配置详情。', - 'type' => 'object', - 'properties' => [ - 'HttpsCertId' => [ - 'description' => 'HTTPS协议对应的阿里云证书ID。', - 'type' => 'string', - 'example' => '1513561019707729_16f37aae5f3_-375882821_-169099****', - ], - 'Protocol' => [ - 'description' => '支持的协议。', - 'type' => 'string', - 'example' => 'TCP', - ], - 'TargetPort' => [ - 'description' => '容器端口。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '8080', - ], - 'Port' => [ - 'description' => 'SLB监听端口。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '80', - ], - 'HttpsCaCertId' => [ - 'description' => 'HTTPS协议对应的阿里云CA证书ID。', - 'type' => 'string', - 'example' => '1513561019707729_16f37aae5f3_-375882821_-169099****', - ], - 'StickySession' => [ - 'description' => '是否开启会话保持。', - 'type' => 'boolean', - 'example' => 'false', - ], - 'StickySessionType' => [ - 'description' => 'Cookie处理方式。取值:'."\n" - ."\n" - .'- **insert**:植入Cookie。客户端第一次访问时,负载均衡会在返回请求中植入Cookie,下次客户端携带此Cookie访问,负载均衡服务会将请求定向转发给之前记录到的后端服务器上。'."\n" - ."\n" - .'- **server**:重写Cookie。负载均衡发现用户自定义了Cookie,将会对原来的Cookie进行重写,下次客户端携带新的Cookie访问,负载均衡服务会将请求定向转发给之前记录到的后端服务器。'."\n" - ."\n" - .'> 当**StickySession**值为**on**时,该参数必选且有效。', - 'type' => 'string', - 'example' => 'insert', - ], - 'CookieTimeout' => [ - 'description' => 'Cookie超时时间。单位:秒。取值范围:**1**~**86400**。'."\n" - ."\n" - .'> 当**StickySession**为**on**且**StickySessionType**为**insert**时,该参数必选且有效。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '56', - ], - 'Cookie' => [ - 'description' => '服务器上配置的Cookie。'."\n" - ."\n" - .'长度为1~200个字符,只能包含ASCII英文字母和数字字符,不能包含半角逗号(,)、半角分号(;)或空格,不能以$开头。'."\n" - ."\n" - .'>当**StickySession**为**on**且**StickySessionType**为**server**时,该参数必选且有效。', - 'type' => 'string', - 'example' => 'wwe', - ], - 'CreateTime' => [ - 'description' => '规则被创建的时间戳。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1741247308294'."\n", - ], - 'VServerGroupId' => [ - 'type' => 'string', - ], - 'EnableConnectionDrain' => [ - 'type' => 'boolean', - ], - 'ConnectionDrainTimeout' => [ - 'type' => 'integer', - 'format' => 'int32', - ], - ], - ], - ], - 'IntranetSlbId' => [ - 'description' => '内网SLB ID。', - 'type' => 'string', - 'example' => 'lb-uf6xc7wybefehnv45****', - ], - 'IntranetIp' => [ - 'description' => '内网SLB地址。', - 'type' => 'string', - 'example' => '192.168.XX.XX', - ], - 'InternetSlbExpired' => [ - 'description' => '公网SLB是否已过期。', - 'type' => 'boolean', - 'example' => 'false', - ], - 'IntranetSlbExpired' => [ - 'description' => '私网SLB是否已过期。', - 'type' => 'boolean', - 'example' => 'false', - ], - 'InternetSlbChargeType' => [ - 'description' => '公网负载均衡的计费方式。', - 'type' => 'string', - 'example' => 'PayBySpec', - ], - 'IntranetSlbChargeType' => [ - 'description' => '内网负载均衡的计费方式。', - 'type' => 'string', - 'example' => 'PayBySpec', - ], - 'AppId' => [ - 'type' => 'string', - ], - 'AppName' => [ - 'type' => 'string', - ], - 'ClusterId' => [ - 'type' => 'string', - ], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '获取应用SLB配置信息是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:获取成功。'."\n" - ."\n" - .'- **false**:获取失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '查询应用和标签的对应关系是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:查询成功。'."\n" + .'- **false**:查询失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidApplication.NotFound', - 'errorMessage' => 'The current application does not exist.', - ], - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidResourceType.NotFound', 'errorMessage' => 'The specified resource type is not supported.', 'description' => '不支持指定的资源类型。'], + ['errorCode' => 'NumberExceed.Tags', 'errorMessage' => 'The specified parameter Tags count exceed.', 'description' => '单个资源最大Tag数超限,最大20个标签。'], + ['errorCode' => 'Invalid.Param.Tag.Scope', 'errorMessage' => 'The specified parameter is invalid: tag scope.', 'description' => 'scope参数有误。'], + ['errorCode' => 'No.Permission', 'errorMessage' => 'The account has no permission.', 'description' => '该账号没有操作权限。'], + ['errorCode' => 'NumberExceed.ResourceIds', 'errorMessage' => 'The number of resource IDs cannot exceed 50.', 'description' => '资源ID个数不能超过50。'], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"Intranet\\": [\\n {\\n \\"HttpsCertId\\": \\"1513561019707729_16f37aae5f3_-375882821_-169099****\\",\\n \\"Protocol\\": \\"TCP\\",\\n \\"TargetPort\\": 8080,\\n \\"Port\\": 80,\\n \\"HttpsCaCertId\\": \\"1513561019707729_16f37aae5f3_-375882821_-169099****\\",\\n \\"StickySession\\": false,\\n \\"StickySessionType\\": \\"insert\\",\\n \\"CookieTimeout\\": 56,\\n \\"Cookie\\": \\"wwe\\",\\n \\"CreateTime\\": 1741247308294,\\n \\"VServerGroupId\\": \\"\\",\\n \\"EnableConnectionDrain\\": true,\\n \\"ConnectionDrainTimeout\\": 0\\n }\\n ],\\n \\"InternetIp\\": \\"59.74.**.**\\",\\n \\"InternetSlbId\\": \\"lb-uf6xc7wybefehnv45****\\",\\n \\"Internet\\": [\\n {\\n \\"HttpsCertId\\": \\"1513561019707729_16f37aae5f3_-375882821_-169099****\\",\\n \\"Protocol\\": \\"TCP\\",\\n \\"TargetPort\\": 8080,\\n \\"Port\\": 80,\\n \\"HttpsCaCertId\\": \\"1513561019707729_16f37aae5f3_-375882821_-169099****\\",\\n \\"StickySession\\": false,\\n \\"StickySessionType\\": \\"insert\\",\\n \\"CookieTimeout\\": 56,\\n \\"Cookie\\": \\"wwe\\",\\n \\"CreateTime\\": 1741247308294,\\n \\"VServerGroupId\\": \\"\\",\\n \\"EnableConnectionDrain\\": true,\\n \\"ConnectionDrainTimeout\\": 0\\n }\\n ],\\n \\"IntranetSlbId\\": \\"lb-uf6xc7wybefehnv45****\\",\\n \\"IntranetIp\\": \\"192.168.XX.XX\\",\\n \\"InternetSlbExpired\\": false,\\n \\"IntranetSlbExpired\\": false,\\n \\"InternetSlbChargeType\\": \\"PayBySpec\\",\\n \\"IntranetSlbChargeType\\": \\"PayBySpec\\",\\n \\"AppId\\": \\"\\",\\n \\"AppName\\": \\"\\",\\n \\"ClusterId\\": \\"\\"\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeApplicationSlbsResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <Intranet>\\n <HttpsCertId>1513561019707729_16f37aae5f3_-375882821_-169099****</HttpsCertId>\\n <Protocol>TCP</Protocol>\\n <TargetPort>8080</TargetPort>\\n <Port>80</Port>\\n </Intranet>\\n <InternetIp>59.74.**.**</InternetIp>\\n <InternetSlbId>lb-uf6xc7wybefehnv45****</InternetSlbId>\\n <Internet>\\n <HttpsCertId>1513561019707729_16f37aae5f3_-375882821_-169099****</HttpsCertId>\\n <Protocol>TCP</Protocol>\\n <TargetPort>8080</TargetPort>\\n <Port>80</Port>\\n </Internet>\\n <IntranetSlbId>lb-uf6xc7wybefehnv45****</IntranetSlbId>\\n <IntranetIp>192.168.0.0</IntranetIp>\\n <InternetSlbExpired>false</InternetSlbExpired>\\n <IntranetSlbExpired>false</IntranetSlbExpired>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeApplicationSlbsResponse>","errorExample":""}]', - 'title' => '获取应用SLB配置信息', - 'summary' => '获取应用SLB配置信息。', - ], - 'BindSlb' => [ - 'path' => '/pop/v1/sam/app/slb', - 'methods' => [ - 'post', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"7414187F-4F59-4585-9BCF-5F0804E4****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0bc5f84e15916043198032146d****\\",\\n \\"Data\\": {\\n \\"NextToken\\": \\"\\\\\\"\\\\\\"\\",\\n \\"TagResources\\": [\\n {\\n \\"ResourceType\\": \\"ALIYUN::SAE::APPLICATION\\",\\n \\"TagValue\\": \\"v1\\",\\n \\"ResourceId\\": \\"d42921c4-5433-4abd-8075-0e536f8b****\\",\\n \\"TagKey\\": \\"k1\\"\\n }\\n ]\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<ListTagResourcesResponse>\\n <RequestId>7414187F-4F59-4585-9BCF-5F0804E4****</RequestId>\\n <Message>success</Message>\\n <TraceId>0bc5f84e15916043198032146d****</TraceId>\\n <Data>\\n <NextToken>\\"\\"</NextToken>\\n <TagResources>\\n <ResourceType>ALIYUN::SAE::APPLICATION</ResourceType>\\n <TagValue>v1</TagValue>\\n <ResourceId>d42921c4-5433-4abd-8075-0e536f8b****</ResourceId>\\n <TagKey>k1</TagKey>\\n </TagResources>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</ListTagResourcesResponse>","errorExample":""}]', + 'title' => '查询应用和标签的对应关系', + 'summary' => '调用ListTagResources接口查询应用和标签的对应关系。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:26.000Z', 'description' => 'OpenAPI 下线'], ], - 'schemes' => [ - 'http', - 'https', + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:ListTagResources', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + ], + 'ListWebApplicationInstances' => [ + 'summary' => '查看Web应用实例列表。', + 'path' => '/pop/v2/api/web/applications-observability/{ApplicationId}/instances', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], + 'tags' => [], 'security' => [ [ 'AK' => [], ], ], + 'consumes' => ['application/json'], + 'produces' => ['application/json'], 'operationType' => 'readAndWrite', - 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'create', - 'abilityTreeCode' => '6297', - 'abilityTreeNodes' => [ - 'FEATUREsaeD9PL61', - ], + 'operationType' => 'list', + 'abilityTreeCode' => '225949', + 'abilityTreeNodes' => ['FEATUREsaeUWY6ZL'], ], 'parameters' => [ [ - 'name' => 'AppId', + 'name' => 'NamespaceId', 'in' => 'query', - 'schema' => [ - 'description' => '需要绑定SLB的目标应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****', - ], + 'allowEmptyValue' => false, + 'schema' => ['title' => '命名空间ID', 'description' => '命名空间ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], ], [ - 'name' => 'Internet', + 'name' => 'ApplicationId', + 'in' => 'path', + 'allowEmptyValue' => false, + 'schema' => ['title' => '应用ID', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => '614a6500-fddb-464d-a549-408a07******'], + ], + [ + 'name' => 'InstanceIds', 'in' => 'query', + 'style' => 'json', 'schema' => [ - 'description' => '绑定公网SLB。例如:\\[{"port":80,"targetPort":8080,"protocol":"TCP"}\\],表示通过TCP协议,将容器的8080端口通过SLB的80端口暴露服务。取值说明如下:'."\n" - ."\n" - .'- **port**:SLB端口。'."\n" - .'- **targetPort**:容器端口。'."\n" - .'- **protocol**:网络协议。支持**TCP**、**HTTP**和**HTTPS**。'."\n" - .'- **httpsCertId**:SSL证书。仅限选择**HTTPS**时需配置SSL证书。'."\n", - 'type' => 'string', + 'description' => '实例ID。', + 'type' => 'array', + 'items' => ['description' => '实例ID。可填写多个实例ID,用英文逗号(,)分隔。', 'type' => 'string', 'required' => false, 'example' => 'c-668727a8-17d86664-41e5bb******,c-668727a8-17d86664-7e4958******'], 'required' => false, - 'example' => '[{"port":80,"targetPort":8080,"protocol":"TCP"}]', + 'example' => 'c-667d143a-17b4e0fa-46d3a2******', ], ], [ - 'name' => 'Intranet', + 'name' => 'VersionIds', 'in' => 'query', + 'style' => 'json', 'schema' => [ - 'description' => '绑定私网SLB。例如:\\[{"port":80,"targetPort":8080,"protocol":"TCP"}\\],表示通过TCP协议,将容器的8080端口通过SLB的80端口暴露服务。取值说明如下:'."\n" - ."\n" - .'- **port**:SLB端口。'."\n" - .'- **targetPort**:容器端口。'."\n" - .'- **protocol**:网络协议。支持**TCP**、**HTTP**和**HTTPS**。'."\n" - .'- **httpsCertId**:SSL证书。仅限选择**HTTPS**时需配置SSL证书。', - 'type' => 'string', + 'description' => '应用版本ID。', + 'type' => 'array', + 'items' => ['description' => '凭据的版本信息列表。', 'type' => 'string', 'required' => false, 'example' => '001'], 'required' => false, - 'example' => '[{"port":80,"targetPort":8080,"protocol":"TCP"}]', + 'example' => '001', ], ], [ - 'name' => 'InternetSlbId', + 'name' => 'Statuses', 'in' => 'query', + 'style' => 'json', 'schema' => [ - 'description' => '使用指定的已购买的公网SLB,支持非共享型实例。', - 'type' => 'string', + 'description' => '应用实例状态。', + 'type' => 'array', + 'items' => ['description' => '应用实例状态:'."\n" + ."\n" + .'- Busy:表示正在处理请求。'."\n" + ."\n" + .'- Idle:表示实例已准备就绪,处于待命状态。', 'type' => 'string', 'required' => false, 'example' => 'Busy'], 'required' => false, - 'example' => 'lb-bp1tg0k6d9nqaw7l1****', + 'example' => 'Running', ], ], [ - 'name' => 'IntranetSlbId', + 'name' => 'Limit', 'in' => 'query', - 'schema' => [ - 'description' => '使用指定的已购买的私网SLB,支持非共享型实例。', - 'type' => 'string', - 'required' => false, - 'example' => 'lb-bp1tg0k6d9nqaw7l1****', - ], + 'schema' => ['description' => '返回的实例数量。', 'type' => 'string', 'required' => false, 'example' => '10'], ], [ - 'name' => 'InternetSlbChargeType', + 'name' => 'StartTime', 'in' => 'query', - 'schema' => [ - 'description' => '公网负载均衡的计费方式。支持以下两种计费方式:'."\n" - ."\n" - .'- **PayBySpec**:表示按规格计费。'."\n" - .'- **PayByCLCU**:表示按使用量计费。', - 'type' => 'string', - 'required' => false, - 'example' => 'PayBySpec', - ], + 'schema' => ['description' => '任务的创建时间。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1562831689704'], ], [ - 'name' => 'IntranetSlbChargeType', + 'name' => 'EndTime', 'in' => 'query', - 'schema' => [ - 'description' => '内网负载均衡的计费方式。支持以下两种计费方式:'."\n" - ."\n" - .'- **PayBySpec**:表示按规格计费。'."\n" - .'- **PayByCLCU**:表示按使用量计费。', - 'type' => 'string', - 'required' => false, - 'example' => 'PayBySpec', - ], + 'schema' => ['description' => '操作结束时间。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1715567192'], ], ], 'responses' => [ 200 => [ - 'schema' => [ - 'description' => '返回数据。', - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '调用结果的附加信息。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,可用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], - 'Data' => [ - 'description' => '返回结果。', - 'type' => 'object', - 'properties' => [ - 'ChangeOrderId' => [ - 'description' => '返回的发布单ID,用于查询任务执行状态。', - 'type' => 'string', - 'example' => '01db03d3-3ee9-48b3-b3d0-dfce2d88****', - ], - ], - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '绑定SLB是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:绑定成功。'."\n" - .'- **false**:绑定失败。', - 'type' => 'boolean', - 'example' => 'true', - ], - ], - ], + 'description' => '返回信息', + 'schema' => ['title' => '返回信息', 'description' => '返回信息。', 'required' => false, '$ref' => '#/components/schemas/ListWebApplicationInstancesBody'], + 'examples' => [], ], ], - 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'Slb.NotFound', - 'errorMessage' => 'The SLB instance does not exist: slbId [%s]', - ], - [ - 'errorCode' => 'InvalidApplication.NotFound', - 'errorMessage' => 'The current application does not exist.', - ], - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'SlbHttpsCert.NotConsistent', - 'errorMessage' => 'The HTTPS listening certificate for each listener must match.', - ], - [ - 'errorCode' => 'SlbHttpsCert.NotFound', - 'errorMessage' => 'You must configure the certificate before you configure HTTPS listening for the SLB instance.', - ], - [ - 'errorCode' => 'SlbListenerPort.NotAvailable', - 'errorMessage' => 'The SLB listening port is unavailable: slbId [%s], port [%s]', - ], - [ - 'errorCode' => 'SlbListenerType.Invalid', - 'errorMessage' => 'An SLB listener type error occurred. Only HTTPS and TCP are supported.', - ], - [ - 'errorCode' => 'SlbSpec.NotSupport', - 'errorMessage' => 'Shared performance SLB instances are not supported.', - ], - [ - 'errorCode' => 'SlbType.Invalid', - 'errorMessage' => 'An SLB network type error occurred.', - ], - [ - 'errorCode' => 'SSLCert.NotFound', - 'errorMessage' => 'The specified SSL certificate cannot be found.', - ], - [ - 'errorCode' => 'System.Upgrading', - 'errorMessage' => 'The system is being upgraded. Please try again later.', - ], - [ - 'errorCode' => 'Application.ChangerOrderRunning', - 'errorMessage' => 'An application change process is in progress. Please try again later.', - ], - [ - 'errorCode' => 'Application.InvalidStatus', - 'errorMessage' => 'The application status is abnormal. Please try again later.', - ], - [ - 'errorCode' => 'Application.NotDeployYet', - 'errorMessage' => 'The application has not been deployed. Please deploy it and try again.', - ], - [ - 'errorCode' => 'InvalidParam.ProtocolNotSupport', - 'errorMessage' => 'Only TCP protocol is supported.', - ], - [ - 'errorCode' => 'SLBInstanceQuota.OverQuota', - 'errorMessage' => 'The total number of SLB instances exceeds the quota. Please reduce the instances and try again.', - ], - [ - 'errorCode' => 'Slb.Tag.Not.Qualified', - 'errorMessage' => 'The current SLB instance cannot be reused because it may have been occupied by %s.', - ], - [ - 'errorCode' => 'Application.NoInstanceAvailable', - 'errorMessage' => 'No instance is available for the application. Please scale out and try again.', - ], - [ - 'errorCode' => 'SlbAppVSwitch.NotMatch', - 'errorMessage' => 'The SLB instance does not match the vSwitch of the current application.', - ], - ], - 404 => [ - [ - 'errorCode' => 'InvalidAppId.NotFound', - 'errorMessage' => 'The specified AppId does not exist.', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Data\\": {\\n \\"WebInstances\\": [\\n {\\n \\"InstanceId\\": \\"c-66691780-1522405d-3021e1******\\",\\n \\"VersionId\\": \\"1\\",\\n \\"ImageUrl\\": \\"registry.cn-hangzhou.aliyuncs.com/sae_test/******:0.0.1\\",\\n \\"Status\\": \\"Idle\\"\\n }\\n ],\\n \\"CurrentError\\": \\"无\\",\\n \\"WebVersionStatus\\": {\\n \\"key\\": {\\n \\"ErrorMessage\\": \\"空\\",\\n \\"Status\\": \\"Completed\\"\\n }\\n }\\n },\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => '查看Web应用实例列表', + 'description' => '查看Web应用实例列表。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:04.000Z', 'description' => 'OpenAPI 下线'], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'sae:ListWebApplicationInstances', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"ChangeOrderId\\": \\"01db03d3-3ee9-48b3-b3d0-dfce2d88****\\"\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<BindSlbResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <ChangeOrderId>01db03d3-3ee9-48b3-b3d0-dfce2d88****</ChangeOrderId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</BindSlbResponse>","errorExample":""}]', - 'title' => '为应用绑定SLB', - 'summary' => '为应用绑定SLB。', ], - 'UnbindSlb' => [ - 'path' => '/pop/v1/sam/app/slb', - 'methods' => [ - 'delete', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'ListWebApplicationRevisions' => [ + 'path' => '/pop/v2/api/web/application-revisions/{ApplicationId}/revisions', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], + 'tags' => [], 'security' => [ [ 'AK' => [], ], ], + 'consumes' => ['application/json'], + 'produces' => ['application/json'], 'operationType' => 'readAndWrite', - 'deprecated' => false, 'systemTags' => [ - 'abilityTreeCode' => '6395', - 'abilityTreeNodes' => [ - 'FEATUREsaeD9PL61', - ], + 'operationType' => 'list', + 'abilityTreeCode' => '225950', + 'abilityTreeNodes' => ['FEATUREsae37J6Z9'], ], 'parameters' => [ [ - 'name' => 'AppId', + 'name' => 'NamespaceId', 'in' => 'query', - 'schema' => [ - 'description' => '目标应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****', - ], + 'allowEmptyValue' => false, + 'schema' => ['title' => '命名空间ID', 'description' => '命名空间ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-shanghai'], ], [ - 'name' => 'Internet', + 'name' => 'ApplicationId', + 'in' => 'path', + 'allowEmptyValue' => false, + 'schema' => ['title' => '应用ID', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => '7e41aff0-9eca-45c9-ac48-675e09******'], + ], + [ + 'name' => 'NextToken', 'in' => 'query', - 'schema' => [ - 'description' => '是否解绑公网SLB。取值说明如下:'."\n" - ."\n" - .'- **true**:表示解绑公网SLB。'."\n" - .'- **false**:表示不解绑公网SLB。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - 'default' => 'false', - ], + 'allowEmptyValue' => true, + 'schema' => ['title' => '分页起始标记', 'description' => '分页起始标记。', 'type' => 'string', 'required' => false, 'example' => '1'], ], [ - 'name' => 'Intranet', + 'name' => 'Limit', 'in' => 'query', - 'schema' => [ - 'description' => '是否解绑私网SLB。取值说明如下:'."\n" - ."\n" - .'- **true**:表示解绑私网SLB。'."\n" - .'- **false**:表示不解绑私网SLB。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - 'default' => 'false', - ], + 'allowEmptyValue' => true, + 'schema' => ['title' => '返回的应用数量', 'description' => '返回的应用数量。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], ], ], 'responses' => [ 200 => [ - 'schema' => [ - 'description' => '返回数据。', - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], - 'Data' => [ - 'description' => '返回结果。', - 'type' => 'object', - 'properties' => [ - 'ChangeOrderId' => [ - 'description' => '返回的发布单ID,用于查询任务执行状态。', - 'type' => 'string', - 'example' => '4a815998-b468-4bea-b7d8-59f52a44****', - ], - ], - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '解绑内网或公网SLB是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:解绑成功。'."\n" - .'- **false**:解绑失败。', - 'type' => 'boolean', - 'example' => 'true', - ], - ], - ], + 'schema' => ['title' => '返回信息', 'description' => '返回信息。', 'required' => false, '$ref' => '#/components/schemas/ListWebApplicationRevisionsBody'], + 'examples' => [], ], ], - 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'InvalidApplication.NotFound', - 'errorMessage' => 'The current application does not exist.', - ], - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], - [ - 'errorCode' => 'System.Upgrading', - 'errorMessage' => 'The system is being upgraded. Please try again later.', - ], - [ - 'errorCode' => 'Application.ChangerOrderRunning', - 'errorMessage' => 'An application change process is in progress. Please try again later.', - ], - [ - 'errorCode' => 'Application.InvalidStatus', - 'errorMessage' => 'The application status is abnormal. Please try again later.', - ], - [ - 'errorCode' => 'Application.NotDeployYet', - 'errorMessage' => 'The application has not been deployed. Please deploy it and try again.', + 'title' => '查询Web应用版本列表', + 'summary' => '查询Web应用版本列表。', + 'description' => '查询Web应用版本列表。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:03.000Z', 'description' => 'OpenAPI 下线'], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'sae:ListWebApplicationRevisions', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"ChangeOrderId\\": \\"4a815998-b468-4bea-b7d8-59f52a44****\\"\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<UnbindSlbResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <ChangeOrderId>4a815998-b468-4bea-b7d8-59f52a44****</ChangeOrderId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</UnbindSlbResponse>","errorExample":""}]', - 'title' => '解绑内网或公网SLB', - 'summary' => '调用UnbindSlb接口解绑私网或公网SLB。', ], - 'UnbindNlb' => [ - 'summary' => '调用UnbindNlb删除应用访问绑定的NLB监听', - 'path' => '/pop/v1/sam/app/nlb', - 'methods' => [ - 'delete', - ], - 'schemes' => [ - 'https', - ], + 'ListWebApplications' => [ + 'summary' => '获取Web应用列表。', + 'path' => '/pop/v2/api/web/applications', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], + 'tags' => [], 'security' => [ [ 'AK' => [], ], ], + 'consumes' => ['application/json'], + 'produces' => ['application/json'], 'operationType' => 'readAndWrite', - 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'none', - 'abilityTreeCode' => '261343', - 'abilityTreeNodes' => [ - 'FEATUREsaeBRTWZ3', - ], + 'operationType' => 'list', + 'abilityTreeCode' => '181738', + 'abilityTreeNodes' => ['FEATUREsaeUWY6ZL'], ], 'parameters' => [ [ - 'name' => 'AppId', + 'name' => 'NamespaceId', 'in' => 'query', - 'schema' => [ - 'title' => 'A short description of struct', - 'description' => 'A short description of struct', - 'type' => 'string', - 'required' => false, - 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****', - ], + 'allowEmptyValue' => false, + 'schema' => ['title' => '命名空间ID', 'description' => '命名空间ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-beijing:test'], ], [ - 'name' => 'NlbId', + 'name' => 'Prefix', 'in' => 'query', - 'schema' => [ - 'description' => 'NLB实例ID', - 'type' => 'string', - 'required' => false, - 'example' => 'nlb-7z7jjbzz44d82c9***', - ], + 'allowEmptyValue' => true, + 'schema' => ['title' => '应用名前缀', 'description' => '应用名前缀。', 'type' => 'string', 'required' => false, 'example' => 'my-application'], ], [ - 'name' => 'Protocol', + 'name' => 'NextToken', 'in' => 'query', - 'schema' => [ - 'description' => '协议类型。取值:'."\n" - ."\n" - .'- **TCP**。'."\n" - .'- **UDP**。'."\n" - .'- **TCPSSL**。', - 'type' => 'string', - 'required' => false, - 'example' => 'TCP', - ], + 'allowEmptyValue' => true, + 'schema' => ['title' => '分页起始标记', 'description' => '分页起始标记。', 'type' => 'string', 'required' => false, 'example' => 'MTIzNCNhYmM'], ], [ - 'name' => 'Port', + 'name' => 'Limit', 'in' => 'query', - 'schema' => [ - 'description' => '监听端口。取值范围:0~65535。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '3306', - ], + 'allowEmptyValue' => true, + 'schema' => ['title' => '返回的应用数量', 'description' => '返回的应用数量。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], ], ], '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' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a981dd515966966104121683d****', - ], - 'Data' => [ - 'description' => '返回结果。', - 'type' => 'object', - 'properties' => [ - 'ChangeOrderId' => [ - 'description' => '返回的发布单ID,用于查询任务执行状态。', - 'type' => 'string', - 'example' => 'ba386059-69b1-4e65-b1e5-0682d9fa****', - ], - ], - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码,取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '解绑内网或公网NLB是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:解绑成功。'."\n" - ."\n" - .'- **false**:解绑失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'description' => '返回信息', + 'schema' => ['title' => '返回信息', 'description' => '返回信息。', 'required' => false, '$ref' => '#/components/schemas/ListWebApplicationsBody'], + 'examples' => [], + ], + ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => '获取Web应用列表', + 'description' => '调用ListWebApplications接口获取Web应用列表。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:02.000Z', 'description' => 'OpenAPI 下线'], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'sae:ListWebApplications', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a981dd515966966104121683d****\\",\\n \\"Data\\": {\\n \\"ChangeOrderId\\": \\"ba386059-69b1-4e65-b1e5-0682d9fa****\\"\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => '应用访问删除NLB监听', ], - 'CreateApplicationScalingRule' => [ - 'path' => '/pop/v1/sam/scale/applicationScalingRule', - 'methods' => [ - 'post', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'ListWebCustomDomains' => [ + 'summary' => '获取自定义域名列表。', + 'path' => '/pop/v2/api/web/custom-domains', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], + 'tags' => [], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', - 'deprecated' => false, + 'consumes' => ['application/json'], + 'produces' => ['application/json'], + 'operationType' => 'readAndWrite', 'systemTags' => [ - 'operationType' => 'create', - 'abilityTreeCode' => '6304', - 'abilityTreeNodes' => [ - 'FEATUREsae5HLO11', - ], + 'operationType' => 'list', + 'abilityTreeCode' => '225952', + 'abilityTreeNodes' => ['FEATUREsae5U7VP0'], ], 'parameters' => [ [ - 'name' => 'AppId', + 'name' => 'NamespaceId', 'in' => 'query', - 'schema' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****', - ], + 'allowEmptyValue' => false, + 'schema' => ['title' => '命名空间ID', 'description' => '命名空间ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou'], ], [ - 'name' => 'ScalingRuleName', + 'name' => 'ApplicationId', 'in' => 'query', - 'schema' => [ - 'description' => '自定义的弹性伸缩策略名。应用内,策略名称不可重复,必须以小写字母开头,仅可包含小写字母、数字及短划线(-),不超过32个字符。'."\n" - .'> 弹性伸缩策略创建成功后,不可修改策略名。', - 'type' => 'string', - 'required' => true, - 'example' => 'timer-0800-2100', - ], + 'allowEmptyValue' => true, + 'schema' => ['title' => '应用ID', 'description' => '应用ID。', 'type' => 'string', 'required' => false, 'example' => '7e41aff0-9eca-45c9-ac48-675e09******'], ], [ - 'name' => 'ScalingRuleType', + 'name' => 'Prefix', 'in' => 'query', - 'schema' => [ - 'description' => '弹性伸缩策略类型。取值说明如下:'."\n" - ."\n" - .'- **timing**:定时弹性。'."\n" - .'- **metric**:监控指标弹性。'."\n" - ."\n" - .'- **mix**:混合弹性。'."\n" - ."\n" - .'>'."\n" - .'> - 如果选择定时弹性,ScalingRuleTimer字段为必填项。'."\n" - .'> - 如果选择监控指标弹性,ScalingRuleMetric字段为必填项。'."\n" - .'> - 如果选择混合弹性,ScalingRuleMetric字段为必填项,ScalingRuleTimer字段和ScalingRuleMetric字段也可以按需同时填写。', - 'type' => 'string', - 'required' => true, - 'example' => 'timing', - ], + 'allowEmptyValue' => true, + 'schema' => ['title' => '自定义域名查询前缀', 'description' => '自定义域名查询前缀。', 'type' => 'string', 'required' => false, 'example' => 'remoteresult'], ], [ - 'name' => 'ScalingRuleTimer', + 'name' => 'NextToken', 'in' => 'query', - 'schema' => [ - 'description' => '定时弹性策略的配置。当您选择定时弹性策略或使用SDK设置时,该参数必选。'."\n" - ."\n" - .'参数说明如下:'."\n" - .'- **beginDate**和**endDate**:**beginDate**为起始日期,**endDate**为结束日期,用于配置定时弹性伸缩策略的时间。取值说明如下:'."\n" - ."\n" - .' - 当取值均为**null**时,表示长期执行,为默认值。'."\n" - .' - 当取值为具体日期时,例如**beginDate**为**2021-03-25**,**endDate**为**2021-04-25**,表示执行有效期为1个月。'."\n" - ."\n" - .'- **period**:执行定时弹性伸缩策略的周期。取值说明如下:'."\n" - .' - **\\* \\* \\***:每天指定时间执行定时策略。'."\n" - .' - **\\* \\* Fri,Mon**:每周指定天数的指定时间执行定时策略,支持多选,GMT+8时区。取值说明如下: '."\n" - .' - **Sun**:星期日'."\n" - .' - **Mon**:星期一'."\n" - .' - **Tue**:星期二'."\n" - .' - **Wed**:星期三'."\n" - .' - **Thu**:星期四'."\n" - .' - **Fri**:星期五'."\n" - .' - **Sat**:星期六'."\n" - .' - **1,2,3,28,31 \\* \\***:每月指定日期的指定时间执行定时策略,支持多选。取值范围\\[1,31\\]。若当月无31日,则跳过该日期执行定时策略。'."\n" - .'- **schedules**:弹性伸缩策略触发的时间,以及该时间段内需要保持的应用实例数。最多支持20个时间点。参数说明如下:'."\n" - .' - **atTime**:触发时间点。支持格式**时:分**,例如**08:00**。'."\n" - .' - **targetReplicas**:该参数可以指定应用的实例数,也可以是每次部署最小存活的实例数。取值范围\\[1,50\\]。'."\n" - .' > 每次滚动部署最小存活的实例数建议大于等于**1**,保证业务不中断。如果设置为**0**,应用在升级过程中将会中断业务。', - 'type' => 'string', - 'required' => false, - 'example' => '{"beginDate":null,"endDate":null,"period":"* * *","schedules":[{"atTime":"08:00","targetReplicas":10},{"atTime":"20:00","targetReplicas":3}]}', - ], + 'allowEmptyValue' => true, + 'schema' => ['title' => '分页起始标记', 'description' => '分页起始标记。', 'type' => 'string', 'required' => false, 'example' => 'A2RN'], ], [ - 'name' => 'ScalingRuleMetric', + 'name' => 'Limit', 'in' => 'query', - 'schema' => [ - 'description' => '监控指标弹性策略的配置。当您选择监控指标弹性策略设置时,该参数必选。'."\n" - ."\n" - .'参数说明如下:'."\n" - ."\n" - .'- **maxReplicas**:应用最大实例数。'."\n" - .'- **minReplicas**:应用最小实例数。'."\n" - .'- **metricType**:监控指标触发条件。'."\n" - .' - **CPU**:CPU使用率。'."\n" - .' - **MEMORY**:内存使用率。'."\n" - .' - **QPS**:JAVA应用1分钟内单个实例的平均QPS。'."\n" - .' - **RT**:JAVA应用1分钟内应用所有服务接口平均RT值。'."\n" - .' - **tcpActiveConn**:30秒内单个实例的平均TCP活跃连接数。'."\n" - .' - **SLB\\_QPS**:15秒内单个实例的平均公网SLB QPS。'."\n" - .' - **SLB\\_RT**:15秒内公网SLB平均响应时间。'."\n" - .' - **INTRANET\\_SLB\\_QPS**:15秒内单个实例的平均私网SLB QPS。'."\n" - .' - **INTRANET\\_SLB\\_RT**:15秒内私网SLB平均响应时间。'."\n" - .'- **metricTargetAverageUtilization**:根据不同的**metricType**,设置对应的监控指标的目标值。'."\n" - .' - CPU使用率目标值,单位为百分比。'."\n" - .' - 内存使用率目标值,单位为百分比。'."\n" - .' - QPS,单位为秒。'."\n" - .' - 响应时间,单位为毫秒。'."\n" - .' - TCP活跃连接数平均值,单位为个/秒。'."\n" - .' - 公网SLB QPS,单位为秒。'."\n" - .' - 公网SLB响应时间,单位为毫秒。'."\n" - .' - 私网SLB QPS,单位为秒。'."\n" - .' - 私网SLB响应时间,单位为毫秒。'."\n" - .'- **slbId**:SLB ID。'."\n" - .'- **slbProject**:日志服务Project。'."\n" - .'- **slbLogstore**:日志服务Logstore。'."\n" - .'- **vport**:SLB监听端口,支持HTTP协议和HTTPS协议。'."\n" - .'- **scaleUpRules**:应用扩容规则。'."\n" - .'- **scaleDownRules**:应用缩容规则。'."\n" - .'- **step**:弹性扩容或缩容步长。单位时间内最多扩容或缩容的实例数。'."\n" - .'- **disabled**:是否禁止缩容。开启后将永远不会缩容该应用的实例,能有效防止在流量高峰期缩容造成业务风险。'."\n" - .' - **true**:开启。'."\n" - .' - **false**:关闭。默认值。'."\n" - .'- **stabilizationWindowSeconds**:扩容或缩容的冷却时间。取值范围\\[0, 3600\\],单位为秒。默认为0秒。'."\n" - ."\n" - .'> 您可以选择设置一个或多个监控指标。当设置多个监控指标时,只要任何一个指标大于或者等于目标值,则应用进行扩容,扩容后实例数不高于应用最大实例数;如果所有指标均小于目标值,则应用进行缩容,缩容后实例数不低于应用最小实例数。', - 'type' => 'string', - 'required' => false, - 'example' => '{"maxReplicas":3,"minReplicas":1,"metrics":[{"metricType":"CPU","metricTargetAverageUtilization":20},{"metricType":"MEMORY","metricTargetAverageUtilization":30},{"metricType":"tcpActiveConn","metricTargetAverageUtilization":20},{"metricType":"SLB_QPS","MetricTargetAverageUtilization":25,"slbId":"lb-xxx","slbProject":"aliyun-fc-cn-hangzhou-d95881d9-5d3c-5f26-a6b8-************","slbLogstore":"function-log","vport":"80"},{"metricType":"SLB_RT","MetricTargetAverageUtilization":35,"slbId":"lb-xxx","slbProject":"aliyun-fc-cn-hangzhou-d95881d9-5d3c-5f26-a6b8-************","slbLogstore":"function-log","vport":"80"}],"scaleUpRules":{"step":"100","disabled":false,"stabilizationWindowSeconds":0},"scaleDownRules":{"step":"100","disabled":false,"stabilizationWindowSeconds":300}}', + 'allowEmptyValue' => true, + 'schema' => ['title' => '返回的域名数量', 'description' => '返回的域名数量。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], + ], + ], + 'responses' => [ + 200 => [ + 'description' => 'OK', + 'schema' => ['description' => '请求消息体。', '$ref' => '#/components/schemas/ListWebCustomDomainBody'], + 'examples' => [], + ], + ], + 'title' => '获取自定义域名列表', + 'description' => '获取自定义域名列表。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:02:59.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2024-08-28T10:49:33.000Z', 'description' => '请求参数发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'sae:ListWebCustomDomains', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => 'Namespace', 'arn' => 'acs:sae:{#regionId}:{#accountId}:namespace/{#NamespaceId}'], + ], ], ], + ], + ], + 'OpenSaeService' => [ + 'path' => '/service/open', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'MinReadyInstances', - 'in' => 'query', - 'schema' => [ - 'description' => '最小存活实例数。取值说明如下:'."\n" - ."\n" - .'- 如果设置为**0**,应用在升级过程中将会中断业务。'."\n" - .'- 如果设置为**-1**,最小存活实例数将使用系统推荐值,即取现有实例数的25%。如果当前为5个实例,5×25%=1.25,向上取整后,最小存活实例数为2。'."\n" - ."\n" - .'> 每次滚动部署最小存活的实例数建议≥1,保证业务不中断。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '3', - ], + 'AK' => [], ], [ - 'name' => 'MinReadyInstanceRatio', - 'in' => 'query', - 'schema' => [ - 'description' => '最小存活实例数百分比。取值说明如下:'."\n" - ."\n" - .'- **-1**:初始化值,表示不采用百分比。'."\n" - .'- **0~100**:单位为百分比,向上取整。例如设置为50%,如果当前为5个实例,则最小存活实例数为3。'."\n" - ."\n" - .'> 当**MinReadyInstance**和**MinReadyInstanceRatio**同时传递时,且**MinReadyInstanceRatio**的取值非**-1**时,以**MinReadyInstanceRatio**参数为准。假设**MinReadyInstances**取值为**5**,**MinReadyInstanceRatio**取值为**50**,则会用**50**来计算最小存活实例数。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '-1', - ], + 'APP' => [], ], [ - 'name' => 'ScalingRuleEnable', - 'in' => 'query', - 'schema' => [ - 'description' => '是否启用弹性伸缩策略。取值说明如下:'."\n" - ."\n" - .'- **true**:启用状态。'."\n" - .'- **false**:禁用状态。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'PrivateKey' => [], ], [ - 'name' => 'EnableIdle', - 'in' => 'query', - 'schema' => [ - 'type' => 'boolean', - 'required' => false, - ], + 'BearerToken' => [], ], ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'abilityTreeCode' => '20152', + 'abilityTreeNodes' => ['FEATUREsaeD9PL61'], + ], + 'parameters' => [], 'responses' => [ 200 => [ - 'headers' => [], 'schema' => [ - 'description' => '返回信息。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], - 'Data' => [ - 'description' => '返回结果。', - 'type' => 'object', - 'properties' => [ - 'Timer' => [ - 'description' => '定时弹性伸缩。', - 'type' => 'object', - 'properties' => [ - 'EndDate' => [ - 'description' => '定时弹性伸缩策略的短期结束日期。'."\n" - ."\n" - .'- 当**BeginDate**和**EndDate**取值均为**null**时,表示长期执行,为默认值。'."\n" - .'- 当取值为具体日期时,例如**BeginDate**为2021-03-25,**EndDate**为2021-04-25,表示执行有效期为1个月。', - 'type' => 'string', - 'example' => '2021-04-25', - ], - 'BeginDate' => [ - 'description' => '定时弹性伸缩策略的短期起始日期。'."\n" - ."\n" - .'- 当**BeginDate**和**EndDate**取值均为**null**时,表示长期执行,为默认值。'."\n" - .'- 当取值为具体日期时,例如**BeginDate**为2021-03-25,**EndDate**为2021-04-25,表示执行有效期为1个月。'."\n", - 'type' => 'string', - 'example' => '2021-03-25', - ], - 'Schedules' => [ - 'description' => '单天内触发时间点。', - 'type' => 'array', - 'items' => [ - 'description' => '时间点数据。', - 'type' => 'object', - 'properties' => [ - 'AtTime' => [ - 'description' => '时间点。格式:**时:分**。', - 'type' => 'string', - 'example' => '08:00', - ], - 'TargetReplicas' => [ - 'description' => '目标实例数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '3', - ], - 'MaxReplicas' => [ - 'description' => '最大实例数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'MinReplicas' => [ - 'description' => '最小实例数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '5', - ], - ], - ], - ], - 'Period' => [ - 'description' => '执行定时弹性伸缩策略的周期。取值说明如下:'."\n" - ."\n" - .'- **\\* \\* \\***:每天指定时间执行定时策略。'."\n" - .'- **\\* \\* Fri,Mon**:每周指定天数的指定时间执行定时策略,支持多选,GMT+8时区。取值说明如下: '."\n" - ."\n" - .' - **Sun**:星期日'."\n" - .' - **Mon**:星期一'."\n" - .' - **Tue**:星期二'."\n" - .' - **Wed**:星期三'."\n" - .' - **Thu**:星期四'."\n" - .' - **Fri**:星期五'."\n" - .' - **Sat**:星期六'."\n" - .'- **1,2,3,28,31 \\* \\***:每月指定日期的指定时间执行定时策略,支持多选。取值范围\\[1,31\\]。若当月无31日,则跳过该日期执行定时策略。', - 'type' => 'string', - 'example' => '* * *', - ], - ], - ], - 'UpdateTime' => [ - 'description' => '弹性伸缩策略的更新时间。单位:毫秒。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1616642248938', - ], - 'AppId' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****', - ], - 'CreateTime' => [ - 'description' => '弹性伸缩策略的创建时间。单位:毫秒。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1616642248938', - ], - 'LastDisableTime' => [ - 'description' => '最近一次禁用弹性伸缩策略的时间。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1641882854484', - ], - 'ScaleRuleEnabled' => [ - 'description' => '是否启用弹性伸缩策略。取值说明如下:'."\n" - ."\n" - .'- **true**:启用状态。'."\n" - .'- **false**:禁用状态。', - 'type' => 'boolean', - 'example' => 'true', - ], - 'ScaleRuleType' => [ - 'description' => '弹性伸缩策略类型。取值说明如下:'."\n" - ."\n" - .'- **timing**:定时弹性。'."\n" - .'- **metric**:监控指标弹性。'."\n" - .'- **mix**:混合弹性。', - 'type' => 'string', - 'example' => 'timing', - ], - 'Metric' => [ - 'description' => '监控指标弹性伸缩。', - 'type' => 'object', - 'properties' => [ - 'Metrics' => [ - 'description' => '监控指标弹性伸缩列表。', - 'type' => 'array', - 'items' => [ - 'description' => '监控指标数据。', - 'type' => 'object', - 'properties' => [ - 'MetricTargetAverageUtilization' => [ - 'description' => '监控指标的目标值。'."\n" - ."\n" - .'- CPU使用率目标值,单位为百分比。'."\n" - .'- 内存使用率目标值,单位为百分比。'."\n" - .'- QPS,单位为秒。'."\n" - .'- 响应时间,单位为毫秒。'."\n" - .'- TCP活跃连接数平均值,单位为个/秒。'."\n" - .'- 公网SLB QPS,单位为秒。'."\n" - .'- 公网SLB响应时间,单位为毫秒。'."\n" - .'- 私网SLB QPS,单位为秒。'."\n" - .'- 私网SLB响应时间,单位为毫秒。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '20', - ], - 'MetricType' => [ - 'description' => '监控指标触发条件。取值说明如下:'."\n" - ."\n" - .'- **CPU**:CPU使用率。'."\n" - .'- **MEMORY**:内存使用率。'."\n" - .'- **QPS**:JAVA应用1分钟内单个实例的平均QPS。'."\n" - .'- **RT**:JAVA应用1分钟内应用所有服务接口平均RT值。'."\n" - .'- **tcpActiveConn**:30秒内单个实例的平均TCP活跃连接数。'."\n" - .'- **SLB\\_QPS**:15秒内单个实例的平均公网SLB QPS。'."\n" - .'- **SLB\\_RT**:15秒内公网SLB平均响应时间。'."\n" - .'- **INTRANET\\_SLB\\_QPS**:15秒内单个实例的平均私网SLB QPS。'."\n" - .'- **INTRANET\\_SLB\\_RT**:15秒内私网SLB平均响应时间。', - 'type' => 'string', - 'example' => 'CPU', - ], - 'SlbProject' => [ - 'description' => 'SLB访问日志Project。', - 'type' => 'string', - 'example' => 'test', - ], - 'SlbLogstore' => [ - 'description' => 'SLB访问日志Logstore。', - 'type' => 'string', - 'example' => 'test', - ], - 'Vport' => [ - 'description' => 'SLB端口。', - 'type' => 'string', - 'example' => '80', - ], - 'SlbId' => [ - 'description' => 'SLB实例ID。', - 'type' => 'string', - 'example' => 'lb-xxx', - ], - ], - ], - ], - 'MaxReplicas' => [ - 'description' => '最大实例数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '3', - ], - 'MinReplicas' => [ - 'description' => '最小实例数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - ], - ], - 'ScaleRuleName' => [ - 'description' => '弹性伸缩策略的名称。', - 'type' => 'string', - 'example' => 'test', - ], - 'EnableIdle' => [ - 'type' => 'boolean', - ], - ], - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '重启应用实例是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:重启成功。'."\n" - .'- **false**:重启失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '559B4247-C41C-4D9E-B866-B55D378B****'], + 'OrderId' => ['description' => '订单ID。', 'type' => 'string', 'example' => '20485646575****'], ], + 'description' => '', ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InstanceExist.ScalingRuleName', - 'errorMessage' => 'The specified ScalingRuleName already exists.', - ], - [ - 'errorCode' => 'InvalidScalingRuleDate.BeginAfterEnd', - 'errorMessage' => 'The specified beginning time is later than the ending time.', - ], - [ - 'errorCode' => 'InvalidScalingRuleDate.Format', - 'errorMessage' => 'The specified date is invalid.', - ], - [ - 'errorCode' => 'InvalidScalingRuleName.NotFound', - 'errorMessage' => 'The specified ScalingRuleName does not exist.', - ], - [ - 'errorCode' => 'InvalidScalingRuleTime.Conflict', - 'errorMessage' => 'The specified scaling rule time is invalid. Another schedule has been set for the specified time range. Please set a different time.', - ], - [ - 'errorCode' => 'InvalidScalingRuleTime.Format', - 'errorMessage' => 'The specified time is invalid.', - ], - [ - 'errorCode' => 'QuotaExceeded.ScalingRule', - 'errorMessage' => 'The maximum number of application scaling rules is exceeded.', - ], - [ - 'errorCode' => 'QuotaExceeded.ScalingRuleTime', - 'errorMessage' => 'The maximum number of scaling policy trigger time is exceeded.', - ], - [ - 'errorCode' => 'NoComputeResourceQuota.App.Exceed', - 'errorMessage' => 'You can create %s instances for each application. Please submit a ticket to raise the quota.', - ], - [ - 'errorCode' => 'NoComputeResourceQuota.Exceed', - 'errorMessage' => 'Your compute resource is insufficient. Please contact us to raise the quota.', - ], - [ - 'errorCode' => 'NoComputeResourceQuota.User.Exceed', - 'errorMessage' => 'Your account is limited to create %s instances. Please submit a ticket to raise the quota.', - ], - [ - 'errorCode' => 'System.Upgrading', - 'errorMessage' => 'The system is being upgraded. Please try again later.', - ], - [ - 'errorCode' => 'OperationDenied.SDKNotSupported', - 'errorMessage' => 'Metrics is not supported in SDK', - ], - [ - 'errorCode' => 'MinReadyInstances.Not.Smaller.Replicas', - 'errorMessage' => 'The minimum number of available instances must be less than the number of application instances.', - ], - [ - 'errorCode' => 'MinReadyInstanceRatio.Invalid', - 'errorMessage' => 'The ratio of minimum available instances must be between 0 and 100.', - ], + ['errorCode' => 'ORDER.OPEND', 'errorMessage' => 'order opend.', 'description' => '服务已开通'], + ['errorCode' => 'Pay.Insufficient.Balance', 'errorMessage' => 'pay insufficient balance', 'description' => '余额不足'], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"Timer\\": {\\n \\"EndDate\\": \\"2021-04-25\\",\\n \\"BeginDate\\": \\"2021-03-25\\",\\n \\"Schedules\\": [\\n {\\n \\"AtTime\\": \\"08:00\\",\\n \\"TargetReplicas\\": 3,\\n \\"MaxReplicas\\": 10,\\n \\"MinReplicas\\": 5\\n }\\n ],\\n \\"Period\\": \\"* * *\\"\\n },\\n \\"UpdateTime\\": 1616642248938,\\n \\"AppId\\": \\"7171a6ca-d1cd-4928-8642-7d5cfe69****\\",\\n \\"CreateTime\\": 1616642248938,\\n \\"LastDisableTime\\": 1641882854484,\\n \\"ScaleRuleEnabled\\": true,\\n \\"ScaleRuleType\\": \\"timing\\",\\n \\"Metric\\": {\\n \\"Metrics\\": [\\n {\\n \\"MetricTargetAverageUtilization\\": 20,\\n \\"MetricType\\": \\"CPU\\",\\n \\"SlbProject\\": \\"test\\",\\n \\"SlbLogstore\\": \\"test\\",\\n \\"Vport\\": \\"80\\",\\n \\"SlbId\\": \\"lb-xxx\\"\\n }\\n ],\\n \\"MaxReplicas\\": 3,\\n \\"MinReplicas\\": 1\\n },\\n \\"ScaleRuleName\\": \\"test\\",\\n \\"EnableIdle\\": true\\n },\\n \\"Message\\": \\"success\\",\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<CreateApplicationScalingRuleResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <Timer>\\n <EndDate>2021-04-25</EndDate>\\n <BeginDate>2021-03-25</BeginDate>\\n <Schedules>\\n <AtTime>08:00</AtTime>\\n <TargetReplicas>3</TargetReplicas>\\n <MaxReplicas>10</MaxReplicas>\\n <MinReplicas>5</MinReplicas>\\n </Schedules>\\n <Period>* * *</Period>\\n </Timer>\\n <UpdateTime>1616642248938</UpdateTime>\\n <AppId>7171a6ca-d1cd-4928-8642-7d5cfe69****</AppId>\\n <CreateTime>1616642248938</CreateTime>\\n <LastDisableTime>1641882854484</LastDisableTime>\\n <ScaleRuleEnabled>true</ScaleRuleEnabled>\\n <ScaleRuleType>timing</ScaleRuleType>\\n <Metric>\\n <Metrics>\\n <MetricTargetAverageUtilization>20</MetricTargetAverageUtilization>\\n <MetricType>CPU</MetricType>\\n <SlbProject>test</SlbProject>\\n <SlbLogstore>test</SlbLogstore>\\n <Vport>80</Vport>\\n <SlbId>lb-xxx</SlbId>\\n </Metrics>\\n <MaxReplicas>3</MaxReplicas>\\n <MinReplicas>1</MinReplicas>\\n </Metric>\\n <ScaleRuleName>test</ScaleRuleName>\\n </Data>\\n <Message>success</Message>\\n <Code>200</Code>\\n <Success>true</Success>\\n</CreateApplicationScalingRuleResponse>","errorExample":""}]', - 'title' => '创建应用弹性伸缩策略', - 'summary' => '创建应用弹性伸缩策略。', - 'description' => '## 使用须知'."\n" - .'- 您最多可以为1个应用创建5条弹性策略。'."\n" - .'- 您最多可以为1条定时弹性策略,创建20条单天内触发时间点。'."\n" - .'- 弹性策略启用时,请勿手动执行应用生命周期管理操作,例如应用扩缩容、部署应用、更改规格、重启应用或停止应用。如果您需要对应用执行该类操作,请停用弹性策略后,再手动执行操作。'."\n" - .'- 如果当前应用处于扩容、缩容、部署(单批、分批或灰度)、更改规格、重启或停止等过程中,该应用暂时无法添加或者启动弹性策略。'."\n" - .'- 如果单个应用需要弹出超过50个实例,请联系SAE技术支持并申请白名单。更多信息,请参见[联系我们](~~146530~~)。', - ], - 'DeleteApplicationScalingRule' => [ - 'path' => '/pop/v1/sam/scale/applicationScalingRule', - 'methods' => [ - 'delete', + 'title' => 'OpenSaeService', + 'summary' => '免费开通SAE服务。', + 'description' => '> 请确保您的账号余额大于0,否则,无法开通SAE服务。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:26.000Z', 'description' => 'OpenAPI 下线'], ], - 'schemes' => [ - 'http', - 'https', + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'sae:OpenSaeService', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"559B4247-C41C-4D9E-B866-B55D378B****\\",\\n \\"OrderId\\": \\"20485646575****\\"\\n}","errorExample":""},{"type":"xml","example":"<OpenSaeServiceResponse>\\n <RequestId>559B4247-C41C-4D9E-B866-B55D378B****</RequestId>\\n <OrderId>20485646575****</OrderId>\\n</OpenSaeServiceResponse>","errorExample":""}]', + ], + 'PublishWebApplicationRevision' => [ + 'summary' => '发布Web应用版本。', + 'path' => '/pop/v2/api/web/application-revisions/{ApplicationId}/revisions', + 'methods' => ['post'], + 'schemes' => ['http', 'https'], + 'tags' => [], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', - 'deprecated' => false, + 'consumes' => ['application/json'], + 'produces' => ['application/json'], + 'operationType' => 'readAndWrite', 'systemTags' => [ - 'operationType' => 'delete', - 'abilityTreeCode' => '6311', - 'abilityTreeNodes' => [ - 'FEATUREsae5HLO11', - ], + 'operationType' => 'create', + 'abilityTreeCode' => '225953', + 'abilityTreeNodes' => ['FEATUREsae37J6Z9'], ], 'parameters' => [ [ - 'name' => 'AppId', + 'name' => 'NamespaceId', 'in' => 'query', - 'schema' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****', + 'allowEmptyValue' => false, + 'schema' => ['title' => '命名空间ID', 'description' => '命名空间ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-shanghai'], + ], + [ + 'name' => 'ApplicationId', + 'in' => 'path', + 'allowEmptyValue' => false, + 'schema' => ['title' => '应用ID', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => '7e41aff0-9eca-45c9-ac48-675e09******'], + ], + [ + 'name' => 'body', + 'in' => 'body', + 'allowEmptyValue' => false, + 'schema' => ['title' => '版本配置信息', 'description' => '版本配置信息。', 'required' => true, '$ref' => '#/components/schemas/PublishWebApplicationRevisionInput'], + ], + ], + 'responses' => [ + 200 => [ + 'description' => '返回信息', + 'schema' => ['title' => '返回信息', 'description' => '返回信息。', 'required' => false, '$ref' => '#/components/schemas/WebApplicationRevisionBody'], + 'examples' => [], + ], + ], + 'title' => '发布Web应用版本', + 'description' => '发布Web应用版本,即修改版本上相关的配置,并新建一个版本。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:02:59.000Z', 'description' => 'OpenAPI 下线'], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'sae:PublishWebApplicationRevision', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], + ], + ], + 'QueryArmsEnable' => [ + 'path' => '/pop/v1/arms/queryArms', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'ScalingRuleName', + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'abilityTreeCode' => '6382', + 'abilityTreeNodes' => ['FEATUREsaeK7DHH9'], + ], + 'parameters' => [ + [ + 'name' => 'AppId', 'in' => 'query', - 'schema' => [ - 'description' => '弹性伸缩策略名称。', - 'type' => 'string', - 'required' => true, - 'example' => 'timer-0800-2100', - ], + 'schema' => ['description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => '017f39b8-dfa4-4e16-a84b-1dcee4b1****'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'description' => '返回信息。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '删除应用弹性伸缩策略是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:删除成功。'."\n" - .'- **false**:删除失败。'."\n", - 'type' => 'boolean', - 'example' => 'true', + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '01CF26C7-00A3-4AA6-BA76-7E95F2A3****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链id,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], + 'Data' => [ + 'description' => '返回结果。', + 'type' => 'object', + 'properties' => [ + 'Enable' => ['description' => '是否启用。取值说明如下:-**true**:启用-**false**:禁用', 'type' => 'boolean', 'example' => 'true'], + ], ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或pop错误码。取值说明如下:-2xx:成功。-3xx:重定向。-4xx:请求错误。-5xx:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:成功。'."\n" + .'- **false**:失败。', 'type' => 'boolean', 'example' => 'true'], ], + 'description' => '', ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'System.Upgrading', - 'errorMessage' => 'The system is being upgraded. Please try again later.', - ], + ['errorCode' => 'InvalidApplication.NotFound', 'errorMessage' => 'The current application does not exist.', 'description' => '找不到当前应用。'], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Message\\": \\"success\\",\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeleteApplicationScalingRuleResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Message>success</Message>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DeleteApplicationScalingRuleResponse>","errorExample":""}]', - 'title' => 'DeleteApplicationScalingRule', - 'summary' => '调用CreateApplicationScalingRule接口删除应用弹性伸缩策略。', - ], - 'DisableApplicationScalingRule' => [ - 'path' => '/pop/v1/sam/scale/disableApplicationScalingRule', - 'methods' => [ - 'put', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"01CF26C7-00A3-4AA6-BA76-7E95F2A3****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"Enable\\": true\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => '查询应用监控开启状态', + 'summary' => '查询指定app是否开启应用监控。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:26.000Z', 'description' => 'OpenAPI 下线'], + ], + 'flowControl' => [ + 'flowControlList' => [], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => '', + 'ramAction' => [ + 'action' => 'sae:QueryArmsEnable', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => 'Application', 'arn' => 'acs:sae:{#regionId}:{#accountId}:application/{#namespaceid}/{#appid}'], + ], + ], + ], ], + ], + 'QueryResourceStatics' => [ + 'path' => '/pop/v1/paas/quota/queryResourceStatics', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '6355', - 'abilityTreeNodes' => [ - 'FEATUREsae5HLO11', - ], + 'operationType' => 'get', + 'abilityTreeCode' => '6384', + 'abilityTreeNodes' => ['FEATUREsae8U8CHA'], ], 'parameters' => [ [ 'name' => 'AppId', 'in' => 'query', - 'schema' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****', - ], - ], - [ - 'name' => 'ScalingRuleName', - 'in' => 'query', - 'schema' => [ - 'description' => '弹性伸缩策略名称。', - 'type' => 'string', - 'required' => true, - 'example' => 'timer-0800-2100', - ], + 'schema' => ['description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'description' => '返回信息。', + 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '禁用应用弹性伸缩策略是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:禁用成功。'."\n" - .'- **false**:禁用失败。', - 'type' => 'boolean', - 'example' => 'true', + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '7CCF7092-72CA-4431-90D6-C7D98752****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => 'ac1a08a015623098794277264e****'], + 'Data' => [ + 'description' => '资源使用信息。', + 'type' => 'object', + 'properties' => [ + 'Summary' => [ + 'description' => '当月资源使用信息。', + 'type' => 'object', + 'properties' => [ + 'Cu' => ['description' => '已经使用的CU用量。', 'type' => 'number', 'format' => 'float', 'example' => '2312145'."\n"], + 'Cpu' => ['description' => 'CPU使用量,单位:Core*min。', 'type' => 'number', 'format' => 'float', 'example' => '3354'], + 'Memory' => ['description' => '内存使用量,单位:GiB*min。', 'type' => 'number', 'format' => 'float', 'example' => '6708'], + 'ActiveCpu' => ['description' => '活跃 vCPU使用量 单位 Core·min', 'type' => 'number', 'format' => 'float', 'example' => '10'], + 'IdleCpu' => ['description' => '闲置 vCPU使用量 单位 Core·min', 'type' => 'number', 'format' => 'float', 'example' => '10'], + 'EphemeralStorage' => ['description' => '临时磁盘使用量,单位GiB·min。', 'type' => 'number', 'format' => 'float', 'example' => '20'], + 'GpuA10' => ['description' => 'GpuA10', 'type' => 'number', 'format' => 'float'], + 'GpuPpu810e' => ['description' => 'GpuPpu810e', 'type' => 'number', 'format' => 'float'], + ], + ], + 'RealTimeRes' => [ + 'description' => '实时资源使用量。', + 'type' => 'object', + 'properties' => [ + 'Cpu' => ['description' => 'CPU使用量,单位:Core*min。', 'type' => 'number', 'format' => 'float', 'example' => '13'], + 'Memory' => ['description' => '内存使用量,单位:GiB*min。', 'type' => 'number', 'format' => 'float', 'example' => '26'], + 'EphemeralStorage' => ['description' => '临时磁盘使用量,单位GiB·min。', 'type' => 'number', 'format' => 'float', 'example' => '0'], + ], + ], + ], ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '获取应用资源使用量是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:获取成功。'."\n" + .'- **false**:获取失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'System.Upgrading', - 'errorMessage' => 'The system is being upgraded. Please try again later.', - ], - [ - 'errorCode' => 'Application.ChangerOrderRunning', - 'errorMessage' => 'An application change process is in progress. Please try again later.', + ['errorCode' => 'InvalidServerlessRegion.Unsupported', 'errorMessage' => 'The current region is not supported: %s', 'description' => '不支持当前地域:%s。'], + ['errorCode' => 'InvalidApplication.NotFound', 'errorMessage' => 'The current application does not exist.', 'description' => '找不到当前应用。'], + ], + 500 => [ + ['errorCode' => 'Measuredata.Query.Error', 'errorMessage' => 'An error occurred while querying measurement information.', 'description' => '当查询计量信息时报错。'], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"7CCF7092-72CA-4431-90D6-C7D98752****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"ac1a08a015623098794277264e****\\",\\n \\"Data\\": {\\n \\"Summary\\": {\\n \\"Cu\\": 2312145,\\n \\"Cpu\\": 3354,\\n \\"Memory\\": 6708,\\n \\"ActiveCpu\\": 10,\\n \\"IdleCpu\\": 10,\\n \\"EphemeralStorage\\": 20,\\n \\"GpuA10\\": 0,\\n \\"GpuPpu810e\\": 0\\n },\\n \\"RealTimeRes\\": {\\n \\"Cpu\\": 13,\\n \\"Memory\\": 26,\\n \\"EphemeralStorage\\": 0\\n }\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<QueryResourceStaticsResponse>\\n <RequestId>7CCF7092-72CA-4431-90D6-C7D98752****</RequestId>\\n <Message>success</Message>\\n <TraceId>ac1a08a015623098794277264e****</TraceId>\\n <Data>\\n <Summary>\\n <Cpu>3354</Cpu>\\n <Memory>6708</Memory>\\n </Summary>\\n <RealTimeRes>\\n <Cpu>13</Cpu>\\n <Memory>26</Memory>\\n </RealTimeRes>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</QueryResourceStaticsResponse>","errorExample":""}]', + 'title' => '获取应用的资源使用量', + 'summary' => '获取应用的资源使用量。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:26.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-05-22T02:23:01.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2025-04-22T01:54:31.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2024-10-28T12:22:50.000Z', 'description' => '响应参数发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '40', 'countWindow' => 60, 'regionId' => '*', 'api' => 'QueryResourceStatics'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:QueryResourceStatics', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Message\\": \\"success\\",\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DisableApplicationScalingRuleResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Message>success</Message>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DisableApplicationScalingRuleResponse>","errorExample":""}]', - 'title' => '禁用应用弹性伸缩策略', - 'summary' => '调用DisableApplicationScalingRule接口禁用应用弹性伸缩策略。', ], - 'EnableApplicationScalingRule' => [ - 'path' => '/pop/v1/sam/scale/enableApplicationScalingRule', - 'methods' => [ - 'put', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'ReduceApplicationCapacityByInstanceIds' => [ + 'summary' => '根据实例ID缩容。', + 'path' => '/pop/v1/sam/app/ScaleInApplicationWithInstanceIds', + 'methods' => ['put'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '6361', - 'abilityTreeNodes' => [ - 'FEATUREsaeRVPNSA', - ], + 'abilityTreeCode' => '22522', + 'abilityTreeNodes' => ['FEATUREsae5HLO11'], ], 'parameters' => [ [ 'name' => 'AppId', 'in' => 'query', - 'schema' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****', - ], + 'schema' => ['description' => '目标应用ID。', 'type' => 'string', 'required' => true, 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****'], ], [ - 'name' => 'ScalingRuleName', + 'name' => 'InstanceIds', 'in' => 'query', - 'schema' => [ - 'description' => '弹性伸缩策略名称。'."\n" - ."\n\n" - .'> 此应用已创建弹性策略。', - 'type' => 'string', - 'required' => true, - 'example' => 'timer-0800-2100', - ], + 'schema' => ['description' => '实例ID。可填写多个实例ID,用英文逗号(,)分隔。', 'type' => 'string', 'required' => true, 'example' => 'b2a8a925-477a-4ed7-b825-d5e22500****'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'description' => '返回信息。', + 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '重启应用实例是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:重启成功。'."\n" - .'- **false**:重启失败。', - 'type' => 'boolean', - 'example' => 'true', + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A8E-2F6EAE6D****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], + 'Data' => [ + 'description' => '变更单信息。', + 'type' => 'object', + 'properties' => [ + 'ChangeOrderId' => ['description' => '变更单ID。', 'type' => 'string', 'example' => '76fa5c0-9ebb-4bb4-b383-1f885447****'], + ], ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码,取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '查询变更单信息是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:查询成功。'."\n" + .'- **false**:查询失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'user.indebt', - 'errorMessage' => 'The user has an outstanding payment.', - ], - [ - 'errorCode' => 'NoComputeResourceQuota.App.Exceed', - 'errorMessage' => 'You can create %s instances for each application. Please submit a ticket to raise the quota.', - ], - [ - 'errorCode' => 'NoComputeResourceQuota.Exceed', - 'errorMessage' => 'Your compute resource is insufficient. Please contact us to raise the quota.', - ], - [ - 'errorCode' => 'NoComputeResourceQuota.User.Exceed', - 'errorMessage' => 'Your account is limited to create %s instances. Please submit a ticket to raise the quota.', - ], - [ - 'errorCode' => 'System.Upgrading', - 'errorMessage' => 'The system is being upgraded. Please try again later.', - ], - [ - 'errorCode' => 'Application.ChangerOrderRunning', - 'errorMessage' => 'An application change process is in progress. Please try again later.', + ['errorCode' => 'InvalidApplication.NotFound', 'errorMessage' => 'The current application does not exist.', 'description' => '找不到当前应用。'], + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], + ['errorCode' => 'NoComputeResourceQuota.Exceed', 'errorMessage' => 'Your compute resource is insufficient. Please contact us to raise the quota.', 'description' => ''], + ['errorCode' => 'NoComputeResourceQuota.App.Exceed', 'errorMessage' => 'You can create %s instances for each application. Please submit a ticket to raise the quota.', 'description' => '每个应用只允许创建%s个实例,请加入钉群32874633联系技术产品专家进行咨询。'], + ['errorCode' => 'NoComputeResourceQuota.User.Exceed', 'errorMessage' => 'Your account is limited to create %s instances. Please submit a ticket to raise the quota.', 'description' => '您的账户限额%s个实例,请加入钉群32874633联系技术产品专家进行咨询。'], + ['errorCode' => 'System.Upgrading', 'errorMessage' => 'The system is being upgraded. Please try again later.', 'description' => '系统正在升级,请稍后操作。'], + ['errorCode' => 'Application.ChangerOrderRunning', 'errorMessage' => 'An application change process is in progress. Please try again later.', 'description' => '应用有变更流程正在执行,请稍后重试。'], + ['errorCode' => 'Application.InvalidStatus', 'errorMessage' => 'The application status is abnormal. Please try again later.', 'description' => '应用状态异常,请稍后重试。'], + ['errorCode' => 'Application.NotDeployYet', 'errorMessage' => 'The application has not been deployed. Please deploy it and try again.', 'description' => '应用没有部署,请部署后重试。'], + ['errorCode' => 'unsupported.workload', 'errorMessage' => 'The specified instances to scale in application does not support the workload', 'description' => '指定实例缩容应用不支持该工作负载。'], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A8E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"ChangeOrderId\\": \\"76fa5c0-9ebb-4bb4-b383-1f885447****\\"\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<ReduceApplicationCapacityByInstanceIdsResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A8E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <ChangeOrderId>76fa5c0-9ebb-4bb4-b383-1f885447****</ChangeOrderId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</ReduceApplicationCapacityByInstanceIdsResponse>","errorExample":""}]', + 'title' => '应用缩容', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:23.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2022-12-26T09:19:37.000Z', 'description' => '错误码发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '200', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ReduceApplicationCapacityByInstanceIds'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => '', + 'ramAction' => [ + 'action' => 'sae:ReduceApplicationCapacityByInstanceIds', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Message\\": \\"success\\",\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<EnableApplicationScalingRuleResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n</EnableApplicationScalingRuleResponse>","errorExample":""}]', - 'title' => 'EnableApplicationScalingRule', - 'summary' => '启用应用弹性伸缩策略。', ], - 'UpdateApplicationScalingRule' => [ - 'path' => '/pop/v1/sam/scale/applicationScalingRule', - 'methods' => [ - 'put', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'RescaleApplication' => [ + 'path' => '/pop/v1/sam/app/rescaleApplication', + 'methods' => ['put'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', - 'abilityTreeCode' => '6397', - 'abilityTreeNodes' => [ - 'FEATUREsae5HLO11', - ], + 'abilityTreeCode' => '6385', + 'abilityTreeNodes' => ['FEATUREsae5HLO11'], ], 'parameters' => [ [ 'name' => 'AppId', 'in' => 'query', - 'schema' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****', - ], - ], - [ - 'name' => 'ScalingRuleName', - 'in' => 'query', - 'schema' => [ - 'description' => '已创建成功的弹性策略名。必须以小写字母开头,仅可包含小写字母、数字及短划线(-),不超过32个字符。'."\n" - .'> 弹性伸缩策略创建成功后,不可修改策略名。', - 'type' => 'string', - 'required' => true, - 'example' => 'timer-0800-2100', - ], - ], - [ - 'name' => 'ScalingRuleTimer', - 'in' => 'query', - 'schema' => [ - 'description' => '定时弹性策略的配置。当您选择定时弹性策略或使用SDK设置时,该参数必选。'."\n" - ."\n" - .'参数说明如下:'."\n" - ."\n" - .'- **beginDate**和**endDate**:**beginDate**为起始日期,**endDate**为结束日期,用于配置定时弹性伸缩策略的时间。取值说明如下: '."\n" - .' - 当取值均为**null**时,表示长期执行,为默认值。'."\n" - .' - 当取值为具体日期时,例如**beginDate**为**2021-03-25**,**endDate**为**2021-04-25**,表示执行有效期为1个月。'."\n" - .'- **period**:执行定时弹性伸缩策略的周期。取值说明如下:'."\n" - .' - **\\* \\* \\***:每天指定时间执行定时策略。'."\n" - .' - **\\* \\* Fri,Mon**:每周指定天数的指定时间执行定时策略,支持选择多星期几,GMT+8时区。取值说明如下: '."\n" - .' - **Sun**:星期日'."\n" - .' - **Mon**:星期一'."\n" - .' - **Tue**:星期二'."\n" - .' - **Wed**:星期三'."\n" - .' - **Thu**:星期四'."\n" - .' - **Fri**:星期五'."\n" - .' - **Sat**:星期六'."\n" - .' - **1,2,3,28,31 \\* \\***:每月指定日期的指定时间执行定时策略。取值范围\\[1, 31\\]。若当月无31日,则跳过该日期执行定时策略。'."\n" - .'- **schedules**:弹性伸缩策略触发的时间,以及该时间段内需要保持的应用实例数。最多支持20个时间点。参数说明如下:'."\n" - .' - **atTime**:触发时间点。支持格式**时:分**,例如**08:00**。'."\n" - .' - **targetReplicas**:该参数可以指定应用的实例数,也可以是每次部署最小存活的实例数。取值范围\\[1, 50\\]。'."\n" - ."\n" - .' > 每次滚动部署最小存活的实例数建议大于等于**1**,保证业务不中断。如果设置为**0**,应用在升级过程中将会中断业务。', - 'type' => 'string', - 'required' => false, - 'example' => '{"beginDate":null,"endDate":null,"period":"* * *","schedules":[{"atTime":"08:00","targetReplicas":10},{"atTime":"20:00","targetReplicas":3}]}', - ], + 'schema' => ['description' => '目标应用ID。', 'type' => 'string', 'required' => true, 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****'], ], [ - 'name' => 'ScalingRuleMetric', + 'name' => 'Replicas', 'in' => 'query', - 'schema' => [ - 'description' => '监控指标弹性策略的配置。当您选择监控指标弹性策略设置时,该参数必选。'."\n" - ."\n" - .'参数说明如下:'."\n" - ."\n" - .'- **maxReplicas**:应用最大实例数。'."\n" - .'- **minReplicas**:应用最小实例数。'."\n" - .'- **metricType**:监控指标触发条件。'."\n" - .' - **CPU**:CPU使用率。'."\n" - .' - **MEMORY**:内存使用率。'."\n" - .' - **QPS**:JAVA应用1分钟内单个实例的平均QPS。'."\n" - .' - **RT**:JAVA应用1分钟内应用所有服务接口平均RT值。'."\n" - .' - **tcpActiveConn**:30秒内单个实例的平均TCP活跃连接数。'."\n" - .' - **SLB\\_QPS**:15秒内单个实例的平均公网SLB QPS。'."\n" - .' - **SLB\\_RT**:15秒内公网SLB平均响应时间。'."\n" - .' - **INTRANET\\_SLB\\_QPS**:15秒内单个实例的平均私网SLB QPS。'."\n" - .' - **INTRANET\\_SLB\\_RT**:15秒内私网SLB平均响应时间。'."\n" - .'- **metricTargetAverageUtilization**:根据不同的**metricType**,设置对应的监控指标的目标值。'."\n" - .' - CPU使用率目标值,单位为百分比。'."\n" - .' - 内存使用率目标值,单位为百分比。'."\n" - .' - QPS,单位为秒。'."\n" - .' - 响应时间,单位为毫秒。'."\n" - .' - TCP活跃连接数平均值,单位为个/秒。'."\n" - .' - 公网SLB QPS,单位为秒。'."\n" - .' - 公网SLB响应时间,单位为毫秒。'."\n" - .' - 私网SLB QPS,单位为秒。'."\n" - .' - 私网SLB响应时间,单位为毫秒。'."\n" - .'- **slbId**:SLB ID。'."\n" - .'- **slbProject**:日志服务Project。'."\n" - .'- **slbLogstore**:日志服务Logstore。'."\n" - .'- **vport**:SLB监听端口,支持HTTP协议和HTTPS协议。'."\n" - .'- **scaleUpRules**:应用扩容规则。'."\n" - .'- **scaleDownRules**:应用缩容规则。'."\n" - .'- **step**:弹性扩容或缩容步长。单位时间内最多扩容或缩容的实例数。'."\n" - .'- **disabled**:是否禁止缩容。开启后将永远不会缩容该应用的实例,能有效防止在流量高峰期缩容造成业务风险。'."\n" - .' - **true**:开启。'."\n" - .' - **false**:关闭。默认值。'."\n" - .'- **stabilizationWindowSeconds**:扩容或缩容的冷却时间。取值范围\\[0, 3600\\],单位为秒。默认为0秒。'."\n" - ."\n" - .'> 您可以选择设置一个或多个监控指标。当设置多个监控指标时,只要任何一个指标大于或者等于目标值,则应用进行扩容,扩容后实例数不高于应用最大实例数;如果所有指标均小于目标值,则应用进行缩容,缩容后实例数不低于应用最小实例数。', - 'type' => 'string', - 'required' => false, - 'example' => '{"maxReplicas":3,"minReplicas":1,"metrics":[{"metricType":"CPU","metricTargetAverageUtilization":20},{"metricType":"MEMORY","metricTargetAverageUtilization":30},{"metricType":"tcpActiveConn","metricTargetAverageUtilization":20},{"metricType":"SLB_QPS","MetricTargetAverageUtilization":25,"slbId":"lb-xxx","slbProject":"aliyun-fc-cn-hangzhou-d95881d9-5d3c-5f26-a6b8-************","slbLogstore":"function-log","vport":"80"},{"metricType":"SLB_RT","MetricTargetAverageUtilization":35,"slbId":"lb-xxx","slbProject":"aliyun-fc-cn-hangzhou-d95881d9-5d3c-5f26-a6b8-************","slbLogstore":"function-log","vport":"80"}],"scaleUpRules":{"step":"100","disabled":false,"stabilizationWindowSeconds":0},"scaleDownRules":{"step":"100","disabled":false,"stabilizationWindowSeconds":300}}', - ], + 'schema' => ['description' => '目标实例数。', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '5'], ], [ 'name' => 'MinReadyInstances', 'in' => 'query', - 'schema' => [ - 'description' => '最小存活实例数。取值说明如下:'."\n" - ."\n" - .'- 如果设置为**0**,应用在升级过程中将会中断业务。'."\n" - .'- 如果设置为**-1**,最小存活实例数将使用系统推荐值,即取现有实例数的25%。如果当前为5个实例,5×25%=1.25,向上取整后,最小存活实例数为2。'."\n" - ."\n" - .'> 每次滚动部署最小存活的实例数建议≥1,保证业务不中断。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '3', - ], + 'schema' => ['description' => '最小存活实例数。取值说明如下:'."\n" + ."\n" + .'- 如果设置为**0**,应用在升级过程中将会中断业务。'."\n" + .'- 如果设置为**-1**,最小存活实例数将使用系统推荐值,即取现有实例数的25%。如果当前为5个实例,5×25%=1.25,向上取整后,最小存活实例数为2。'."\n" + ."\n" + .'> 每次滚动部署最小存活的实例数建议≥1,保证业务不中断。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ 'name' => 'MinReadyInstanceRatio', 'in' => 'query', - 'schema' => [ - 'description' => '最小存活实例数百分比。取值说明如下:'."\n" - ."\n" - .' - **-1**:初始化值,表示不采用百分比。'."\n" - .' - **0~100**:单位为百分比,向上取整。例如设置为**50**%,如果当前为5个实例,则最小存活实例数为3。'."\n" - ."\n" - .'> 当**MinReadyInstance**和**MinReadyInstanceRatio**同时传递时,且**MinReadyInstanceRatio**的取值非**-1**时,以**MinReadyInstanceRatio**参数为准。假设**MinReadyInstances**取值为**5**,**MinReadyInstanceRatio**取值为**50**,则会用**50**来计算最小存活实例数。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '-1', - ], + 'schema' => ['description' => '最小存活实例数百分比。取值说明如下:'."\n" + ."\n" + .' - **-1**:初始化值,表示不采用百分比。'."\n" + .' - **0~100**:单位为百分比,向上取整。例如设置为**50**%,如果当前为5个实例,则最小存活实例数为3。'."\n" + ."\n" + .'> 当**MinReadyInstance**和**MinReadyInstanceRatio**同时传递时,且**MinReadyInstanceRatio**的取值非**-1**时,以**MinReadyInstanceRatio**参数为准。假设**MinReadyInstances**取值为**5**,**MinReadyInstanceRatio**取值为**50**,则会用**50**来计算最小存活实例数。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '-1'], ], [ - 'name' => 'EnableIdle', + 'name' => 'AutoEnableApplicationScalingRule', 'in' => 'query', - 'schema' => [ - 'type' => 'boolean', - 'required' => false, - ], + 'schema' => ['description' => '仅在扩缩容前有弹性规则开启时生效。取值说明如下:'."\n" + ."\n" + .'- **true**:扩缩容执行完毕后,自动开启扩缩容前启用的弹性规则。'."\n" + .'- **false**:扩缩容执行完毕后,不自动开启扩缩容前启用的弹性规则。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'description' => '返回信息。', + 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], + 'Message' => ['description' => '调用结果的附加信息。', 'type' => 'string', 'example' => 'success'], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], 'Data' => [ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'Timer' => [ - 'description' => '定时弹性伸缩。', - 'type' => 'object', - 'properties' => [ - 'EndDate' => [ - 'description' => '定时弹性伸缩策略的短期结束日期。取值说明如下:'."\n" - ."\n" - .'- 当**BeginDate**和**EndDate**取值均为**null**时,表示长期执行,为默认值。'."\n" - .'- 当取值为具体日期时,例如**BeginDate**为2021-03-25,**EndDate**为2021-04-25,表示执行有效期为1个月。', - 'type' => 'string', - 'example' => '2021-04-25', - ], - 'BeginDate' => [ - 'description' => '定时弹性伸缩策略的短期起始日期。取值说明如下:'."\n" - ."\n" - .'- 当**BeginDate**和**EndDate**取值均为**null**时,表示长期执行,为默认值。'."\n" - .'- 当取值为具体日期时,例如**BeginDate**为2021-03-25,**EndDate**为2021-04-25,表示执行有效期为1个月。', - 'type' => 'string', - 'example' => '2021-03-25', - ], - 'Schedules' => [ - 'description' => '单天内触发时间点。', - 'type' => 'array', - 'items' => [ - 'description' => '时间点数据。', - 'type' => 'object', - 'properties' => [ - 'AtTime' => [ - 'description' => '时间点。格式:**时:分**。', - 'type' => 'string', - 'example' => '08:00', - ], - 'TargetReplicas' => [ - 'description' => '目标实例数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '3', - ], - 'MinReplicas' => [ - 'description' => '最小实例数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'MaxReplicas' => [ - 'description' => '最大实例数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - ], - ], - ], - 'Period' => [ - 'description' => '执行定时弹性伸缩策略的周期。取值说明如下:'."\n" - ."\n" - .'- **\\* \\* \\***:每天指定时间执行定时策略。'."\n" - .'- **\\* \\* Fri,Mon**:每周指定天数的指定时间执行定时策略,支持多选,GMT+8时区。取值说明如下: '."\n" - ."\n" - .' - **Sun**:星期日'."\n" - .' - **Mon**:星期一'."\n" - .' - **Tue**:星期二'."\n" - .' - **Wed**:星期三'."\n" - .' - **Thu**:星期四'."\n" - .' - **Fri**:星期五'."\n" - .' - **Sat**:星期六'."\n" - .'- **1,2,3,28,31 \\* \\***:每月指定日期的指定时间执行定时策略,支持多选。取值范围\\[1,31\\]。若当月无31日,则跳过该日期执行定时策略。', - 'type' => 'string', - 'example' => '* * *', - ], - ], - ], - 'UpdateTime' => [ - 'description' => '弹性伸缩策略的更新时间。单位:毫秒。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1616642248938', - ], - 'AppId' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****', - ], - 'CreateTime' => [ - 'description' => '弹性伸缩策略的创建时间。单位:毫秒。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1616642248938', - ], - 'LastDisableTime' => [ - 'description' => '最近一次禁用弹性伸缩策略的时间。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1641882854484', - ], - 'ScaleRuleEnabled' => [ - 'description' => '是否启用弹性伸缩策略。取值说明如下:'."\n" - ."\n" - .'- **true**:启用状态。'."\n" - .'- **false**:禁用状态。', - 'type' => 'boolean', - 'example' => 'true', - ], - 'ScaleRuleType' => [ - 'description' => '弹性伸缩策略类型。取值说明如下:'."\n" - ."\n" - .'- **timing**:定时弹性。'."\n" - .'- **metric**:监控指标弹性。'."\n" - .'- **mix**:混合弹性。', - 'type' => 'string', - 'example' => 'timing', - ], - 'Metric' => [ - 'description' => '监控指标弹性伸缩。', - 'type' => 'object', - 'properties' => [ - 'Metrics' => [ - 'description' => '监控指标弹性伸缩列表。', - 'type' => 'array', - 'items' => [ - 'description' => '监控指标数据。', - 'type' => 'object', - 'properties' => [ - 'MetricTargetAverageUtilization' => [ - 'description' => '监控指标的目标值。'."\n" - ."\n" - .'- CPU使用率目标值,单位为百分比。'."\n" - .'- 内存使用率目标值,单位为百分比。'."\n" - .'- QPS,单位为秒。'."\n" - .'- 响应时间,单位为毫秒。'."\n" - .'- TCP活跃连接数平均值,单位为个/秒。'."\n" - .'- 公网SLB QPS,单位为秒。'."\n" - .'- 公网SLB响应时间,单位为毫秒。'."\n" - .'- 私网SLB QPS,单位为秒。'."\n" - .'- 私网SLB响应时间,单位为毫秒。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '20', - ], - 'MetricType' => [ - 'description' => '监控指标触发条件。取值说明如下:'."\n" - ."\n" - .'- **CPU**:CPU使用率。'."\n" - .'- **MEMORY**:内存使用率。'."\n" - .'- **QPS**:JAVA应用1分钟内单个实例的平均QPS。'."\n" - .'- **RT**:JAVA应用1分钟内应用所有服务接口平均RT值。'."\n" - .'- **tcpActiveConn**:30秒内单个实例的平均TCP活跃连接数。'."\n" - .'- **SLB\\_QPS**:15秒内单个实例的平均公网SLB QPS。'."\n" - .'- **SLB\\_RT**:15秒内公网SLB平均响应时间。'."\n" - .'- **INTRANET\\_SLB\\_QPS**:15秒内单个实例的平均私网SLB QPS。'."\n" - .'- **INTRANET\\_SLB\\_RT**:15秒内私网SLB平均响应时间。', - 'type' => 'string', - 'example' => 'CPU', - ], - 'SlbProject' => [ - 'description' => 'SLB访问日志Project。', - 'type' => 'string', - 'example' => 'test', - ], - 'SlbLogstore' => [ - 'description' => 'SLB访问日志Logstore。', - 'type' => 'string', - 'example' => 'test', - ], - 'Vport' => [ - 'description' => 'SLB端口。', - 'type' => 'string', - 'example' => '80', - ], - 'SlbId' => [ - 'description' => 'SLB实例ID。', - 'type' => 'string', - 'example' => 'lb-xxx', - ], - ], - ], - ], - 'MaxReplicas' => [ - 'description' => '最大实例数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '3', - ], - 'MinReplicas' => [ - 'description' => '最小实例数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - ], - ], - 'ScaleRuleName' => [ - 'description' => '弹性伸缩策略名称。', - 'type' => 'string', - 'example' => 'test', - ], - 'EnableIdle' => [ - 'type' => 'boolean', - ], + 'ChangeOrderId' => ['description' => '发布单ID。', 'type' => 'string', 'example' => '0e09829f-4914-4612-bc88-6f52fd81****'], ], ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '重启应用实例是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:重启成功。'."\n" - .'- **false**:重启失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '应用扩缩是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:扩缩成功。'."\n" + .'- **false**:扩缩失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidScalingRuleDate.BeginAfterEnd', - 'errorMessage' => 'The specified beginning time is later than the ending time.', - ], - [ - 'errorCode' => 'InvalidScalingRuleDate.Format', - 'errorMessage' => 'The specified date is invalid.', - ], - [ - 'errorCode' => 'InvalidScalingRuleName.NotFound', - 'errorMessage' => 'The specified ScalingRuleName does not exist.', - ], - [ - 'errorCode' => 'InvalidScalingRuleTime.Conflict', - 'errorMessage' => 'The specified scaling rule time is invalid. Another schedule has been set for the specified time range. Please set a different time.', - ], - [ - 'errorCode' => 'InvalidScalingRuleTime.Format', - 'errorMessage' => 'The specified time is invalid.', - ], - [ - 'errorCode' => 'QuotaExceeded.ScalingRuleTime', - 'errorMessage' => 'The maximum number of scaling policy trigger time is exceeded.', - ], - [ - 'errorCode' => 'NoComputeResourceQuota.Exceed', - 'errorMessage' => 'Your compute resource is insufficient. Please contact us to raise the quota.', - ], - [ - 'errorCode' => 'NoComputeResourceQuota.App.Exceed', - 'errorMessage' => 'You can create %s instances for each application. Please submit a ticket to raise the quota.', - ], - [ - 'errorCode' => 'NoComputeResourceQuota.User.Exceed', - 'errorMessage' => 'Your account is limited to create %s instances. Please submit a ticket to raise the quota.', - ], - [ - 'errorCode' => 'System.Upgrading', - 'errorMessage' => 'The system is being upgraded. Please try again later.', - ], - [ - 'errorCode' => 'MinReadyInstances.Not.Smaller.Replicas', - 'errorMessage' => 'The minimum number of available instances must be less than the number of application instances.', - ], - [ - 'errorCode' => 'MinReadyInstanceRatio.Invalid', - 'errorMessage' => 'The ratio of minimum available instances must be between 0 and 100.', - ], - [ - 'errorCode' => 'Application.ChangerOrderRunning', - 'errorMessage' => 'An application change process is in progress. Please try again later.', - ], + ['errorCode' => 'InvalidApplication.NotFound', 'errorMessage' => 'The current application does not exist.', 'description' => '找不到当前应用。'], + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], + ['errorCode' => 'user.indebt', 'errorMessage' => 'The user has an outstanding payment.', 'description' => '当前用户处于欠费状态。'], + ['errorCode' => 'NoComputeResourceQuota.App.Exceed', 'errorMessage' => 'You can create %s instances for each application. Please submit a ticket to raise the quota.', 'description' => '每个应用只允许创建%s个实例,请加入钉群32874633联系技术产品专家进行咨询。'], + ['errorCode' => 'NoComputeResourceQuota.Exceed', 'errorMessage' => 'Your compute resource is insufficient. Please contact us to raise the quota.', 'description' => ''], + ['errorCode' => 'NoComputeResourceQuota.User.Exceed', 'errorMessage' => 'Your account is limited to create %s instances. Please submit a ticket to raise the quota.', 'description' => '您的账户限额%s个实例,请加入钉群32874633联系技术产品专家进行咨询。'], + ['errorCode' => 'System.Upgrading', 'errorMessage' => 'The system is being upgraded. Please try again later.', 'description' => '系统正在升级,请稍后操作。'], + ['errorCode' => 'Application.ChangerOrderRunning', 'errorMessage' => 'An application change process is in progress. Please try again later.', 'description' => '应用有变更流程正在执行,请稍后重试。'], + ['errorCode' => 'Application.InvalidStatus', 'errorMessage' => 'The application status is abnormal. Please try again later.', 'description' => '应用状态异常,请稍后重试。'], + ['errorCode' => 'Application.NotDeployYet', 'errorMessage' => 'The application has not been deployed. Please deploy it and try again.', 'description' => '应用没有部署,请部署后重试。'], + ['errorCode' => 'MinReadyInstances.Not.Smaller.Replicas', 'errorMessage' => 'The minimum number of available instances must be less than the number of application instances.', 'description' => '最小可用实例数必须小于应用实例数。'], + ['errorCode' => 'MinReadyInstanceRatio.Invalid', 'errorMessage' => 'The ratio of minimum available instances must be between 0 and 100.', 'description' => '最小存活实例数比例值必须在0~100之间。'], + ], + 404 => [ + ['errorCode' => 'Associate.Eip.Not.Enough', 'errorMessage' => 'No sufficient EIPs are available.', 'description' => '绑定EIP时,EIP不足,需要您购买。'], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"Timer\\": {\\n \\"EndDate\\": \\"2021-04-25\\",\\n \\"BeginDate\\": \\"2021-03-25\\",\\n \\"Schedules\\": [\\n {\\n \\"AtTime\\": \\"08:00\\",\\n \\"TargetReplicas\\": 3,\\n \\"MinReplicas\\": 1,\\n \\"MaxReplicas\\": 10\\n }\\n ],\\n \\"Period\\": \\"* * *\\"\\n },\\n \\"UpdateTime\\": 1616642248938,\\n \\"AppId\\": \\"7171a6ca-d1cd-4928-8642-7d5cfe69****\\",\\n \\"CreateTime\\": 1616642248938,\\n \\"LastDisableTime\\": 1641882854484,\\n \\"ScaleRuleEnabled\\": true,\\n \\"ScaleRuleType\\": \\"timing\\",\\n \\"Metric\\": {\\n \\"Metrics\\": [\\n {\\n \\"MetricTargetAverageUtilization\\": 20,\\n \\"MetricType\\": \\"CPU\\",\\n \\"SlbProject\\": \\"test\\",\\n \\"SlbLogstore\\": \\"test\\",\\n \\"Vport\\": \\"80\\",\\n \\"SlbId\\": \\"lb-xxx\\"\\n }\\n ],\\n \\"MaxReplicas\\": 3,\\n \\"MinReplicas\\": 1\\n },\\n \\"ScaleRuleName\\": \\"test\\",\\n \\"EnableIdle\\": true\\n },\\n \\"Message\\": \\"success\\",\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<UpdateApplicationScalingRuleResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <Timer>\\n <EndDate>2021-04-25</EndDate>\\n <BeginDate>2021-03-25</BeginDate>\\n <Schedules>\\n <AtTime>08:00</AtTime>\\n <TargetReplicas>3</TargetReplicas>\\n <MinReplicas>1</MinReplicas>\\n <MaxReplicas>10</MaxReplicas>\\n </Schedules>\\n <Period>* * *</Period>\\n </Timer>\\n <UpdateTime>1616642248938</UpdateTime>\\n <AppId>7171a6ca-d1cd-4928-8642-7d5cfe69****</AppId>\\n <CreateTime>1616642248938</CreateTime>\\n <LastDisableTime>1641882854484</LastDisableTime>\\n <ScaleRuleEnabled>true</ScaleRuleEnabled>\\n <ScaleRuleType>timing</ScaleRuleType>\\n <Metric>\\n <Metrics>\\n <MetricTargetAverageUtilization>20</MetricTargetAverageUtilization>\\n <MetricType>CPU</MetricType>\\n <SlbProject>test</SlbProject>\\n <SlbLogstore>test</SlbLogstore>\\n <Vport>80</Vport>\\n <SlbId>lb-xxx</SlbId>\\n </Metrics>\\n <MaxReplicas>3</MaxReplicas>\\n <MinReplicas>1</MinReplicas>\\n </Metric>\\n <ScaleRuleName>test</ScaleRuleName>\\n </Data>\\n <Message>success</Message>\\n <Code>200</Code>\\n <Success>true</Success>\\n</UpdateApplicationScalingRuleResponse>","errorExample":""}]', - 'title' => '修改弹性策略', - 'summary' => '更新应用弹性伸缩策略。', - 'description' => '## 使用须知'."\n" - .'如果单个应用需要弹出超过50个实例,请联系SAE技术支持并申请白名单。更多信息,请参见[联系我们](~~146530~~)。', - ], - 'DescribeApplicationScalingRule' => [ - 'path' => '/pop/v1/sam/scale/applicationScalingRule', - 'methods' => [ - 'get', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Data\\": {\\n \\"ChangeOrderId\\": \\"0e09829f-4914-4612-bc88-6f52fd81****\\"\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<RescaleApplicationResponse>\\n <Message>success</Message>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Data>\\n <ChangeOrderId>0e09829f-4914-4612-bc88-6f52fd81****</ChangeOrderId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</RescaleApplicationResponse>","errorExample":""}]', + 'title' => '应用扩缩容', + 'summary' => '完成应用扩缩容。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:23.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2022-12-26T09:19:37.000Z', 'description' => '错误码发生变更'], + ['createdAt' => '2021-11-17T11:35:05.000Z', 'description' => '错误码发生变更'], ], - 'schemes' => [ - 'http', - 'https', + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '20', 'countWindow' => 60, 'regionId' => '*', 'api' => 'RescaleApplication'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'sae:RescaleApplication', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + ], + 'RescaleApplicationVertically' => [ + 'path' => '/pop/v1/sam/app/rescaleApplicationVertically', + 'methods' => ['post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '6320', - 'abilityTreeNodes' => [ - 'FEATUREsaeX1L0GL', - 'FEATUREsaeAINYGA', - ], + 'operationType' => 'none', + 'abilityTreeCode' => '6386', + 'abilityTreeNodes' => ['FEATUREsaeRVPNSA'], ], 'parameters' => [ [ 'name' => 'AppId', 'in' => 'query', - 'schema' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'a0d2e04c-159d-40a8-b240-d2f2c263****', - ], + 'schema' => ['description' => '目标应用ID。', 'type' => 'string', 'required' => true, 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****'], ], [ - 'name' => 'ScalingRuleName', + 'name' => 'Cpu', 'in' => 'query', - 'schema' => [ - 'description' => '弹性伸缩策略名称。'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'test', - ], + 'schema' => ['description' => '目标CPU规格,单位为毫核。', 'type' => 'string', 'required' => true, 'example' => '1000'], + ], + [ + 'name' => 'Memory', + 'in' => 'query', + 'schema' => ['description' => '目标内存规格,单位为MB。', 'type' => 'string', 'required' => true, 'example' => '2048'], + ], + [ + 'name' => 'minReadyInstances', + 'in' => 'query', + 'schema' => ['description' => '最小就绪实例数', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], + ], + [ + 'name' => 'minReadyInstanceRatio', + 'in' => 'query', + 'schema' => ['description' => '最小就绪实例数占比', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '50'], + ], + [ + 'name' => 'autoEnableApplicationScalingRule', + 'in' => 'query', + 'schema' => ['description' => '是否自动启用弹性扩缩规则', 'type' => 'boolean', 'required' => false, 'example' => 'true'], + ], + [ + 'name' => 'DiskSize', + 'in' => 'query', + 'schema' => ['description' => '磁盘存储大小。(每节点,单位:GB)', 'type' => 'string', 'required' => false, 'example' => '20'], + ], + [ + 'name' => 'ResourceType', + 'in' => 'query', + 'schema' => ['type' => 'string', 'required' => false, 'description' => ''], + ], + [ + 'name' => 'VSwitchId', + 'in' => 'query', + 'schema' => ['type' => 'string', 'required' => false, 'description' => ''], + ], + [ + 'name' => 'Deploy', + 'in' => 'query', + 'schema' => ['type' => 'boolean', 'required' => false, 'description' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'description' => '返回信息。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '73404D3D-EE4F-4CB2-B197-5C46F6A1****', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0b57ff7e16243300839193068e****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'AB521DBB-FA78-42E6-803F-A862EA4F****'], + 'Message' => ['description' => '调用结果的附加信息。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0bc3b6f315637273629117900d****'], 'Data' => [ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'Timer' => [ - 'description' => '定时弹性伸缩。', - 'type' => 'object', - 'properties' => [ - 'EndDate' => [ - 'description' => '定时弹性伸缩策略的短期结束日期。取值说明如下:'."\n" - ."\n" - .'- 当**BeginDate**和**EndDate**取值均为**null**时,表示长期执行,为默认值。'."\n" - .'- 当取值为具体日期时,例如**BeginDate**为**2021-03-25**,**EndDate**为**2021-04-25**,表示执行有效期为1个月。', - 'type' => 'string', - 'example' => '2021-04-25', - ], - 'BeginDate' => [ - 'description' => '定时弹性伸缩策略的短期起始日期。取值说明如下:'."\n" - ."\n" - .'- 当**BeginDate**和**EndDate**取值均为**null**时,表示长期执行,为默认值。'."\n" - .'- 当取值为具体日期时,例如**BeginDate**为**2021-03-25**,**EndDate**为**2021-04-25**,表示执行有效期为1个月。', - 'type' => 'string', - 'example' => '2021-03-25', - ], - 'Schedules' => [ - 'description' => '单天内触发时间点。', - 'type' => 'array', - 'items' => [ - 'description' => '时间点数据。', - 'type' => 'object', - 'properties' => [ - 'AtTime' => [ - 'description' => '时间点。格式:**时:分**。', - 'type' => 'string', - 'example' => '08:00', - ], - 'TargetReplicas' => [ - 'description' => '目标实例数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '2', - ], - 'MinReplicas' => [ - 'description' => '最小实例数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'MaxReplicas' => [ - 'description' => '最大实例数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - ], - ], - ], - 'Period' => [ - 'description' => '执行定时弹性伸缩策略的周期。取值说明如下:'."\n" - ."\n" - .'- **\\* \\* \\***:每天指定时间执行定时策略。'."\n" - .'- **\\* \\* Fri,Mon**:每周指定天数的指定时间执行定时策略,支持多选,GMT+8时区。取值说明如下: '."\n" - ."\n" - .' - **Sun**:星期日'."\n" - .' - **Mon**:星期一'."\n" - .' - **Tue**:星期二'."\n" - .' - **Wed**:星期三'."\n" - .' - **Thu**:星期四'."\n" - .' - **Fri**:星期五'."\n" - .' - **Sat**:星期六'."\n" - .'- **1,2,3,28,31 \\* \\***:每月指定日期的指定时间执行定时策略,支持多选。取值范围\\[1,31\\]。若当月无31日,则跳过该日期执行定时策略。', - 'type' => 'string', - 'example' => '* * *', - ], - ], - ], - 'UpdateTime' => [ - 'description' => '弹性伸缩策略更新时间。单位:毫秒。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1624330075827', - ], - 'AppId' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'example' => 'a0d2e04c-159d-40a8-b240-d2f2c263****', - ], - 'CreateTime' => [ - 'description' => '弹性伸缩策略创建时间。单位:毫秒。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1624329843790', - ], - 'LastDisableTime' => [ - 'description' => '最近一次禁用弹性伸缩策略的时间。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1641882854484', - ], - 'ScaleRuleEnabled' => [ - 'description' => '弹性伸缩策略是否启用。取值说明如下:'."\n" - ."\n" - .'- **true**:启用状态。'."\n" - .'- **false**:禁用状态。', - 'type' => 'boolean', - 'example' => 'true', - ], - 'ScaleRuleType' => [ - 'description' => '弹性伸缩策略类型。取值说明如下:'."\n" - ."\n" - .'- **timing**:定时弹性。'."\n" - .'- **metric**:监控指标弹性。'."\n" - .'- **mix**:混合弹性。', - 'type' => 'string', - 'example' => 'timing', - ], - 'Metric' => [ - 'description' => '监控指标弹性伸缩。', - 'type' => 'object', - 'properties' => [ - 'Metrics' => [ - 'description' => '监控指标弹性伸缩列表。', - 'type' => 'array', - 'items' => [ - 'description' => '监控指标数据。', - 'type' => 'object', - 'properties' => [ - 'MetricTargetAverageUtilization' => [ - 'description' => '监控指标的目标值。'."\n" - ."\n" - .'- CPU使用率目标值,单位为百分比。'."\n" - .'- 内存使用率目标值,单位为百分比。'."\n" - .'- QPS,单位为秒。'."\n" - .'- 响应时间,单位为毫秒。'."\n" - .'- TCP活跃连接数平均值,单位为个/秒。'."\n" - .'- 公网SLB QPS,单位为秒。'."\n" - .'- 公网SLB响应时间,单位为毫秒。'."\n" - .'- 私网SLB QPS,单位为秒。'."\n" - .'- 私网SLB响应时间,单位为毫秒。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '20', - ], - 'MetricType' => [ - 'description' => '监控指标的触发条件。取值说明如下:'."\n" - ."\n" - .'- **CPU**:CPU使用率。'."\n" - .'- **MEMORY**:内存使用率。'."\n" - .'- **QPS**:JAVA应用1分钟内单个实例的平均QPS。'."\n" - .'- **RT**:JAVA应用1分钟内应用所有服务接口平均RT值。'."\n" - .'- **tcpActiveConn**:30秒内单个实例的平均TCP活跃连接数。'."\n" - .'- **SLB\\_QPS**:15秒内单个实例的平均公网SLB QPS。'."\n" - .'- **SLB\\_RT**:15秒内公网SLB平均响应时间。'."\n" - .'- **INTRANET\\_SLB\\_QPS**:15秒内单个实例的平均私网SLB QPS。'."\n" - .'- **INTRANET\\_SLB\\_RT**:15秒内私网SLB平均响应时间。', - 'type' => 'string', - 'example' => 'CPU', - ], - 'SlbProject' => [ - 'description' => 'SLB访问日志Project。', - 'type' => 'string', - 'example' => 'test', - ], - 'SlbLogstore' => [ - 'description' => 'SLB访问日志Logstore。', - 'type' => 'string', - 'example' => 'test', - ], - 'Vport' => [ - 'description' => 'SLB实例端口。', - 'type' => 'string', - 'example' => '80', - ], - 'SlbId' => [ - 'description' => 'SLB实例ID。', - 'type' => 'string', - 'example' => 'lb-xxx', - ], - ], - ], - ], - 'MetricsStatus' => [ - 'description' => '监控指标弹性状态。', - 'type' => 'object', - 'properties' => [ - 'DesiredReplicas' => [ - 'description' => '目标实例数。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '2', - ], - 'NextScaleTimePeriod' => [ - 'description' => '下一次监控指标弹性的周期。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '3', - ], - 'CurrentReplicas' => [ - 'description' => '当前实例数。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '2', - ], - 'LastScaleTime' => [ - 'description' => '最近一次弹性扩缩的时间。', - 'type' => 'string', - 'example' => '2022-01-11T08:14:32Z', - ], - 'CurrentMetrics' => [ - 'description' => '当前监控指标弹性数据。', - 'type' => 'array', - 'items' => [ - 'description' => '监控指标数据。', - 'type' => 'object', - 'properties' => [ - 'Type' => [ - 'description' => '数据类型。与监控指标关联。'."\n" - ."\n" - .'- **Resource**:**cpu**、**memory**的指标取值。'."\n" - .'- **Pods**:**tcpActiveConn**的指标取值。'."\n" - .'- **External**:**arms**、**slb**的指标取值。', - 'type' => 'string', - 'example' => 'Resource', - ], - 'CurrentValue' => [ - 'description' => '当前值。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '0', - ], - 'Name' => [ - 'description' => '触发条件的名称。'."\n" - ."\n" - .'- **cpu**:CPU使用率。'."\n" - .'- **memory**:内存使用率。'."\n" - .'- **arms\\_incall\\_rt**:JAVA应用1分钟内单个实例的平均QPS。'."\n" - .'- **arms\\_incall\\_rt**:JAVA应用1分钟内应用所有服务接口平均RT值。'."\n" - .'- **tcpActiveConn**:TCP活跃连接数。'."\n" - .'- **slb\\_incall\\_qps**:公网SLB QPS。'."\n" - .'- **slb\\_incall\\_rt**:公网SLB响应时间。'."\n" - .'- **intranet\\_slb\\_incall\\_qps**:私网SLB QPS。'."\n" - .'- **intranet\\_slb\\_incall\\_rt**:私网SLB响应时间。'."\n", - 'type' => 'string', - 'example' => 'cpu', - ], - ], - ], - ], - 'NextScaleMetrics' => [ - 'description' => '下一次监控指标弹性列表。', - 'type' => 'array', - 'items' => [ - 'description' => '监控指标数据。', - 'type' => 'object', - 'properties' => [ - 'NextScaleOutAverageUtilization' => [ - 'description' => '下一次触发扩容条件的监控指标弹性的百分比数值。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '21', - ], - 'NextScaleInAverageUtilization' => [ - 'description' => '下一次触发缩容条件的监控指标弹性的百分比数值。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'Name' => [ - 'description' => '触发条件的名称。'."\n" - ."\n" - .'- **cpu**:CPU使用率。'."\n" - .'- **memory**:内存使用率。'."\n" - .'- **arms\\_incall\\_rt**:JAVA应用1分钟内单个实例的平均QPS。'."\n" - .'- **arms\\_incall\\_rt**:JAVA应用1分钟内应用所有服务接口平均RT值。'."\n" - .'- **tcpActiveConn**:TCP活跃连接数。'."\n" - .'- **slb\\_incall\\_qps**:公网SLB QPS。'."\n" - .'- **slb\\_incall\\_rt**:公网SLB响应时间。'."\n" - .'- **intranet\\_slb\\_incall\\_qps**:私网SLB QPS。'."\n" - .'- **intranet\\_slb\\_incall\\_rt**:私网SLB响应时间。', - 'type' => 'string', - 'example' => 'cpu', - ], - ], - ], - ], - ], - ], - 'MaxReplicas' => [ - 'description' => '最大实例数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '3', - ], - 'MinReplicas' => [ - 'description' => '最小实例数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'ScaleUpRules' => [ - 'description' => '应用扩容规则。', - 'type' => 'object', - 'properties' => [ - 'Step' => [ - 'description' => '弹性扩容步长。单位时间内最多扩容的实例数。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '100', - ], - 'StabilizationWindowSeconds' => [ - 'description' => '扩容冷却时间。取值范围\\[0, 3600\\],单位为秒。默认为0秒。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '300', - ], - 'Disabled' => [ - 'description' => '是否禁止缩容。取值说明如下:'."\n" - ."\n" - .'- **true**:开启。'."\n" - .'- **false**:关闭。'."\n" - ."\n" - .'> 开启后将永远不会缩容该应用的实例,能有效防止在流量高峰期缩容造成业务风险。默认关闭。', - 'type' => 'boolean', - 'example' => 'false', - ], - ], - ], - 'ScaleDownRules' => [ - 'description' => '应用缩容规则。', - 'type' => 'object', - 'properties' => [ - 'Step' => [ - 'description' => '弹性缩容步长。单位时间内最多缩容的实例数。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '100', - ], - 'StabilizationWindowSeconds' => [ - 'description' => '缩容冷却时间。取值范围\\[0, 3600\\],单位为秒。默认为0秒。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '300', - ], - 'Disabled' => [ - 'description' => '是否禁止缩容。取值说明如下:'."\n" - ."\n" - .'- **true**:开启。'."\n" - .'- **false**:关闭。'."\n" - ."\n" - .'> 开启后将永远不会缩容该应用的实例,能有效防止在流量高峰期缩容造成业务风险。默认关闭。', - 'type' => 'boolean', - 'example' => 'false', - ], - ], - ], - ], - ], - 'ScaleRuleName' => [ - 'description' => '弹性伸缩策略名称。', - 'type' => 'string', - 'example' => 'test', - ], - 'MinReadyInstances' => [ - 'description' => '最小存活实例数。取值说明如下:'."\n" - ."\n" - .'- 如果设置为**0**,应用在升级过程中将会中断业务。'."\n" - .'- 如果设置为**-1**,最小存活实例数将使用系统推荐值,即取现有实例数的25%。如果当前为5个实例,5×25%=1.25,向上取整后,最小存活实例数为2。'."\n" - ."\n" - .'> 每次滚动部署最小存活的实例数建议≥1,保证业务不中断。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'MinReadyInstanceRatio' => [ - 'description' => '最小存活实例数百分比。取值说明如下:'."\n" - .'- **-1**:初始化值,表示不采用百分比。'."\n" - .'- **0~100**:单位为百分比,向上取整。例如设置为50%,如果当前为5个实例,则最小存活实例数为3。'."\n" - ."\n" - .'> 当和**MinReadyInstanceRatio**同时传递时,且**MinReadyInstanceRatio**的取值非**-1**时,以**MinReadyInstanceRatio**参数为准。假设**MinReadyInstances**取值为**5**,**MinReadyInstanceRatio**取值为**50**,则会用**50**来计算最小存活实例数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '-1', - ], + 'ChangeOrderId' => ['description' => '发布单ID。', 'type' => 'string', 'example' => 'ffd8cd45-2b5f-415d-b4d0-1003e80b****'], ], ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '重启应用实例是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:重启成功。'."\n" - .'- **false**:重启失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**目录。', 'type' => 'string', 'example' => '空'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '更改实例规格是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:更改成功。'."\n" + .'- **false**:更改失败。', 'type' => 'boolean', 'example' => 'true'], ], + 'description' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"73404D3D-EE4F-4CB2-B197-5C46F6A1****\\",\\n \\"TraceId\\": \\"0b57ff7e16243300839193068e****\\",\\n \\"Data\\": {\\n \\"Timer\\": {\\n \\"EndDate\\": \\"2021-04-25\\",\\n \\"BeginDate\\": \\"2021-03-25\\",\\n \\"Schedules\\": [\\n {\\n \\"AtTime\\": \\"08:00\\",\\n \\"TargetReplicas\\": 2,\\n \\"MinReplicas\\": 1,\\n \\"MaxReplicas\\": 10\\n }\\n ],\\n \\"Period\\": \\"* * *\\"\\n },\\n \\"UpdateTime\\": 1624330075827,\\n \\"AppId\\": \\"a0d2e04c-159d-40a8-b240-d2f2c263****\\",\\n \\"CreateTime\\": 1624329843790,\\n \\"LastDisableTime\\": 1641882854484,\\n \\"ScaleRuleEnabled\\": true,\\n \\"ScaleRuleType\\": \\"timing\\",\\n \\"Metric\\": {\\n \\"Metrics\\": [\\n {\\n \\"MetricTargetAverageUtilization\\": 20,\\n \\"MetricType\\": \\"CPU\\",\\n \\"SlbProject\\": \\"test\\",\\n \\"SlbLogstore\\": \\"test\\",\\n \\"Vport\\": \\"80\\",\\n \\"SlbId\\": \\"lb-xxx\\"\\n }\\n ],\\n \\"MetricsStatus\\": {\\n \\"DesiredReplicas\\": 2,\\n \\"NextScaleTimePeriod\\": 3,\\n \\"CurrentReplicas\\": 2,\\n \\"LastScaleTime\\": \\"2022-01-11T08:14:32Z\\",\\n \\"CurrentMetrics\\": [\\n {\\n \\"Type\\": \\"Resource\\",\\n \\"CurrentValue\\": 0,\\n \\"Name\\": \\"cpu\\"\\n }\\n ],\\n \\"NextScaleMetrics\\": [\\n {\\n \\"NextScaleOutAverageUtilization\\": 21,\\n \\"NextScaleInAverageUtilization\\": 10,\\n \\"Name\\": \\"cpu\\"\\n }\\n ]\\n },\\n \\"MaxReplicas\\": 3,\\n \\"MinReplicas\\": 1,\\n \\"ScaleUpRules\\": {\\n \\"Step\\": 100,\\n \\"StabilizationWindowSeconds\\": 300,\\n \\"Disabled\\": false\\n },\\n \\"ScaleDownRules\\": {\\n \\"Step\\": 100,\\n \\"StabilizationWindowSeconds\\": 300,\\n \\"Disabled\\": false\\n }\\n },\\n \\"ScaleRuleName\\": \\"test\\",\\n \\"MinReadyInstances\\": 1,\\n \\"MinReadyInstanceRatio\\": -1\\n },\\n \\"Message\\": \\"success\\",\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeApplicationScalingRuleResponse>\\n <RequestId>73404D3D-EE4F-4CB2-B197-5C46F6A1****</RequestId>\\n <TraceId>0b57ff7e16243300839193068e****</TraceId>\\n <Data>\\n <Timer>\\n <EndDate>2021-04-25</EndDate>\\n <BeginDate>2021-03-25</BeginDate>\\n <Schedules>\\n <AtTime>08:00</AtTime>\\n <TargetReplicas>2</TargetReplicas>\\n <MinReplicas>1</MinReplicas>\\n <MaxReplicas>10</MaxReplicas>\\n </Schedules>\\n <Period>* * *</Period>\\n </Timer>\\n <UpdateTime>1624330075827</UpdateTime>\\n <AppId>a0d2e04c-159d-40a8-b240-d2f2c263****</AppId>\\n <CreateTime>1624329843790</CreateTime>\\n <LastDisableTime>1641882854484</LastDisableTime>\\n <ScaleRuleEnabled>true</ScaleRuleEnabled>\\n <ScaleRuleType>timing</ScaleRuleType>\\n <Metric>\\n <Metrics>\\n <MetricTargetAverageUtilization>20</MetricTargetAverageUtilization>\\n <MetricType>CPU</MetricType>\\n <SlbProject>test</SlbProject>\\n <SlbLogstore>test</SlbLogstore>\\n <Vport>80</Vport>\\n <SlbId>lb-xxx</SlbId>\\n </Metrics>\\n <MetricsStatus>\\n <DesiredReplicas>2</DesiredReplicas>\\n <NextScaleTimePeriod>3</NextScaleTimePeriod>\\n <CurrentReplicas>2</CurrentReplicas>\\n <LastScaleTime>2022-01-11T08:14:32Z</LastScaleTime>\\n <CurrentMetrics>\\n <Type>Resource</Type>\\n <CurrentValue>0</CurrentValue>\\n <Name>cpu</Name>\\n </CurrentMetrics>\\n <NextScaleMetrics>\\n <NextScaleOutAverageUtilization>21</NextScaleOutAverageUtilization>\\n <NextScaleInAverageUtilization>10</NextScaleInAverageUtilization>\\n <Name>cpu</Name>\\n </NextScaleMetrics>\\n </MetricsStatus>\\n <MaxReplicas>3</MaxReplicas>\\n <MinReplicas>1</MinReplicas>\\n <ScaleUpRules>\\n <Step>100</Step>\\n <StabilizationWindowSeconds>300</StabilizationWindowSeconds>\\n <Disabled>false</Disabled>\\n </ScaleUpRules>\\n <ScaleDownRules>\\n <Step>100</Step>\\n <StabilizationWindowSeconds>300</StabilizationWindowSeconds>\\n <Disabled>false</Disabled>\\n </ScaleDownRules>\\n </Metric>\\n <ScaleRuleName>test</ScaleRuleName>\\n <MinReadyInstances>1</MinReadyInstances>\\n <MinReadyInstanceRatio>-1</MinReadyInstanceRatio>\\n </Data>\\n <Message>success</Message>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeApplicationScalingRuleResponse>","errorExample":""}]', - 'title' => '查询应用的单个弹性伸缩策略', - 'summary' => 's接口查询应用的单个弹性伸缩策略。', - ], - 'DescribeApplicationScalingRules' => [ - 'path' => '/pop/v1/sam/scale/applicationScalingRules', - 'methods' => [ - 'get', + 'errorCodes' => [ + 400 => [ + ['errorCode' => 'InvalidApplication.NotFound', 'errorMessage' => 'The current application does not exist.', 'description' => '找不到当前应用。'], + ['errorCode' => 'InvalidInstanceSpecification.Unsupported', 'errorMessage' => 'The instance specification is not supported: CPU [%s], memory [%s].', 'description' => '不支持的实例规格。CPU[%s],Memory[%s]。'], + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], + ['errorCode' => 'NoComputeResourceQuota.Exceed', 'errorMessage' => 'Your compute resource is insufficient. Please contact us to raise the quota.', 'description' => ''], + ['errorCode' => 'user.indebt', 'errorMessage' => 'The user has an outstanding payment.', 'description' => '当前用户处于欠费状态。'], + ['errorCode' => 'System.Upgrading', 'errorMessage' => 'The system is being upgraded. Please try again later.', 'description' => '系统正在升级,请稍后操作。'], + ['errorCode' => 'Application.ChangerOrderRunning', 'errorMessage' => 'An application change process is in progress. Please try again later.', 'description' => '应用有变更流程正在执行,请稍后重试。'], + ['errorCode' => 'Application.InvalidStatus', 'errorMessage' => 'The application status is abnormal. Please try again later.', 'description' => '应用状态异常,请稍后重试。'], + ['errorCode' => 'Application.NotDeployYet', 'errorMessage' => 'The application has not been deployed. Please deploy it and try again.', 'description' => '应用没有部署,请部署后重试。'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"AB521DBB-FA78-42E6-803F-A862EA4F****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0bc3b6f315637273629117900d****\\",\\n \\"Data\\": {\\n \\"ChangeOrderId\\": \\"ffd8cd45-2b5f-415d-b4d0-1003e80b****\\"\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<RescaleApplicationVerticallyResponse>\\n <RequestId>AB521DBB-FA78-42E6-803F-A862EA4F****</RequestId>\\n <Message>success</Message>\\n <TraceId>0bc3b6f315637273629117900d****</TraceId>\\n <Data>\\n <ChangeOrderId>ffd8cd45-2b5f-415d-b4d0-1003e80b****</ChangeOrderId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</RescaleApplicationVerticallyResponse>","errorExample":""}]', + 'title' => '改变应用实例规格', + 'summary' => '更改应用实例规格。', + 'changeSet' => [ + ['createdAt' => '2025-11-26T04:57:28.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2025-10-15T07:12:42.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2025-04-07T03:09:05.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2024-09-24T01:47:26.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2022-12-26T09:19:38.000Z', 'description' => '错误码发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '20', 'countWindow' => 60, 'regionId' => '*', 'api' => 'RescaleApplicationVertically'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'sae:RescaleApplicationVertically', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + ], + 'RestartApplication' => [ + 'path' => '/pop/v1/sam/app/restartApplication', + 'methods' => ['put'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '6321', - 'abilityTreeNodes' => [ - 'FEATUREsaeX1L0GL', - 'FEATUREsaeAINYGA', - ], + 'operationType' => 'none', + 'abilityTreeCode' => '6387', + 'abilityTreeNodes' => ['FEATUREsaeD9PL61'], ], 'parameters' => [ [ 'name' => 'AppId', 'in' => 'query', - 'schema' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****', - ], + 'schema' => ['description' => '目标应用ID。', 'type' => 'string', 'required' => true, 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****'], + ], + [ + 'name' => 'MinReadyInstances', + 'in' => 'query', + 'schema' => ['description' => '最小存活实例数。取值说明如下:'."\n" + ."\n" + .'- 如果设置为**0**,应用在升级过程中将会中断业务。'."\n" + .'- 如果设置为**-1**,最小存活实例数将使用系统推荐值,即取现有实例数的25%。如果当前为5个实例,5×25%=1.25,向上取整后,最小存活实例数为2。'."\n" + ."\n" + .'> 每次滚动部署最小存活的实例数建议≥1,保证业务不中断。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], + ], + [ + 'name' => 'MinReadyInstanceRatio', + 'in' => 'query', + 'schema' => ['description' => '最小存活实例数百分比。取值说明如下:'."\n" + ."\n" + .' - **-1**:初始化值,表示不采用百分比。'."\n" + .' - **0~100**:单位为百分比,向上取整。例如设置为**50**%,如果当前为5个实例,则最小存活实例数为3。'."\n" + ."\n" + .'> 当**MinReadyInstance**和**MinReadyInstanceRatio**同时传递时,且**MinReadyInstanceRatio**的取值非**-1**时,以**MinReadyInstanceRatio**参数为准。假设**MinReadyInstances**取值为**5**,**MinReadyInstanceRatio**取值为**50**,则会用**50**来计算最小存活实例数。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '-1'], + ], + [ + 'name' => 'AutoEnableApplicationScalingRule', + 'in' => 'query', + 'schema' => ['description' => '是否自动启用应用弹性伸缩策略。取值说明如下:'."\n" + .'- **true**:开启。'."\n" + .'- **false**:关闭。', 'type' => 'boolean', 'required' => false, 'example' => 'false'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'description' => '返回信息。', + 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], 'Data' => [ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'CurrentPage' => [ - 'description' => '当前页数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'TotalSize' => [ - 'description' => '应用弹性伸缩策略总数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '3', - ], - 'PageSize' => [ - 'description' => '页面大小。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'ApplicationScalingRules' => [ - 'description' => '应用弹性伸缩策略列表。', - 'type' => 'array', - 'items' => [ - 'description' => '应用弹性伸缩策略。', - 'type' => 'object', - 'properties' => [ - 'Timer' => [ - 'description' => '定时弹性伸缩。', - 'type' => 'object', - 'properties' => [ - 'EndDate' => [ - 'description' => '定时弹性伸缩策略的短期结束日期。取值说明如下:'."\n" - ."\n" - .'- 当**BeginDate**和**EndDate**取值均为**null**时,表示长期执行,为默认值。'."\n" - .'- 当取值为具体日期时,例如**BeginDate**为2021-03-25,**EndDate**为2021-04-25,表示执行有效期为1个月。'."\n", - 'type' => 'string', - 'example' => '2021-04-25', - ], - 'BeginDate' => [ - 'description' => '定时弹性伸缩策略的短期起始日期。取值说明如下:'."\n" - ."\n" - .'- 当**BeginDate**和**EndDate**取值均为**null**时,表示长期执行,为默认值。'."\n" - .'- 当取值为具体日期时,例如**BeginDate**为2021-03-25,**EndDate**为2021-04-25,表示执行有效期为1个月。', - 'type' => 'string', - 'example' => '2021-03-25', - ], - 'Schedules' => [ - 'description' => '单天内触发时间点。', - 'type' => 'array', - 'items' => [ - 'description' => '时间点数据。', - 'type' => 'object', - 'properties' => [ - 'AtTime' => [ - 'description' => '时间点。格式:**时:分**。', - 'type' => 'string', - 'example' => '08:00', - ], - 'TargetReplicas' => [ - 'description' => '目标实例数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '3', - ], - 'MaxReplicas' => [ - 'description' => '最大实例数。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '50', - ], - 'MinReplicas' => [ - 'description' => '最小实例数。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1', - ], - ], - ], - ], - 'Period' => [ - 'description' => '执行定时弹性伸缩策略的周期。取值说明如下:'."\n" - ."\n" - .'- **\\* \\* \\***:每天指定时间执行定时策略。'."\n" - .'- **\\* \\* Fri,Mon**:每周指定天数的指定时间执行定时策略,支持多选,GMT+8时区。取值说明如下: '."\n" - ."\n" - .' - **Sun**:星期日'."\n" - .' - **Mon**:星期一'."\n" - .' - **Tue**:星期二'."\n" - .' - **Wed**:星期三'."\n" - .' - **Thu**:星期四'."\n" - .' - **Fri**:星期五'."\n" - .' - **Sat**:星期六'."\n" - .'- **1,2,3,28,31 \\* \\***:每月指定日期的指定时间执行定时策略,支持多选。取值范围\\[1,31\\]。若当月无31日,则跳过该日期执行定时策略。', - 'type' => 'string', - 'example' => '* * *', - ], - 'TimeZone' => [ - 'type' => 'string', - ], - ], - ], - 'UpdateTime' => [ - 'description' => '弹性伸缩策略更新时间。单位:毫秒。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1616642248938', - ], - 'AppId' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****', - ], - 'CreateTime' => [ - 'description' => '弹性伸缩策略创建时间。单位:毫秒。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1616642248938', - ], - 'LastDisableTime' => [ - 'description' => '最近一次禁用弹性伸缩策略的时间。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1641882854484', - ], - 'ScaleRuleEnabled' => [ - 'description' => '弹性伸缩策略是否启用。取值说明如下:'."\n" - ."\n" - .'- **true**:启用状态。'."\n" - .'- **false**:禁用状态。', - 'type' => 'boolean', - 'example' => 'true', - ], - 'ScaleRuleType' => [ - 'description' => '弹性伸缩策略类型。取值说明如下:'."\n" - ."\n" - .'- **timing**:定时弹性。'."\n" - .'- **metric**:监控指标弹性。'."\n" - .'- **mix**:混合弹性。', - 'type' => 'string', - 'example' => 'timing', - ], - 'Metric' => [ - 'description' => '监控指标弹性伸缩。', - 'type' => 'object', - 'properties' => [ - 'Metrics' => [ - 'description' => '监控指标弹性伸缩列表。', - 'type' => 'array', - 'items' => [ - 'description' => '监控指标数据。', - 'type' => 'object', - 'properties' => [ - 'MetricTargetAverageUtilization' => [ - 'description' => '监控指标的目标值。'."\n" - ."\n" - .'- CPU使用率目标值,单位为百分比。'."\n" - .'- 内存使用率目标值,单位为百分比。'."\n" - .'- QPS,单位为秒。'."\n" - .'- 响应时间,单位为毫秒。'."\n" - .'- TCP活跃连接数平均值,单位为个/秒。'."\n" - .'- 公网SLB QPS,单位为秒。'."\n" - .'- 公网SLB响应时间,单位为毫秒。'."\n" - .'- 私网SLB QPS,单位为秒。'."\n" - .'- 私网SLB响应时间,单位为毫秒。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '20', - ], - 'MetricType' => [ - 'description' => '监控指标的触发条件。取值说明如下:'."\n" - ."\n" - .'- **CPU**:CPU使用率。'."\n" - .'- **MEMORY**:内存使用率。'."\n" - .'- **QPS**:JAVA应用1分钟内单个实例的平均QPS。'."\n" - .'- **RT**:JAVA应用1分钟内应用所有服务接口平均RT值。'."\n" - .'- **tcpActiveConn**:30秒内单个实例的平均TCP活跃连接数。'."\n" - .'- **SLB\\_QPS**:15秒内单个实例的平均公网SLB QPS。'."\n" - .'- **SLB\\_RT**:15秒内公网SLB平均响应时间。'."\n" - .'- **INTRANET\\_SLB\\_QPS**:15秒内单个实例的平均私网SLB QPS。'."\n" - .'- **INTRANET\\_SLB\\_RT**:15秒内私网SLB平均响应时间。', - 'type' => 'string', - 'example' => 'CPU', - ], - 'SlbProject' => [ - 'description' => 'SLB访问日志Project。', - 'type' => 'string', - 'example' => 'test', - ], - 'SlbLogstore' => [ - 'description' => 'SLB访问日志Logstore。', - 'type' => 'string', - 'example' => 'test', - ], - 'Vport' => [ - 'description' => 'SLB实例端口。', - 'type' => 'string', - 'example' => '80', - ], - 'SlbId' => [ - 'description' => 'SLB实例ID。', - 'type' => 'string', - 'example' => 'lb-xxx', - ], - ], - ], - ], - 'PrometheusMetrics' => [ - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'PrometheusQuery' => [ - 'type' => 'string', - ], - 'TargetMetricValue' => [ - 'type' => 'string', - ], - ], - ], - ], - 'MetricsStatus' => [ - 'description' => '监控指标弹性状态。', - 'type' => 'object', - 'properties' => [ - 'DesiredReplicas' => [ - 'description' => '目标实例数。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '2', - ], - 'NextScaleTimePeriod' => [ - 'description' => '下一次监控指标弹性的周期。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '3', - ], - 'CurrentReplicas' => [ - 'description' => '当前实例数。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '2', - ], - 'LastScaleTime' => [ - 'description' => '最近一次弹性扩缩的时间。', - 'type' => 'string', - 'example' => '2022-01-11T08:14:32Z', - ], - 'CurrentMetrics' => [ - 'description' => '当前监控指标弹性列表。', - 'type' => 'array', - 'items' => [ - 'description' => '监控指标数据。', - 'type' => 'object', - 'properties' => [ - 'Type' => [ - 'description' => '数据类型。与监控指标关联。'."\n" - ."\n" - .'- **Resource**:**cpu**、**memory**的指标取值。'."\n" - .'- **Pods**:**tcpActiveConn**的指标取值。'."\n" - .'- **External**:**arms**、**slb**的指标取值。', - 'type' => 'string', - 'example' => 'Resource', - ], - 'CurrentValue' => [ - 'description' => '当前值。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '0', - ], - 'Name' => [ - 'description' => '触发条件的名称。'."\n" - ."\n" - .'- **cpu**:CPU使用率。'."\n" - .'- **memory**:内存使用率。'."\n" - .'- **arms\\_incall\\_qps\\_v2**:Java应用QPS。'."\n" - .'- **arms\\_incall\\_rt**:Java应用响应时间。'."\n" - .'- **tcpActiveConn**:TCP活跃连接数。'."\n" - .'- **slb\\_incall\\_qps**:公网SLB QPS。'."\n" - .'- **slb\\_incall\\_rt**:公网SLB响应时间。'."\n" - .'- **intranet\\_slb\\_incall\\_qps**:私网SLB QPS。'."\n" - .'- **intranet\\_slb\\_incall\\_rt**:私网SLB响应时间。'."\n", - 'type' => 'string', - 'example' => 'cpu', - ], - ], - ], - ], - 'NextScaleMetrics' => [ - 'description' => '下一次监控指标弹性列表。', - 'type' => 'array', - 'items' => [ - 'description' => '监控指标数据。', - 'type' => 'object', - 'properties' => [ - 'NextScaleOutAverageUtilization' => [ - 'description' => '下一次触发扩容条件的监控指标弹性的百分比数值。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '21', - ], - 'NextScaleInAverageUtilization' => [ - 'description' => '下一次触发缩容条件的监控指标弹性的百分比数值。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'Name' => [ - 'description' => '触发条件的名称。'."\n" - ."\n" - .'- **cpu**:CPU使用率。'."\n" - .'- **memory**:内存使用率。'."\n" - .'- **arms\\_incall\\_qps\\_v2**:JAVA应用 QPS。'."\n" - .'- **arms\\_incall\\_rt**:AVA应用响应时间。'."\n" - .'- **tcpActiveConn**:TCP活跃连接数。'."\n" - .'- **slb\\_incall\\_qps**:公网SLB QPS。'."\n" - .'- **slb\\_incall\\_rt**:公网SLB响应时间。'."\n" - .'- **intranet\\_slb\\_incall\\_qps**:私网SLB QPS。'."\n" - .'- **intranet\\_slb\\_incall\\_rt**:私网SLB响应时间。'."\n", - 'type' => 'string', - 'example' => 'cpu', - ], - ], - ], - ], - 'MaxReplicas' => [ - 'description' => '最大实例数。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '3', - ], - 'MinReplicas' => [ - 'description' => '最小实例数。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1', - ], - ], - ], - 'MaxReplicas' => [ - 'description' => '最大实例数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '3', - ], - 'MinReplicas' => [ - 'description' => '最小实例数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'ScaleUpRules' => [ - 'description' => '应用扩容规则。', - 'type' => 'object', - 'properties' => [ - 'Step' => [ - 'description' => '弹性扩容步长。单位时间内最多扩容的实例数。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '100', - ], - 'StabilizationWindowSeconds' => [ - 'description' => '扩容冷却时间。取值范围\\[0, 3600\\],单位为秒。默认为0秒。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '300', - ], - 'Disabled' => [ - 'description' => '是否禁止缩容。取值说明如下:'."\n" - ."\n" - .'- **true**:开启。'."\n" - .'- **false**:关闭。'."\n" - ."\n" - .'> 开启后将永远不会缩容该应用的实例,能有效防止在流量高峰期缩容造成业务风险。默认关闭。', - 'type' => 'boolean', - 'example' => 'false', - ], - ], - ], - 'ScaleDownRules' => [ - 'description' => '应用缩容规则。', - 'type' => 'object', - 'properties' => [ - 'Step' => [ - 'description' => '弹性缩容步长。单位时间内最多缩容的实例数。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '100', - ], - 'StabilizationWindowSeconds' => [ - 'description' => '缩容冷却时间。取值范围\\[0, 3600\\],单位为秒。默认为0秒。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '300', - ], - 'Disabled' => [ - 'description' => '是否禁止缩容。取值说明如下:'."\n" - ."\n" - .'- **true**:开启。'."\n" - .'- **false**:关闭。'."\n" - ."\n" - .'> 开启后将永远不会缩容该应用的实例,能有效防止在流量高峰期缩容造成业务风险。默认关闭。', - 'type' => 'boolean', - 'example' => 'false', - ], - ], - ], - 'MetricSource' => [ - 'type' => 'string', - ], - 'PrometheusUrl' => [ - 'type' => 'string', - ], - 'PrometheusToken' => [ - 'type' => 'string', - ], - ], - ], - 'ScaleRuleName' => [ - 'description' => '弹性伸缩策略名称。', - 'type' => 'string', - 'example' => 'test', - ], - 'MinReadyInstances' => [ - 'description' => '最小存活实例数。取值说明如下:'."\n" - .'- 如果设置为**0**,应用在升级过程中将会中断业务。'."\n" - .'- 如果设置为**-1**,最小存活实例数将使用系统推荐值,即取现有实例数的25%。如果当前为5个实例,5×25%=1.25,向上取整后,最小存活实例数为2。'."\n" - ."\n" - .'> 每次滚动部署最小存活的实例数建议≥1,保证业务不中断。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'MinReadyInstanceRatio' => [ - 'description' => '最小存活实例数百分比。取值说明如下:'."\n" - .'- **-1**:初始化值,表示不采用百分比。'."\n" - .'- **0~100**:单位为百分比,向上取整。例如设置为50%,如果当前为5个实例,则最小存活实例数为3。'."\n" - ."\n" - .'> 当和**MinReadyInstanceRatio**同时传递时,且**MinReadyInstanceRatio**的取值非**-1**时,以**MinReadyInstanceRatio**参数为准。假设**MinReadyInstances**取值为**5**,**MinReadyInstanceRatio**取值为**50**,则会用**50**来计算最小存活实例数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '-1', - ], - ], - ], - ], + 'ChangeOrderId' => ['description' => '变更单ID。', 'type' => 'string', 'example' => '4a815998-b468-4bea-b7d8-59f52a44****'], ], ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '重启应用实例是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:重启成功。'."\n" - .'- **false**:重启失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '重启实例是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:表示重启成功。'."\n" + .'- **false**:表示重启失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"CurrentPage\\": 1,\\n \\"TotalSize\\": 3,\\n \\"PageSize\\": 10,\\n \\"ApplicationScalingRules\\": [\\n {\\n \\"Timer\\": {\\n \\"EndDate\\": \\"2021-04-25\\",\\n \\"BeginDate\\": \\"2021-03-25\\",\\n \\"Schedules\\": [\\n {\\n \\"AtTime\\": \\"08:00\\",\\n \\"TargetReplicas\\": 3,\\n \\"MaxReplicas\\": 50,\\n \\"MinReplicas\\": 1\\n }\\n ],\\n \\"Period\\": \\"* * *\\",\\n \\"TimeZone\\": \\"\\"\\n },\\n \\"UpdateTime\\": 1616642248938,\\n \\"AppId\\": \\"7171a6ca-d1cd-4928-8642-7d5cfe69****\\",\\n \\"CreateTime\\": 1616642248938,\\n \\"LastDisableTime\\": 1641882854484,\\n \\"ScaleRuleEnabled\\": true,\\n \\"ScaleRuleType\\": \\"timing\\",\\n \\"Metric\\": {\\n \\"Metrics\\": [\\n {\\n \\"MetricTargetAverageUtilization\\": 20,\\n \\"MetricType\\": \\"CPU\\",\\n \\"SlbProject\\": \\"test\\",\\n \\"SlbLogstore\\": \\"test\\",\\n \\"Vport\\": \\"80\\",\\n \\"SlbId\\": \\"lb-xxx\\"\\n }\\n ],\\n \\"PrometheusMetrics\\": [\\n {\\n \\"PrometheusQuery\\": \\"\\",\\n \\"TargetMetricValue\\": \\"\\"\\n }\\n ],\\n \\"MetricsStatus\\": {\\n \\"DesiredReplicas\\": 2,\\n \\"NextScaleTimePeriod\\": 3,\\n \\"CurrentReplicas\\": 2,\\n \\"LastScaleTime\\": \\"2022-01-11T08:14:32Z\\",\\n \\"CurrentMetrics\\": [\\n {\\n \\"Type\\": \\"Resource\\",\\n \\"CurrentValue\\": 0,\\n \\"Name\\": \\"cpu\\"\\n }\\n ],\\n \\"NextScaleMetrics\\": [\\n {\\n \\"NextScaleOutAverageUtilization\\": 21,\\n \\"NextScaleInAverageUtilization\\": 10,\\n \\"Name\\": \\"cpu\\"\\n }\\n ],\\n \\"MaxReplicas\\": 3,\\n \\"MinReplicas\\": 1\\n },\\n \\"MaxReplicas\\": 3,\\n \\"MinReplicas\\": 1,\\n \\"ScaleUpRules\\": {\\n \\"Step\\": 100,\\n \\"StabilizationWindowSeconds\\": 300,\\n \\"Disabled\\": false\\n },\\n \\"ScaleDownRules\\": {\\n \\"Step\\": 100,\\n \\"StabilizationWindowSeconds\\": 300,\\n \\"Disabled\\": false\\n },\\n \\"MetricSource\\": \\"\\",\\n \\"PrometheusUrl\\": \\"\\",\\n \\"PrometheusToken\\": \\"\\"\\n },\\n \\"ScaleRuleName\\": \\"test\\",\\n \\"MinReadyInstances\\": 1,\\n \\"MinReadyInstanceRatio\\": -1\\n }\\n ]\\n },\\n \\"Message\\": \\"success\\",\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeApplicationScalingRulesResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <CurrentPage>1</CurrentPage>\\n <TotalSize>3</TotalSize>\\n <PageSize>10</PageSize>\\n <ApplicationScalingRules>\\n <Timer>\\n <EndDate>2021-04-25</EndDate>\\n <BeginDate>2021-03-25</BeginDate>\\n <Schedules>\\n <AtTime>08:00</AtTime>\\n <TargetReplicas>3</TargetReplicas>\\n <MaxReplicas>50</MaxReplicas>\\n <MinReplicas>1</MinReplicas>\\n </Schedules>\\n <Period>* * *</Period>\\n </Timer>\\n <UpdateTime>1616642248938</UpdateTime>\\n <AppId>7171a6ca-d1cd-4928-8642-7d5cfe69****</AppId>\\n <CreateTime>1616642248938</CreateTime>\\n <LastDisableTime>1641882854484</LastDisableTime>\\n <ScaleRuleEnabled>true</ScaleRuleEnabled>\\n <ScaleRuleType>timing</ScaleRuleType>\\n <Metric>\\n <Metrics>\\n <MetricTargetAverageUtilization>20</MetricTargetAverageUtilization>\\n <MetricType>CPU</MetricType>\\n <SlbProject>test</SlbProject>\\n <SlbLogstore>test</SlbLogstore>\\n <Vport>80</Vport>\\n <SlbId>lb-xxx</SlbId>\\n </Metrics>\\n <MetricsStatus>\\n <DesiredReplicas>2</DesiredReplicas>\\n <NextScaleTimePeriod>3</NextScaleTimePeriod>\\n <CurrentReplicas>2</CurrentReplicas>\\n <LastScaleTime>2022-01-11T08:14:32Z</LastScaleTime>\\n <CurrentMetrics>\\n <Type>Resource</Type>\\n <CurrentValue>0</CurrentValue>\\n <Name>cpu</Name>\\n </CurrentMetrics>\\n <NextScaleMetrics>\\n <NextScaleOutAverageUtilization>21</NextScaleOutAverageUtilization>\\n <NextScaleInAverageUtilization>10</NextScaleInAverageUtilization>\\n <Name>cpu</Name>\\n </NextScaleMetrics>\\n <MaxReplicas>3</MaxReplicas>\\n <MinReplicas>1</MinReplicas>\\n </MetricsStatus>\\n <MaxReplicas>3</MaxReplicas>\\n <MinReplicas>1</MinReplicas>\\n <ScaleUpRules>\\n <Step>100</Step>\\n <StabilizationWindowSeconds>300</StabilizationWindowSeconds>\\n <Disabled>false</Disabled>\\n </ScaleUpRules>\\n <ScaleDownRules>\\n <Step>100</Step>\\n <StabilizationWindowSeconds>300</StabilizationWindowSeconds>\\n <Disabled>false</Disabled>\\n </ScaleDownRules>\\n </Metric>\\n <ScaleRuleName>test</ScaleRuleName>\\n <MinReadyInstances>1</MinReadyInstances>\\n <MinReadyInstanceRatio>-1</MinReadyInstanceRatio>\\n </ApplicationScalingRules>\\n </Data>\\n <Message>success</Message>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeApplicationScalingRulesResponse>","errorExample":""}]', - 'title' => '查询应用弹性伸缩策略', - 'summary' => '查询应用弹性伸缩策略。', - ], - 'CreateWebApplication' => [ - 'summary' => '创建Web应用。', - 'path' => '/pop/v2/api/web/applications', - 'methods' => [ - 'post', + 'errorCodes' => [ + 400 => [ + ['errorCode' => 'InvalidApplication.NotFound', 'errorMessage' => 'The current application does not exist.', 'description' => '找不到当前应用。'], + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], + ['errorCode' => 'NoComputeResourceQuota.Exceed', 'errorMessage' => 'Your compute resource is insufficient. Please contact us to raise the quota.', 'description' => ''], + ['errorCode' => 'user.indebt', 'errorMessage' => 'The user has an outstanding payment.', 'description' => '当前用户处于欠费状态。'], + ['errorCode' => 'NoComputeResourceQuota.App.Exceed', 'errorMessage' => 'You can create %s instances for each application. Please submit a ticket to raise the quota.', 'description' => '每个应用只允许创建%s个实例,请加入钉群32874633联系技术产品专家进行咨询。'], + ['errorCode' => 'NoComputeResourceQuota.User.Exceed', 'errorMessage' => 'Your account is limited to create %s instances. Please submit a ticket to raise the quota.', 'description' => '您的账户限额%s个实例,请加入钉群32874633联系技术产品专家进行咨询。'], + ['errorCode' => 'System.Upgrading', 'errorMessage' => 'The system is being upgraded. Please try again later.', 'description' => '系统正在升级,请稍后操作。'], + ['errorCode' => 'Application.ChangerOrderRunning', 'errorMessage' => 'An application change process is in progress. Please try again later.', 'description' => '应用有变更流程正在执行,请稍后重试。'], + ['errorCode' => 'Application.InvalidStatus', 'errorMessage' => 'The application status is abnormal. Please try again later.', 'description' => '应用状态异常,请稍后重试。'], + ['errorCode' => 'Application.NotDeployYet', 'errorMessage' => 'The application has not been deployed. Please deploy it and try again.', 'description' => '应用没有部署,请部署后重试。'], + ], + 404 => [ + ['errorCode' => 'Associate.Eip.Not.Enough', 'errorMessage' => 'No sufficient EIPs are available.', 'description' => '绑定EIP时,EIP不足,需要您购买。'], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"ChangeOrderId\\": \\"4a815998-b468-4bea-b7d8-59f52a44****\\"\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<RestartApplicationResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <ChangeOrderId>4a815998-b468-4bea-b7d8-59f52a44****</ChangeOrderId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</RestartApplicationResponse>","errorExample":""}]', + 'title' => '重启应用', + 'summary' => '调用RestartApplication接口重启应用。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:23.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2023-03-30T11:11:44.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2022-12-26T09:19:38.000Z', 'description' => '错误码发生变更'], ], - 'schemes' => [ - 'http', - 'https', + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'RestartApplication'], + ], ], - 'tags' => [], + 'ramActions' => [ + [ + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'sae:RestartApplication', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], + ], + ], + 'RestartInstances' => [ + 'path' => '/pop/v1/sam/app/restartInstances', + 'methods' => ['put'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'consumes' => [ - 'application/json', - ], - 'produces' => [ - 'application/json', - ], 'operationType' => 'readAndWrite', + 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'create', - 'abilityTreeCode' => '181739', - 'abilityTreeNodes' => [ - 'FEATUREsaeUWY6ZL', - ], + 'operationType' => 'none', + 'abilityTreeCode' => '8961', + 'abilityTreeNodes' => ['FEATUREsaeD9PL61'], ], 'parameters' => [ [ - 'name' => 'NamespaceId', + 'name' => 'AppId', 'in' => 'query', - 'allowEmptyValue' => false, - 'schema' => [ - 'title' => '命名空间ID', - 'description' => '命名空间ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-beijing:test', - ], + 'schema' => ['description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => '1daa7236-3844-4f36-b39a-605b0cc0****'], ], [ - 'name' => 'body', - 'in' => 'body', - 'allowEmptyValue' => false, - 'schema' => [ - 'title' => '应用信息', - 'description' => '应用信息。', - 'required' => true, - '$ref' => '#/components/schemas/CreateWebApplicationInput', - ], + 'name' => 'InstanceIds', + 'in' => 'query', + 'schema' => ['description' => '需要重启的实例ID。多个实例时使用英文逗号(,)分隔。', 'type' => 'string', 'required' => true, 'example' => 'mysae-1daa7236-3844-4f36-b39a-605b0cc0caa6-*****'], ], ], 'responses' => [ 200 => [ - 'description' => '返回信息', 'schema' => [ - 'title' => '返回信息', - 'description' => '返回信息。', - 'required' => false, - '$ref' => '#/components/schemas/WebApplicationBody', + 'description' => '返回数据。', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。'."\n" + ."\n", 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], + 'Data' => [ + 'description' => '应用信息。', + 'type' => 'object', + 'properties' => [ + 'ChangeOrderId' => ['description' => '发布单ID。', 'type' => 'string', 'example' => '5afa5b98-0c64-4637-983f-15eaa888****'], + ], + ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '重启应用实例是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:重启成功。'."\n" + .'- **false**:重启失败。', 'type' => 'boolean', 'example' => 'true'], + ], ], - 'examples' => [], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 0,\\n \\"Data\\": {\\n \\"ApplicationId\\": \\"\\",\\n \\"ApplicationName\\": \\"\\",\\n \\"CreatedTime\\": \\"\\",\\n \\"Description\\": \\"\\",\\n \\"LastModifiedTime\\": \\"\\",\\n \\"NamespaceId\\": \\"\\",\\n \\"RevisionConfig\\": {\\n \\"Containers\\": [\\n {\\n \\"Args\\": \\"[\\\\\\"abc\\\\\\", \\\\\\">\\\\\\", \\\\\\"file0\\\\\\"]\\",\\n \\"Command\\": \\"[\\\\\\"/bin/sh\\\\\\"]\\",\\n \\"EnvironmentVariables\\": {\\n \\"key\\": \\"\\"\\n },\\n \\"Image\\": \\"registry.cn-shanghai.aliyuncs.com/serverless_devsxxxxx\\",\\n \\"WebNASConfig\\": {\\n \\"MountPoints\\": [\\n {\\n \\"MountDir\\": \\"\\",\\n \\"NasAddr\\": \\"\\",\\n \\"NasPath\\": \\"\\"\\n }\\n ]\\n },\\n \\"WebOSSConfig\\": {\\n \\"MountPoints\\": [\\n {\\n \\"BucketName\\": \\"\\",\\n \\"BucketPath\\": \\"\\",\\n \\"MountDir\\": \\"\\",\\n \\"ReadOnly\\": true\\n }\\n ]\\n },\\n \\"Port\\": 8080,\\n \\"RequestConcurrency\\": 100,\\n \\"RequestTimeout\\": 60,\\n \\"Resources\\": {\\n \\"Cpu\\": 2000,\\n \\"Memory\\": 2048\\n },\\n \\"StartupProbe\\": {\\n \\"FailureThreshold\\": 0,\\n \\"InitialDelaySeconds\\": 0,\\n \\"PeriodSeconds\\": 0,\\n \\"ProbeHandler\\": {\\n \\"HttpGet\\": {\\n \\"Host\\": \\"\\",\\n \\"HttpHeaders\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"value\\": \\"\\"\\n }\\n ],\\n \\"Path\\": \\"\\",\\n \\"Port\\": 0,\\n \\"Scheme\\": \\"\\"\\n },\\n \\"TcpSocket\\": {\\n \\"Host\\": \\"\\",\\n \\"Port\\": 0\\n }\\n },\\n \\"TimeoutSeconds\\": 0\\n },\\n \\"SLSCollectConfigs\\": {\\n \\"CollectConfigs\\": [\\n {\\n \\"LogPath\\": \\"\\",\\n \\"LogType\\": \\"\\",\\n \\"LogstoreName\\": \\"\\",\\n \\"LogtailName\\": \\"\\",\\n \\"MachineGroup\\": \\"\\",\\n \\"ProjectName\\": \\"\\"\\n }\\n ]\\n },\\n \\"MetricsCollectConfig\\": {\\n \\"LogstoreName\\": \\"my-sls-logstorename\\",\\n \\"ProjectName\\": \\"my-sls-project\\",\\n \\"EnablePushToUserSLS\\": true\\n },\\n \\"ImageRegistryConfig\\": {\\n \\"AuthConfig\\": {\\n \\"UserName\\": \\"admin\\",\\n \\"Password\\": \\"abc***\\"\\n },\\n \\"CertConfig\\": {\\n \\"Insecure\\": true,\\n \\"CertBase64\\": \\"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCmZha2VDZXJ0aWZpY2F0ZQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0t\\"\\n }\\n }\\n }\\n ],\\n \\"EnableArmsMetrics\\": true,\\n \\"WebNetworkConfig\\": {\\n \\"InternetAccess\\": true,\\n \\"SecurityGroupId\\": \\"sg-bp18hj1wtxgy3b0***\\",\\n \\"VSwitchIds\\": [\\n \\"vsw-bp1ozpcrdc6r****\\"\\n ]\\n }\\n },\\n \\"InternetURL\\": \\"\\",\\n \\"IntranetURL\\": \\"\\",\\n \\"VpcId\\": \\"\\",\\n \\"WebScalingConfig\\": {\\n \\"MaximumInstanceCount\\": 10,\\n \\"MinimumInstanceCount\\": 0\\n },\\n \\"WebTrafficConfig\\": {\\n \\"WebAclConfig\\": {\\n \\"WebAclEntries\\": [\\n {\\n \\"Entry\\": \\"1.2.3.4/32\\",\\n \\"Description\\": \\"办公网\\"\\n }\\n ],\\n \\"AclDescription\\": \\"\\"\\n },\\n \\"AuthType\\": \\"Anonymous\\",\\n \\"DisableInternetURL\\": true,\\n \\"RevisionsTrafficWeight\\": {\\n \\"key\\": 0\\n }\\n }\\n },\\n \\"Message\\": \\"\\",\\n \\"RequestId\\": \\"\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => '创建Web应用', - 'description' => '调用CreateWebApplication接口创建Web应用。', - ], - 'DescribeWebApplication' => [ - 'summary' => '查询Web应用。', - 'path' => '/pop/v2/api/web/applications/{ApplicationId}', - 'methods' => [ - 'get', + 'errorCodes' => [ + 400 => [ + ['errorCode' => 'InvalidApplication.NotFound', 'errorMessage' => 'The current application does not exist.', 'description' => '找不到当前应用。'], + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], + ['errorCode' => 'NoComputeResourceQuota.Exceed', 'errorMessage' => 'Your compute resource is insufficient. Please contact us to raise the quota.', 'description' => ''], + ['errorCode' => 'user.indebt', 'errorMessage' => 'The user has an outstanding payment.', 'description' => '当前用户处于欠费状态。'], + ['errorCode' => 'NoComputeResourceQuota.App.Exceed', 'errorMessage' => 'You can create %s instances for each application. Please submit a ticket to raise the quota.', 'description' => '每个应用只允许创建%s个实例,请加入钉群32874633联系技术产品专家进行咨询。'], + ['errorCode' => 'NoComputeResourceQuota.User.Exceed', 'errorMessage' => 'Your account is limited to create %s instances. Please submit a ticket to raise the quota.', 'description' => '您的账户限额%s个实例,请加入钉群32874633联系技术产品专家进行咨询。'], + ['errorCode' => 'System.Upgrading', 'errorMessage' => 'The system is being upgraded. Please try again later.', 'description' => '系统正在升级,请稍后操作。'], + ['errorCode' => 'Application.ChangerOrderRunning', 'errorMessage' => 'An application change process is in progress. Please try again later.', 'description' => '应用有变更流程正在执行,请稍后重试。'], + ['errorCode' => 'Application.InvalidStatus', 'errorMessage' => 'The application status is abnormal. Please try again later.', 'description' => '应用状态异常,请稍后重试。'], + ['errorCode' => 'Application.NotDeployYet', 'errorMessage' => 'The application has not been deployed. Please deploy it and try again.', 'description' => '应用没有部署,请部署后重试。'], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"ChangeOrderId\\": \\"5afa5b98-0c64-4637-983f-15eaa888****\\"\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<RestartInstancesResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <ChangeOrderId>5afa5b98-0c64-4637-983f-15eaa888****</ChangeOrderId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</RestartInstancesResponse>","errorExample":""}]', + 'title' => '重启应用实例', + 'summary' => '调用RestartInstances接口重启应用实例。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:23.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2022-12-26T09:19:38.000Z', 'description' => '错误码发生变更'], ], - 'schemes' => [ - 'http', - 'https', + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '20', 'countWindow' => 60, 'regionId' => '*', 'api' => 'RestartInstances'], + ], ], - 'tags' => [], + 'ramActions' => [ + [ + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'sae:RestartInstances', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], + ], + ], + 'ResumeTraffic' => [ + 'summary' => '将实例上来自 CLB 应用访问、NLB 应用访问、CLB 网关路由、ALB 网关路由、K8S Service 上的流量恢复', + 'path' => '/pop/v1/sam/app/instanceTrafficResume', + 'methods' => ['put'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'consumes' => [ - 'application/json', - ], - 'produces' => [ - 'application/json', - ], 'operationType' => 'readAndWrite', + 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '225942', - 'abilityTreeNodes' => [ - 'FEATUREsaeUWY6ZL', - ], + 'operationType' => 'none', + 'abilityTreeCode' => '289039', + 'abilityTreeNodes' => ['FEATUREsaeRVPNSA'], ], 'parameters' => [ [ - 'name' => 'NamespaceId', + 'name' => 'AppId', 'in' => 'query', - 'allowEmptyValue' => false, - 'schema' => [ - 'title' => '命名空间ID', - 'description' => '命名空间ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-beijing:test', - ], + 'schema' => ['description' => '应用ID。', 'type' => 'string', 'required' => false, 'example' => '017f39b8-dfa4-4e16-a84b-1dcee4b1****'], ], [ - 'name' => 'ApplicationId', - 'in' => 'path', - 'allowEmptyValue' => false, - 'schema' => [ - 'title' => '应用ID', - 'description' => '应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****', - ], + 'name' => 'InstanceIds', + 'in' => 'query', + 'schema' => ['description' => '实例ID。', 'type' => 'string', 'required' => false, 'example' => 'c-668727a8-17d86664-41e5bb******,c-668727a8-17d86664-7e4958******'], ], ], 'responses' => [ 200 => [ - 'description' => '返回信息', 'schema' => [ - 'title' => '返回信息', - 'description' => '返回信息。', - 'required' => false, - '$ref' => '#/components/schemas/WebApplicationBody', + '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' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => 'ac1a0b2215622920113732501e****'], + 'Data' => [ + 'description' => '返回结果。', + 'type' => 'object', + 'properties' => [ + 'msg' => ['description' => '请求 code 对应的详细描述信息。', 'type' => 'string', 'example' => 'succeed in handling request'], + 'success' => ['description' => '流量是否恢复成功:'."\n" + ."\n" + .'- **true**:恢复成功。'."\n" + .'- **false**:恢复失败。', 'type' => 'boolean', 'example' => 'True'], + ], + ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '恢复实例上的流量是否成功。取值说明如下:true:恢复成功。 false:恢复失败。', 'type' => 'string', 'example' => 'True'], + ], ], - 'examples' => [], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 0,\\n \\"Data\\": {\\n \\"ApplicationId\\": \\"\\",\\n \\"ApplicationName\\": \\"\\",\\n \\"CreatedTime\\": \\"\\",\\n \\"Description\\": \\"\\",\\n \\"LastModifiedTime\\": \\"\\",\\n \\"NamespaceId\\": \\"\\",\\n \\"RevisionConfig\\": {\\n \\"Containers\\": [\\n {\\n \\"Args\\": \\"[\\\\\\"abc\\\\\\", \\\\\\">\\\\\\", \\\\\\"file0\\\\\\"]\\",\\n \\"Command\\": \\"[\\\\\\"/bin/sh\\\\\\"]\\",\\n \\"EnvironmentVariables\\": {\\n \\"key\\": \\"\\"\\n },\\n \\"Image\\": \\"registry.cn-shanghai.aliyuncs.com/serverless_devsxxxxx\\",\\n \\"WebNASConfig\\": {\\n \\"MountPoints\\": [\\n {\\n \\"MountDir\\": \\"\\",\\n \\"NasAddr\\": \\"\\",\\n \\"NasPath\\": \\"\\"\\n }\\n ]\\n },\\n \\"WebOSSConfig\\": {\\n \\"MountPoints\\": [\\n {\\n \\"BucketName\\": \\"\\",\\n \\"BucketPath\\": \\"\\",\\n \\"MountDir\\": \\"\\",\\n \\"ReadOnly\\": true\\n }\\n ]\\n },\\n \\"Port\\": 8080,\\n \\"RequestConcurrency\\": 100,\\n \\"RequestTimeout\\": 60,\\n \\"Resources\\": {\\n \\"Cpu\\": 2000,\\n \\"Memory\\": 2048\\n },\\n \\"StartupProbe\\": {\\n \\"FailureThreshold\\": 0,\\n \\"InitialDelaySeconds\\": 0,\\n \\"PeriodSeconds\\": 0,\\n \\"ProbeHandler\\": {\\n \\"HttpGet\\": {\\n \\"Host\\": \\"\\",\\n \\"HttpHeaders\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"value\\": \\"\\"\\n }\\n ],\\n \\"Path\\": \\"\\",\\n \\"Port\\": 0,\\n \\"Scheme\\": \\"\\"\\n },\\n \\"TcpSocket\\": {\\n \\"Host\\": \\"\\",\\n \\"Port\\": 0\\n }\\n },\\n \\"TimeoutSeconds\\": 0\\n },\\n \\"SLSCollectConfigs\\": {\\n \\"CollectConfigs\\": [\\n {\\n \\"LogPath\\": \\"\\",\\n \\"LogType\\": \\"\\",\\n \\"LogstoreName\\": \\"\\",\\n \\"LogtailName\\": \\"\\",\\n \\"MachineGroup\\": \\"\\",\\n \\"ProjectName\\": \\"\\"\\n }\\n ]\\n },\\n \\"MetricsCollectConfig\\": {\\n \\"LogstoreName\\": \\"my-sls-logstorename\\",\\n \\"ProjectName\\": \\"my-sls-project\\",\\n \\"EnablePushToUserSLS\\": true\\n },\\n \\"ImageRegistryConfig\\": {\\n \\"AuthConfig\\": {\\n \\"UserName\\": \\"admin\\",\\n \\"Password\\": \\"abc***\\"\\n },\\n \\"CertConfig\\": {\\n \\"Insecure\\": true,\\n \\"CertBase64\\": \\"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCmZha2VDZXJ0aWZpY2F0ZQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0t\\"\\n }\\n }\\n }\\n ],\\n \\"EnableArmsMetrics\\": true,\\n \\"WebNetworkConfig\\": {\\n \\"InternetAccess\\": true,\\n \\"SecurityGroupId\\": \\"sg-bp18hj1wtxgy3b0***\\",\\n \\"VSwitchIds\\": [\\n \\"vsw-bp1ozpcrdc6r****\\"\\n ]\\n }\\n },\\n \\"InternetURL\\": \\"\\",\\n \\"IntranetURL\\": \\"\\",\\n \\"VpcId\\": \\"\\",\\n \\"WebScalingConfig\\": {\\n \\"MaximumInstanceCount\\": 10,\\n \\"MinimumInstanceCount\\": 0\\n },\\n \\"WebTrafficConfig\\": {\\n \\"WebAclConfig\\": {\\n \\"WebAclEntries\\": [\\n {\\n \\"Entry\\": \\"1.2.3.4/32\\",\\n \\"Description\\": \\"办公网\\"\\n }\\n ],\\n \\"AclDescription\\": \\"\\"\\n },\\n \\"AuthType\\": \\"Anonymous\\",\\n \\"DisableInternetURL\\": true,\\n \\"RevisionsTrafficWeight\\": {\\n \\"key\\": 0\\n }\\n }\\n },\\n \\"Message\\": \\"\\",\\n \\"RequestId\\": \\"\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => '查询Web应用', - 'description' => '调用DescribeWebApplication接口查询Web应用。', - ], - 'ListWebApplications' => [ - 'summary' => '获取Web应用列表。', - 'path' => '/pop/v2/api/web/applications', - 'methods' => [ - 'get', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"ac1a0b2215622920113732501e****\\",\\n \\"Data\\": {\\n \\"msg\\": \\"succeed in handling request\\",\\n \\"success\\": true\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": \\"True\\"\\n}","type":"json"}]', + 'title' => '恢复实例的流量', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:26.000Z', 'description' => 'OpenAPI 下线'], ], - 'schemes' => [ - 'http', - 'https', + 'flowControl' => [ + 'flowControlList' => [], ], - 'tags' => [], + 'ramActions' => [ + [ + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'sae:ResumeTraffic', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], + ], + ], + 'RollbackApplication' => [ + 'path' => '/pop/v1/sam/app/rollbackApplication', + 'methods' => ['put'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'consumes' => [ - 'application/json', - ], - 'produces' => [ - 'application/json', - ], 'operationType' => 'readAndWrite', + 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'list', - 'abilityTreeCode' => '181738', - 'abilityTreeNodes' => [ - 'FEATUREsaeUWY6ZL', - ], + 'operationType' => 'update', + 'abilityTreeCode' => '6389', + 'abilityTreeNodes' => ['FEATUREsaeD9PL61'], ], 'parameters' => [ [ - 'name' => 'NamespaceId', + 'name' => 'AppId', 'in' => 'query', - 'allowEmptyValue' => false, - 'schema' => [ - 'title' => '命名空间ID', - 'description' => '命名空间ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-beijing:test', - ], + 'schema' => ['description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => '017f39b8-dfa4-4e16-a84b-1dcee4b1****'], ], [ - 'name' => 'Prefix', + 'name' => 'VersionId', 'in' => 'query', - 'allowEmptyValue' => true, - 'schema' => [ - 'title' => '应用名前缀', - 'description' => '应用名前缀。', - 'type' => 'string', - 'required' => false, - 'example' => 'my-application', - ], + 'schema' => ['description' => '版本ID,需要调用[ListAppVersions](~~162054~~)接口查看。', 'type' => 'string', 'required' => true, 'example' => '0026ff7f-2b57-4127-bdd0-9bf202bb9****'], ], [ - 'name' => 'NextToken', + 'name' => 'BatchWaitTime', 'in' => 'query', - 'allowEmptyValue' => true, - 'schema' => [ - 'title' => '分页起始标记', - 'description' => '分页起始标记。', - 'type' => 'string', - 'required' => false, - 'example' => 'MTIzNCNhYmM', - ], + 'schema' => ['description' => '分批等待时间,单位为秒。'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], ], [ - 'name' => 'Limit', + 'name' => 'MinReadyInstances', 'in' => 'query', - 'allowEmptyValue' => true, - 'schema' => [ - 'title' => '返回的应用数量', - 'description' => '返回的应用数量。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', - ], + 'schema' => ['description' => '最小存活实例数。取值说明如下:'."\n" + ."\n" + .'- 如果设置为**0**,应用在升级过程中将会中断业务。'."\n" + .'- 如果设置为**-1**,最小存活实例数将使用系统推荐值,即取现有实例数的25%。如果当前为5个实例,5×25%=1.25,向上取整后,最小存活实例数为2。'."\n" + ."\n" + .'> 每次滚动部署最小存活的实例数建议≥1,保证业务不中断。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], + ], + [ + 'name' => 'MinReadyInstanceRatio', + 'in' => 'query', + 'schema' => ['description' => '最小存活实例数百分比。取值说明如下:'."\n" + ."\n" + .' - **-1**:初始化值,表示不采用百分比。'."\n" + .' - **0~100**:单位为百分比,向上取整。例如设置为**50**%,如果当前为5个实例,则最小存活实例数为3。'."\n" + ."\n" + .'> 当**MinReadyInstance**和**MinReadyInstanceRatio**同时传递时,且**MinReadyInstanceRatio**的取值非**-1**时,以**MinReadyInstanceRatio**参数为准。假设**MinReadyInstances**取值为**5**,**MinReadyInstanceRatio**取值为**50**,则会用**50**来计算最小存活实例数。'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '-1'], + ], + [ + 'name' => 'UpdateStrategy', + 'in' => 'query', + 'schema' => ['description' => '部署策略。当最小存活实例数等于1时,**UpdateStrategy**字段的值为""。当最小存活实例数大于1时,示例如下:'."\n" + ."\n" + .'- 灰度1台+后续分2批+自动分批+分批间隔1分钟。'."\n" + .' '."\n" + .' `{"type":"GrayBatchUpdate","batchUpdate":{"batch":2,"releaseType":"auto","batchWaitTime":1},"grayUpdate":{"gray":1}}`'."\n" + ."\n" + .'- 灰度1台+后续分2批+手动分批。'."\n" + ."\n" + .' `{"type":"GrayBatchUpdate","batchUpdate":{"batch":2,"releaseType":"manual"},"grayUpdate":{"gray":1}}`'."\n" + .' '."\n" + .'- 分2批+自动分批+分批间隔0分钟。'."\n" + ."\n" + .' `{"type":"BatchUpdate","batchUpdate":{"batch":2,"releaseType":"auto","batchWaitTime":0}}`'."\n" + ."\n" + .'参数说明如下:'."\n" + ."\n" + .'- **type**:发布策略类型,可选灰度发布**GrayBatchUpdate**或分批发布**BatchUpdate**。'."\n" + .'- **batchUpdate**:分批发布策略。'."\n" + .' - **batch**:发布批次。'."\n" + .' - **releaseType**:分批间处理方式,可选自动**auto**或手动**manual**。'."\n" + .' - **batchWaitTime**:批次内部署间隔时间,单位为秒。'."\n" + .'- **grayUpdate**:灰度后剩余批次,当**type**为**GrayBatchUpdate**时必填。'."\n", 'type' => 'string', 'required' => false, 'example' => '{"type":"GrayBatchUpdate","batchUpdate":{"batch":2,"releaseType":"auto","batchWaitTime":1},"grayUpdate":{"gray":1}}'], + ], + [ + 'name' => 'AutoEnableApplicationScalingRule', + 'in' => 'query', + 'schema' => ['description' => '是否自动启用应用弹性伸缩策略。取值说明如下:'."\n" + ."\n" + .'- **true**:开启。'."\n" + .'- **false**:关闭。', 'type' => 'string', 'required' => false, 'example' => 'true'], ], ], 'responses' => [ 200 => [ - 'description' => '返回信息', 'schema' => [ - 'title' => '返回信息', - 'description' => '返回信息。', - 'required' => false, - '$ref' => '#/components/schemas/ListWebApplicationsBody', + 'description' => '返回数据', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => '请求ID。'."\n", 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '调用结果的附加信息。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。'."\n", 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], + 'Data' => [ + 'description' => '返回结果。', + 'type' => 'object', + 'properties' => [ + 'ChangeOrderId' => ['description' => '变更流程ID。', 'type' => 'string', 'example' => '01db03d3-3ee9-48b3-b3d0-dfce2d88****'], + 'IsNeedApproval' => ['description' => 'RAM用户发布变更是否需要审批。取值说明如下:'."\n" + ."\n" + .'- **true**:需审批。'."\n" + .'- **false**:无需审批。', 'type' => 'boolean', 'example' => 'true'], + ], + ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。'."\n", 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '回退历史版本是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:回退成功。'."\n" + .'- **false**:回退失败。'."\n", 'type' => 'boolean', 'example' => 'true'], + ], ], - 'examples' => [], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 0,\\n \\"Data\\": {\\n \\"NextToken\\": \\"\\",\\n \\"WebApplicationWithInstanceCount\\": [\\n {\\n \\"WebApplication\\": {\\n \\"ApplicationId\\": \\"\\",\\n \\"ApplicationName\\": \\"\\",\\n \\"CreatedTime\\": \\"\\",\\n \\"Description\\": \\"\\",\\n \\"LastModifiedTime\\": \\"\\",\\n \\"NamespaceId\\": \\"\\",\\n \\"RevisionConfig\\": {\\n \\"Containers\\": [\\n {\\n \\"Args\\": \\"[\\\\\\"abc\\\\\\", \\\\\\">\\\\\\", \\\\\\"file0\\\\\\"]\\",\\n \\"Command\\": \\"[\\\\\\"/bin/sh\\\\\\"]\\",\\n \\"EnvironmentVariables\\": {\\n \\"key\\": \\"\\"\\n },\\n \\"Image\\": \\"registry.cn-shanghai.aliyuncs.com/serverless_devsxxxxx\\",\\n \\"WebNASConfig\\": {\\n \\"MountPoints\\": [\\n {\\n \\"MountDir\\": \\"\\",\\n \\"NasAddr\\": \\"\\",\\n \\"NasPath\\": \\"\\"\\n }\\n ]\\n },\\n \\"WebOSSConfig\\": {\\n \\"MountPoints\\": [\\n {\\n \\"BucketName\\": \\"\\",\\n \\"BucketPath\\": \\"\\",\\n \\"MountDir\\": \\"\\",\\n \\"ReadOnly\\": true\\n }\\n ]\\n },\\n \\"Port\\": 8080,\\n \\"RequestConcurrency\\": 100,\\n \\"RequestTimeout\\": 60,\\n \\"Resources\\": {\\n \\"Cpu\\": 2000,\\n \\"Memory\\": 2048\\n },\\n \\"StartupProbe\\": {\\n \\"FailureThreshold\\": 0,\\n \\"InitialDelaySeconds\\": 0,\\n \\"PeriodSeconds\\": 0,\\n \\"ProbeHandler\\": {\\n \\"HttpGet\\": {\\n \\"Host\\": \\"\\",\\n \\"HttpHeaders\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"value\\": \\"\\"\\n }\\n ],\\n \\"Path\\": \\"\\",\\n \\"Port\\": 0,\\n \\"Scheme\\": \\"\\"\\n },\\n \\"TcpSocket\\": {\\n \\"Host\\": \\"\\",\\n \\"Port\\": 0\\n }\\n },\\n \\"TimeoutSeconds\\": 0\\n },\\n \\"SLSCollectConfigs\\": {\\n \\"CollectConfigs\\": [\\n {\\n \\"LogPath\\": \\"\\",\\n \\"LogType\\": \\"\\",\\n \\"LogstoreName\\": \\"\\",\\n \\"LogtailName\\": \\"\\",\\n \\"MachineGroup\\": \\"\\",\\n \\"ProjectName\\": \\"\\"\\n }\\n ]\\n },\\n \\"MetricsCollectConfig\\": {\\n \\"LogstoreName\\": \\"my-sls-logstorename\\",\\n \\"ProjectName\\": \\"my-sls-project\\",\\n \\"EnablePushToUserSLS\\": true\\n },\\n \\"ImageRegistryConfig\\": {\\n \\"AuthConfig\\": {\\n \\"UserName\\": \\"admin\\",\\n \\"Password\\": \\"abc***\\"\\n },\\n \\"CertConfig\\": {\\n \\"Insecure\\": true,\\n \\"CertBase64\\": \\"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCmZha2VDZXJ0aWZpY2F0ZQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0t\\"\\n }\\n }\\n }\\n ],\\n \\"EnableArmsMetrics\\": true,\\n \\"WebNetworkConfig\\": {\\n \\"InternetAccess\\": true,\\n \\"SecurityGroupId\\": \\"sg-bp18hj1wtxgy3b0***\\",\\n \\"VSwitchIds\\": [\\n \\"vsw-bp1ozpcrdc6r****\\"\\n ]\\n }\\n },\\n \\"InternetURL\\": \\"\\",\\n \\"IntranetURL\\": \\"\\",\\n \\"VpcId\\": \\"\\",\\n \\"WebScalingConfig\\": {\\n \\"MaximumInstanceCount\\": 10,\\n \\"MinimumInstanceCount\\": 0\\n },\\n \\"WebTrafficConfig\\": {\\n \\"WebAclConfig\\": {\\n \\"WebAclEntries\\": [\\n {\\n \\"Entry\\": \\"1.2.3.4/32\\",\\n \\"Description\\": \\"办公网\\"\\n }\\n ],\\n \\"AclDescription\\": \\"\\"\\n },\\n \\"AuthType\\": \\"Anonymous\\",\\n \\"DisableInternetURL\\": true,\\n \\"RevisionsTrafficWeight\\": {\\n \\"key\\": 0\\n }\\n }\\n },\\n \\"InstanceCount\\": 0\\n }\\n ]\\n },\\n \\"Message\\": \\"\\",\\n \\"RequestId\\": \\"\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => '获取Web应用列表', - 'description' => '调用ListWebApplications接口获取Web应用列表。', - ], - 'UpdateWebApplication' => [ - 'summary' => '更新Web应用级别的配置。', - 'path' => '/pop/v2/api/web/applications/{ApplicationId}', - 'methods' => [ - 'put', + 'errorCodes' => [ + 400 => [ + ['errorCode' => 'InvalidApplication.NotFound', 'errorMessage' => 'The current application does not exist.', 'description' => '找不到当前应用。'], + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], + ['errorCode' => 'NoComputeResourceQuota.Exceed', 'errorMessage' => 'Your compute resource is insufficient. Please contact us to raise the quota.', 'description' => ''], + ['errorCode' => 'user.indebt', 'errorMessage' => 'The user has an outstanding payment.', 'description' => '当前用户处于欠费状态。'], + ['errorCode' => 'NoComputeResourceQuota.App.Exceed', 'errorMessage' => 'You can create %s instances for each application. Please submit a ticket to raise the quota.', 'description' => '每个应用只允许创建%s个实例,请加入钉群32874633联系技术产品专家进行咨询。'], + ['errorCode' => 'NoComputeResourceQuota.User.Exceed', 'errorMessage' => 'Your account is limited to create %s instances. Please submit a ticket to raise the quota.', 'description' => '您的账户限额%s个实例,请加入钉群32874633联系技术产品专家进行咨询。'], + ['errorCode' => 'System.Upgrading', 'errorMessage' => 'The system is being upgraded. Please try again later.', 'description' => '系统正在升级,请稍后操作。'], + ['errorCode' => 'Application.ChangerOrderRunning', 'errorMessage' => 'An application change process is in progress. Please try again later.', 'description' => '应用有变更流程正在执行,请稍后重试。'], + ['errorCode' => 'Application.InvalidStatus', 'errorMessage' => 'The application status is abnormal. Please try again later.', 'description' => '应用状态异常,请稍后重试。'], + ['errorCode' => 'Application.NotDeployYet', 'errorMessage' => 'The application has not been deployed. Please deploy it and try again.', 'description' => '应用没有部署,请部署后重试。'], + ['errorCode' => 'rollback.error', 'errorMessage' => 'Failed to roll back.', 'description' => '回滚异常。'], + ['errorCode' => 'Application.MissingJdk', 'errorMessage' => 'Your application must at least contain a JDK component.', 'description' => '应用必须至少包含JDK组件。'], + ['errorCode' => 'JarApplication.MissingJdk', 'errorMessage' => 'A FatJar application must contain JDK.', 'description' => 'FatJar类型应用必须包含JDK。'], + ['errorCode' => 'PandoraApplication.MissingJdk', 'errorMessage' => 'The Pandora application is missing a JDK component.', 'description' => 'Pandora应用缺少JDK组件。'], + ['errorCode' => 'WarApplication.MissingJdkWebcontainer', 'errorMessage' => 'A War application must contain JDK and Tomcat.', 'description' => 'WAR类型应用必须包含JDK和Tomcat。'], + ['errorCode' => 'InvalidComponent.NotFound', 'errorMessage' => 'The current component (such as JDK, Tomcat, or EDASWebContainer) does not exist.', 'description' => '找不到当前组件(JDK、Tomcat、EDASWebContainer等)。'], + ['errorCode' => 'InvalidHostnameIp.Invalid', 'errorMessage' => 'The hostname and/or IP is invalid: Hostname [%s], IP [%s].', 'description' => '主机名或IP不合法:主机名[%s],IP[%s]。'], + ['errorCode' => 'InvalidInstanceSpecification.Unsupported', 'errorMessage' => 'The instance specification is not supported: CPU [%s], memory [%s].', 'description' => '不支持的实例规格。CPU[%s],Memory[%s]。'], + ['errorCode' => 'InvalidPackageType.NotFound', 'errorMessage' => 'The package type must be War, FatJar, or Image.', 'description' => '包类型必须为WAR、FatJAR或Image。'], + ['errorCode' => 'LogService.ConfigQuotaExceed', 'errorMessage' => 'The maximum number of Log Service configs is exceeded.', 'description' => '日志服务配置个数超过配额限制,请加入钉群32874633联系技术产品专家进行咨询。'], + ['errorCode' => 'LogService.InternalError', 'errorMessage' => 'An exception occurred while calling Log Service. Please submit a ticket to solve the problem.', 'description' => '调用日志服务异常,请加入钉群32874633联系技术产品专家进行咨询。'], + ['errorCode' => 'LogService.LogDirInvalid', 'errorMessage' => 'The log collection path is invalid.', 'description' => '日志采集路径不合法。'], + ['errorCode' => 'LogService.NotAvailable', 'errorMessage' => 'Log Service is unavailable. Please activate Log Service first.', 'description' => '日志服务不可用,请先开通日志服务。'], + ['errorCode' => 'LogService.ProjectNumQuotaExceed', 'errorMessage' => 'The maximum number of Log Service projects is exceeded.', 'description' => '日志服务项目个数超过配额限制,请加入钉群32874633联系技术产品专家进行咨询。'], + ['errorCode' => 'VolumnPath.Conflict', 'errorMessage' => 'Conflict between log collection directory and persistent storage directory.', 'description' => '日志采集目录与持久化存储目录冲突。'], + ['errorCode' => 'MountConflict.ConfigMap', 'errorMessage' => 'Conflict detected for ConfigMap path %s.', 'description' => 'ConfigMap挂载路径%s存在冲突。'], + ['errorCode' => 'NotFound.ConfigMap', 'errorMessage' => 'The ConfigMap object (ID: %s) does not exist.', 'description' => '找不到ConfigMap对象(ID=%s)。'], + ['errorCode' => 'NotFound.ConfigMapKey', 'errorMessage' => 'The key %s of ConfigMap object (ID: %s) does not exist.', 'description' => '找不到ConfigMap对象(ID=%s)的Key %s。'], + ['errorCode' => 'MinReadyInstances.Not.Smaller.Replicas', 'errorMessage' => 'The minimum number of available instances must be less than the number of application instances.', 'description' => '最小可用实例数必须小于应用实例数。'], + ['errorCode' => 'MinReadyInstanceRatio.Invalid', 'errorMessage' => 'The ratio of minimum available instances must be between 0 and 100.', 'description' => '最小存活实例数比例值必须在0~100之间。'], + ['errorCode' => 'Package.Version.Too.Long', 'errorMessage' => 'The maximum length of package version is exceeded.', 'description' => '应用部署包版本号长度超过限制。'], + ['errorCode' => 'App.Package.Version.Exists', 'errorMessage' => 'The package version of application already exists.', 'description' => '应用部署包版本号已经存在。'], + ['errorCode' => 'Slb.Occupied', 'errorMessage' => 'The SLB instance is occupied.', 'description' => 'SLB实例被占用。'], + ['errorCode' => 'Slb.Tag.Not.Qualified', 'errorMessage' => 'The current SLB instance cannot be reused because it may have been occupied by %s.', 'description' => 'SLB实例正在被%s使用,不建议复用。'], + ['errorCode' => 'InvalidParameter.FileName', 'errorMessage' => 'The application deployment package name is invalid. This name can contain only alphanumeric characters, hyphens (-), and underscores (_). For deploying java package, you can upload JAR files only if the selected deployment version supports JAR file. Otherwise, upload WAR files only. For deploying php package, you can upload ZIP files only if the selected deployment version supports ZIP file.', 'description' => '应用部署程序包名称无效。名称只能包含字母、数字和特殊字符“-”“_”。Java 软件包部署,仅当选择的部署版本支持JAR部署时方可上传JAR包,否则只能上传WAR包;PHP 软件包部署,仅当选择的部署版本支持ZIP部署时方可上传ZIP包'], + ['errorCode' => 'vswitch.not.exist', 'errorMessage' => 'The specified vSwitch does not exist.', 'description' => 'vSwitch不存在,请更换vSwitch。'], + ], + 404 => [ + ['errorCode' => 'InvalidNamespaceId.NotFound', 'errorMessage' => 'The specified NamespaceId does not exist.', 'description' => '指定的NamespaceId不存在。'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"ChangeOrderId\\": \\"01db03d3-3ee9-48b3-b3d0-dfce2d88****\\",\\n \\"IsNeedApproval\\": true\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<RollbackApplicationResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <ChangeOrderId>01db03d3-3ee9-48b3-b3d0-dfce2d88****</ChangeOrderId>\\n <IsNeedApproval>true</IsNeedApproval>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</RollbackApplicationResponse>","errorExample":""}]', + 'title' => '回退应用历史版本', + 'summary' => '调用RollbackApplication接口回退应用历史版本。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:23.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2022-12-26T09:19:37.000Z', 'description' => '错误码发生变更'], + ['createdAt' => '2022-02-21T02:03:50.000Z', 'description' => '错误码发生变更'], + ['createdAt' => '2022-01-18T04:01:16.000Z', 'description' => '错误码发生变更'], + ['createdAt' => '2021-11-17T02:28:51.000Z', 'description' => '响应参数发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '20', 'countWindow' => 60, 'regionId' => '*', 'api' => 'RollbackApplication'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'sae:RollbackApplication', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], - 'tags' => [], + ], + 'StartApplication' => [ + 'path' => '/pop/v1/sam/app/startApplication', + 'methods' => ['put'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'consumes' => [ - 'application/json', - ], - 'produces' => [ - 'application/json', - ], 'operationType' => 'readAndWrite', + 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', - 'abilityTreeCode' => '181749', - 'abilityTreeNodes' => [ - 'FEATUREsaeUWY6ZL', - ], + 'abilityTreeCode' => '6390', + 'abilityTreeNodes' => ['FEATUREsaeRVPNSA'], ], 'parameters' => [ [ - 'name' => 'NamespaceId', + 'name' => 'AppId', 'in' => 'query', - 'allowEmptyValue' => false, - 'schema' => [ - 'title' => '命名空间ID', - 'description' => '命名空间ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-beijing:test', - ], - ], - [ - 'name' => 'ApplicationId', - 'in' => 'path', - 'allowEmptyValue' => false, - 'schema' => [ - 'title' => '应用ID', - 'description' => '应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****', - ], - ], - [ - 'name' => 'body', - 'in' => 'body', - 'allowEmptyValue' => false, - 'schema' => [ - 'title' => '更新应用的信息', - 'description' => '更新应用的信息。', - 'required' => true, - '$ref' => '#/components/schemas/UpdateWebApplicationInput', - ], + 'schema' => ['description' => '目标应用ID。', 'type' => 'string', 'required' => true, 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****'], ], ], 'responses' => [ 200 => [ - 'description' => '返回信息', 'schema' => [ - 'title' => '返回信息', - 'description' => '返回信息。', - 'required' => false, - '$ref' => '#/components/schemas/WebApplicationBody', + 'description' => '返回数据。', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '7BD8F4C7-D84C-4D46-9885-8212997E****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0bc3b6e215637275918588187d****'], + 'Data' => [ + 'description' => '返回结果。', + 'type' => 'object', + 'properties' => [ + 'ChangeOrderId' => ['description' => '发布单ID。', 'type' => 'string', 'example' => '4a815998-b468-4bea-b7d8-59f52a44****'], + ], + ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '启动应用是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:启动成功。'."\n" + .'- **false**:启动失败。', 'type' => 'boolean', 'example' => 'true'], + ], ], - 'examples' => [], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 0,\\n \\"Data\\": {\\n \\"ApplicationId\\": \\"\\",\\n \\"ApplicationName\\": \\"\\",\\n \\"CreatedTime\\": \\"\\",\\n \\"Description\\": \\"\\",\\n \\"LastModifiedTime\\": \\"\\",\\n \\"NamespaceId\\": \\"\\",\\n \\"RevisionConfig\\": {\\n \\"Containers\\": [\\n {\\n \\"Args\\": \\"[\\\\\\"abc\\\\\\", \\\\\\">\\\\\\", \\\\\\"file0\\\\\\"]\\",\\n \\"Command\\": \\"[\\\\\\"/bin/sh\\\\\\"]\\",\\n \\"EnvironmentVariables\\": {\\n \\"key\\": \\"\\"\\n },\\n \\"Image\\": \\"registry.cn-shanghai.aliyuncs.com/serverless_devsxxxxx\\",\\n \\"WebNASConfig\\": {\\n \\"MountPoints\\": [\\n {\\n \\"MountDir\\": \\"\\",\\n \\"NasAddr\\": \\"\\",\\n \\"NasPath\\": \\"\\"\\n }\\n ]\\n },\\n \\"WebOSSConfig\\": {\\n \\"MountPoints\\": [\\n {\\n \\"BucketName\\": \\"\\",\\n \\"BucketPath\\": \\"\\",\\n \\"MountDir\\": \\"\\",\\n \\"ReadOnly\\": true\\n }\\n ]\\n },\\n \\"Port\\": 8080,\\n \\"RequestConcurrency\\": 100,\\n \\"RequestTimeout\\": 60,\\n \\"Resources\\": {\\n \\"Cpu\\": 2000,\\n \\"Memory\\": 2048\\n },\\n \\"StartupProbe\\": {\\n \\"FailureThreshold\\": 0,\\n \\"InitialDelaySeconds\\": 0,\\n \\"PeriodSeconds\\": 0,\\n \\"ProbeHandler\\": {\\n \\"HttpGet\\": {\\n \\"Host\\": \\"\\",\\n \\"HttpHeaders\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"value\\": \\"\\"\\n }\\n ],\\n \\"Path\\": \\"\\",\\n \\"Port\\": 0,\\n \\"Scheme\\": \\"\\"\\n },\\n \\"TcpSocket\\": {\\n \\"Host\\": \\"\\",\\n \\"Port\\": 0\\n }\\n },\\n \\"TimeoutSeconds\\": 0\\n },\\n \\"SLSCollectConfigs\\": {\\n \\"CollectConfigs\\": [\\n {\\n \\"LogPath\\": \\"\\",\\n \\"LogType\\": \\"\\",\\n \\"LogstoreName\\": \\"\\",\\n \\"LogtailName\\": \\"\\",\\n \\"MachineGroup\\": \\"\\",\\n \\"ProjectName\\": \\"\\"\\n }\\n ]\\n },\\n \\"MetricsCollectConfig\\": {\\n \\"LogstoreName\\": \\"my-sls-logstorename\\",\\n \\"ProjectName\\": \\"my-sls-project\\",\\n \\"EnablePushToUserSLS\\": true\\n },\\n \\"ImageRegistryConfig\\": {\\n \\"AuthConfig\\": {\\n \\"UserName\\": \\"admin\\",\\n \\"Password\\": \\"abc***\\"\\n },\\n \\"CertConfig\\": {\\n \\"Insecure\\": true,\\n \\"CertBase64\\": \\"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCmZha2VDZXJ0aWZpY2F0ZQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0t\\"\\n }\\n }\\n }\\n ],\\n \\"EnableArmsMetrics\\": true,\\n \\"WebNetworkConfig\\": {\\n \\"InternetAccess\\": true,\\n \\"SecurityGroupId\\": \\"sg-bp18hj1wtxgy3b0***\\",\\n \\"VSwitchIds\\": [\\n \\"vsw-bp1ozpcrdc6r****\\"\\n ]\\n }\\n },\\n \\"InternetURL\\": \\"\\",\\n \\"IntranetURL\\": \\"\\",\\n \\"VpcId\\": \\"\\",\\n \\"WebScalingConfig\\": {\\n \\"MaximumInstanceCount\\": 10,\\n \\"MinimumInstanceCount\\": 0\\n },\\n \\"WebTrafficConfig\\": {\\n \\"WebAclConfig\\": {\\n \\"WebAclEntries\\": [\\n {\\n \\"Entry\\": \\"1.2.3.4/32\\",\\n \\"Description\\": \\"办公网\\"\\n }\\n ],\\n \\"AclDescription\\": \\"\\"\\n },\\n \\"AuthType\\": \\"Anonymous\\",\\n \\"DisableInternetURL\\": true,\\n \\"RevisionsTrafficWeight\\": {\\n \\"key\\": 0\\n }\\n }\\n },\\n \\"Message\\": \\"\\",\\n \\"RequestId\\": \\"\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => '更新Web应用级别的配置', - 'description' => '调用UpdateWebApplication接口更新Web应用级别的配置。', - ], - 'DeleteWebApplication' => [ - 'summary' => '删除Web应用。', - 'path' => '/pop/v2/api/web/applications/{ApplicationId}', - 'methods' => [ - 'delete', + 'errorCodes' => [ + 400 => [ + ['errorCode' => 'InvalidApplication.NotFound', 'errorMessage' => 'The current application does not exist.', 'description' => '找不到当前应用。'], + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], + ['errorCode' => 'NoComputeResourceQuota.Exceed', 'errorMessage' => 'Your compute resource is insufficient. Please contact us to raise the quota.', 'description' => ''], + ['errorCode' => 'vswitch.not.exist', 'errorMessage' => 'The specified vSwitch does not exist.', 'description' => 'vSwitch不存在,请更换vSwitch。'], + ['errorCode' => 'user.indebt', 'errorMessage' => 'The user has an outstanding payment.', 'description' => '当前用户处于欠费状态。'], + ['errorCode' => 'NoComputeResourceQuota.App.Exceed', 'errorMessage' => 'You can create %s instances for each application. Please submit a ticket to raise the quota.', 'description' => '每个应用只允许创建%s个实例,请加入钉群32874633联系技术产品专家进行咨询。'], + ['errorCode' => 'NoComputeResourceQuota.User.Exceed', 'errorMessage' => 'Your account is limited to create %s instances. Please submit a ticket to raise the quota.', 'description' => '您的账户限额%s个实例,请加入钉群32874633联系技术产品专家进行咨询。'], + ['errorCode' => 'System.Upgrading', 'errorMessage' => 'The system is being upgraded. Please try again later.', 'description' => '系统正在升级,请稍后操作。'], + ['errorCode' => 'Application.ChangerOrderRunning', 'errorMessage' => 'An application change process is in progress. Please try again later.', 'description' => '应用有变更流程正在执行,请稍后重试。'], + ['errorCode' => 'Application.InvalidStatus', 'errorMessage' => 'The application status is abnormal. Please try again later.', 'description' => '应用状态异常,请稍后重试。'], + ['errorCode' => 'Application.NotDeployYet', 'errorMessage' => 'The application has not been deployed. Please deploy it and try again.', 'description' => '应用没有部署,请部署后重试。'], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"7BD8F4C7-D84C-4D46-9885-8212997E****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0bc3b6e215637275918588187d****\\",\\n \\"Data\\": {\\n \\"ChangeOrderId\\": \\"4a815998-b468-4bea-b7d8-59f52a44****\\"\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<StartApplicationResponse>\\n <RequestId>7BD8F4C7-D84C-4D46-9885-8212997E****</RequestId>\\n <Message>success</Message>\\n <TraceId>0bc3b6e215637275918588187d****</TraceId>\\n <Data>\\n <ChangeOrderId>4a815998-b468-4bea-b7d8-59f52a44****</ChangeOrderId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</StartApplicationResponse>","errorExample":""}]', + 'title' => '启动应用', + 'summary' => '调用StartApplication接口启动应用。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:23.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2022-12-26T09:19:38.000Z', 'description' => '错误码发生变更'], + ['createdAt' => '2022-05-27T03:00:55.000Z', 'description' => '错误码发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '20', 'countWindow' => 60, 'regionId' => '*', 'api' => 'StartApplication'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'sae:StartApplication', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + ], + 'StartWebApplication' => [ + 'summary' => '启动Web应用。', + 'path' => '/pop/v2/api/web/application-ops/{ApplicationId}/start', + 'methods' => ['post'], + 'schemes' => ['http', 'https'], 'tags' => [], 'security' => [ [ 'AK' => [], ], ], - 'consumes' => [ - 'application/json', - ], - 'produces' => [ - 'application/json', - ], + 'consumes' => ['application/json'], + 'produces' => ['application/json'], 'operationType' => 'readAndWrite', 'systemTags' => [ - 'operationType' => 'delete', - 'abilityTreeCode' => '181737', - 'abilityTreeNodes' => [ - 'FEATUREsaeUWY6ZL', - ], + 'operationType' => 'update', + 'abilityTreeCode' => '197218', + 'abilityTreeNodes' => ['FEATUREsaeUWY6ZL'], ], 'parameters' => [ [ 'name' => 'NamespaceId', 'in' => 'query', 'allowEmptyValue' => false, - 'schema' => [ - 'title' => '命名空间ID', - 'description' => '命名空间ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-beijing:test', - ], + 'schema' => ['title' => '命名空间ID', 'description' => '命名空间ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-beijing:test'], ], [ 'name' => 'ApplicationId', 'in' => 'path', 'allowEmptyValue' => false, - 'schema' => [ - 'title' => '应用ID', - 'description' => '应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****', - ], + 'schema' => ['title' => '应用ID', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****'], ], ], 'responses' => [ 200 => [ - 'schema' => [ - 'description' => '返回信息。', - '$ref' => '#/components/schemas/WebApplicationBody', - ], + 'description' => '返回信息', + 'schema' => ['title' => '返回信息', 'description' => '返回信息。', 'required' => false, '$ref' => '#/components/schemas/WebApplicationBody'], + 'examples' => [], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 0,\\n \\"Data\\": {\\n \\"ApplicationId\\": \\"\\",\\n \\"ApplicationName\\": \\"\\",\\n \\"CreatedTime\\": \\"\\",\\n \\"Description\\": \\"\\",\\n \\"LastModifiedTime\\": \\"\\",\\n \\"NamespaceId\\": \\"\\",\\n \\"RevisionConfig\\": {\\n \\"Containers\\": [\\n {\\n \\"Args\\": \\"[\\\\\\"abc\\\\\\", \\\\\\">\\\\\\", \\\\\\"file0\\\\\\"]\\",\\n \\"Command\\": \\"[\\\\\\"/bin/sh\\\\\\"]\\",\\n \\"EnvironmentVariables\\": {\\n \\"key\\": \\"\\"\\n },\\n \\"Image\\": \\"registry.cn-shanghai.aliyuncs.com/serverless_devsxxxxx\\",\\n \\"WebNASConfig\\": {\\n \\"MountPoints\\": [\\n {\\n \\"MountDir\\": \\"\\",\\n \\"NasAddr\\": \\"\\",\\n \\"NasPath\\": \\"\\"\\n }\\n ]\\n },\\n \\"WebOSSConfig\\": {\\n \\"MountPoints\\": [\\n {\\n \\"BucketName\\": \\"\\",\\n \\"BucketPath\\": \\"\\",\\n \\"MountDir\\": \\"\\",\\n \\"ReadOnly\\": true\\n }\\n ]\\n },\\n \\"Port\\": 8080,\\n \\"RequestConcurrency\\": 100,\\n \\"RequestTimeout\\": 60,\\n \\"Resources\\": {\\n \\"Cpu\\": 2000,\\n \\"Memory\\": 2048\\n },\\n \\"StartupProbe\\": {\\n \\"FailureThreshold\\": 0,\\n \\"InitialDelaySeconds\\": 0,\\n \\"PeriodSeconds\\": 0,\\n \\"ProbeHandler\\": {\\n \\"HttpGet\\": {\\n \\"Host\\": \\"\\",\\n \\"HttpHeaders\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"value\\": \\"\\"\\n }\\n ],\\n \\"Path\\": \\"\\",\\n \\"Port\\": 0,\\n \\"Scheme\\": \\"\\"\\n },\\n \\"TcpSocket\\": {\\n \\"Host\\": \\"\\",\\n \\"Port\\": 0\\n }\\n },\\n \\"TimeoutSeconds\\": 0\\n },\\n \\"SLSCollectConfigs\\": {\\n \\"CollectConfigs\\": [\\n {\\n \\"LogPath\\": \\"\\",\\n \\"LogType\\": \\"\\",\\n \\"LogstoreName\\": \\"\\",\\n \\"LogtailName\\": \\"\\",\\n \\"MachineGroup\\": \\"\\",\\n \\"ProjectName\\": \\"\\"\\n }\\n ]\\n },\\n \\"MetricsCollectConfig\\": {\\n \\"LogstoreName\\": \\"my-sls-logstorename\\",\\n \\"ProjectName\\": \\"my-sls-project\\",\\n \\"EnablePushToUserSLS\\": true\\n },\\n \\"ImageRegistryConfig\\": {\\n \\"AuthConfig\\": {\\n \\"UserName\\": \\"admin\\",\\n \\"Password\\": \\"abc***\\"\\n },\\n \\"CertConfig\\": {\\n \\"Insecure\\": true,\\n \\"CertBase64\\": \\"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCmZha2VDZXJ0aWZpY2F0ZQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0t\\"\\n }\\n }\\n }\\n ],\\n \\"EnableArmsMetrics\\": true,\\n \\"WebNetworkConfig\\": {\\n \\"InternetAccess\\": true,\\n \\"SecurityGroupId\\": \\"sg-bp18hj1wtxgy3b0***\\",\\n \\"VSwitchIds\\": [\\n \\"vsw-bp1ozpcrdc6r****\\"\\n ]\\n }\\n },\\n \\"InternetURL\\": \\"\\",\\n \\"IntranetURL\\": \\"\\",\\n \\"VpcId\\": \\"\\",\\n \\"WebScalingConfig\\": {\\n \\"MaximumInstanceCount\\": 10,\\n \\"MinimumInstanceCount\\": 0\\n },\\n \\"WebTrafficConfig\\": {\\n \\"WebAclConfig\\": {\\n \\"WebAclEntries\\": [\\n {\\n \\"Entry\\": \\"1.2.3.4/32\\",\\n \\"Description\\": \\"办公网\\"\\n }\\n ],\\n \\"AclDescription\\": \\"\\"\\n },\\n \\"AuthType\\": \\"Anonymous\\",\\n \\"DisableInternetURL\\": true,\\n \\"RevisionsTrafficWeight\\": {\\n \\"key\\": 0\\n }\\n }\\n },\\n \\"Message\\": \\"\\",\\n \\"RequestId\\": \\"\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => '删除Web应用', - 'description' => '调用DeleteWebApplication接口删除Web应用。', - ], - 'UpdateWebApplicationScalingConfig' => [ - 'summary' => '更新Web应用弹性配置。', - 'path' => '/pop/v2/api/web/application-scaling/{ApplicationId}', - 'methods' => [ - 'put', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => '启动Web应用', + 'description' => '调用StartWebApplication接口启动Web应用。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:02:58.000Z', 'description' => 'OpenAPI 下线'], ], - 'schemes' => [ - 'http', - 'https', + 'flowControl' => [ + 'flowControlList' => [], ], - 'tags' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'sae:StartWebApplication', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], + ], + ], + 'StopApplication' => [ + 'path' => '/pop/v1/sam/app/stopApplication', + 'methods' => ['put'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'consumes' => [ - 'application/json', - ], - 'produces' => [ - 'application/json', - ], 'operationType' => 'readAndWrite', + 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', - 'abilityTreeCode' => '225956', - 'abilityTreeNodes' => [ - 'FEATUREsaeWX6046', - ], + 'abilityTreeCode' => '6391', + 'abilityTreeNodes' => ['FEATUREsaeD9PL61'], ], 'parameters' => [ [ - 'name' => 'NamespaceId', + 'name' => 'AppId', 'in' => 'query', - 'allowEmptyValue' => false, - 'schema' => [ - 'title' => '命名空间ID', - 'description' => '命名空间ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-beijing:test', - ], - ], - [ - 'name' => 'ApplicationId', - 'in' => 'path', - 'allowEmptyValue' => false, - 'schema' => [ - 'title' => '应用ID', - 'description' => '应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****', - ], - ], - [ - 'name' => 'body', - 'in' => 'body', - 'allowEmptyValue' => false, - 'schema' => [ - 'title' => '弹性配置信息', - 'description' => '弹性配置信息。', - 'required' => true, - '$ref' => '#/components/schemas/UpdateWebApplicationScalingConfigInput', - ], + 'schema' => ['description' => '目标应用ID。', 'type' => 'string', 'required' => true, 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****'], ], ], 'responses' => [ 200 => [ - 'description' => '返回信息', 'schema' => [ - 'title' => '返回信息', - 'description' => '返回信息。', - 'required' => false, - '$ref' => '#/components/schemas/WebApplicationScalingConfigBody', + 'description' => '返回数据。', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0bc3b6e215637275918588187d****'], + 'Data' => [ + 'description' => '返回结果。', + 'type' => 'object', + 'properties' => [ + 'ChangeOrderId' => ['description' => '发布单ID。', 'type' => 'string', 'example' => '4a815998-b468-4bea-b7d8-59f52a44****'], + ], + ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '停止应用是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:停止成功。'."\n" + .'- **false**:停止失败。', 'type' => 'boolean', 'example' => 'true'], + ], ], - 'examples' => [], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 0,\\n \\"Data\\": {\\n \\"MaximumInstanceCount\\": 10,\\n \\"MinimumInstanceCount\\": 0\\n },\\n \\"Message\\": \\"\\",\\n \\"RequestId\\": \\"\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => '更新Web应用弹性配置', - 'description' => '调用UpdateWebApplicationScalingConfig接口更新Web应用弹性配置。', - ], - 'DescribeWebApplicationScalingConfig' => [ - 'summary' => '获取Web应用弹性配置。', - 'path' => '/pop/v2/api/web/application-scaling/{ApplicationId}', - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'tags' => [], - 'security' => [ - [ - 'AK' => [], + 'errorCodes' => [ + 400 => [ + ['errorCode' => 'InvalidApplication.NotFound', 'errorMessage' => 'The current application does not exist.', 'description' => '找不到当前应用。'], + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], + ['errorCode' => 'System.Upgrading', 'errorMessage' => 'The system is being upgraded. Please try again later.', 'description' => '系统正在升级,请稍后操作。'], + ['errorCode' => 'Application.ChangerOrderRunning', 'errorMessage' => 'An application change process is in progress. Please try again later.', 'description' => '应用有变更流程正在执行,请稍后重试。'], + ['errorCode' => 'Application.InvalidStatus', 'errorMessage' => 'The application status is abnormal. Please try again later.', 'description' => '应用状态异常,请稍后重试。'], + ['errorCode' => 'Application.NotDeployYet', 'errorMessage' => 'The application has not been deployed. Please deploy it and try again.', 'description' => '应用没有部署,请部署后重试。'], ], ], - 'consumes' => [ - 'application/json', - ], - 'produces' => [ - 'application/json', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0bc3b6e215637275918588187d****\\",\\n \\"Data\\": {\\n \\"ChangeOrderId\\": \\"4a815998-b468-4bea-b7d8-59f52a44****\\"\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<StopApplicationResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0bc3b6e215637275918588187d****</TraceId>\\n <Data>\\n <ChangeOrderId>4a815998-b468-4bea-b7d8-59f52a44****</ChangeOrderId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</StopApplicationResponse>","errorExample":""}]', + 'title' => '停止应用', + 'summary' => '停止应用。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:23.000Z', 'description' => 'OpenAPI 下线'], ], - 'operationType' => 'readAndWrite', - 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '225945', - 'abilityTreeNodes' => [ - 'FEATUREsaeWX6046', + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'StopApplication'], ], ], - 'parameters' => [ - [ - 'name' => 'NamespaceId', - 'in' => 'query', - 'allowEmptyValue' => false, - 'schema' => [ - 'title' => '命名空间ID', - 'description' => '命名空间ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-beijing:sae-test', - ], - ], + 'ramActions' => [ [ - 'name' => 'ApplicationId', - 'in' => 'path', - 'allowEmptyValue' => false, - 'schema' => [ - 'title' => '应用ID', - 'description' => '应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****', - ], - ], - ], - 'responses' => [ - 200 => [ - 'description' => '返回信息', - 'schema' => [ - 'title' => '返回信息', - 'description' => '返回信息。', - 'required' => false, - '$ref' => '#/components/schemas/WebApplicationScalingConfigBody', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'sae:StopApplication', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => 'Application', 'arn' => 'acs:sae:{#regionId}:{#accountId}:application/{#namespaceid}/{#appid}'], + ], ], - 'examples' => [], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 0,\\n \\"Data\\": {\\n \\"MaximumInstanceCount\\": 10,\\n \\"MinimumInstanceCount\\": 0\\n },\\n \\"Message\\": \\"\\",\\n \\"RequestId\\": \\"\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => '获取Web应用弹性配置', - 'description' => '调用DescribeWebApplicationScalingConfig接口获取Web应用弹性配置。', ], 'StopWebApplication' => [ 'summary' => '停止Web应用。', 'path' => '/pop/v2/api/web/application-ops/{ApplicationId}/stop', - 'methods' => [ - 'post', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'methods' => ['post'], + 'schemes' => ['http', 'https'], 'tags' => [], 'security' => [ [ 'AK' => [], ], ], - 'consumes' => [ - 'application/json', - ], - 'produces' => [ - 'application/json', - ], + 'consumes' => ['application/json'], + 'produces' => ['application/json'], 'operationType' => 'readAndWrite', 'systemTags' => [ 'operationType' => 'update', 'abilityTreeCode' => '197250', - 'abilityTreeNodes' => [ - 'FEATUREsaeUWY6ZL', - ], + 'abilityTreeNodes' => ['FEATUREsaeUWY6ZL'], ], 'parameters' => [ [ 'name' => 'NamespaceId', 'in' => 'query', 'allowEmptyValue' => false, - 'schema' => [ - 'title' => '命名空间ID', - 'description' => '命名空间ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-beijing:test', - ], + 'schema' => ['title' => '命名空间ID', 'description' => '命名空间ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-beijing:test'], ], [ 'name' => 'ApplicationId', 'in' => 'path', 'allowEmptyValue' => false, - 'schema' => [ - 'title' => '应用ID', - 'description' => '应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****', - ], + 'schema' => ['title' => '应用ID', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****'], ], ], 'responses' => [ 200 => [ 'description' => '返回信息', - 'schema' => [ - 'title' => '返回信息', - 'description' => '返回信息。', - 'required' => false, - '$ref' => '#/components/schemas/WebApplicationBody', - ], + 'schema' => ['title' => '返回信息', 'description' => '返回信息。', 'required' => false, '$ref' => '#/components/schemas/WebApplicationBody'], 'examples' => [], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 0,\\n \\"Data\\": {\\n \\"ApplicationId\\": \\"\\",\\n \\"ApplicationName\\": \\"\\",\\n \\"CreatedTime\\": \\"\\",\\n \\"Description\\": \\"\\",\\n \\"LastModifiedTime\\": \\"\\",\\n \\"NamespaceId\\": \\"\\",\\n \\"RevisionConfig\\": {\\n \\"Containers\\": [\\n {\\n \\"Args\\": \\"[\\\\\\"abc\\\\\\", \\\\\\">\\\\\\", \\\\\\"file0\\\\\\"]\\",\\n \\"Command\\": \\"[\\\\\\"/bin/sh\\\\\\"]\\",\\n \\"EnvironmentVariables\\": {\\n \\"key\\": \\"\\"\\n },\\n \\"Image\\": \\"registry.cn-shanghai.aliyuncs.com/serverless_devsxxxxx\\",\\n \\"WebNASConfig\\": {\\n \\"MountPoints\\": [\\n {\\n \\"MountDir\\": \\"\\",\\n \\"NasAddr\\": \\"\\",\\n \\"NasPath\\": \\"\\"\\n }\\n ]\\n },\\n \\"WebOSSConfig\\": {\\n \\"MountPoints\\": [\\n {\\n \\"BucketName\\": \\"\\",\\n \\"BucketPath\\": \\"\\",\\n \\"MountDir\\": \\"\\",\\n \\"ReadOnly\\": true\\n }\\n ]\\n },\\n \\"Port\\": 8080,\\n \\"RequestConcurrency\\": 100,\\n \\"RequestTimeout\\": 60,\\n \\"Resources\\": {\\n \\"Cpu\\": 2000,\\n \\"Memory\\": 2048\\n },\\n \\"StartupProbe\\": {\\n \\"FailureThreshold\\": 0,\\n \\"InitialDelaySeconds\\": 0,\\n \\"PeriodSeconds\\": 0,\\n \\"ProbeHandler\\": {\\n \\"HttpGet\\": {\\n \\"Host\\": \\"\\",\\n \\"HttpHeaders\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"value\\": \\"\\"\\n }\\n ],\\n \\"Path\\": \\"\\",\\n \\"Port\\": 0,\\n \\"Scheme\\": \\"\\"\\n },\\n \\"TcpSocket\\": {\\n \\"Host\\": \\"\\",\\n \\"Port\\": 0\\n }\\n },\\n \\"TimeoutSeconds\\": 0\\n },\\n \\"SLSCollectConfigs\\": {\\n \\"CollectConfigs\\": [\\n {\\n \\"LogPath\\": \\"\\",\\n \\"LogType\\": \\"\\",\\n \\"LogstoreName\\": \\"\\",\\n \\"LogtailName\\": \\"\\",\\n \\"MachineGroup\\": \\"\\",\\n \\"ProjectName\\": \\"\\"\\n }\\n ]\\n },\\n \\"MetricsCollectConfig\\": {\\n \\"LogstoreName\\": \\"my-sls-logstorename\\",\\n \\"ProjectName\\": \\"my-sls-project\\",\\n \\"EnablePushToUserSLS\\": true\\n },\\n \\"ImageRegistryConfig\\": {\\n \\"AuthConfig\\": {\\n \\"UserName\\": \\"admin\\",\\n \\"Password\\": \\"abc***\\"\\n },\\n \\"CertConfig\\": {\\n \\"Insecure\\": true,\\n \\"CertBase64\\": \\"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCmZha2VDZXJ0aWZpY2F0ZQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0t\\"\\n }\\n }\\n }\\n ],\\n \\"EnableArmsMetrics\\": true,\\n \\"WebNetworkConfig\\": {\\n \\"InternetAccess\\": true,\\n \\"SecurityGroupId\\": \\"sg-bp18hj1wtxgy3b0***\\",\\n \\"VSwitchIds\\": [\\n \\"vsw-bp1ozpcrdc6r****\\"\\n ]\\n }\\n },\\n \\"InternetURL\\": \\"\\",\\n \\"IntranetURL\\": \\"\\",\\n \\"VpcId\\": \\"\\",\\n \\"WebScalingConfig\\": {\\n \\"MaximumInstanceCount\\": 10,\\n \\"MinimumInstanceCount\\": 0\\n },\\n \\"WebTrafficConfig\\": {\\n \\"WebAclConfig\\": {\\n \\"WebAclEntries\\": [\\n {\\n \\"Entry\\": \\"1.2.3.4/32\\",\\n \\"Description\\": \\"办公网\\"\\n }\\n ],\\n \\"AclDescription\\": \\"\\"\\n },\\n \\"AuthType\\": \\"Anonymous\\",\\n \\"DisableInternetURL\\": true,\\n \\"RevisionsTrafficWeight\\": {\\n \\"key\\": 0\\n }\\n }\\n },\\n \\"Message\\": \\"\\",\\n \\"RequestId\\": \\"\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'staticInfo' => ['returnType' => 'synchronous'], 'title' => '停止Web应用', 'description' => '调用StopWebApplication接口停止Web应用。', - ], - 'StartWebApplication' => [ - 'summary' => '启动Web应用。', - 'path' => '/pop/v2/api/web/application-ops/{ApplicationId}/start', - 'methods' => [ - 'post', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:02:57.000Z', 'description' => 'OpenAPI 下线'], ], - 'schemes' => [ - 'http', - 'https', + 'flowControl' => [ + 'flowControlList' => [], ], - 'tags' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'sae:StopWebApplication', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], + ], + ], + 'SuspendJob' => [ + 'path' => '/pop/v1/sam/job/suspendJob', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'consumes' => [ - 'application/json', - ], - 'produces' => [ - 'application/json', - ], 'operationType' => 'readAndWrite', + 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '197218', - 'abilityTreeNodes' => [ - 'FEATUREsaeUWY6ZL', - ], + 'abilityTreeCode' => '100748', + 'abilityTreeNodes' => ['FEATUREsaeD9PL61'], ], 'parameters' => [ [ - 'name' => 'NamespaceId', + 'name' => 'AppId', 'in' => 'query', - 'allowEmptyValue' => false, - 'schema' => [ - 'title' => '命名空间ID', - 'description' => '命名空间ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-beijing:test', - ], + 'schema' => ['description' => '任务模板ID。', 'type' => 'string', 'required' => true, 'example' => 'ee1a7a07-abcb-4652-a1d3-2d57f415****'], ], [ - 'name' => 'ApplicationId', - 'in' => 'path', - 'allowEmptyValue' => false, - 'schema' => [ - 'title' => '应用ID', - 'description' => '应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****', - ], + 'name' => 'Suspend', + 'in' => 'query', + 'schema' => ['description' => '启动或暂停任务模板:'."\n" + ."\n" + .'- true:启动任务模板。'."\n" + ."\n" + .'- false:暂停任务模板。', 'type' => 'boolean', 'required' => true, 'example' => 'true'], ], ], 'responses' => [ 200 => [ - 'description' => '返回信息', 'schema' => [ - 'title' => '返回信息', - 'description' => '返回信息。', - 'required' => false, - '$ref' => '#/components/schemas/WebApplicationBody', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '67DD9A98-9CCC-5BE8-8C9E-B45E72F4****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0b87b7e716575071334387401e****'], + 'Data' => ['description' => '执行是否成功。', 'type' => 'string', 'example' => '{success: true}'], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '执行任务是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:执行成功。'."\n" + .'- **false**:执行失败。', 'type' => 'boolean', 'example' => 'true'], + ], + 'description' => '', ], - 'examples' => [], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'errorCodes' => [ + 404 => [ + ['errorCode' => 'InvalidAppId.NotFound', 'errorMessage' => 'The specified AppId does not exist.', 'description' => '指定的AppId不存在。'], + ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 0,\\n \\"Data\\": {\\n \\"ApplicationId\\": \\"\\",\\n \\"ApplicationName\\": \\"\\",\\n \\"CreatedTime\\": \\"\\",\\n \\"Description\\": \\"\\",\\n \\"LastModifiedTime\\": \\"\\",\\n \\"NamespaceId\\": \\"\\",\\n \\"RevisionConfig\\": {\\n \\"Containers\\": [\\n {\\n \\"Args\\": \\"[\\\\\\"abc\\\\\\", \\\\\\">\\\\\\", \\\\\\"file0\\\\\\"]\\",\\n \\"Command\\": \\"[\\\\\\"/bin/sh\\\\\\"]\\",\\n \\"EnvironmentVariables\\": {\\n \\"key\\": \\"\\"\\n },\\n \\"Image\\": \\"registry.cn-shanghai.aliyuncs.com/serverless_devsxxxxx\\",\\n \\"WebNASConfig\\": {\\n \\"MountPoints\\": [\\n {\\n \\"MountDir\\": \\"\\",\\n \\"NasAddr\\": \\"\\",\\n \\"NasPath\\": \\"\\"\\n }\\n ]\\n },\\n \\"WebOSSConfig\\": {\\n \\"MountPoints\\": [\\n {\\n \\"BucketName\\": \\"\\",\\n \\"BucketPath\\": \\"\\",\\n \\"MountDir\\": \\"\\",\\n \\"ReadOnly\\": true\\n }\\n ]\\n },\\n \\"Port\\": 8080,\\n \\"RequestConcurrency\\": 100,\\n \\"RequestTimeout\\": 60,\\n \\"Resources\\": {\\n \\"Cpu\\": 2000,\\n \\"Memory\\": 2048\\n },\\n \\"StartupProbe\\": {\\n \\"FailureThreshold\\": 0,\\n \\"InitialDelaySeconds\\": 0,\\n \\"PeriodSeconds\\": 0,\\n \\"ProbeHandler\\": {\\n \\"HttpGet\\": {\\n \\"Host\\": \\"\\",\\n \\"HttpHeaders\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"value\\": \\"\\"\\n }\\n ],\\n \\"Path\\": \\"\\",\\n \\"Port\\": 0,\\n \\"Scheme\\": \\"\\"\\n },\\n \\"TcpSocket\\": {\\n \\"Host\\": \\"\\",\\n \\"Port\\": 0\\n }\\n },\\n \\"TimeoutSeconds\\": 0\\n },\\n \\"SLSCollectConfigs\\": {\\n \\"CollectConfigs\\": [\\n {\\n \\"LogPath\\": \\"\\",\\n \\"LogType\\": \\"\\",\\n \\"LogstoreName\\": \\"\\",\\n \\"LogtailName\\": \\"\\",\\n \\"MachineGroup\\": \\"\\",\\n \\"ProjectName\\": \\"\\"\\n }\\n ]\\n },\\n \\"MetricsCollectConfig\\": {\\n \\"LogstoreName\\": \\"my-sls-logstorename\\",\\n \\"ProjectName\\": \\"my-sls-project\\",\\n \\"EnablePushToUserSLS\\": true\\n },\\n \\"ImageRegistryConfig\\": {\\n \\"AuthConfig\\": {\\n \\"UserName\\": \\"admin\\",\\n \\"Password\\": \\"abc***\\"\\n },\\n \\"CertConfig\\": {\\n \\"Insecure\\": true,\\n \\"CertBase64\\": \\"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCmZha2VDZXJ0aWZpY2F0ZQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0t\\"\\n }\\n }\\n }\\n ],\\n \\"EnableArmsMetrics\\": true,\\n \\"WebNetworkConfig\\": {\\n \\"InternetAccess\\": true,\\n \\"SecurityGroupId\\": \\"sg-bp18hj1wtxgy3b0***\\",\\n \\"VSwitchIds\\": [\\n \\"vsw-bp1ozpcrdc6r****\\"\\n ]\\n }\\n },\\n \\"InternetURL\\": \\"\\",\\n \\"IntranetURL\\": \\"\\",\\n \\"VpcId\\": \\"\\",\\n \\"WebScalingConfig\\": {\\n \\"MaximumInstanceCount\\": 10,\\n \\"MinimumInstanceCount\\": 0\\n },\\n \\"WebTrafficConfig\\": {\\n \\"WebAclConfig\\": {\\n \\"WebAclEntries\\": [\\n {\\n \\"Entry\\": \\"1.2.3.4/32\\",\\n \\"Description\\": \\"办公网\\"\\n }\\n ],\\n \\"AclDescription\\": \\"\\"\\n },\\n \\"AuthType\\": \\"Anonymous\\",\\n \\"DisableInternetURL\\": true,\\n \\"RevisionsTrafficWeight\\": {\\n \\"key\\": 0\\n }\\n }\\n },\\n \\"Message\\": \\"\\",\\n \\"RequestId\\": \\"\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => '启动Web应用', - 'description' => '调用StartWebApplication接口启动Web应用。', - ], - 'UpdateWebApplicationTrafficConfig' => [ - 'summary' => '更新Web应用流量配置。', - 'path' => '/pop/v2/api/web/application-traffic/{ApplicationId}', - 'methods' => [ - 'put', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"67DD9A98-9CCC-5BE8-8C9E-B45E72F4****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0b87b7e716575071334387401e****\\",\\n \\"Data\\": \\"{success: true}\\",\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<SuspendJobResponse>\\n <RequestId>67DD9A98-9CCC-5BE8-8C9E-B45E72F4****</RequestId>\\n <Message>success</Message>\\n <TraceId>0b87b7e716575071334387401e****</TraceId>\\n <Data>{success: true}</Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</SuspendJobResponse>","errorExample":""}]', + 'title' => '启动或暂停任务', + 'summary' => '暂停任务。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:26.000Z', 'description' => 'OpenAPI 下线'], ], - 'schemes' => [ - 'http', - 'https', + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '40', 'countWindow' => 60, 'regionId' => '*', 'api' => 'SuspendJob'], + ], ], - 'tags' => [], + 'ramActions' => [ + [ + 'operationType' => '', + 'ramAction' => [ + 'action' => 'sae:SuspendJob', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], + ], + ], + 'SuspendTraffic' => [ + 'summary' => '将实例上来自 CLB 应用访问、NLB 应用访问、CLB 网关路由、ALB 网关路由、K8S Service 上的流量摘除', + 'path' => '/pop/v1/sam/app/instanceTrafficSuspend', + 'methods' => ['put'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'consumes' => [ - 'application/json', - ], - 'produces' => [ - 'application/json', - ], 'operationType' => 'readAndWrite', + 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '225957', - 'abilityTreeNodes' => [ - 'FEATUREsaeOXSSSO', - ], + 'operationType' => 'none', + 'abilityTreeCode' => '289034', + 'abilityTreeNodes' => ['FEATUREsaeRVPNSA'], ], 'parameters' => [ [ - 'name' => 'NamespaceId', + 'name' => 'AppId', 'in' => 'query', - 'allowEmptyValue' => false, - 'schema' => [ - 'title' => '命名空间ID', - 'description' => '命名空间ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-beijing:test', - ], - ], - [ - 'name' => 'ApplicationId', - 'in' => 'path', - 'allowEmptyValue' => false, - 'schema' => [ - 'title' => '应用ID', - 'description' => '应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****', - ], + 'schema' => ['description' => '应用ID。', 'type' => 'string', 'required' => false, 'example' => 'd700e680-aa4d-4ec1-afc2-6566b5ff****'], ], [ - 'name' => 'body', - 'in' => 'body', - 'allowEmptyValue' => false, - 'schema' => [ - 'title' => '流量配置信息', - 'description' => '流量配置信息。', - 'required' => true, - '$ref' => '#/components/schemas/UpdateWebApplicationTrafficConfigInput', - ], + 'name' => 'InstanceIds', + 'in' => 'query', + 'schema' => ['description' => '实例ID。', 'type' => 'string', 'required' => false, 'example' => 'c-668727a8-17d86664-41e5bb******,c-668727a8-17d86664-7e4958******'], ], ], 'responses' => [ 200 => [ - 'description' => '返回信息', 'schema' => [ - 'title' => '返回信息', - 'description' => '返回信息。', - 'required' => false, - '$ref' => '#/components/schemas/WebApplicationTrafficConfigBody', + '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' => 'B4D805CA-926D-41B1-8E63-7AD0C1ED****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链id。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], + 'Data' => [ + 'description' => '返回结果。', + 'type' => 'object', + 'properties' => [ + 'msg' => ['description' => '请求 code 对应的详细描述信息。', 'type' => 'string', 'example' => 'success'], + 'success' => ['description' => '流量是否摘除成功:'."\n" + ."\n" + .'- **true**:摘除成功。'."\n" + .'- **false**:摘除失败。', 'type' => 'boolean', 'example' => 'True'], + ], + ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:请求成功:不返回ErrorCode字段。请求失败:返回ErrorCode字段。具体信息,请参见本文的错误码列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '流量摘除是否成功。取值说明如下:true:摘除成功。false:摘除失败。', 'type' => 'string', 'example' => 'true'], + ], ], - 'examples' => [], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 0,\\n \\"Data\\": {\\n \\"WebAclConfig\\": {\\n \\"WebAclEntries\\": [\\n {\\n \\"Entry\\": \\"1.2.3.4/32\\",\\n \\"Description\\": \\"办公网\\"\\n }\\n ],\\n \\"AclDescription\\": \\"\\"\\n },\\n \\"AuthType\\": \\"Anonymous\\",\\n \\"DisableInternetURL\\": true,\\n \\"RevisionsTrafficWeight\\": {\\n \\"key\\": 0\\n }\\n },\\n \\"Message\\": \\"\\",\\n \\"RequestId\\": \\"\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => '更新Web应用流量配置', - 'description' => '调用UpdateWebApplicationTrafficConfig接口更新Web应用流量配置。', - ], - 'DescribeWebApplicationTrafficConfig' => [ - 'summary' => '查询Web应用流量配置。', - 'path' => '/pop/v2/api/web/application-traffic/{ApplicationId}', - 'methods' => [ - 'get', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"B4D805CA-926D-41B1-8E63-7AD0C1ED****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"msg\\": \\"success\\",\\n \\"success\\": true\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": \\"true\\"\\n}","type":"json"}]', + 'title' => '将流量从实例摘除', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:25.000Z', 'description' => 'OpenAPI 下线'], ], - 'schemes' => [ - 'http', - 'https', + 'flowControl' => [ + 'flowControlList' => [], ], - 'tags' => [], + 'ramActions' => [ + [ + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'sae:SuspendTraffic', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], + ], + ], + 'TagResources' => [ + 'path' => '/tags', + 'methods' => ['post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'consumes' => [ - 'application/json', - ], - 'produces' => [ - 'application/json', - ], - 'operationType' => 'readAndWrite', + 'operationType' => 'write', + 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '225946', - 'abilityTreeNodes' => [ - 'FEATUREsaeOXSSSO', - ], + 'abilityTreeCode' => '6393', + 'abilityTreeNodes' => ['FEATUREsaeD9PL61'], ], 'parameters' => [ [ - 'name' => 'NamespaceId', - 'in' => 'query', - 'allowEmptyValue' => false, - 'schema' => [ - 'title' => '命名空间ID', - 'description' => '命名空间ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-beijing:test', - ], + 'name' => 'RegionId', + 'in' => 'formData', + 'schema' => ['description' => '地域ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-beijing'], ], [ - 'name' => 'ApplicationId', - 'in' => 'path', - 'allowEmptyValue' => false, - 'schema' => [ - 'title' => '应用ID', - 'description' => '应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****', - ], + 'name' => 'ResourceType', + 'in' => 'formData', + 'schema' => ['description' => '资源类型,仅支持`application`。', 'type' => 'string', 'required' => true, 'example' => 'application'], + ], + [ + 'name' => 'Tags', + 'in' => 'formData', + 'schema' => ['description' => '标签键值对,当您未输入**ResourceIds**参数时必填。取值说明如下:'."\n" + .'- **key**:标签键,字符长度范围\\[1,128]。'."\n" + .'- **value**:标签值,字符长度范围\\[1,128]。'."\n" + ."\n" + .'区分大小写。如果指定多个标签,则会为指定资源同时创建并绑定多个标签。同一个资源上的同一个标签键只能对应一个标签值。如果您尝试添加已有标签键,则对应的标签值会更新为新值。'."\n" + ."\n" + .'不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。', 'type' => 'string', 'required' => false, 'example' => '[{"key":"k1","value":"v1"}]'], + ], + [ + 'name' => 'ResourceIds', + 'in' => 'formData', + 'schema' => ['description' => '资源ID。可填写多个资源ID,用英文逗号(,)分隔。当您未输入**Tags**参数时必填。', 'type' => 'string', 'required' => true, 'example' => '["d42921c4-5433-4abd-8075-0e536f8b****"]'], ], ], 'responses' => [ 200 => [ - 'description' => '返回信息', 'schema' => [ - 'title' => '返回信息', - 'description' => '返回信息。', - 'required' => false, - '$ref' => '#/components/schemas/WebApplicationTrafficConfigBody', + 'description' => '返回数据。', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], + 'Data' => ['description' => '操作成功标识。', 'type' => 'boolean', 'example' => 'true'], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '为指定资源添加标签是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:添加成功。'."\n" + .'- **false**:添加失败。', 'type' => 'boolean', 'example' => 'true'], + ], ], - 'examples' => [], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 0,\\n \\"Data\\": {\\n \\"WebAclConfig\\": {\\n \\"WebAclEntries\\": [\\n {\\n \\"Entry\\": \\"1.2.3.4/32\\",\\n \\"Description\\": \\"办公网\\"\\n }\\n ],\\n \\"AclDescription\\": \\"\\"\\n },\\n \\"AuthType\\": \\"Anonymous\\",\\n \\"DisableInternetURL\\": true,\\n \\"RevisionsTrafficWeight\\": {\\n \\"key\\": 0\\n }\\n },\\n \\"Message\\": \\"\\",\\n \\"RequestId\\": \\"\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => '查询Web应用流量配置', - 'description' => '调用DescribeWebApplicationTrafficConfig接口查询Web应用流量配置。', - ], - 'PublishWebApplicationRevision' => [ - 'summary' => '发布Web应用版本。', - 'path' => '/pop/v2/api/web/application-revisions/{ApplicationId}/revisions', - 'methods' => [ - 'post', + 'errorCodes' => [ + 400 => [ + ['errorCode' => 'Duplicate.TagKey', 'errorMessage' => 'The TagKey contains duplicate keys.', 'description' => '标签中存在重复的键,请保持键的唯一性。'], + ['errorCode' => 'InvalidParameter.TagKey', 'errorMessage' => 'The specified TagKey is invalid.', 'description' => '标签键不合法。'], + ['errorCode' => 'InvalidParameter.TagValue', 'errorMessage' => 'The specified TagValue is invalid.', 'description' => '标签值不合法。'], + ['errorCode' => 'Missing.TagKey', 'errorMessage' => 'You must specify TagKey.', 'description' => '标签值不能为空。'], + ['errorCode' => 'NumberExceed.Tags', 'errorMessage' => 'The maximum number of tags is exceeded.', 'description' => '资源标签已达上限。'], + ['errorCode' => 'InvalidResourceType.NotFound', 'errorMessage' => 'The specified resource type is not supported.', 'description' => '不支持指定的资源类型。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'NumberExceed.ResourceIds', 'errorMessage' => 'The number of resource IDs cannot exceed 50.', 'description' => '资源ID个数不能超过50。'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": true,\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<TagResourcesResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>true</Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</TagResourcesResponse>","errorExample":""}]', + 'title' => '给指定的资源打上标签', + 'summary' => '调用TagResources接口为指定资源添加标签。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:25.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2022-10-25T08:48:54.000Z', 'description' => '请求参数发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => '', + 'ramAction' => [ + 'action' => 'sae:TagResources', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], - 'tags' => [], + ], + 'UnbindNlb' => [ + 'summary' => '调用UnbindNlb删除应用访问绑定的NLB监听', + 'path' => '/pop/v1/sam/app/nlb', + 'methods' => ['delete'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'consumes' => [ - 'application/json', - ], - 'produces' => [ - 'application/json', - ], 'operationType' => 'readAndWrite', + 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'create', - 'abilityTreeCode' => '225953', - 'abilityTreeNodes' => [ - 'FEATUREsae37J6Z9', - ], + 'operationType' => 'none', + 'abilityTreeCode' => '261343', + 'abilityTreeNodes' => ['FEATUREsaeBRTWZ3'], ], 'parameters' => [ [ - 'name' => 'NamespaceId', + 'name' => 'AppId', 'in' => 'query', - 'allowEmptyValue' => false, - 'schema' => [ - 'title' => '命名空间ID', - 'description' => '命名空间ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-shanghai', - ], + 'schema' => ['title' => 'A short description of struct', 'description' => 'A short description of struct', 'type' => 'string', 'required' => false, 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****'], ], [ - 'name' => 'ApplicationId', - 'in' => 'path', - 'allowEmptyValue' => false, - 'schema' => [ - 'title' => '应用ID', - 'description' => '应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '7e41aff0-9eca-45c9-ac48-675e09******', - ], + 'name' => 'NlbId', + 'in' => 'query', + 'schema' => ['description' => 'NLB实例ID', 'type' => 'string', 'required' => false, 'example' => 'nlb-7z7jjbzz44d82c9***'], ], [ - 'name' => 'body', - 'in' => 'body', - 'allowEmptyValue' => false, - 'schema' => [ - 'title' => '版本配置信息', - 'description' => '版本配置信息。', - 'required' => true, - '$ref' => '#/components/schemas/PublishWebApplicationRevisionInput', - ], + 'name' => 'Protocol', + 'in' => 'query', + 'schema' => ['description' => '协议类型。取值:'."\n" + ."\n" + .'- **TCP**。'."\n" + .'- **UDP**。'."\n" + .'- **TCPSSL**。', 'type' => 'string', 'required' => false, 'example' => 'TCP'], + ], + [ + 'name' => 'Port', + 'in' => 'query', + 'schema' => ['description' => '监听端口。取值范围:0~65535。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '3306'], ], ], 'responses' => [ 200 => [ - 'description' => '返回信息', 'schema' => [ - 'title' => '返回信息', - 'description' => '返回信息。', - 'required' => false, - '$ref' => '#/components/schemas/WebApplicationRevisionBody', + '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' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a981dd515966966104121683d****'], + 'Data' => [ + 'description' => '返回结果。', + 'type' => 'object', + 'properties' => [ + 'ChangeOrderId' => ['description' => '返回的发布单ID,用于查询任务执行状态。', 'type' => 'string', 'example' => 'ba386059-69b1-4e65-b1e5-0682d9fa****'], + ], + ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码,取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '解绑内网或公网NLB是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:解绑成功。'."\n" + ."\n" + .'- **false**:解绑失败。', 'type' => 'boolean', 'example' => 'true'], + ], ], - 'examples' => [], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 0,\\n \\"Data\\": {\\n \\"CreatedTime\\": \\"\\",\\n \\"Description\\": \\"\\",\\n \\"RevisionConfig\\": {\\n \\"Containers\\": [\\n {\\n \\"Args\\": \\"[\\\\\\"abc\\\\\\", \\\\\\">\\\\\\", \\\\\\"file0\\\\\\"]\\",\\n \\"Command\\": \\"[\\\\\\"/bin/sh\\\\\\"]\\",\\n \\"EnvironmentVariables\\": {\\n \\"key\\": \\"\\"\\n },\\n \\"Image\\": \\"registry.cn-shanghai.aliyuncs.com/serverless_devsxxxxx\\",\\n \\"WebNASConfig\\": {\\n \\"MountPoints\\": [\\n {\\n \\"MountDir\\": \\"\\",\\n \\"NasAddr\\": \\"\\",\\n \\"NasPath\\": \\"\\"\\n }\\n ]\\n },\\n \\"WebOSSConfig\\": {\\n \\"MountPoints\\": [\\n {\\n \\"BucketName\\": \\"\\",\\n \\"BucketPath\\": \\"\\",\\n \\"MountDir\\": \\"\\",\\n \\"ReadOnly\\": true\\n }\\n ]\\n },\\n \\"Port\\": 8080,\\n \\"RequestConcurrency\\": 100,\\n \\"RequestTimeout\\": 60,\\n \\"Resources\\": {\\n \\"Cpu\\": 2000,\\n \\"Memory\\": 2048\\n },\\n \\"StartupProbe\\": {\\n \\"FailureThreshold\\": 0,\\n \\"InitialDelaySeconds\\": 0,\\n \\"PeriodSeconds\\": 0,\\n \\"ProbeHandler\\": {\\n \\"HttpGet\\": {\\n \\"Host\\": \\"\\",\\n \\"HttpHeaders\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"value\\": \\"\\"\\n }\\n ],\\n \\"Path\\": \\"\\",\\n \\"Port\\": 0,\\n \\"Scheme\\": \\"\\"\\n },\\n \\"TcpSocket\\": {\\n \\"Host\\": \\"\\",\\n \\"Port\\": 0\\n }\\n },\\n \\"TimeoutSeconds\\": 0\\n },\\n \\"SLSCollectConfigs\\": {\\n \\"CollectConfigs\\": [\\n {\\n \\"LogPath\\": \\"\\",\\n \\"LogType\\": \\"\\",\\n \\"LogstoreName\\": \\"\\",\\n \\"LogtailName\\": \\"\\",\\n \\"MachineGroup\\": \\"\\",\\n \\"ProjectName\\": \\"\\"\\n }\\n ]\\n },\\n \\"MetricsCollectConfig\\": {\\n \\"LogstoreName\\": \\"my-sls-logstorename\\",\\n \\"ProjectName\\": \\"my-sls-project\\",\\n \\"EnablePushToUserSLS\\": true\\n },\\n \\"ImageRegistryConfig\\": {\\n \\"AuthConfig\\": {\\n \\"UserName\\": \\"admin\\",\\n \\"Password\\": \\"abc***\\"\\n },\\n \\"CertConfig\\": {\\n \\"Insecure\\": true,\\n \\"CertBase64\\": \\"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCmZha2VDZXJ0aWZpY2F0ZQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0t\\"\\n }\\n }\\n }\\n ],\\n \\"EnableArmsMetrics\\": true,\\n \\"WebNetworkConfig\\": {\\n \\"InternetAccess\\": true,\\n \\"SecurityGroupId\\": \\"sg-bp18hj1wtxgy3b0***\\",\\n \\"VSwitchIds\\": [\\n \\"vsw-bp1ozpcrdc6r****\\"\\n ]\\n }\\n },\\n \\"RevisionId\\": \\"\\",\\n \\"Weight\\": 0\\n },\\n \\"Message\\": \\"\\",\\n \\"RequestId\\": \\"\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => '发布Web应用版本', - 'description' => '发布Web应用版本,即修改版本上相关的配置,并新建一个版本。', - ], - 'ListWebApplicationRevisions' => [ - 'summary' => '查询Web应用版本列表。', - 'path' => '/pop/v2/api/web/application-revisions/{ApplicationId}/revisions', - 'methods' => [ - 'get', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a981dd515966966104121683d****\\",\\n \\"Data\\": {\\n \\"ChangeOrderId\\": \\"ba386059-69b1-4e65-b1e5-0682d9fa****\\"\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => '应用访问删除NLB监听', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:25.000Z', 'description' => 'OpenAPI 下线'], ], - 'schemes' => [ - 'http', - 'https', + 'flowControl' => [ + 'flowControlList' => [], ], - 'tags' => [], + 'ramActions' => [ + [ + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'sae:UnbindNlb', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], + ], + ], + 'UnbindSlb' => [ + 'path' => '/pop/v1/sam/app/slb', + 'methods' => ['delete'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'consumes' => [ - 'application/json', - ], - 'produces' => [ - 'application/json', - ], 'operationType' => 'readAndWrite', + 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'list', - 'abilityTreeCode' => '225950', - 'abilityTreeNodes' => [ - 'FEATUREsae37J6Z9', - ], + 'abilityTreeCode' => '6395', + 'abilityTreeNodes' => ['FEATUREsaeD9PL61'], ], 'parameters' => [ [ - 'name' => 'NamespaceId', + 'name' => 'AppId', 'in' => 'query', - 'allowEmptyValue' => false, - 'schema' => [ - 'title' => '命名空间ID', - 'description' => '命名空间ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-shanghai', - ], + 'schema' => ['description' => '目标应用ID。', 'type' => 'string', 'required' => true, 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****'], ], [ - 'name' => 'ApplicationId', - 'in' => 'path', - 'allowEmptyValue' => false, - 'schema' => [ - 'title' => '应用ID', - 'description' => '应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '7e41aff0-9eca-45c9-ac48-675e09******', - ], - ], - [ - 'name' => 'NextToken', + 'name' => 'Internet', 'in' => 'query', - 'allowEmptyValue' => true, - 'schema' => [ - 'title' => '分页起始标记', - 'description' => '分页起始标记。', - 'type' => 'string', - 'required' => false, - 'example' => '1', - ], + 'schema' => ['description' => '是否解绑公网SLB。取值说明如下:'."\n" + ."\n" + .'- **true**:表示解绑公网SLB。'."\n" + .'- **false**:表示不解绑公网SLB。', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'default' => 'false'], ], [ - 'name' => 'Limit', + 'name' => 'Intranet', 'in' => 'query', - 'allowEmptyValue' => true, - 'schema' => [ - 'title' => '返回的应用数量', - 'description' => '返回的应用数量。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', - ], + 'schema' => ['description' => '是否解绑私网SLB。取值说明如下:'."\n" + ."\n" + .'- **true**:表示解绑私网SLB。'."\n" + .'- **false**:表示不解绑私网SLB。', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'default' => 'false'], ], ], 'responses' => [ 200 => [ - 'description' => '返回信息', 'schema' => [ - 'title' => '返回信息', - 'description' => '返回信息。', - 'required' => false, - '$ref' => '#/components/schemas/ListWebApplicationRevisionsBody', + 'description' => '返回数据。', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], + 'Data' => [ + 'description' => '返回结果。', + 'type' => 'object', + 'properties' => [ + 'ChangeOrderId' => ['description' => '返回的发布单ID,用于查询任务执行状态。', 'type' => 'string', 'example' => '4a815998-b468-4bea-b7d8-59f52a44****'], + ], + ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '解绑内网或公网SLB是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:解绑成功。'."\n" + .'- **false**:解绑失败。', 'type' => 'boolean', 'example' => 'true'], + ], ], - 'examples' => [], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 0,\\n \\"Data\\": {\\n \\"NextToken\\": \\"\\",\\n \\"Revisions\\": [\\n {\\n \\"CreatedTime\\": \\"\\",\\n \\"Description\\": \\"\\",\\n \\"RevisionConfig\\": {\\n \\"Containers\\": [\\n {\\n \\"Args\\": \\"[\\\\\\"abc\\\\\\", \\\\\\">\\\\\\", \\\\\\"file0\\\\\\"]\\",\\n \\"Command\\": \\"[\\\\\\"/bin/sh\\\\\\"]\\",\\n \\"EnvironmentVariables\\": {\\n \\"key\\": \\"\\"\\n },\\n \\"Image\\": \\"registry.cn-shanghai.aliyuncs.com/serverless_devsxxxxx\\",\\n \\"WebNASConfig\\": {\\n \\"MountPoints\\": [\\n {\\n \\"MountDir\\": \\"\\",\\n \\"NasAddr\\": \\"\\",\\n \\"NasPath\\": \\"\\"\\n }\\n ]\\n },\\n \\"WebOSSConfig\\": {\\n \\"MountPoints\\": [\\n {\\n \\"BucketName\\": \\"\\",\\n \\"BucketPath\\": \\"\\",\\n \\"MountDir\\": \\"\\",\\n \\"ReadOnly\\": true\\n }\\n ]\\n },\\n \\"Port\\": 8080,\\n \\"RequestConcurrency\\": 100,\\n \\"RequestTimeout\\": 60,\\n \\"Resources\\": {\\n \\"Cpu\\": 2000,\\n \\"Memory\\": 2048\\n },\\n \\"StartupProbe\\": {\\n \\"FailureThreshold\\": 0,\\n \\"InitialDelaySeconds\\": 0,\\n \\"PeriodSeconds\\": 0,\\n \\"ProbeHandler\\": {\\n \\"HttpGet\\": {\\n \\"Host\\": \\"\\",\\n \\"HttpHeaders\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"value\\": \\"\\"\\n }\\n ],\\n \\"Path\\": \\"\\",\\n \\"Port\\": 0,\\n \\"Scheme\\": \\"\\"\\n },\\n \\"TcpSocket\\": {\\n \\"Host\\": \\"\\",\\n \\"Port\\": 0\\n }\\n },\\n \\"TimeoutSeconds\\": 0\\n },\\n \\"SLSCollectConfigs\\": {\\n \\"CollectConfigs\\": [\\n {\\n \\"LogPath\\": \\"\\",\\n \\"LogType\\": \\"\\",\\n \\"LogstoreName\\": \\"\\",\\n \\"LogtailName\\": \\"\\",\\n \\"MachineGroup\\": \\"\\",\\n \\"ProjectName\\": \\"\\"\\n }\\n ]\\n },\\n \\"MetricsCollectConfig\\": {\\n \\"LogstoreName\\": \\"my-sls-logstorename\\",\\n \\"ProjectName\\": \\"my-sls-project\\",\\n \\"EnablePushToUserSLS\\": true\\n },\\n \\"ImageRegistryConfig\\": {\\n \\"AuthConfig\\": {\\n \\"UserName\\": \\"admin\\",\\n \\"Password\\": \\"abc***\\"\\n },\\n \\"CertConfig\\": {\\n \\"Insecure\\": true,\\n \\"CertBase64\\": \\"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCmZha2VDZXJ0aWZpY2F0ZQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0t\\"\\n }\\n }\\n }\\n ],\\n \\"EnableArmsMetrics\\": true,\\n \\"WebNetworkConfig\\": {\\n \\"InternetAccess\\": true,\\n \\"SecurityGroupId\\": \\"sg-bp18hj1wtxgy3b0***\\",\\n \\"VSwitchIds\\": [\\n \\"vsw-bp1ozpcrdc6r****\\"\\n ]\\n }\\n },\\n \\"RevisionId\\": \\"\\",\\n \\"Weight\\": 0\\n }\\n ]\\n },\\n \\"Message\\": \\"\\",\\n \\"RequestId\\": \\"\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => '查询Web应用版本列表', - 'description' => '查询Web应用版本列表。', - ], - 'DescribeWebApplicationRevision' => [ - 'summary' => '查询Web应用版本详情。', - 'path' => '/pop/v2/api/web/application-revisions/{ApplicationId}/revisions/{RevisionId}', - 'methods' => [ - 'get', + 'errorCodes' => [ + 400 => [ + ['errorCode' => 'InvalidApplication.NotFound', 'errorMessage' => 'The current application does not exist.', 'description' => '找不到当前应用。'], + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], + ['errorCode' => 'System.Upgrading', 'errorMessage' => 'The system is being upgraded. Please try again later.', 'description' => '系统正在升级,请稍后操作。'], + ['errorCode' => 'Application.ChangerOrderRunning', 'errorMessage' => 'An application change process is in progress. Please try again later.', 'description' => '应用有变更流程正在执行,请稍后重试。'], + ['errorCode' => 'Application.InvalidStatus', 'errorMessage' => 'The application status is abnormal. Please try again later.', 'description' => '应用状态异常,请稍后重试。'], + ['errorCode' => 'Application.NotDeployYet', 'errorMessage' => 'The application has not been deployed. Please deploy it and try again.', 'description' => '应用没有部署,请部署后重试。'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"ChangeOrderId\\": \\"4a815998-b468-4bea-b7d8-59f52a44****\\"\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<UnbindSlbResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <ChangeOrderId>4a815998-b468-4bea-b7d8-59f52a44****</ChangeOrderId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</UnbindSlbResponse>","errorExample":""}]', + 'title' => '解绑内网或公网SLB', + 'summary' => '调用UnbindSlb接口解绑私网或公网SLB。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:23.000Z', 'description' => 'OpenAPI 下线'], ], - 'tags' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '20', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UnbindSlb'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => '', + 'ramAction' => [ + 'action' => 'sae:UnbindSlb', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], + ], + ], + 'UntagResources' => [ + 'path' => '/tags', + 'methods' => ['delete'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'consumes' => [ - 'application/json', - ], - 'produces' => [ - 'application/json', - ], - 'operationType' => 'readAndWrite', + 'operationType' => 'write', + 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '225944', - 'abilityTreeNodes' => [ - 'FEATUREsae37J6Z9', - ], + 'abilityTreeCode' => '6396', + 'abilityTreeNodes' => ['FEATUREsaeD9PL61'], ], 'parameters' => [ [ - 'name' => 'NamespaceId', + 'name' => 'RegionId', 'in' => 'query', - 'allowEmptyValue' => false, - 'schema' => [ - 'title' => 'namespace id', - 'description' => '命名空间ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => '地域ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-beijing'], ], [ - 'name' => 'ApplicationId', - 'in' => 'path', - 'allowEmptyValue' => false, - 'schema' => [ - 'title' => 'application id', - 'description' => '应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '7e41aff0-9eca-45c9-ac48-675e09******', - ], + 'name' => 'ResourceType', + 'in' => 'query', + 'schema' => ['description' => '资源类型,只支持`application`。', 'type' => 'string', 'required' => true, 'example' => 'application'], ], [ - 'name' => 'RevisionId', - 'in' => 'path', - 'allowEmptyValue' => false, - 'schema' => [ - 'title' => 'revision id', - 'description' => '修订版本ID。', - 'type' => 'string', - 'required' => true, - 'example' => '1', - ], + 'name' => 'ResourceIds', + 'in' => 'query', + 'schema' => ['description' => '资源ID。可填写多个资源ID,用英文逗号(,)分隔。', 'type' => 'string', 'required' => true, 'example' => '["d42921c4-5433-4abd-8075-0e536f8b****"]'], + ], + [ + 'name' => 'TagKeys', + 'in' => 'query', + 'schema' => ['description' => '标签键列表。可填写多个标签键,用英文逗号(,)分隔。', 'type' => 'string', 'required' => false, 'example' => '["k1","k2"]'], + ], + [ + 'name' => 'DeleteAll', + 'in' => 'query', + 'schema' => ['description' => '是否删除所有标签,当已传入标签键时生效。取值说明如下:'."\n" + ."\n" + .'- **true**:删除所有标签。'."\n" + .'- **false**:不删除所有标签。', 'type' => 'boolean', 'required' => false, 'example' => 'false'], ], ], 'responses' => [ 200 => [ - 'description' => '返回信息', 'schema' => [ - 'title' => '返回信息', - 'description' => '返回信息。', - 'required' => false, - '$ref' => '#/components/schemas/WebApplicationRevisionBody', + 'description' => '返回数据。', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], + 'Data' => ['description' => '返回结果。', 'type' => 'boolean', 'example' => 'true'], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '删除标签是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:删除成功。'."\n" + .'- **false**:删除失败。', 'type' => 'boolean', 'example' => 'true'], + ], ], - 'examples' => [], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 0,\\n \\"Data\\": {\\n \\"CreatedTime\\": \\"\\",\\n \\"Description\\": \\"\\",\\n \\"RevisionConfig\\": {\\n \\"Containers\\": [\\n {\\n \\"Args\\": \\"[\\\\\\"abc\\\\\\", \\\\\\">\\\\\\", \\\\\\"file0\\\\\\"]\\",\\n \\"Command\\": \\"[\\\\\\"/bin/sh\\\\\\"]\\",\\n \\"EnvironmentVariables\\": {\\n \\"key\\": \\"\\"\\n },\\n \\"Image\\": \\"registry.cn-shanghai.aliyuncs.com/serverless_devsxxxxx\\",\\n \\"WebNASConfig\\": {\\n \\"MountPoints\\": [\\n {\\n \\"MountDir\\": \\"\\",\\n \\"NasAddr\\": \\"\\",\\n \\"NasPath\\": \\"\\"\\n }\\n ]\\n },\\n \\"WebOSSConfig\\": {\\n \\"MountPoints\\": [\\n {\\n \\"BucketName\\": \\"\\",\\n \\"BucketPath\\": \\"\\",\\n \\"MountDir\\": \\"\\",\\n \\"ReadOnly\\": true\\n }\\n ]\\n },\\n \\"Port\\": 8080,\\n \\"RequestConcurrency\\": 100,\\n \\"RequestTimeout\\": 60,\\n \\"Resources\\": {\\n \\"Cpu\\": 2000,\\n \\"Memory\\": 2048\\n },\\n \\"StartupProbe\\": {\\n \\"FailureThreshold\\": 0,\\n \\"InitialDelaySeconds\\": 0,\\n \\"PeriodSeconds\\": 0,\\n \\"ProbeHandler\\": {\\n \\"HttpGet\\": {\\n \\"Host\\": \\"\\",\\n \\"HttpHeaders\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"value\\": \\"\\"\\n }\\n ],\\n \\"Path\\": \\"\\",\\n \\"Port\\": 0,\\n \\"Scheme\\": \\"\\"\\n },\\n \\"TcpSocket\\": {\\n \\"Host\\": \\"\\",\\n \\"Port\\": 0\\n }\\n },\\n \\"TimeoutSeconds\\": 0\\n },\\n \\"SLSCollectConfigs\\": {\\n \\"CollectConfigs\\": [\\n {\\n \\"LogPath\\": \\"\\",\\n \\"LogType\\": \\"\\",\\n \\"LogstoreName\\": \\"\\",\\n \\"LogtailName\\": \\"\\",\\n \\"MachineGroup\\": \\"\\",\\n \\"ProjectName\\": \\"\\"\\n }\\n ]\\n },\\n \\"MetricsCollectConfig\\": {\\n \\"LogstoreName\\": \\"my-sls-logstorename\\",\\n \\"ProjectName\\": \\"my-sls-project\\",\\n \\"EnablePushToUserSLS\\": true\\n },\\n \\"ImageRegistryConfig\\": {\\n \\"AuthConfig\\": {\\n \\"UserName\\": \\"admin\\",\\n \\"Password\\": \\"abc***\\"\\n },\\n \\"CertConfig\\": {\\n \\"Insecure\\": true,\\n \\"CertBase64\\": \\"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCmZha2VDZXJ0aWZpY2F0ZQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0t\\"\\n }\\n }\\n }\\n ],\\n \\"EnableArmsMetrics\\": true,\\n \\"WebNetworkConfig\\": {\\n \\"InternetAccess\\": true,\\n \\"SecurityGroupId\\": \\"sg-bp18hj1wtxgy3b0***\\",\\n \\"VSwitchIds\\": [\\n \\"vsw-bp1ozpcrdc6r****\\"\\n ]\\n }\\n },\\n \\"RevisionId\\": \\"\\",\\n \\"Weight\\": 0\\n },\\n \\"Message\\": \\"\\",\\n \\"RequestId\\": \\"\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => '查询Web应用版本详情', - 'description' => '查询Web应用版本详情。', - ], - 'DeleteWebApplicationRevision' => [ - 'summary' => '删除Web应用版本。', - 'path' => '/pop/v2/api/web/application-revisions/{ApplicationId}/revisions/{RevisionId}', - 'methods' => [ - 'delete', + 'errorCodes' => [ + 400 => [ + ['errorCode' => 'Duplicate.TagKey', 'errorMessage' => 'The TagKey contains duplicate keys.', 'description' => '标签中存在重复的键,请保持键的唯一性。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidResourceType.NotFound', 'errorMessage' => 'The specified resource type is not supported.', 'description' => '不支持指定的资源类型。'], + ['errorCode' => 'InvalidParameter.TagKey', 'errorMessage' => 'The specified TagKey is invalid.', 'description' => '标签键不合法。'], + ['errorCode' => 'InvalidParameter.TagValue', 'errorMessage' => 'The specified TagValue is invalid.', 'description' => '标签值不合法。'], + ['errorCode' => 'NumberExceed.Tags', 'errorMessage' => 'The specified parameter Tags count exceed.', 'description' => '单个资源最大Tag数超限,最大20个标签。'], + ['errorCode' => 'NumberExceed.ResourceIds', 'errorMessage' => 'The number of resource IDs cannot exceed 50.', 'description' => '资源ID个数不能超过50。'], + ['errorCode' => 'Invalid.Param.Tag.Scope', 'errorMessage' => 'The specified parameter is invalid: tag scope.', 'description' => 'scope参数有误。'], + ['errorCode' => 'No.Permission', 'errorMessage' => 'The account has no permission.', 'description' => '该账号没有操作权限。'], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": true,\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<UntagResourcesResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>true</Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</UntagResourcesResponse>","errorExample":""}]', + 'title' => '移除指定资源和标签之间的绑定关系', + 'summary' => '调用UntagResources接口解除指定资源和标签之间的绑定关系。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:25.000Z', 'description' => 'OpenAPI 下线'], ], - 'schemes' => [ - 'http', - 'https', + 'flowControl' => [ + 'flowControlList' => [], ], - 'tags' => [], + 'ramActions' => [ + [ + 'operationType' => '', + 'ramAction' => [ + 'action' => 'sae:UntagResources', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], + ], + ], + 'UpdateAppMode' => [ + 'summary' => '应用闲置模式更新', + 'path' => '/pop/v1/sam/app/updateAppMode', + 'methods' => ['put'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'consumes' => [ - 'application/json', - ], - 'produces' => [ - 'application/json', - ], 'operationType' => 'readAndWrite', + 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'delete', - 'abilityTreeCode' => '225939', - 'abilityTreeNodes' => [ - 'FEATUREsae37J6Z9', - ], + 'operationType' => 'update', + 'abilityTreeCode' => '259402', + 'abilityTreeNodes' => ['FEATUREsaeRVPNSA'], ], 'parameters' => [ [ - 'name' => 'NamespaceId', + 'name' => 'EnableIdle', 'in' => 'query', - 'allowEmptyValue' => false, 'schema' => [ - 'title' => 'namespace id', - 'description' => '命名空间ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-shanghai', + 'description' => '是否开启闲置。', + 'type' => 'boolean', + 'required' => false, + 'enumValueTitles' => ['true' => '开启', 'false' => '关闭'], + 'example' => 'true', ], ], [ - 'name' => 'ApplicationId', - 'in' => 'path', - 'allowEmptyValue' => false, - 'schema' => [ - 'title' => 'application id', - 'description' => '应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '7e41aff0-9eca-45c9-ac48-675e09******', - ], + 'name' => 'AppId', + 'in' => 'query', + 'schema' => ['description' => '应用ID。', 'type' => 'string', 'required' => false, 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****'], ], [ - 'name' => 'RevisionId', - 'in' => 'path', - 'allowEmptyValue' => false, - 'schema' => [ - 'title' => 'revision id', - 'description' => '修订版本ID。', - 'type' => 'string', - 'required' => true, - 'example' => '001', - ], + 'name' => 'NamespaceId', + 'in' => 'query', + 'schema' => ['description' => '命名空间ID。', 'type' => 'string', 'required' => false], + ], + [ + 'name' => 'AppIds', + 'in' => 'query', + 'schema' => ['description' => '应用ID。', 'type' => 'string', 'required' => false], ], ], 'responses' => [ 200 => [ - 'description' => 'No Content', 'schema' => [ - 'description' => '指定更新的管道信息。', - '$ref' => '#/components/schemas/WebApplicationRevisionBody', + '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' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '创建应用是否成功。取值说明如下:true:创建成功。false:创建失败。', 'type' => 'string', 'example' => 'true'], + ], ], - 'examples' => [], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 0,\\n \\"Data\\": {\\n \\"CreatedTime\\": \\"\\",\\n \\"Description\\": \\"\\",\\n \\"RevisionConfig\\": {\\n \\"Containers\\": [\\n {\\n \\"Args\\": \\"[\\\\\\"abc\\\\\\", \\\\\\">\\\\\\", \\\\\\"file0\\\\\\"]\\",\\n \\"Command\\": \\"[\\\\\\"/bin/sh\\\\\\"]\\",\\n \\"EnvironmentVariables\\": {\\n \\"key\\": \\"\\"\\n },\\n \\"Image\\": \\"registry.cn-shanghai.aliyuncs.com/serverless_devsxxxxx\\",\\n \\"WebNASConfig\\": {\\n \\"MountPoints\\": [\\n {\\n \\"MountDir\\": \\"\\",\\n \\"NasAddr\\": \\"\\",\\n \\"NasPath\\": \\"\\"\\n }\\n ]\\n },\\n \\"WebOSSConfig\\": {\\n \\"MountPoints\\": [\\n {\\n \\"BucketName\\": \\"\\",\\n \\"BucketPath\\": \\"\\",\\n \\"MountDir\\": \\"\\",\\n \\"ReadOnly\\": true\\n }\\n ]\\n },\\n \\"Port\\": 8080,\\n \\"RequestConcurrency\\": 100,\\n \\"RequestTimeout\\": 60,\\n \\"Resources\\": {\\n \\"Cpu\\": 2000,\\n \\"Memory\\": 2048\\n },\\n \\"StartupProbe\\": {\\n \\"FailureThreshold\\": 0,\\n \\"InitialDelaySeconds\\": 0,\\n \\"PeriodSeconds\\": 0,\\n \\"ProbeHandler\\": {\\n \\"HttpGet\\": {\\n \\"Host\\": \\"\\",\\n \\"HttpHeaders\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"value\\": \\"\\"\\n }\\n ],\\n \\"Path\\": \\"\\",\\n \\"Port\\": 0,\\n \\"Scheme\\": \\"\\"\\n },\\n \\"TcpSocket\\": {\\n \\"Host\\": \\"\\",\\n \\"Port\\": 0\\n }\\n },\\n \\"TimeoutSeconds\\": 0\\n },\\n \\"SLSCollectConfigs\\": {\\n \\"CollectConfigs\\": [\\n {\\n \\"LogPath\\": \\"\\",\\n \\"LogType\\": \\"\\",\\n \\"LogstoreName\\": \\"\\",\\n \\"LogtailName\\": \\"\\",\\n \\"MachineGroup\\": \\"\\",\\n \\"ProjectName\\": \\"\\"\\n }\\n ]\\n },\\n \\"MetricsCollectConfig\\": {\\n \\"LogstoreName\\": \\"my-sls-logstorename\\",\\n \\"ProjectName\\": \\"my-sls-project\\",\\n \\"EnablePushToUserSLS\\": true\\n },\\n \\"ImageRegistryConfig\\": {\\n \\"AuthConfig\\": {\\n \\"UserName\\": \\"admin\\",\\n \\"Password\\": \\"abc***\\"\\n },\\n \\"CertConfig\\": {\\n \\"Insecure\\": true,\\n \\"CertBase64\\": \\"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCmZha2VDZXJ0aWZpY2F0ZQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0t\\"\\n }\\n }\\n }\\n ],\\n \\"EnableArmsMetrics\\": true,\\n \\"WebNetworkConfig\\": {\\n \\"InternetAccess\\": true,\\n \\"SecurityGroupId\\": \\"sg-bp18hj1wtxgy3b0***\\",\\n \\"VSwitchIds\\": [\\n \\"vsw-bp1ozpcrdc6r****\\"\\n ]\\n }\\n },\\n \\"RevisionId\\": \\"\\",\\n \\"Weight\\": 0\\n },\\n \\"Message\\": \\"\\",\\n \\"RequestId\\": \\"\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => '删除Web应用版本', - 'description' => '删除Web应用版本。', - ], - 'CreateWebCustomDomain' => [ - 'summary' => '创建Web应用自定义域名。', - 'path' => '/pop/v2/api/web/custom-domains', - 'methods' => [ - 'post', - ], - 'schemes' => [ - 'http', - 'https', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": \\"true\\"\\n}","type":"json"}]', + 'title' => '更新应用闲置模式', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:00:29.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-12-25T02:10:43.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-12-25T01:47:16.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-12-25T01:45:03.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-12-25T01:38:55.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-12-25T01:33:13.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-12-25T01:31:45.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-12-25T01:26:39.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-12-24T12:48:57.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-07-23T09:05:02.000Z', 'description' => '请求参数发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'sae:UpdateAppMode', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], - 'tags' => [], + ], + 'UpdateAppSecurityGroup' => [ + 'path' => '/pop/v1/sam/app/updateAppSecurityGroup', + 'methods' => ['put'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'consumes' => [ - 'application/json', - ], - 'produces' => [ - 'application/json', - ], - 'operationType' => 'readAndWrite', + 'operationType' => 'write', + 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'create', - 'abilityTreeCode' => '225938', - 'abilityTreeNodes' => [ - 'FEATUREsae5U7VP0', - ], + 'operationType' => 'update', + 'abilityTreeCode' => '6399', + 'abilityTreeNodes' => ['FEATUREsaeD9PL61'], ], 'parameters' => [ [ - 'name' => 'NamespaceId', + 'name' => 'AppId', 'in' => 'query', - 'allowEmptyValue' => false, - 'schema' => [ - 'title' => '命名空间ID', - 'description' => '命名空间ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => '017f39b8-dfa4-4e16-a84b-1dcee4b1****'], ], [ - 'name' => 'body', - 'in' => 'body', - 'allowEmptyValue' => false, - 'schema' => [ - 'title' => '自定义域名信息', - 'description' => '自定义域名信息。', - 'required' => true, - '$ref' => '#/components/schemas/CreateWebCustomDomainInput', - ], + 'name' => 'SecurityGroupId', + 'in' => 'query', + 'schema' => ['description' => '安全组ID。', 'type' => 'string', 'required' => true, 'example' => 'sg-wz969ngg2e49q5i4****'], ], ], 'responses' => [ 200 => [ - 'description' => '返回信息', 'schema' => [ - 'title' => '返回信息', - 'description' => '返回信息。', - 'required' => false, - '$ref' => '#/components/schemas/WebCustomDomainBody', + 'description' => '返回数据。', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '更新应用安全组是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:更新成功。'."\n" + .'- **false**:更新失败。', 'type' => 'boolean', 'example' => 'true'], + ], ], - 'examples' => [], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 0,\\n \\"Data\\": {\\n \\"accountId\\": \\"123xxxxxx\\",\\n \\"WebCertConfig\\": {\\n \\"CertName\\": \\"\\",\\n \\"Certificate\\": \\"\\",\\n \\"PrivateKey\\": \\"\\"\\n },\\n \\"CreatedTime\\": \\"2023-03-30T08:02:19Z\\",\\n \\"DefaultForwardingAppName\\": \\"appxxxxx\\",\\n \\"DomainName\\": \\"example.com\\",\\n \\"LastModifiedTime\\": \\"2023-03-30T08:02:19Z\\",\\n \\"NamespaceId\\": \\"\\",\\n \\"Protocol\\": \\"HTTP\\",\\n \\"WebTLSConfig\\": {\\n \\"CipherSuites\\": [\\n \\"\\"\\n ],\\n \\"MaxVersion\\": \\"\\",\\n \\"MinVersion\\": \\"\\"\\n },\\n \\"WebWAFConfig\\": {\\n \\"EnableWAF\\": true\\n },\\n \\"RouteConfig\\": {\\n \\"routes\\": [\\n {\\n \\"path\\": \\"\\",\\n \\"applicationName\\": \\"\\"\\n }\\n ]\\n }\\n },\\n \\"Message\\": \\"\\",\\n \\"RequestId\\": \\"\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => '创建自定义域名', - 'description' => '创建Web应用自定义域名。', - ], - 'DescribeWebCustomDomain' => [ - 'summary' => '获取Web应用自定义域名详情。', - 'path' => '/pop/v2/api/web/custom-domains/{DomainName}', - 'methods' => [ - 'get', + 'errorCodes' => [ + 400 => [ + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidApplication.NotFound', 'errorMessage' => 'The current application does not exist.', 'description' => '找不到当前应用。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<UpdateAppSecurityGroupResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Code>200</Code>\\n <Success>true</Success>\\n</UpdateAppSecurityGroupResponse>","errorExample":""}]', + 'title' => '更新应用安全组', + 'summary' => '调用UpdateAppSecurityGroup接口更新应用安全组。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:23.000Z', 'description' => 'OpenAPI 下线'], ], - 'tags' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdateAppSecurityGroup'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'sae:UpdateAppSecurityGroup', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], + ], + ], + 'UpdateApplicationDescription' => [ + 'summary' => '更新应用描述。', + 'path' => '/pop/v1/sam/app/updateAppDescription', + 'methods' => ['put'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'consumes' => [ - 'application/json', - ], - 'produces' => [ - 'application/json', - ], - 'operationType' => 'readAndWrite', + 'operationType' => 'write', + 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '225947', - 'abilityTreeNodes' => [ - 'FEATUREsae5U7VP0', - ], + 'abilityTreeCode' => '10540', + 'abilityTreeNodes' => ['FEATUREsaeD9PL61'], ], 'parameters' => [ [ - 'name' => 'NamespaceId', + 'name' => 'AppId', 'in' => 'query', - 'allowEmptyValue' => false, - 'schema' => [ - 'title' => '命名空间ID', - 'description' => '命名空间ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-shanghai', - ], + 'schema' => ['description' => '需要更新的应用ID。', 'type' => 'string', 'required' => true, 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****'], ], [ - 'name' => 'DomainName', - 'in' => 'path', - 'allowEmptyValue' => false, - 'schema' => [ - 'title' => '命名空间名称', - 'description' => '自定义域名。', - 'type' => 'string', - 'required' => true, - 'example' => 'example.com', - ], + 'name' => 'AppDescription', + 'in' => 'query', + 'schema' => ['description' => '更新的应用描述信息。不超过1024个字符。', 'type' => 'string', 'required' => true, 'example' => 'newdesc'], ], ], 'responses' => [ 200 => [ - 'description' => 'OK', 'schema' => [ - 'description' => 'OK。', - '$ref' => '#/components/schemas/WebCustomDomain', + 'description' => '响应信息。', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '01CF26C7-00A3-4AA6-BA76-7E95F2A3***'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => 'ac1a0b2215622246421415014e****'], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '部署应用是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:部署成功。'."\n" + .'- **false**:部署失败。', 'type' => 'boolean', 'example' => 'true'], + ], ], - 'examples' => [], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"accountId\\": \\"123xxxxxx\\",\\n \\"WebCertConfig\\": {\\n \\"CertName\\": \\"\\",\\n \\"Certificate\\": \\"\\",\\n \\"PrivateKey\\": \\"\\"\\n },\\n \\"CreatedTime\\": \\"2023-03-30T08:02:19Z\\",\\n \\"DefaultForwardingAppName\\": \\"appxxxxx\\",\\n \\"DomainName\\": \\"example.com\\",\\n \\"LastModifiedTime\\": \\"2023-03-30T08:02:19Z\\",\\n \\"NamespaceId\\": \\"\\",\\n \\"Protocol\\": \\"HTTP\\",\\n \\"WebTLSConfig\\": {\\n \\"CipherSuites\\": [\\n \\"\\"\\n ],\\n \\"MaxVersion\\": \\"\\",\\n \\"MinVersion\\": \\"\\"\\n },\\n \\"WebWAFConfig\\": {\\n \\"EnableWAF\\": true\\n },\\n \\"RouteConfig\\": {\\n \\"routes\\": [\\n {\\n \\"path\\": \\"\\",\\n \\"applicationName\\": \\"\\"\\n }\\n ]\\n }\\n}","type":"json"}]', - 'title' => '获取Web应用自定义域名详情', - 'description' => '获取Web应用自定义域名详情。', - ], - 'ListWebCustomDomains' => [ - 'summary' => '获取自定义域名列表。', - 'path' => '/pop/v2/api/web/custom-domains', - 'methods' => [ - 'get', + 'errorCodes' => [ + 400 => [ + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidApplication.NotFound', 'errorMessage' => 'The current application does not exist.', 'description' => '找不到当前应用。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], + ], + 404 => [ + ['errorCode' => 'InvalidAppId.NotFound', 'errorMessage' => 'The specified AppId does not exist.', 'description' => '指定的AppId不存在。'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"01CF26C7-00A3-4AA6-BA76-7E95F2A3***\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"ac1a0b2215622246421415014e****\\",\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<UpdateApplicationDescriptionResponse>\\n <RequestId>01CF26C7-00A3-4AA6-BA76-7E95F2A3***</RequestId>\\n <Message>success</Message>\\n <TraceId>ac1a0b2215622246421415014e****</TraceId>\\n <Code>200</Code>\\n <Success>true</Success>\\n</UpdateApplicationDescriptionResponse>","errorExample":""}]', + 'title' => '更新应用描述', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:23.000Z', 'description' => 'OpenAPI 下线'], ], - 'tags' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdateApplicationDescription'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => '', + 'ramAction' => [ + 'action' => 'sae:UpdateApplicationDescription', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], + ], + ], + 'UpdateApplicationScalingRule' => [ + 'path' => '/pop/v1/sam/scale/applicationScalingRule', + 'methods' => ['put'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'consumes' => [ - 'application/json', - ], - 'produces' => [ - 'application/json', - ], - 'operationType' => 'readAndWrite', + 'operationType' => 'write', + 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'list', - 'abilityTreeCode' => '225952', - 'abilityTreeNodes' => [ - 'FEATUREsae5U7VP0', - ], + 'operationType' => 'update', + 'abilityTreeCode' => '6397', + 'abilityTreeNodes' => ['FEATUREsaeX1L0GL', 'FEATUREsaeAINYGA'], ], 'parameters' => [ [ - 'name' => 'NamespaceId', + 'name' => 'AppId', 'in' => 'query', - 'allowEmptyValue' => false, - 'schema' => [ - 'title' => '命名空间ID', - 'description' => '命名空间ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****'], ], [ - 'name' => 'ApplicationId', + 'name' => 'ScalingRuleName', 'in' => 'query', - 'allowEmptyValue' => true, - 'schema' => [ - 'title' => '应用ID', - 'description' => '应用ID。', - 'type' => 'string', - 'required' => false, - 'example' => '7e41aff0-9eca-45c9-ac48-675e09******', - ], + 'schema' => ['description' => '已创建成功的弹性策略名。必须以小写字母开头,仅可包含小写字母、数字及短划线(-),不超过32个字符。'."\n" + .'> 弹性伸缩策略创建成功后,不可修改策略名。', 'type' => 'string', 'required' => true, 'example' => 'timer-0800-2100'], ], [ - 'name' => 'Prefix', + 'name' => 'ScalingRuleTimer', 'in' => 'query', - 'allowEmptyValue' => true, - 'schema' => [ - 'title' => '自定义域名查询前缀', - 'description' => '自定义域名查询前缀。', - 'type' => 'string', - 'required' => false, - 'example' => 'remoteresult', - ], + 'schema' => ['description' => '定时弹性策略的配置。当您选择定时弹性策略或使用SDK设置时,该参数必选。'."\n" + ."\n" + .'参数说明如下:'."\n" + ."\n" + .'- **beginDate**和**endDate**:**beginDate**为起始日期,**endDate**为结束日期,用于配置定时弹性伸缩策略的时间。取值说明如下: '."\n" + .' - 当取值均为**null**时,表示长期执行,为默认值。'."\n" + .' - 当取值为具体日期时,例如**beginDate**为**2021-03-25**,**endDate**为**2021-04-25**,表示执行有效期为1个月。'."\n" + .'- **period**:执行定时弹性伸缩策略的周期。取值说明如下:'."\n" + .' - **\\* \\* \\***:每天指定时间执行定时策略。'."\n" + .' - **\\* \\* Fri,Mon**:每周指定天数的指定时间执行定时策略,支持选择多星期几,GMT+8时区。取值说明如下: '."\n" + .' - **Sun**:星期日'."\n" + .' - **Mon**:星期一'."\n" + .' - **Tue**:星期二'."\n" + .' - **Wed**:星期三'."\n" + .' - **Thu**:星期四'."\n" + .' - **Fri**:星期五'."\n" + .' - **Sat**:星期六'."\n" + .' - **1,2,3,28,31 \\* \\***:每月指定日期的指定时间执行定时策略。取值范围\\[1, 31\\]。若当月无31日,则跳过该日期执行定时策略。'."\n" + .'- **schedules**:弹性伸缩策略触发的时间,以及该时间段内需要保持的应用实例数。最多支持20个时间点。参数说明如下:'."\n" + .' - **atTime**:触发时间点。支持格式**时:分**,例如**08:00**。'."\n" + .' - **targetReplicas**:该参数可以指定应用的实例数,也可以是每次部署最小存活的实例数。取值范围\\[1, 50\\]。'."\n" + ."\n" + .' > 每次滚动部署最小存活的实例数建议大于等于**1**,保证业务不中断。如果设置为**0**,应用在升级过程中将会中断业务。', 'type' => 'string', 'required' => false, 'example' => '{"beginDate":null,"endDate":null,"period":"* * *","schedules":[{"atTime":"08:00","targetReplicas":10},{"atTime":"20:00","targetReplicas":3}]}'], ], [ - 'name' => 'NextToken', + 'name' => 'ScalingRuleMetric', 'in' => 'query', - 'allowEmptyValue' => true, - 'schema' => [ - 'title' => '分页起始标记', - 'description' => '分页起始标记。', - 'type' => 'string', - 'required' => false, - 'example' => 'A2RN', - ], + 'schema' => ['description' => '监控指标弹性策略的配置。当您选择监控指标弹性策略设置时,该参数必选。'."\n" + ."\n" + .'参数说明如下:'."\n" + ."\n" + .'- **maxReplicas**:应用最大实例数。'."\n" + .'- **minReplicas**:应用最小实例数。'."\n" + .'- **metricType**:监控指标触发条件。'."\n" + .' - **CPU**:CPU使用率。'."\n" + .' - **MEMORY**:内存使用率。'."\n" + .' - **QPS**:JAVA应用1分钟内单个实例的平均QPS。'."\n" + .' - **RT**:JAVA应用1分钟内应用所有服务接口平均RT值。'."\n" + .' - **tcpActiveConn**:30秒内单个实例的平均TCP活跃连接数。'."\n" + .' - **SLB\\_QPS**:15秒内单个实例的平均公网SLB QPS。'."\n" + .' - **SLB\\_RT**:15秒内公网SLB平均响应时间。'."\n" + .' - **INTRANET\\_SLB\\_QPS**:15秒内单个实例的平均私网SLB QPS。'."\n" + .' - **INTRANET\\_SLB\\_RT**:15秒内私网SLB平均响应时间。'."\n" + .'- **metricTargetAverageUtilization**:根据不同的**metricType**,设置对应的监控指标的目标值。'."\n" + .' - CPU使用率目标值,单位为百分比。'."\n" + .' - 内存使用率目标值,单位为百分比。'."\n" + .' - QPS,单位为秒。'."\n" + .' - 响应时间,单位为毫秒。'."\n" + .' - TCP活跃连接数平均值,单位为个/秒。'."\n" + .' - 公网SLB QPS,单位为秒。'."\n" + .' - 公网SLB响应时间,单位为毫秒。'."\n" + .' - 私网SLB QPS,单位为秒。'."\n" + .' - 私网SLB响应时间,单位为毫秒。'."\n" + .'- **slbId**:SLB ID。'."\n" + .'- **slbProject**:日志服务Project。'."\n" + .'- **slbLogstore**:日志服务Logstore。'."\n" + .'- **vport**:SLB监听端口,支持HTTP协议和HTTPS协议。'."\n" + .'- **scaleUpRules**:应用扩容规则。'."\n" + .'- **scaleDownRules**:应用缩容规则。'."\n" + .'- **step**:弹性扩容或缩容步长。单位时间内最多扩容或缩容的实例数。'."\n" + .'- **disabled**:是否禁止缩容。开启后将永远不会缩容该应用的实例,能有效防止在流量高峰期缩容造成业务风险。'."\n" + .' - **true**:开启。'."\n" + .' - **false**:关闭。默认值。'."\n" + .'- **stabilizationWindowSeconds**:扩容或缩容的冷却时间。取值范围\\[0, 3600\\],单位为秒。默认为0秒。'."\n" + ."\n" + .'> 您可以选择设置一个或多个监控指标。当设置多个监控指标时,只要任何一个指标大于或者等于目标值,则应用进行扩容,扩容后实例数不高于应用最大实例数;如果所有指标均小于目标值,则应用进行缩容,缩容后实例数不低于应用最小实例数。', 'type' => 'string', 'required' => false, 'example' => '{"maxReplicas":3,"minReplicas":1,"metrics":[{"metricType":"CPU","metricTargetAverageUtilization":20},{"metricType":"MEMORY","metricTargetAverageUtilization":30},{"metricType":"tcpActiveConn","metricTargetAverageUtilization":20},{"metricType":"SLB_QPS","MetricTargetAverageUtilization":25,"slbId":"lb-xxx","slbProject":"aliyun-fc-cn-hangzhou-d95881d9-5d3c-5f26-a6b8-************","slbLogstore":"function-log","vport":"80"},{"metricType":"SLB_RT","MetricTargetAverageUtilization":35,"slbId":"lb-xxx","slbProject":"aliyun-fc-cn-hangzhou-d95881d9-5d3c-5f26-a6b8-************","slbLogstore":"function-log","vport":"80"}],"scaleUpRules":{"step":"100","disabled":false,"stabilizationWindowSeconds":0},"scaleDownRules":{"step":"100","disabled":false,"stabilizationWindowSeconds":300}}'], ], [ - 'name' => 'Limit', + 'name' => 'MinReadyInstances', 'in' => 'query', - 'allowEmptyValue' => true, - 'schema' => [ - 'title' => '返回的域名数量', - 'description' => '返回的域名数量。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', - ], + 'schema' => ['description' => '最小存活实例数。取值说明如下:'."\n" + ."\n" + .'- 如果设置为**0**,应用在升级过程中将会中断业务。'."\n" + .'- 如果设置为**-1**,最小存活实例数将使用系统推荐值,即取现有实例数的25%。如果当前为5个实例,5×25%=1.25,向上取整后,最小存活实例数为2。'."\n" + ."\n" + .'> 每次滚动部署最小存活的实例数建议≥1,保证业务不中断。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '3'], + ], + [ + 'name' => 'MinReadyInstanceRatio', + 'in' => 'query', + 'schema' => ['description' => '最小存活实例数百分比。取值说明如下:'."\n" + ."\n" + .' - **-1**:初始化值,表示不采用百分比。'."\n" + .' - **0~100**:单位为百分比,向上取整。例如设置为**50**%,如果当前为5个实例,则最小存活实例数为3。'."\n" + ."\n" + .'> 当**MinReadyInstance**和**MinReadyInstanceRatio**同时传递时,且**MinReadyInstanceRatio**的取值非**-1**时,以**MinReadyInstanceRatio**参数为准。假设**MinReadyInstances**取值为**5**,**MinReadyInstanceRatio**取值为**50**,则会用**50**来计算最小存活实例数。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '-1'], + ], + [ + 'name' => 'EnableIdle', + 'in' => 'query', + 'schema' => ['description' => '是否开启闲置。', 'type' => 'boolean', 'required' => false], + ], + [ + 'name' => 'ScalingRuleType', + 'in' => 'query', + 'schema' => ['description' => '弹性伸缩策略类型。取值说明如下:'."\n" + ."\n" + .'- **timing**:定时弹性。'."\n" + .'- **metric**:监控指标弹性。'."\n" + ."\n" + .'- **mix**:混合弹性。'."\n" + ."\n" + .'>'."\n" + .'> - 如果选择定时弹性,ScalingRuleTimer字段为必填项。'."\n" + .'> - 如果选择监控指标弹性,ScalingRuleMetric字段为必填项。'."\n" + .'> - 如果选择混合弹性,ScalingRuleMetric字段为必填项,ScalingRuleTimer字段和ScalingRuleMetric字段也可以按需同时填写。', 'type' => 'string', 'required' => false, 'example' => 'timing'], ], ], 'responses' => [ 200 => [ - 'description' => 'OK', 'schema' => [ - 'description' => '请求消息体。', - '$ref' => '#/components/schemas/ListWebCustomDomainBody', + 'description' => '返回信息。', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], + 'Data' => [ + 'description' => '返回结果。', + 'type' => 'object', + 'properties' => [ + 'Timer' => [ + 'description' => '定时弹性伸缩。', + 'type' => 'object', + 'properties' => [ + 'EndDate' => ['description' => '定时弹性伸缩策略的短期结束日期。取值说明如下:'."\n" + ."\n" + .'- 当**BeginDate**和**EndDate**取值均为**null**时,表示长期执行,为默认值。'."\n" + .'- 当取值为具体日期时,例如**BeginDate**为2021-03-25,**EndDate**为2021-04-25,表示执行有效期为1个月。', 'type' => 'string', 'example' => '2021-04-25'], + 'BeginDate' => ['description' => '定时弹性伸缩策略的短期起始日期。取值说明如下:'."\n" + ."\n" + .'- 当**BeginDate**和**EndDate**取值均为**null**时,表示长期执行,为默认值。'."\n" + .'- 当取值为具体日期时,例如**BeginDate**为2021-03-25,**EndDate**为2021-04-25,表示执行有效期为1个月。', 'type' => 'string', 'example' => '2021-03-25'], + 'Schedules' => [ + 'description' => '单天内触发时间点。', + 'type' => 'array', + 'items' => [ + 'description' => '时间点数据。', + 'type' => 'object', + 'properties' => [ + 'AtTime' => ['description' => '时间点。格式:**时:分**。', 'type' => 'string', 'example' => '08:00'], + 'TargetReplicas' => ['description' => '目标实例数。', 'type' => 'integer', 'format' => 'int32', 'example' => '3'], + 'MinReplicas' => ['description' => '最小实例数。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'MaxReplicas' => ['description' => '最大实例数。', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], + ], + ], + ], + 'Period' => ['description' => '执行定时弹性伸缩策略的周期。取值说明如下:'."\n" + ."\n" + .'- **\\* \\* \\***:每天指定时间执行定时策略。'."\n" + .'- **\\* \\* Fri,Mon**:每周指定天数的指定时间执行定时策略,支持多选,GMT+8时区。取值说明如下: '."\n" + ."\n" + .' - **Sun**:星期日'."\n" + .' - **Mon**:星期一'."\n" + .' - **Tue**:星期二'."\n" + .' - **Wed**:星期三'."\n" + .' - **Thu**:星期四'."\n" + .' - **Fri**:星期五'."\n" + .' - **Sat**:星期六'."\n" + .'- **1,2,3,28,31 \\* \\***:每月指定日期的指定时间执行定时策略,支持多选。取值范围\\[1,31\\]。若当月无31日,则跳过该日期执行定时策略。', 'type' => 'string', 'example' => '* * *'], + ], + ], + 'UpdateTime' => ['description' => '弹性伸缩策略的更新时间。单位:毫秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1616642248938'], + 'AppId' => ['description' => '应用ID。', 'type' => 'string', 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****'], + 'CreateTime' => ['description' => '弹性伸缩策略的创建时间。单位:毫秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1616642248938'], + 'LastDisableTime' => ['description' => '最近一次禁用弹性伸缩策略的时间。', 'type' => 'integer', 'format' => 'int64', 'example' => '1641882854484'], + 'ScaleRuleEnabled' => ['description' => '是否启用弹性伸缩策略。取值说明如下:'."\n" + ."\n" + .'- **true**:启用状态。'."\n" + .'- **false**:禁用状态。', 'type' => 'boolean', 'example' => 'true'], + 'ScaleRuleType' => ['description' => '弹性伸缩策略类型。取值说明如下:'."\n" + ."\n" + .'- **timing**:定时弹性。'."\n" + .'- **metric**:监控指标弹性。'."\n" + .'- **mix**:混合弹性。', 'type' => 'string', 'example' => 'timing'], + 'Metric' => [ + 'description' => '监控指标弹性伸缩。', + 'type' => 'object', + 'properties' => [ + 'Metrics' => [ + 'description' => '监控指标弹性伸缩列表。', + 'type' => 'array', + 'items' => [ + 'description' => '监控指标数据。', + 'type' => 'object', + 'properties' => [ + 'MetricTargetAverageUtilization' => ['description' => '监控指标的目标值。'."\n" + ."\n" + .'- CPU使用率目标值,单位为百分比。'."\n" + .'- 内存使用率目标值,单位为百分比。'."\n" + .'- QPS,单位为秒。'."\n" + .'- 响应时间,单位为毫秒。'."\n" + .'- TCP活跃连接数平均值,单位为个/秒。'."\n" + .'- 公网SLB QPS,单位为秒。'."\n" + .'- 公网SLB响应时间,单位为毫秒。'."\n" + .'- 私网SLB QPS,单位为秒。'."\n" + .'- 私网SLB响应时间,单位为毫秒。', 'type' => 'integer', 'format' => 'int32', 'example' => '20'], + 'MetricType' => ['description' => '监控指标触发条件。取值说明如下:'."\n" + ."\n" + .'- **CPU**:CPU使用率。'."\n" + .'- **MEMORY**:内存使用率。'."\n" + .'- **QPS**:JAVA应用1分钟内单个实例的平均QPS。'."\n" + .'- **RT**:JAVA应用1分钟内应用所有服务接口平均RT值。'."\n" + .'- **tcpActiveConn**:30秒内单个实例的平均TCP活跃连接数。'."\n" + .'- **SLB\\_QPS**:15秒内单个实例的平均公网SLB QPS。'."\n" + .'- **SLB\\_RT**:15秒内公网SLB平均响应时间。'."\n" + .'- **INTRANET\\_SLB\\_QPS**:15秒内单个实例的平均私网SLB QPS。'."\n" + .'- **INTRANET\\_SLB\\_RT**:15秒内私网SLB平均响应时间。', 'type' => 'string', 'example' => 'CPU'], + 'SlbProject' => ['description' => 'SLB访问日志Project。', 'type' => 'string', 'example' => 'test'], + 'SlbLogstore' => ['description' => 'SLB访问日志Logstore。', 'type' => 'string', 'example' => 'test'], + 'Vport' => ['description' => 'SLB端口。', 'type' => 'string', 'example' => '80'], + 'SlbId' => ['description' => 'SLB实例ID。', 'type' => 'string', 'example' => 'lb-xxx'], + ], + ], + ], + 'MaxReplicas' => ['description' => '最大实例数。', 'type' => 'integer', 'format' => 'int32', 'example' => '3'], + 'MinReplicas' => ['description' => '最小实例数。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + ], + ], + 'ScaleRuleName' => ['description' => '弹性伸缩策略名称。', 'type' => 'string', 'example' => 'test'], + 'EnableIdle' => ['description' => '是否开启闲置模式。', 'type' => 'boolean'], + ], + ], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '重启应用实例是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:重启成功。'."\n" + .'- **false**:重启失败。', 'type' => 'boolean', 'example' => 'true'], + ], ], - 'examples' => [], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 0,\\n \\"Data\\": {\\n \\"NextToken\\": \\"\\",\\n \\"WebCustomDomains\\": [\\n {\\n \\"accountId\\": \\"123xxxxxx\\",\\n \\"WebCertConfig\\": {\\n \\"CertName\\": \\"\\",\\n \\"Certificate\\": \\"\\",\\n \\"PrivateKey\\": \\"\\"\\n },\\n \\"CreatedTime\\": \\"2023-03-30T08:02:19Z\\",\\n \\"DefaultForwardingAppName\\": \\"appxxxxx\\",\\n \\"DomainName\\": \\"example.com\\",\\n \\"LastModifiedTime\\": \\"2023-03-30T08:02:19Z\\",\\n \\"NamespaceId\\": \\"\\",\\n \\"Protocol\\": \\"HTTP\\",\\n \\"WebTLSConfig\\": {\\n \\"CipherSuites\\": [\\n \\"\\"\\n ],\\n \\"MaxVersion\\": \\"\\",\\n \\"MinVersion\\": \\"\\"\\n },\\n \\"WebWAFConfig\\": {\\n \\"EnableWAF\\": true\\n },\\n \\"RouteConfig\\": {\\n \\"routes\\": [\\n {\\n \\"path\\": \\"\\",\\n \\"applicationName\\": \\"\\"\\n }\\n ]\\n }\\n }\\n ]\\n },\\n \\"Message\\": \\"\\",\\n \\"RequestId\\": \\"\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => '获取自定义域名列表', - 'description' => '获取自定义域名列表。', - ], - 'UpdateWebCustomDomain' => [ - 'summary' => '更新自定义域名。', - 'path' => '/pop/v2/api/web/custom-domains/{DomainName}', - 'methods' => [ - 'put', + 'errorCodes' => [ + 400 => [ + ['errorCode' => 'InvalidScalingRuleDate.BeginAfterEnd', 'errorMessage' => 'The specified beginning time is later than the ending time.', 'description' => '指定的开始时间晚于结束时间。'], + ['errorCode' => 'InvalidScalingRuleDate.Format', 'errorMessage' => 'The specified date is invalid.', 'description' => '指定的日期不合法。正确的格式为yyyy-MM-dd。'], + ['errorCode' => 'InvalidScalingRuleName.NotFound', 'errorMessage' => 'The specified ScalingRuleName does not exist.', 'description' => '指定的ScalingRuleName不存在。'], + ['errorCode' => 'InvalidScalingRuleTime.Conflict', 'errorMessage' => 'The specified scaling rule time is invalid. Another schedule has been set for the specified time range. Please set a different time.', 'description' => '指定的弹性策略时间无效。该时间段已设置过定时策略,请重新选择时间设置。'], + ['errorCode' => 'InvalidScalingRuleTime.Format', 'errorMessage' => 'The specified time is invalid.', 'description' => '指定的时间不合法。正确的格式为HH:mm。'], + ['errorCode' => 'QuotaExceeded.ScalingRuleTime', 'errorMessage' => 'The maximum number of scaling policy trigger time is exceeded.', 'description' => '弹性策略触发时间到达上限。'], + ['errorCode' => 'NoComputeResourceQuota.Exceed', 'errorMessage' => 'Your compute resource is insufficient. Please contact us to raise the quota.', 'description' => ''], + ['errorCode' => 'NoComputeResourceQuota.App.Exceed', 'errorMessage' => 'You can create %s instances for each application. Please submit a ticket to raise the quota.', 'description' => '每个应用只允许创建%s个实例,请加入钉群32874633联系技术产品专家进行咨询。'], + ['errorCode' => 'NoComputeResourceQuota.User.Exceed', 'errorMessage' => 'Your account is limited to create %s instances. Please submit a ticket to raise the quota.', 'description' => '您的账户限额%s个实例,请加入钉群32874633联系技术产品专家进行咨询。'], + ['errorCode' => 'System.Upgrading', 'errorMessage' => 'The system is being upgraded. Please try again later.', 'description' => '系统正在升级,请稍后操作。'], + ['errorCode' => 'MinReadyInstances.Not.Smaller.Replicas', 'errorMessage' => 'The minimum number of available instances must be less than the number of application instances.', 'description' => '最小可用实例数必须小于应用实例数。'], + ['errorCode' => 'MinReadyInstanceRatio.Invalid', 'errorMessage' => 'The ratio of minimum available instances must be between 0 and 100.', 'description' => '最小存活实例数比例值必须在0~100之间。'], + ['errorCode' => 'Application.ChangerOrderRunning', 'errorMessage' => 'An application change process is in progress. Please try again later.', 'description' => '应用有变更流程正在执行,请稍后重试。'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'title' => '修改弹性策略', + 'summary' => '更新应用弹性伸缩策略', + 'description' => '## 使用须知'."\n" + .'如果单个应用需要弹出超过50个实例,请联系SAE技术支持并申请白名单。更多信息,请参见[联系我们](~~146530~~)。', + 'changeSet' => [ + ['createdAt' => '2026-04-28T09:07:58.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-12-25T03:03:23.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2024-08-30T09:16:23.000Z', 'description' => '请求参数发生变更、响应参数发生变更'], + ['createdAt' => '2023-05-24T09:14:46.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2022-12-26T09:19:37.000Z', 'description' => '错误码发生变更'], + ['createdAt' => '2022-12-19T02:15:03.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2022-11-09T01:54:08.000Z', 'description' => '错误码发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '20', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdateApplicationScalingRule'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'sae:UpdateApplicationScalingRule', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => 'Application', 'arn' => 'acs:sae:{#regionId}:{#accountId}:application/{#namespaceid}/{#appid}'], + ], + ], + ], ], - 'tags' => [], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"Timer\\": {\\n \\"EndDate\\": \\"2021-04-25\\",\\n \\"BeginDate\\": \\"2021-03-25\\",\\n \\"Schedules\\": [\\n {\\n \\"AtTime\\": \\"08:00\\",\\n \\"TargetReplicas\\": 3,\\n \\"MinReplicas\\": 1,\\n \\"MaxReplicas\\": 10\\n }\\n ],\\n \\"Period\\": \\"* * *\\"\\n },\\n \\"UpdateTime\\": 1616642248938,\\n \\"AppId\\": \\"7171a6ca-d1cd-4928-8642-7d5cfe69****\\",\\n \\"CreateTime\\": 1616642248938,\\n \\"LastDisableTime\\": 1641882854484,\\n \\"ScaleRuleEnabled\\": true,\\n \\"ScaleRuleType\\": \\"timing\\",\\n \\"Metric\\": {\\n \\"Metrics\\": [\\n {\\n \\"MetricTargetAverageUtilization\\": 20,\\n \\"MetricType\\": \\"CPU\\",\\n \\"SlbProject\\": \\"test\\",\\n \\"SlbLogstore\\": \\"test\\",\\n \\"Vport\\": \\"80\\",\\n \\"SlbId\\": \\"lb-xxx\\"\\n }\\n ],\\n \\"MaxReplicas\\": 3,\\n \\"MinReplicas\\": 1\\n },\\n \\"ScaleRuleName\\": \\"test\\",\\n \\"EnableIdle\\": true\\n },\\n \\"Message\\": \\"success\\",\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<UpdateApplicationScalingRuleResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <Timer>\\n <EndDate>2021-04-25</EndDate>\\n <BeginDate>2021-03-25</BeginDate>\\n <Schedules>\\n <AtTime>08:00</AtTime>\\n <TargetReplicas>3</TargetReplicas>\\n <MinReplicas>1</MinReplicas>\\n <MaxReplicas>10</MaxReplicas>\\n </Schedules>\\n <Period>* * *</Period>\\n </Timer>\\n <UpdateTime>1616642248938</UpdateTime>\\n <AppId>7171a6ca-d1cd-4928-8642-7d5cfe69****</AppId>\\n <CreateTime>1616642248938</CreateTime>\\n <LastDisableTime>1641882854484</LastDisableTime>\\n <ScaleRuleEnabled>true</ScaleRuleEnabled>\\n <ScaleRuleType>timing</ScaleRuleType>\\n <Metric>\\n <Metrics>\\n <MetricTargetAverageUtilization>20</MetricTargetAverageUtilization>\\n <MetricType>CPU</MetricType>\\n <SlbProject>test</SlbProject>\\n <SlbLogstore>test</SlbLogstore>\\n <Vport>80</Vport>\\n <SlbId>lb-xxx</SlbId>\\n </Metrics>\\n <MaxReplicas>3</MaxReplicas>\\n <MinReplicas>1</MinReplicas>\\n </Metric>\\n <ScaleRuleName>test</ScaleRuleName>\\n </Data>\\n <Message>success</Message>\\n <Code>200</Code>\\n <Success>true</Success>\\n</UpdateApplicationScalingRuleResponse>","errorExample":""}]', + ], + 'UpdateApplicationVswitches' => [ + 'path' => '/pop/v1/sam/app/updateAppVswitches', + 'methods' => ['put'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'consumes' => [ - 'application/json', - ], - 'produces' => [ - 'application/json', - ], - 'operationType' => 'readAndWrite', + 'operationType' => 'write', + 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', - 'abilityTreeCode' => '225959', - 'abilityTreeNodes' => [ - 'FEATUREsae5U7VP0', - ], + 'abilityTreeCode' => '6398', + 'abilityTreeNodes' => ['FEATUREsaeRVPNSA'], ], 'parameters' => [ [ - 'name' => 'NamespaceId', + 'name' => 'AppId', 'in' => 'query', - 'allowEmptyValue' => false, - 'schema' => [ - 'title' => '命名空间ID', - 'description' => '命名空间ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****'], ], [ - 'name' => 'DomainName', - 'in' => 'path', - 'allowEmptyValue' => false, - 'schema' => [ - 'title' => '自定义域名名称', - 'description' => '自定义域名名称。', - 'type' => 'string', - 'required' => true, - 'example' => 'www.99zuowen.com', - ], + 'name' => 'VSwitchId', + 'in' => 'query', + 'schema' => ['description' => '交换机ID。', 'type' => 'string', 'required' => true, 'example' => 'vsw-2ze559r1z1bpwqxwp****'], ], [ - 'name' => 'body', - 'in' => 'body', - 'allowEmptyValue' => false, - 'schema' => [ - 'title' => '自定义域名信息', - 'description' => '自定义域名信息。', - 'required' => true, - '$ref' => '#/components/schemas/UpdateWebCustomDomainInput', - ], + 'name' => 'Deploy', + 'in' => 'query', + 'schema' => ['description' => '是否立即部署。取值说明如下:'."\n" + ."\n" + .'- **true**:默认值,立即部署。'."\n" + .'- **false**:稍后部署。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], + ], + [ + 'name' => 'MinReadyInstances', + 'in' => 'query', + 'schema' => ['description' => '最小存活实例数。', 'type' => 'integer', 'format' => 'int32', 'required' => false], + ], + [ + 'name' => 'MinReadyInstanceRatio', + 'in' => 'query', + 'schema' => ['description' => '最小存活实例数百分比。', 'type' => 'integer', 'format' => 'int32', 'required' => false], ], ], 'responses' => [ 200 => [ - 'description' => 'OK', 'schema' => [ - 'title' => 'OK', - 'description' => 'OK.', - 'required' => false, - '$ref' => '#/components/schemas/WebCustomDomainBody', + 'description' => '返回信息。', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '获取应用列表。取值说明如下:'."\n" + ."\n" + .'- **true**:获取成功。'."\n" + .'- **false**:获取失败。', 'type' => 'boolean', 'example' => 'true'], + ], ], - 'examples' => [], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 0,\\n \\"Data\\": {\\n \\"accountId\\": \\"123xxxxxx\\",\\n \\"WebCertConfig\\": {\\n \\"CertName\\": \\"\\",\\n \\"Certificate\\": \\"\\",\\n \\"PrivateKey\\": \\"\\"\\n },\\n \\"CreatedTime\\": \\"2023-03-30T08:02:19Z\\",\\n \\"DefaultForwardingAppName\\": \\"appxxxxx\\",\\n \\"DomainName\\": \\"example.com\\",\\n \\"LastModifiedTime\\": \\"2023-03-30T08:02:19Z\\",\\n \\"NamespaceId\\": \\"\\",\\n \\"Protocol\\": \\"HTTP\\",\\n \\"WebTLSConfig\\": {\\n \\"CipherSuites\\": [\\n \\"\\"\\n ],\\n \\"MaxVersion\\": \\"\\",\\n \\"MinVersion\\": \\"\\"\\n },\\n \\"WebWAFConfig\\": {\\n \\"EnableWAF\\": true\\n },\\n \\"RouteConfig\\": {\\n \\"routes\\": [\\n {\\n \\"path\\": \\"\\",\\n \\"applicationName\\": \\"\\"\\n }\\n ]\\n }\\n },\\n \\"Message\\": \\"\\",\\n \\"RequestId\\": \\"\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => '更新自定义域名', - 'description' => '更新自定义域名。', - ], - 'DeleteWebCustomDomain' => [ - 'summary' => '删除自定义域名。', - 'path' => '/pop/v2/api/web/custom-domains/{DomainName}', - 'methods' => [ - 'delete', + 'errorCodes' => [ + 400 => [ + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidApplication.NotFound', 'errorMessage' => 'The current application does not exist.', 'description' => '找不到当前应用。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => '更新交换机配置', + 'summary' => '更新交换机配置。', + 'changeSet' => [ + ['createdAt' => '2025-12-29T02:31:16.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2025-12-25T08:23:20.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-12-25T03:03:23.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-11-26T04:57:28.000Z', 'description' => '请求参数发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdateApplicationVswitches'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'sae:UpdateApplicationVswitches', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], - 'tags' => [], + ], + 'UpdateConfigMap' => [ + 'path' => '/pop/v1/sam/configmap/configMap', + 'methods' => ['put'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'consumes' => [ - 'application/json', - ], - 'produces' => [ - 'application/json', - ], - 'operationType' => 'readAndWrite', + 'operationType' => 'write', + 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'delete', - 'abilityTreeCode' => '225941', - 'abilityTreeNodes' => [ - 'FEATUREsae5U7VP0', - ], + 'operationType' => 'update', + 'abilityTreeCode' => '6400', + 'abilityTreeNodes' => ['FEATUREsaeD9PL61'], ], 'parameters' => [ [ - 'name' => 'NamespaceId', + 'name' => 'ConfigMapId', 'in' => 'query', - 'allowEmptyValue' => false, - 'schema' => [ - 'title' => '命名空间ID', - 'description' => '命名空间ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-shanghai', - ], + 'schema' => ['description' => '需要更新的ConfigMap实例ID。需要调用[ListNamespacedConfigMaps](~~176917~~)接口查看。', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1'], ], [ - 'name' => 'DomainName', - 'in' => 'path', - 'allowEmptyValue' => false, + 'name' => 'Data', + 'in' => 'body', + 'style' => 'json', 'schema' => [ - 'title' => '自定义域名名称', - 'description' => '自定义域名名称。', - 'type' => 'string', - 'required' => true, - 'example' => 'admin.pupumall.com', + 'description' => 'ConfigMap数据。', + 'type' => 'object', + 'properties' => [ + 'Data' => ['description' => 'ConfigMap键值对数据,JSON格式。格式如下:'."\n" + ."\n" + .'{"Data":"{\\"k1\\":\\"v1\\", \\"k2\\":\\"v2\\"}"}'."\n" + ."\n" + .'k表示键,v表示值。关于配置项的更多信息,请参见[管理和使用配置项](~~171326~~)。', 'type' => 'string', 'required' => true, 'example' => '{"env.shell": "/bin/sh"}'], + ], + 'required' => false, + 'example' => '{"env.home": "/root", "env.shell": "/bin/sh"}', ], ], + [ + 'name' => 'Description', + 'in' => 'query', + 'schema' => ['description' => '描述信息。', 'type' => 'string', 'required' => false, 'example' => 'test-desc'], + ], ], 'responses' => [ 200 => [ - 'description' => 'No Content', 'schema' => [ - 'description' => '请求消息体。', - '$ref' => '#/components/schemas/WebCustomDomainBody', + 'description' => '返回数据。', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '调用结果的附加信息。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], + 'Data' => [ + 'description' => '返回结果。', + 'type' => 'object', + 'properties' => [ + 'ConfigMapId' => ['description' => 'ConfigMap实例ID。', 'type' => 'string', 'example' => '1'], + ], + ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '更新ConfigMap实例是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:更新成功。'."\n" + .'- **false**:更新失败。', 'type' => 'boolean', 'example' => 'true'], + ], ], - 'examples' => [], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 0,\\n \\"Data\\": {\\n \\"accountId\\": \\"123xxxxxx\\",\\n \\"WebCertConfig\\": {\\n \\"CertName\\": \\"\\",\\n \\"Certificate\\": \\"\\",\\n \\"PrivateKey\\": \\"\\"\\n },\\n \\"CreatedTime\\": \\"2023-03-30T08:02:19Z\\",\\n \\"DefaultForwardingAppName\\": \\"appxxxxx\\",\\n \\"DomainName\\": \\"example.com\\",\\n \\"LastModifiedTime\\": \\"2023-03-30T08:02:19Z\\",\\n \\"NamespaceId\\": \\"\\",\\n \\"Protocol\\": \\"HTTP\\",\\n \\"WebTLSConfig\\": {\\n \\"CipherSuites\\": [\\n \\"\\"\\n ],\\n \\"MaxVersion\\": \\"\\",\\n \\"MinVersion\\": \\"\\"\\n },\\n \\"WebWAFConfig\\": {\\n \\"EnableWAF\\": true\\n },\\n \\"RouteConfig\\": {\\n \\"routes\\": [\\n {\\n \\"path\\": \\"\\",\\n \\"applicationName\\": \\"\\"\\n }\\n ]\\n }\\n },\\n \\"Message\\": \\"\\",\\n \\"RequestId\\": \\"\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => '删除自定义域名', - 'description' => '删除自定义域名。', - ], - 'ListWebApplicationInstances' => [ - 'summary' => '查看Web应用实例列表。', - 'path' => '/pop/v2/api/web/applications-observability/{ApplicationId}/instances', - 'methods' => [ - 'get', + 'errorCodes' => [ + 400 => [ + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], + ['errorCode' => 'NotFound.ConfigMap', 'errorMessage' => 'The ConfigMap object (ID: %s) does not exist.', 'description' => '找不到ConfigMap对象(ID=%s)。'], + ['errorCode' => 'TooMany.Configmap', 'errorMessage' => 'The maximum number of keys or the maximum length of Configmap is exceeded.', 'description' => 'Configmap的key数量,或者内容长度超过最大限制。'], + ], + 500 => [ + ['errorCode' => 'OperationFailed.RPCError', 'errorMessage' => 'Internal RPC request processing error.', 'description' => '内部RPC请求处理报错。'], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"ConfigMapId\\": \\"1\\"\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<UpdateConfigMapResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <ConfigMapId>1</ConfigMapId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</UpdateConfigMapResponse>","errorExample":""}]', + 'title' => '更新ConfigMap实例', + 'summary' => '更新ConfigMap实例。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:23.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2021-11-25T02:53:56.000Z', 'description' => '请求参数发生变更'], ], - 'schemes' => [ - 'http', - 'https', + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdateConfigMap'], + ], ], - 'tags' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'sae:UpdateConfigMap', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], + ], + ], + 'UpdateGreyTagRoute' => [ + 'summary' => '更新灰度规则。', + 'path' => '/pop/v1/sam/tagroute/greyTagRoute', + 'methods' => ['put'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'consumes' => [ - 'application/json', - ], - 'produces' => [ - 'application/json', - ], 'operationType' => 'readAndWrite', + 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'list', - 'abilityTreeCode' => '225949', - 'abilityTreeNodes' => [ - 'FEATUREsaeUWY6ZL', - ], + 'operationType' => 'update', + 'abilityTreeCode' => '10391', + 'abilityTreeNodes' => ['FEATUREsaeETR3ZD'], ], 'parameters' => [ [ - 'name' => 'NamespaceId', + 'name' => 'Description', 'in' => 'query', - 'allowEmptyValue' => false, - 'schema' => [ - 'title' => '命名空间ID', - 'description' => '命名空间ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['title' => '规则名称', 'description' => '规则描述。', 'type' => 'string', 'required' => false, 'example' => 'Canary release - region-based'], ], [ - 'name' => 'ApplicationId', - 'in' => 'path', - 'allowEmptyValue' => false, - 'schema' => [ - 'title' => '应用ID', - 'description' => '应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '614a6500-fddb-464d-a549-408a07******', - ], + 'name' => 'ScRules', + 'in' => 'query', + 'schema' => ['title' => 'SpringCloud规则', 'description' => 'Spring Cloud应用的灰度规则。', 'type' => 'string', 'required' => false, 'example' => '[{"condition":"OR","items":[{"cond":"==","name":"grey","operator":"rawvalue","type":"param","value":"true"},{"cond":"==","name":"grey","operator":"rawvalue","type":"cookie","value":"true"},{"cond":"==","name":"grey","operator":"rawvalue","type":"header","value":"true"}],"path":"/post-echo/hi"}]'], ], [ - 'name' => 'InstanceIds', + 'name' => 'DubboRules', 'in' => 'query', - 'style' => 'json', - 'schema' => [ - 'description' => '实例ID。', - 'type' => 'array', - 'items' => [ - 'description' => '实例ID。可填写多个实例ID,用英文逗号(,)分隔。', - 'type' => 'string', - 'required' => false, - 'example' => 'c-668727a8-17d86664-41e5bb******,c-668727a8-17d86664-7e4958******', - ], - 'required' => false, - 'example' => 'c-667d143a-17b4e0fa-46d3a2******', - ], + 'schema' => ['title' => 'Dubbo规则', 'description' => 'Dubbo应用的灰度规则。', 'type' => 'string', 'required' => false, 'example' => '[{"condition":"OR","group":"DUBBO","items":[{"cond":"==","expr":".key1","index":0,"operator":"rawvalue","value":"value1"},{"cond":"==","expr":".key2","index":0,"operator":"rawvalue","value":"value2"}],"methodName":"echo","serviceName":"com.alibaba.edas.boot.EchoService","version":"1.0.0"}]'], ], [ - 'name' => 'VersionIds', + 'name' => 'GreyTagRouteId', 'in' => 'query', - 'style' => 'json', - 'schema' => [ - 'description' => '应用版本ID。', - 'type' => 'array', - 'items' => [ - 'description' => '凭据的版本信息列表。', - 'type' => 'string', - 'required' => false, - 'example' => '001', - ], - 'required' => false, - 'example' => '001', - ], + 'schema' => ['title' => '规则ID', 'description' => '灰度规则ID。', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1'], ], [ - 'name' => 'Statuses', + 'name' => 'AlbRules', 'in' => 'query', - 'style' => 'json', + 'schema' => ['description' => 'Alb网关路由的灰度规则。', 'type' => 'string', 'required' => false, 'example' => '[{"condition":"AND","items":[{"cond":"==","name":"grey","operator":"rawvalue","type":"sourceIp","value":"127.0.0.1"},{"cond":"==","name":"grey","operator":"rawvalue","type":"cookie","value":"true"},{"cond":"==","name":"grey","operator":"rawvalue","type":"header","value":"true"}],"path":"/post-echo/hi"}]'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '应用实例状态。', - 'type' => 'array', - 'items' => [ - 'description' => '应用实例状态:'."\n" + 'description' => '返回数据。', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '9D29CBD0-45D3-410B-9826-52F86F90****'], + 'Message' => ['description' => '调用结果的附加信息。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], + 'Data' => [ + 'description' => '灰度规则信息。', + 'type' => 'object', + 'properties' => [ + 'GreyTagRouteId' => ['description' => '灰度规则ID,全局唯一。', 'type' => 'integer', 'format' => 'int64', 'example' => '1'], + ], + ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" ."\n" - .'- Busy:表示正在处理请求。'."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" ."\n" - .'- Idle:表示实例已准备就绪,处于待命状态。', - 'type' => 'string', - 'required' => false, - 'example' => 'Busy', + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '查询变更单信息是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:表示查询成功。'."\n" + .'- **false**:表示查询失败。', 'type' => 'boolean', 'example' => 'true'], ], - 'required' => false, - 'example' => '运行中', - ], - ], - [ - 'name' => 'Limit', - 'in' => 'query', - 'schema' => [ - 'description' => '返回的实例数量。', - 'type' => 'string', - 'required' => false, - 'example' => '10', ], ], - [ - 'name' => 'StartTime', - 'in' => 'query', - 'schema' => [ - 'description' => '任务的创建时间。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '1562831689704', - ], + ], + 'errorCodes' => [ + 400 => [ + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], + ['errorCode' => 'Application.ChangerOrderRunning', 'errorMessage' => 'An application change process is in progress. Please try again later.', 'description' => '应用有变更流程正在执行,请稍后重试。'], ], - [ - 'name' => 'EndTime', - 'in' => 'query', - 'schema' => [ - 'description' => '操作结束时间。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '1715567192', - ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"9D29CBD0-45D3-410B-9826-52F86F90****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"GreyTagRouteId\\": 1\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<UpdateGreyTagRouteResponse>\\n <RequestId>9D29CBD0-45D3-410B-9826-52F86F90****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <GreyTagRouteId>1</GreyTagRouteId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</UpdateGreyTagRouteResponse>","errorExample":""}]', + 'title' => 'UpdateGreyTagRoute', + 'requestParamsDescription' => '- **ScRules参数说明**'."\n" + ."\n" + .'|参数名称 |类型|示例 |描述 |'."\n" + .'| --- | --- | --- | --- |'."\n" + .'|condition|String|OR |灰度规则的条件模式,取值说明如下:<br />- **AND**:表示与,即同时满足条件列表中的所有条件。<br />- **OR**:表示或,即满足条件列表中的任一条件。|'."\n" + .'|path|String | /path|Spring Cloud应用灰度规则对应的路径。|'."\n" + .'|items |Array of items | |条件列表。|'."\n" + ."\n" + .'**items参数说明**'."\n" + ."\n" + .'|参数名称 |类型|示例 |描述 |'."\n" + .'| --- | --- | --- | --- |'."\n" + .'|name|String|test |参数名。|'."\n" + .'|cond |String | == |比较操作符。可取值:**>**、**<**、**>=**、**<=**、**==**以及**!=**。|'."\n" + .'|type | String| cookie |比较类型,取值说明如下:<br />- **param**:表示Parameter。<br />- **cookie**:表示Cookie。<br />- **header**:表示Header。 |'."\n" + .'|value|String | test|参数取值,根据**type**和**name**得到的值跟这个值进行比较。|'."\n" + .'|operator| String| rawvalue|运算符,取值说明如下:<br />- **rawvalue**:表示直接比较。<br />- **list**:表示白名单。<br />- **mod**:表示对100取模。<br />- **deterministic\\_proportional\\_steaming\\_division**:表示百分比。|'."\n" + ."\n" + .'- **DubboRules参数说明**'."\n" + ."\n" + .'|参数名称 |类型|示例 |描述 |'."\n" + .'| --- | --- | --- | --- |'."\n" + .'|condition|String|OR |灰度规则的条件模式,取值说明如下:<br />- **AND**:表示与,即同时满足条件列表中的所有条件。<br />- **OR**:表示或,即满足条件列表中的任一条件。|'."\n" + .'|methodName|String | echo|Dubbo服务的方法名。|'."\n" + .'|serviceName| String| com.alibaba.edas.boot.EchoService|Dubbo服务名称。|'."\n" + .'|version |String | 1.0.0|Dubbo服务版本。|'."\n" + .'|items |Array of items | |条件列表。|'."\n" + .'|group|String|DUBBO|灰度规则对应的Dubbo服务的分组。|'."\n" + ."\n" + .'**items参数说明**'."\n" + ."\n" + .'|参数名称 |类型|示例 |描述 |'."\n" + .'| --- | --- | --- | --- |'."\n" + .'|index|Integer|0 |参数编号,0表示第一个参数。|'."\n" + .'|expr|String|.name|参数值获取表达式。取值说明如下:<br />- **留空**:表示直接取当前参数的值。<br />- **.name**:表示取参数的name属性,相当于args0.getName()。<br />- **.isEnabled()** :表示取参数的enabled属性,相当于args0.isEnabled()。<br />- **[0]**:表示当前参数应是一个数组,取数组的第一个值,相当于args0[0],注意开始没有英文句点(.)。<br />- **.get(0)**:表示当前参数应是一个List,取List的第一个值,相当于args0.get(0)。<br />- **.get("key")**:表示当前参数是一个Map,获取key对应的值,相当于args0.get("key")。|'."\n" + .'|cond |String | == |比较操作符。可取值:**>**、**<**、**>=**、**<=**、**==**以及**!=**。|'."\n" + .'|value|String | test|参数取值,根据**expr**和**index**得到的值跟这个值进行比较。|'."\n" + .'|operator| String| rawvalue|运算符,取值说明如下:<br />- **rawvalue**:表示直接比较。<br />- **list**:表示白名单。<br />- **mod**:表示对100取模。<br />- **deterministic\\_proportional\\_steaming\\_division**:表示百分比。|', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:23.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2022-12-29T03:14:27.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2021-11-16T02:00:05.000Z', 'description' => '错误码发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdateGreyTagRoute'], ], ], - 'responses' => [ - 200 => [ - 'description' => '返回信息', - 'schema' => [ - 'title' => '返回信息', - 'description' => '返回信息。', - 'required' => false, - '$ref' => '#/components/schemas/ListWebApplicationInstancesBody', + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'sae:UpdateGreyTagRoute', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], - 'examples' => [], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 0,\\n \\"Data\\": {\\n \\"WebInstances\\": [\\n {\\n \\"InstanceId\\": \\"c-66691780-1522405d-3021e147e0c3\\",\\n \\"VersionId\\": \\"1\\",\\n \\"ImageUrl\\": \\"\\",\\n \\"Status\\": \\"\\"\\n }\\n ],\\n \\"CurrentError\\": \\"\\",\\n \\"WebVersionStatus\\": {\\n \\"key\\": {\\n \\"ErrorMessage\\": \\"\\",\\n \\"Status\\": \\"\\"\\n }\\n }\\n },\\n \\"Message\\": \\"\\",\\n \\"RequestId\\": \\"\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => '查看Web应用实例列表', - 'description' => '查看Web应用实例列表。', ], - 'DescribeWebInstanceLogs' => [ - 'summary' => '获取Web应用实例日志。', - 'path' => '/pop/v2/api/web/applications-observability/{ApplicationId}/instances/{InstanceId}/logs', - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'tags' => [], + 'UpdateIngress' => [ + 'path' => '/pop/v1/sam/ingress/Ingress', + 'methods' => ['put'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'consumes' => [ - 'application/json', - ], - 'produces' => [ - 'application/json', - ], - 'operationType' => 'readAndWrite', + 'operationType' => 'write', + 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '225948', - 'abilityTreeNodes' => [ - 'FEATUREsaeWFLA5T', - ], + 'operationType' => 'update', + 'abilityTreeCode' => '6401', + 'abilityTreeNodes' => ['FEATUREsaeBRTWZ3'], ], 'parameters' => [ [ - 'name' => 'NamespaceId', + 'name' => 'IngressId', 'in' => 'query', - 'allowEmptyValue' => false, - 'schema' => [ - 'title' => '命名空间ID', - 'description' => '命名空间ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-shanghai', - ], + 'schema' => ['description' => '路由规则ID。', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '87'], ], [ - 'name' => 'ApplicationId', - 'in' => 'path', - 'allowEmptyValue' => false, - 'schema' => [ - 'title' => '应用ID', - 'description' => '应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '7e41aff0-9eca-45c9-ac48-675e09******', - ], + 'name' => 'CertId', + 'in' => 'query', + 'schema' => ['description' => '**CLB**证书ID。取值说明如下:'."\n" + ."\n" + .'- **LoadBalanceType**为**clb**时,使用该字段来配置HTTPS监听证书。'."\n" + ."\n" + .'CLB使用SSL证书ID的更多信息,请参见[管理证书(CLB)](~~90792~~)。', 'type' => 'string', 'required' => false, 'example' => '188077086902****_176993d****_181437****_108724****'], ], [ - 'name' => 'InstanceId', - 'in' => 'path', - 'allowEmptyValue' => false, - 'schema' => [ - 'title' => '应用实例ID', - 'description' => '应用实例ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'c-667b71bc-185b1067-5d99255c3abd', - ], - ], - ], - 'responses' => [ - 200 => [ - 'description' => '返回信息', - 'schema' => [ - 'title' => '返回信息', - 'description' => '返回信息。', - 'required' => false, - '$ref' => '#/components/schemas/WebApplicationInstanceLogsBody', - ], - 'examples' => [], + 'name' => 'CertIds', + 'in' => 'query', + 'schema' => ['description' => '**ALB**多证书ID。取值说明如下:'."\n" + ."\n" + .'- **LoadBalanceType**为**alb**时,使用该字段来配置HTTPS监听多证书,多个证书ID之间使用逗号分割。'."\n" + ."\n" + .'- ALB使用的SSL证书ID需要从数字证书产品获取。例如配置`756***-cn-hangzhou`,`756***`为产品页获取的证书ID, `-cn-hangzhou`为固定后缀。更多信息,请参见[管理证书(ALB)](~~209076~~)。', 'type' => 'string', 'required' => false, 'example' => '87***35-cn-hangzhou,812***3-cn-hangzhou'], ], - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 0,\\n \\"Data\\": {\\n \\"WebLogEntrys\\": [\\n {\\n \\"Message\\": \\"\\"\\n }\\n ]\\n },\\n \\"Message\\": \\"\\",\\n \\"RequestId\\": \\"\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => '获取Web应用实例日志', - 'description' => '获取Web应用实例日志。', - ], - 'DescribeWebApplicationResourceStatics' => [ - 'summary' => '获取Web应用资源用量统计。', - 'path' => '/pop/v2/api/web/applications-observability/{ApplicationId}/resource', - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'tags' => [], - 'security' => [ [ - 'AK' => [], + 'name' => 'Description', + 'in' => 'query', + 'schema' => ['description' => '路由规则名称。', 'type' => 'string', 'required' => false, 'example' => 'ingress-sae-test'], ], - ], - 'consumes' => [ - 'application/json', - ], - 'produces' => [ - 'application/json', - ], - 'operationType' => 'readAndWrite', - 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '225943', - 'abilityTreeNodes' => [ - 'FEATUREsae1X6KNP', + [ + 'name' => 'ListenerPort', + 'in' => 'query', + 'schema' => ['description' => 'SLB监听端口,该端口不能被占用。', 'type' => 'string', 'required' => false, 'example' => '443'], ], - ], - 'parameters' => [ [ - 'name' => 'NamespaceId', + 'name' => 'DefaultRule', 'in' => 'query', - 'allowEmptyValue' => false, - 'schema' => [ - 'title' => '命名空间ID', - 'description' => '命名空间ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => '默认转发规则。按照IP地址,通过指定端口转发流量到指定应用。参数说明如下:'."\n" + ."\n" + .'- **appId**:应用ID。'."\n" + .'- **containerPort**:应用实例端口。'."\n" + ."\n" + .'> 所有未匹配或不满足**Rules**转发规则的请求都会转到该指定应用。', 'type' => 'string', 'required' => false, 'example' => '{"appId":"395b60e4-0550-458d-9c54-a265d036****","containerPort":8080}'], ], [ - 'name' => 'ApplicationId', - 'in' => 'path', - 'allowEmptyValue' => false, - 'schema' => [ - 'title' => '应用ID', - 'description' => '应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '7e41aff0-9eca-45c9-ac48-675e09******', - ], + 'name' => 'Rules', + 'in' => 'formData', + 'schema' => ['description' => '转发规则。按照域名和请求路径,通过指定端口转发流量到指定应用。参数说明如下:'."\n" + ."\n" + .'- **appId**:应用ID。'."\n" + .'- **containerPort**:应用实例端口。'."\n" + .'- **domain**:域名。'."\n" + .'- **path**:请求路径。'."\n", 'type' => 'string', 'required' => false, 'example' => '[{"appId":"395b60e4-0550-458d-9c54-a265d036****","containerPort":8080,"domain":"www.sae.site","path":"/path1"},{"appId":"666403ce-d25b-47cf-87fe-497565d2****","containerPort":8080,"domain":"sae.site","path":"/path2"}]'], ], [ - 'name' => 'RegionId', + 'name' => 'LoadBalanceType', 'in' => 'query', - 'schema' => [ - 'description' => '地域ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-beijing', - ], + 'schema' => ['description' => '废弃参数,已不支持更新。', 'type' => 'string', 'required' => false, 'example' => 'clb'], ], [ - 'name' => 'StartTime', + 'name' => 'ListenerProtocol', 'in' => 'query', - 'schema' => [ - 'description' => '任务的创建时间。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '1562831689704', - ], + 'schema' => ['description' => '请求转发协议。取值说明如下:'."\n" + ."\n" + .'- **HTTP**:适用于需要对数据内容进行识别的应用。'."\n" + .'- **HTTPS**:适用于需要加密传输的应用。', 'type' => 'string', 'required' => false, 'example' => 'HTTP'], ], [ - 'name' => 'EndTime', + 'name' => 'RequestTimeout', 'in' => 'query', - 'schema' => [ - 'description' => '获取数据结束时间。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '1687832980387', - ], + 'schema' => ['title' => '指定请求超时时间。单位:秒。'."\n" + ."\n" + .'取值:1~180。'."\n" + ."\n" + .'默认值:60。'."\n" + ."\n" + .'如果在超时时间内后端服务器一直没有响应,负载均衡将放弃等待,并给客户端返回HTTP 504错误码。', 'description' => '请求超时事件,单位秒(s)。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '60'], ], - ], - 'responses' => [ - 200 => [ - 'description' => '返回信息', - 'schema' => [ - 'title' => '返回信息', - 'description' => '返回信息。', - 'required' => false, - '$ref' => '#/components/schemas/WebApplicationResourceStaticsBody', - ], - 'examples' => [], - ], - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 0,\\n \\"Data\\": {\\n \\"Length\\": 0,\\n \\"WebAppStatics\\": [\\n {\\n \\"CpuUsage\\": 0,\\n \\"Invocations\\": 0,\\n \\"InternetTrafficOut\\": 0,\\n \\"MemoryUsage\\": 0\\n }\\n ]\\n },\\n \\"Message\\": \\"\\",\\n \\"RequestId\\": \\"\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => '获取Web应用资源用量统计', - 'description' => '获取Web应用资源用量统计。', - ], - 'CreateJob' => [ - 'path' => '/pop/v1/sam/job/createJob', - 'methods' => [ - 'post', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ [ - 'AK' => [], - ], - ], - 'operationType' => 'readAndWrite', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'create', - 'abilityTreeCode' => '100729', - 'abilityTreeNodes' => [ - 'FEATUREsaeN5OIM9', + 'name' => 'SecurityPolicyId', + 'in' => 'query', + 'schema' => ['title' => '安全策略 ID。支持系统安全策略和自定义安全策略。'."\n" + .'说明'."\n" + .'仅 HTTPS 监听支持此参数。', 'description' => '安全策略实例 ID。', 'type' => 'string', 'required' => false, 'example' => 'tls_cipher_policy_1_2_strict_with_1_3'], ], - ], - 'parameters' => [ [ - 'name' => 'AppName', + 'name' => 'IdleTimeout', 'in' => 'query', - 'schema' => [ - 'description' => '任务模板名称。允许数字、字母以及短划线(-)组合。必须以字母开始,不超过36个字符。', - 'type' => 'string', - 'required' => true, - 'example' => 'test', - ], + 'schema' => ['title' => '指定连接空闲超时时间。单位:秒。'."\n" + ."\n" + .'取值范围:1~60。'."\n" + ."\n" + .'默认值:15。'."\n" + ."\n" + .'如果在超时时间内一直没有访问请求,负载均衡会暂时中断当前连接,直到一下次请求来临时重新建立新的连接。', 'description' => '空闲连接超时时间,单位秒(s)。'."\n" + .'> 取值为0,表示使用默认的空闲超时值。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '15'], ], [ - 'name' => 'NamespaceId', + 'name' => 'EnableXForwardedFor', 'in' => 'query', - 'schema' => [ - 'description' => 'SAE命名空间ID。仅支持名称为小写字母加短划线(-)的命名空间,必须以字母开始。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-beijing:test', - ], + 'schema' => ['description' => '是否开启通过X-Forwarded-For头字段获取来访者客户端IP。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], [ - 'name' => 'AppDescription', + 'name' => 'EnableXForwardedForClientSrcPort', 'in' => 'query', - 'schema' => [ - 'description' => '任务模板描述信息。不超过1024个字符。', - 'type' => 'string', - 'required' => false, - 'example' => 'This is a test description.', - ], + 'schema' => ['description' => '是否通过X-Forwarded-Port头字段获取负载均衡实例的监听端口。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], [ - 'name' => 'VpcId', + 'name' => 'EnableXForwardedForProto', 'in' => 'query', - 'schema' => [ - 'description' => 'SAE命名空间对应的VPC。在SAE中,一个命名空间只能对应一个VPC,且不能修改。第一次在命名空间内创建SAE任务模板将形成绑定关系。多个命名空间可以对应一个VPC。不填则默认为命名空间绑定的VPC ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'vpc-bp1aevy8sofi8mh1q****', - ], + 'schema' => ['description' => '是否通过X-Forwarded-Proto头字段获取负载均衡实例的监听协议。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], [ - 'name' => 'VSwitchId', + 'name' => 'EnableXForwardedForSlbId', 'in' => 'query', - 'schema' => [ - 'description' => '任务实例弹性网卡所在的虚拟交换机。该交换机必须位于上述VPC内。该交换机与SAE命名空间同样存在绑定关系。不填则默认为命名空间绑定的vSwitch ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'vsw-bp12mw1f8k3jgygk9****', - ], + 'schema' => ['description' => '是否通过SLB-ID头字段获取负载均衡实例ID。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], [ - 'name' => 'PackageType', + 'name' => 'EnableXForwardedForSlbPort', 'in' => 'query', - 'schema' => [ - 'description' => '任务包类型。取值说明如下:'."\n" - ."\n" - .'- 当您选择用Java部署时,支持**FatJar**、**War**和**Image**。'."\n" - .'- 当您选择用PHP部署时,支持类型如下:'."\n" - .' - **PhpZip**'."\n" - .' - **IMAGE\\_PHP\\_5\\_4**'."\n" - .' - **IMAGE\\_PHP\\_5\\_4\\_ALPINE**'."\n" - .' - **IMAGE\\_PHP\\_5\\_5**'."\n" - .' - **IMAGE\\_PHP\\_5\\_5\\_ALPINE**'."\n" - .' - **IMAGE\\_PHP\\_5\\_6**'."\n" - .' - **IMAGE\\_PHP\\_5\\_6\\_ALPINE**'."\n" - .' - **IMAGE\\_PHP\\_7\\_0**'."\n" - .' - **IMAGE\\_PHP\\_7\\_0\\_ALPINE**'."\n" - .' - **IMAGE\\_PHP\\_7\\_1**'."\n" - .' - **IMAGE\\_PHP\\_7\\_1\\_ALPINE**'."\n" - .' - **IMAGE\\_PHP\\_7\\_2**'."\n" - .' - **IMAGE\\_PHP\\_7\\_2\\_ALPINE**'."\n" - .' - **IMAGE\\_PHP\\_7\\_3**'."\n" - .' - **IMAGE\\_PHP\\_7\\_3\\_ALPINE**'."\n" - .'- 当您选择用**Python**部署时,支持**PythonZip**和**Image**。', - 'type' => 'string', - 'required' => true, - 'example' => 'FatJar', - ], + 'schema' => ['description' => '是否通过X-Forwarded-Port头字段获取负载均衡实例的监听端口。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], [ - 'name' => 'PackageVersion', + 'name' => 'CorsConfig', 'in' => 'query', - 'schema' => [ - 'description' => '部署包的版本号。当**Package Type**为**FatJar**、**War**或**PythonZip**时必填。'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '1.0.1', - ], + 'schema' => ['description' => '跨域配置', 'type' => 'string', 'required' => false, 'example' => '{\\"Enable\\":\\"true\\"}'], ], [ - 'name' => 'PackageUrl', + 'name' => 'EnableGzip', 'in' => 'query', + 'schema' => ['description' => '是否开启数据压缩', 'type' => 'boolean', 'required' => false, 'example' => 'true'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '部署包地址。当**Package Type**为**FatJar**、**War**或**PythonZip**时必填。'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'http://myoss.oss-cn-hangzhou.aliyuncs.com/my-buc/2019-06-30/****.jar', + 'description' => '返回数据。', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], + 'Data' => [ + 'description' => '返回结果。', + 'type' => 'object', + 'properties' => [ + 'IngressId' => ['description' => '路由规则ID。', 'type' => 'integer', 'format' => 'int64', 'example' => '87'], + ], + ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '更新Ingress实例配置是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:更新成功。'."\n" + .'- **false**:更新失败。', 'type' => 'boolean', 'example' => 'true'], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], + ['errorCode' => 'Exceed.IngressRule', 'errorMessage' => 'The number of Ingress related rules must be less than or equal to 40.', 'description' => 'Ingress配置对应规则不可超过40条。'], + ['errorCode' => 'SlbListenerPort.NotAvailable', 'errorMessage' => 'The SLB listening port is unavailable: slbId [%s], port [%s]', 'description' => 'SLB监听端口被占用:slbId[%s], port[%s]。'], + ['errorCode' => 'SSLCert.NotFound', 'errorMessage' => 'The specified SSL certificate cannot be found.', 'description' => '找不到对应的SSL证书。'], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"IngressId\\": 87\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<UpdateIngressResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <IngressId>87</IngressId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</UpdateIngressResponse>","errorExample":""}]', + 'title' => '更新ingress实例配置', + 'summary' => '更新Ingress实例配置。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:23.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-10-24T08:31:04.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2025-03-21T02:11:42.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2024-10-29T08:50:17.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2024-09-11T08:44:35.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2024-08-21T01:31:17.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2022-12-02T02:40:58.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2021-11-16T02:00:05.000Z', 'description' => '错误码发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdateIngress'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'sae:UpdateIngress', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], + ], + ], + 'UpdateJob' => [ + 'path' => '/pop/v1/sam/job/updateJob', + 'methods' => ['post'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'ImageUrl', + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '100734', + 'abilityTreeNodes' => ['FEATUREsaeN5OIM9'], + ], + 'parameters' => [ + [ + 'name' => 'AppId', 'in' => 'query', - 'schema' => [ - 'description' => '镜像地址。当**Package Type**为**Image**时必填。', - 'type' => 'string', - 'required' => false, - 'example' => 'registry.cn-hangzhou.aliyuncs.com/sae_test/ali_sae_test:0.0.1', - ], + 'schema' => ['description' => '需要更新的任务模板ID。', 'type' => 'string', 'required' => true, 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****'], ], [ 'name' => 'Jdk', 'in' => 'query', - 'schema' => [ - 'description' => '部署包依赖的JDK版本。支持版本如下:'."\n" - ."\n" - .'- **Open JDK 8**'."\n" - .'- **Open JDK 7**'."\n" - .'- **Dragonwell 11**'."\n" - .'- **Dragonwell 8**'."\n" - .'- **openjdk-8u191-jdk-alpine3.9**'."\n" - .'- **openjdk-7u201-jdk-alpine3.9**'."\n" - ."\n" - .'当**Package Type**为**Image**时不支持。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'Open JDK 8', - ], + 'schema' => ['description' => '部署包依赖的JDK版本。支持版本如下:'."\n" + ."\n" + .'- **Open JDK 8**'."\n" + .'- **Open JDK 7**'."\n" + .'- **Dragonwell 11**'."\n" + .'- **Dragonwell 8**'."\n" + .'- **openjdk-8u191-jdk-alpine3.9**'."\n" + .'- **openjdk-7u201-jdk-alpine3.9**'."\n" + ."\n" + .'当**Package Type**为**Image**时不支持。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'Open JDK 8'], ], [ 'name' => 'WebContainer', 'in' => 'query', - 'schema' => [ - 'description' => '部署包依赖的Tomcat版本。支持版本如下:'."\n" - ."\n" - .'- **apache-tomcat-7.0.91**'."\n" - .'- **apache-tomcat-8.5.42**'."\n" - ."\n" - .'当**Package Type**为**Image**时不支持。', - 'type' => 'string', - 'required' => false, - 'example' => 'apache-tomcat-7.0.91', - ], + 'schema' => ['description' => '部署包依赖的Tomcat版本。支持版本如下:'."\n" + ."\n" + .'- **apache-tomcat-7.0.91**'."\n" + .'- **apache-tomcat-8.5.42**'."\n" + ."\n" + .'当**Package Type**为**Image**时不支持。', 'type' => 'string', 'required' => false, 'example' => 'apache-tomcat-7.0.91'], ], [ - 'name' => 'Cpu', + 'name' => 'PackageVersion', 'in' => 'query', - 'schema' => [ - 'description' => '每个实例所需的CPU,单位为毫核,不能为0。目前仅支持以下固定规格:'."\n" - .'- **500**'."\n" - .'- **1000**'."\n" - .'- **2000**'."\n" - .'- **4000**'."\n" - .'- **8000**'."\n" - .'- **16000**'."\n" - .'- **32000**', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1000', - ], + 'schema' => ['description' => '部署包的版本号。当**Package Type**为**FatJar**、**War**或**PythonZip**时必填。'."\n", 'type' => 'string', 'required' => false, 'example' => '1.0.1'], ], [ - 'name' => 'Memory', + 'name' => 'PackageUrl', 'in' => 'query', - 'schema' => [ - 'description' => '每个实例所需的内存,单位为MB,不能为0。与CPU为一一对应关系,目前仅支持以下固定规格:'."\n" - .'- **1024**:对应CPU为500毫核和1000毫核。'."\n" - .'- **2048**:对应CPU为500、1000毫核和2000毫核。'."\n" - .'- **4096**:对应CPU为1000、2000毫核和4000毫核。'."\n" - .'- **8192**:对应CPU为2000、4000毫核和8000毫核。'."\n" - .'- **12288**:对应CPU为12000毫核。'."\n" - .'- **16384**:对应CPU为4000、8000毫核和16000毫核。'."\n" - .'- **24576**:对应CPU为12000毫核。'."\n" - .'- **32768**:对应CPU为16000毫核。'."\n" - .'- **65536**:对应CPU为8000、16000和32000毫核。'."\n" - .'- **131072**:对应CPU为32000毫核。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1024', - ], + 'schema' => ['description' => '部署包地址。当**Package Type**为**FatJar**、**War**或**PythonZip**时必填。'."\n", 'type' => 'string', 'required' => false, 'example' => 'http://myoss.oss-cn-hangzhou.aliyuncs.com/my-buc/2019-06-30/****.jar'], ], [ - 'name' => 'Replicas', + 'name' => 'ImageUrl', 'in' => 'query', - 'schema' => [ - 'description' => '任务并发实例数。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => true, - 'example' => '3', - ], + 'schema' => ['description' => '镜像地址。当**Package Type**为**Image**时必填。', 'type' => 'string', 'required' => false, 'example' => 'registry.cn-hangzhou.aliyuncs.com/sae_test/ali_sae_test:0.0.1'], ], [ 'name' => 'Command', 'in' => 'query', - 'schema' => [ - 'description' => '镜像启动命令。该命令必须为容器内存在的可执行的对象。示例如下:'."\n" - ."\n" - .'```'."\n" - .'command:'."\n" - .' - echo'."\n" - .' - abc'."\n" - .' - >'."\n" - .' - file0'."\n" - .'```'."\n" - .'根据上述示例,则`Command="echo", CommandArgs=["abc", ">", "file0"]`。', - 'type' => 'string', - 'required' => false, - 'example' => 'echo', - ], + 'schema' => ['description' => '镜像启动命令。该命令必须为容器内存在的可执行的对象。示例如下:'."\n" + ."\n" + .'```'."\n" + .'command:'."\n" + .' - echo'."\n" + .' - abc'."\n" + .' - >'."\n" + .' - file0'."\n" + .'```'."\n" + .'根据上述示例,则`Command="echo", CommandArgs=["abc", ">", "file0"]`。', 'type' => 'string', 'required' => false, 'example' => 'echo'], ], [ 'name' => 'CommandArgs', 'in' => 'query', - 'schema' => [ - 'description' => '镜像启动命令参数。上述启动命令**Command**所需参数。格式如下:'."\n" - ."\n" - .'`["a","b"]`'."\n" - ."\n" - .'在上述示例中,`CommandArgs=["abc", ">", "file0"]`,其中`["abc", ">", "file0"]`需要转成String类型,里面的格式为JSON数组。如果无此参数,则无需填写。', - 'type' => 'string', - 'required' => false, - 'example' => '["a","b"]', - ], + 'schema' => ['description' => '镜像启动命令参数。上述启动命令**Command**所需参数。格式如下:'."\n" + ."\n" + .'`["a","b"]`'."\n" + ."\n" + .'在上述示例中,`CommandArgs=["abc", ">", "file0"]`,其中`["abc", ">", "file0"]`需要转成String类型,里面的格式为JSON数组。如果无此参数,则无需填写。', 'type' => 'string', 'required' => false, 'example' => '["a","b"]'], ], [ 'name' => 'Envs', 'in' => 'query', - 'schema' => [ - 'description' => '容器环境变量参数。支持自定义或引用配置项。如需引用配置项,请先创建ConfigMap实例。更多信息,请参见[CreateConfigMap](~~176914~~)。取值说明如下:'."\n" - .'- 自定义配置'."\n" - .' - **name**:环境变量名称。'."\n" - .' - **value**:环境变量值。'."\n" - .'- 引用配置项'."\n" - .' - **name**:环境变量名称。支持引用单个或全部键,如果引用全部键,需输入`sae-sys-configmap-all-<配置项名称>`,例如`sae-sys-configmap-all-test1`。'."\n" - .' - **valueFrom**:环境变量引用。取值为`configMapRef`。'."\n" - .' - **configMapId**:配置项ID。'."\n" - .' - **key**:键。如果引用全部健值,则不设置该字段。', - 'type' => 'string', - 'required' => false, - 'example' => '[{"name":"envtmp","value":"0"}]', - ], + 'schema' => ['description' => '容器环境变量参数。支持自定义或引用配置项。如需引用配置项,请先创建ConfigMap实例。更多信息,请参见[CreateConfigMap](~~176914~~)。取值说明如下:'."\n" + .'- 自定义配置'."\n" + .' - **name**:环境变量名称。'."\n" + .' - **value**:环境变量值。'."\n" + .'- 引用配置项'."\n" + .' - **name**:环境变量名称。支持引用单个或全部键,如果引用全部键,需输入`sae-sys-configmap-all-<配置项名称>`,例如`sae-sys-configmap-all-test1`。'."\n" + .' - **valueFrom**:环境变量引用。取值为`configMapRef`。'."\n" + .' - **configMapId**:配置项ID。'."\n" + .' - **key**:键。如果引用全部健值,则不设置该字段。', 'type' => 'string', 'required' => false, 'example' => '[{"name":"envtmp","value":"0"}]'], ], [ 'name' => 'CustomHostAlias', 'in' => 'query', - 'schema' => [ - 'description' => '容器内自定义Host映射。取值说明如下:'."\n" - ."\n" - .'- **hostName**:域名或主机名。'."\n" - .'- **ip**:IP地址。', - 'type' => 'string', - 'required' => false, - 'example' => '[{"hostName":"samplehost","ip":"127.0.0.1"}]', - ], + 'schema' => ['description' => '容器内自定义Host映射。取值说明如下:'."\n" + ."\n" + .'- **hostName**:域名或主机名。'."\n" + .'- **ip**:IP地址。', 'type' => 'string', 'required' => false, 'example' => '[{"hostName":"samplehost","ip":"127.0.0.1"}]'], ], [ 'name' => 'JarStartOptions', 'in' => 'query', - 'schema' => [ - 'description' => 'JAR包启动任务选项。任务默认启动命令:`$JAVA_HOME/bin/java $JarStartOptions -jar $CATALINA_OPTS "$package_path" $JarStartArgs`', - 'type' => 'string', - 'required' => false, - 'example' => 'custom-option', - ], + 'schema' => ['description' => 'JAR包启动任务选项。任务默认启动命令:`$JAVA_HOME/bin/java $JarStartOptions -jar $CATALINA_OPTS "$package_path" $JarStartArgs`', 'type' => 'string', 'required' => false, 'example' => 'custom-option'], ], [ 'name' => 'JarStartArgs', 'in' => 'query', - 'schema' => [ - 'description' => 'JAR包启动任务参数。任务默认启动命令:`$JAVA_HOME/bin/java $JarStartOptions -jar $CATALINA_OPTS "$package_path" $JarStartArgs`', - 'type' => 'string', - 'required' => false, - 'example' => '-Xms4G -Xmx4G', - ], + 'schema' => ['description' => 'JAR包启动任务参数。任务默认启动命令:`$JAVA_HOME/bin/java $JarStartOptions -jar $CATALINA_OPTS "$package_path" $JarStartArgs`', 'type' => 'string', 'required' => false, 'example' => '-Xms4G -Xmx4G'], ], [ 'name' => 'EdasContainerVersion', 'in' => 'query', - 'schema' => [ - 'description' => 'HSF框架中任务运行环境版本,例如Ali-Tomcat容器。', - 'type' => 'string', - 'required' => false, - 'example' => '3.5.3', - ], + 'schema' => ['description' => 'HSF框架中任务运行环境版本,例如Ali-Tomcat容器。', 'type' => 'string', 'required' => false, 'example' => '3.5.3'], ], [ - 'name' => 'Timezone', + 'name' => 'SlsConfigs', 'in' => 'query', - 'schema' => [ - 'description' => '时区,默认为**Asia/Shanghai**。', - 'type' => 'string', - 'required' => false, - 'example' => 'Asia/Shanghai', - ], + 'schema' => ['description' => '日志采集到SLS的配置。'."\n" + ."\n" + .'- 使用SAE自动创建的SLS资源:`[{"logDir":"","logType":"stdout"},{"logDir":"/tmp/a.log"}]`。'."\n" + .'- 使用自定义的SLS资源:`[{"projectName":"test-sls","logType":"stdout","logDir":"","logstoreName":"sae","logtailName":""},{"projectName":"test","logDir":"/tmp/a.log","logstoreName":"sae","logtailName":""}]`。'."\n" + ."\n" + .'参数说明如下:'."\n" + ."\n" + .'- **projectName**:配置SLS上的Project名称。 '."\n" + .'- **logDir**:日志路径。'."\n" + .'- **logType**:日志类型。**stdout**表示容器标准输出日志,仅可设置1条;如果不设置,则表示收集文件日志。'."\n" + .'- **logstoreName**:配置SLS上的Logstore名称。'."\n" + .'- **logtailName**:配置SLS上的Logtail名称,如果不指定,则表示新建Logtail。'."\n" + ."\n" + .'多次部署时如果SLS采集配置没有变更,则不需要设置该参数(即请求中无需包含**SlsConfigs**字段);如果不再需要使用SLS采集功能,您需要在请求中将该字段的值设置为空字符串(即请求中**SlsConfigs**字段的值为"")。'."\n" + ."\n" + .'> 随任务模板自动创建的Project会随着任务模板删除而删除,因此在选择已有Project时,不能选择SAE自动创建的Project。', 'type' => 'string', 'required' => false, 'example' => '[{"logDir":"","logType":"stdout"},{"logDir":"/tmp/a.log"}]'], ], [ - 'name' => 'SlsConfigs', + 'name' => 'Timezone', 'in' => 'query', - 'schema' => [ - 'description' => '日志采集到SLS的配置。'."\n" - ."\n" - .'- 使用SAE自动创建的SLS资源:`[{"logDir":"","logType":"stdout"},{"logDir":"/tmp/a.log"}]`。'."\n" - .'- 使用自定义的SLS资源:`[{"projectName":"test-sls","logType":"stdout","logDir":"","logstoreName":"sae","logtailName":""},{"projectName":"test","logDir":"/tmp/a.log","logstoreName":"sae","logtailName":""}]`。'."\n" - ."\n" - .'参数说明如下:'."\n" - ."\n" - .'- **projectName**:配置SLS上的Project名称。 '."\n" - .'- **logDir**:日志路径。'."\n" - .'- **logType**:日志类型。**stdout**表示容器标准输出日志,仅可设置1条;如果不设置,则表示收集文件日志。'."\n" - .'- **logstoreName**:配置SLS上的Logstore名称。'."\n" - .'- **logtailName**:配置SLS上的Logtail名称,如果不指定,则表示新建Logtail。'."\n" - ."\n" - .'多次部署时如果SLS采集配置没有变更,则不需要设置该参数(即请求中无需包含**SlsConfigs**字段);如果不再需要使用SLS采集功能,您需要在请求中将该字段的值设置为空字符串(即请求中**SlsConfigs**字段的值为"")。'."\n" - ."\n" - .'> 随任务模板自动创建的Project会随着任务模板删除而删除,因此在选择已有Project时,不能选择SAE自动创建的Project。', - 'type' => 'string', - 'required' => false, - 'example' => '[{"logDir":"","logType":"stdout"},{"logDir":"/tmp/a.log"}]', - ], + 'schema' => ['description' => '时区,默认为**Asia/Shanghai**。', 'type' => 'string', 'required' => false, 'example' => 'Asia/Shanghai'], ], [ 'name' => 'NasId', 'in' => 'query', - 'schema' => [ - 'description' => 'NAS文件系统的ID。部署时如果配置没有变更,则不需要设置该参数(即请求中无需包含**NasId**字段);如果需要清除NAS配置,您需要在请求中将该字段的值设置为空字符串(即请求中**NasId**字段的值为"")。', - 'type' => 'string', - 'required' => false, - 'example' => '10d3b4****', - ], + 'schema' => ['description' => 'NAS文件系统的ID。部署时如果配置没有变更,则不需要设置该参数(即请求中无需包含**NasId**字段);如果需要清除NAS配置,您需要在请求中将该字段的值设置为空字符串(即请求中**NasId**字段的值为"")。', 'type' => 'string', 'required' => false, 'example' => '10d3b4****'], ], [ 'name' => 'MountHost', 'in' => 'query', - 'schema' => [ - 'description' => 'NAS在任务模板VPC内的挂载点。部署时如果配置没有变更,则不需要设置该参数(即请求中无需包含**MountHost**字段);如果需要清除NAS配置,您需要在请求中将该字段的值设置为空字符串(即请求中**MountHost**字段的值为"")。', - 'type' => 'string', - 'required' => false, - 'example' => '10d3b4bc9****.com', - ], + 'schema' => ['description' => 'NAS在任务模板VPC内的挂载点。部署时如果配置没有变更,则不需要设置该参数(即请求中无需包含**MountHost**字段);如果需要清除NAS配置,您需要在请求中将该字段的值设置为空字符串(即请求中**MountHost**字段的值为"")。', 'type' => 'string', 'required' => false, 'example' => '10d3b4bc9****.com'], ], [ 'name' => 'MountDesc', 'in' => 'query', - 'schema' => [ - 'description' => 'NAS挂载描述。部署时如果配置没有变更,则不需要设置该参数(即请求中无需包含**MountDesc**字段);如果需要清除NAS配置,您需要在请求中将该字段的值设置为空字符串(即请求中**MountDesc**字段的值为"")。', - 'type' => 'string', - 'required' => false, - 'example' => '[{mountPath: "/tmp", nasPath: "/"}]', - ], + 'schema' => ['description' => 'NAS挂载描述。部署时如果配置没有变更,则不需要设置该参数(即请求中无需包含**MountDesc**字段);如果需要清除NAS配置,您需要在请求中将该字段的值设置为空字符串(即请求中**MountDesc**字段的值为"")。', 'type' => 'string', 'required' => false, 'example' => '[{mountPath: "/tmp", nasPath: "/"}]'], ], [ - 'name' => 'PreStop', + 'name' => 'PostStart', 'in' => 'query', - 'schema' => [ - 'description' => '容器停止前执行脚本。在容器被删除前触发执行一段脚本,格式如:`{"exec":{"command":\\["sh","-c","echo hello"\\]}}`', - 'type' => 'string', - 'required' => false, - 'example' => '{"exec":{"command":["sh","-c","echo hello"]}}', - ], + 'schema' => ['description' => '容器启动后执行脚本。在容器被创建后立刻触发执行一段脚本,格式如:`{"exec":{"command":\\["sh","-c","echo hello"\\]}}`', 'type' => 'string', 'required' => false, 'example' => '{"exec":{"command":["sh","-c","echo hello"]}}'], ], [ - 'name' => 'PostStart', + 'name' => 'PreStop', 'in' => 'query', - 'schema' => [ - 'description' => '容器启动后执行脚本。在容器被创建后立刻触发执行一段脚本,格式如:`{"exec":{"command":\\["sh","-c","echo hello"\\]}}`', - 'type' => 'string', - 'required' => false, - 'example' => '{"exec":{"command":["sh","-c","echo hello"]}}', - ], + 'schema' => ['description' => '容器停止前执行脚本。在容器被删除前触发执行一段脚本,格式如:`{"exec":{"command":\\["sh","-c","echo hello"\\]}}`', 'type' => 'string', 'required' => false, 'example' => '{"exec":{"command":["sh","-c","echo hello"]}}'], ], [ 'name' => 'WarStartOptions', 'in' => 'query', - 'schema' => [ - 'description' => '设置WAR包部署任务的启动命令,操作步骤与镜像部署的启动命令配置操作相同。更多信息,请参见[设置启动命令](~~96677~~)。', - 'type' => 'string', - 'required' => false, - 'example' => 'CATALINA_OPTS=\\"$CATALINA_OPTS $Options\\" catalina.sh run', - ], + 'schema' => ['description' => '设置WAR包部署任务的启动命令,操作步骤与镜像部署的启动命令配置操作相同。更多信息,请参见[设置启动命令](~~96677~~)。', 'type' => 'string', 'required' => false, 'example' => 'CATALINA_OPTS=\\"$CATALINA_OPTS $Options\\" catalina.sh run'], ], [ 'name' => 'ConfigMapMountDesc', 'in' => 'formData', - 'schema' => [ - 'description' => '**ConfigMap**挂载描述。使用在命名空间配置项页面创建的配置项来向容器中注入配置信息。参数说明如下:'."\n" - ."\n" - .'- **congfigMapId**:ConfigMap实例ID。可通过调用[ListNamespacedConfigMaps](~~176917~~)接口获取。'."\n" - .'- **key**:键值。'."\n" - ."\n" - .'> 可通过传递`sae-sys-configmap-all`参数挂载所有键。'."\n" - ."\n" - .'- **mountPath**:挂载路径。', - 'type' => 'string', - 'required' => false, - 'example' => '[{"configMapId":16,"key":"test","mountPath":"/tmp"}]', - ], - ], - [ - 'name' => 'SecurityGroupId', - 'in' => 'query', - 'schema' => [ - 'description' => '安全组ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'sg-wz969ngg2e49q5i4****', - ], - ], - [ - 'name' => 'AutoConfig', - 'in' => 'query', - 'schema' => [ - 'description' => '是否自动配置网络环境。取值说明如下:'."\n" - ."\n" - .'- **true**:创建任务模板时SAE自动配置网络环境。**NamespaceId**、**VpcId**、**vSwitchId**和**SecurityGroupId**的取值将被忽略。'."\n" - .'- **false**:创建任务模板时SAE手动配置网络环境。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], + 'schema' => ['description' => '**ConfigMap**挂载描述。使用在命名空间配置项页面创建的配置项来向容器中注入配置信息。参数说明如下:'."\n" + ."\n" + .'- **congfigMapId**:ConfigMap实例ID。可通过调用[ListNamespacedConfigMaps](~~176917~~)接口获取。'."\n" + .'- **key**:键值。'."\n" + ."\n" + .'> 可通过传递`sae-sys-configmap-all`参数挂载所有键。'."\n" + ."\n" + .'- **mountPath**:挂载路径。', 'type' => 'string', 'required' => false, 'example' => '[{"configMapId":16,"key":"test","mountPath":"/tmp"}]'], ], [ 'name' => 'TerminationGracePeriodSeconds', 'in' => 'query', - 'schema' => [ - 'description' => '优雅下线超时时间,默认为30,单位为秒。取值范围为1~300。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'maximum' => '6000', - 'minimum' => '0', - 'example' => '10', - 'default' => '30', - ], + 'schema' => ['description' => '优雅下线超时时间,默认为30,单位为秒。取值范围为1~300。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '6000', 'minimum' => '0', 'example' => '10', 'default' => '30'], ], [ 'name' => 'PhpConfigLocation', 'in' => 'query', - 'schema' => [ - 'description' => 'PHP任务启动配置挂载路径,需要您保证PHP服务器会使用这个配置文件启动。', - 'type' => 'string', - 'required' => false, - 'example' => '/usr/local/etc/php/php.ini', - ], + 'schema' => ['description' => 'PHP任务启动配置挂载路径,需要您保证PHP服务器会使用这个配置文件启动。', 'type' => 'string', 'required' => false, 'example' => '/usr/local/etc/php/php.ini'], ], [ 'name' => 'PhpConfig', 'in' => 'formData', - 'schema' => [ - 'description' => 'PHP配置文件内容。', - 'type' => 'string', - 'required' => false, - 'example' => 'k1=v1', - ], + 'schema' => ['description' => 'PHP配置文件内容。', 'type' => 'string', 'required' => false, 'example' => 'k1=v1'], ], [ 'name' => 'TomcatConfig', 'in' => 'query', - 'schema' => [ - 'description' => 'Tomcat文件配置,设置为""或"{}"表示删除配置。取值说明如下:'."\n" - ."\n" - .'- **port**:端口范围为1024~65535,小于1024的端口需要Root权限才能操作。因为容器配置的是Admin权限,所以请填写大于1024的端口。如果不配置,则默认为8080。'."\n" - .'- **contextPath**:访问路径,默认为根目录"/"。'."\n" - .'- **maxThreads**:配置连接池的连接数大小,默认大小为400。'."\n" - .'- **uriEncoding**:Tomcat的编码格式,包括**UTF-8**、**ISO-8859-1**、**GBK和GB2312**。如果不设置,则默认为**ISO-8859-1**。'."\n" - .'- **useBodyEncoding**:是否使用**BodyEncoding for URL**,默认为**true**。', - 'type' => 'string', - 'required' => false, - 'example' => '{"port":8080,"contextPath":"/","maxThreads":400,"uriEncoding":"ISO-8859-1","useBodyEncodingForUri":true}', - ], + 'schema' => ['description' => 'Tomcat文件配置,设置为""或"{}"表示删除配置。取值说明如下:'."\n" + ."\n" + .'- **port**:端口范围为1024~65535,小于1024的端口需要Root权限才能操作。因为容器配置的是Admin权限,所以请填写大于1024的端口。如果不配置,则默认为8080。'."\n" + .'- **contextPath**:访问路径,默认为根目录"/"。'."\n" + .'- **maxThreads**:配置连接池的连接数大小,默认大小为400。'."\n" + .'- **uriEncoding**:Tomcat的编码格式,包括**UTF-8**、**ISO-8859-1**、**GBK和GB2312**。如果不设置,则默认为**ISO-8859-1**。'."\n" + .'- **useBodyEncoding**:是否使用**BodyEncoding for URL**,默认为**true**。', 'type' => 'string', 'required' => false, 'example' => '{"port":8080,"contextPath":"/","maxThreads":400,"uriEncoding":"ISO-8859-1","useBodyEncodingForUri":true}'], ], [ 'name' => 'OssMountDescs', 'in' => 'formData', - 'schema' => [ - 'title' => 'OSS挂载描述信息', - 'description' => 'OSS挂载描述信息。参数说明如下:'."\n" - ."\n" - .'- **bucketName**:Bucket名称。'."\n" - .'- **bucketPath**:您在OSS创建的目录或OSS对象,如果OSS挂载目录不存在,会触发异常。'."\n" - .'- **mountPath**:您在SAE的容器路径。如果路径已存在,为覆盖关系;如果路径不存在,会新建。'."\n" - .'- **readOnly**:容器路径是否对挂载目录资源有可读权限,取值说明如下:'."\n" - .' - **true**:只读权限。'."\n" - .' - **false**:读写权限。', - 'type' => 'string', - 'required' => false, - 'example' => '[{"bucketName": "oss-bucket", "bucketPath": "data/user.data", "mountPath": "/usr/data/user.data", "readOnly": true}]', - ], + 'schema' => ['title' => 'OSS挂载描述信息', 'description' => 'OSS挂载描述信息。参数说明如下:'."\n" + ."\n" + .'- **bucketName**:Bucket名称。'."\n" + .'- **bucketPath**:您在OSS创建的目录或OSS对象,如果OSS挂载目录不存在,会触发异常。'."\n" + .'- **mountPath**:您在SAE的容器路径。如果路径已存在,为覆盖关系;如果路径不存在,会新建。'."\n" + .'- **readOnly**:容器路径是否对挂载目录资源有可读权限,取值说明如下:'."\n" + .' - **true**:只读权限。'."\n" + .' - **false**:读写权限。', 'type' => 'string', 'required' => false, 'example' => '[{"bucketName": "oss-bucket", "bucketPath": "data/user.data", "mountPath": "/usr/data/user.data", "readOnly": true}]'], ], [ 'name' => 'OssAkId', 'in' => 'formData', - 'schema' => [ - 'title' => 'OSS使用的AKID', - 'description' => 'OSS读写的AccessKey ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'xxxxxx', - ], + 'schema' => ['title' => 'OSS使用的AKID', 'description' => 'OSS读写的AccessKey ID。', 'type' => 'string', 'required' => false, 'example' => 'xxxxxx'], ], [ 'name' => 'OssAkSecret', 'in' => 'formData', - 'schema' => [ - 'title' => 'OSS AKID对应的secret', - 'description' => 'OSS读写的AccessKey Secret。', - 'type' => 'string', - 'required' => false, - 'example' => 'xxxxxx', - ], + 'schema' => ['title' => 'OSS AKID对应的secret', 'description' => 'OSS读写的AccessKey Secret。', 'type' => 'string', 'required' => false, 'example' => 'xxxxxx'], + ], + [ + 'name' => 'Php', + 'in' => 'formData', + 'schema' => ['title' => 'PHP部署包依赖的PHP版本。镜像不支持', 'description' => 'ACR企业版实例ID。', 'type' => 'string', 'required' => false, 'example' => 'cri-xxxxxx'], ], [ 'name' => 'AcrInstanceId', 'in' => 'formData', - 'schema' => [ - 'title' => 'ACR 企业版实例 ID', - 'description' => 'ACR企业版实例ID。当**ImageUrl**为容器镜像服务企业版时必填。', - 'type' => 'string', - 'required' => false, - 'docRequired' => false, - 'example' => 'cri-xxxxxx', - ], + 'schema' => ['title' => 'ACR 企业版实例 ID', 'description' => 'ACR企业版实例ID。当**ImageUrl**为容器镜像服务企业版时必填。', 'type' => 'string', 'required' => false, 'example' => 'cri-xxxxxx'], ], [ 'name' => 'AcrAssumeRoleArn', 'in' => 'query', - 'schema' => [ - 'description' => '跨账号拉取镜像时所需的RAM角色的ARN。更多信息,请参见[通过RAM角色实现跨云账号授权](~~223585~~)。', - 'type' => 'string', - 'required' => false, - 'example' => 'acs:ram::123456789012****:role/adminrole', - ], + 'schema' => ['description' => '跨账号拉取镜像时所需的RAM角色的ARN。更多信息,请参见[通过RAM角色实现跨云账号授权](~~223585~~)。', 'type' => 'string', 'required' => false, 'example' => 'acs:ram::123456789012****:role/adminrole'], ], [ 'name' => 'ImagePullSecrets', 'in' => 'query', - 'schema' => [ - 'description' => '对应保密字典ID。', - 'type' => 'string', - 'required' => false, - 'example' => '10', - ], + 'schema' => ['description' => '对应保密字典ID。', 'type' => 'string', 'required' => false, 'example' => '10'], ], [ 'name' => 'EnableImageAccl', 'in' => 'formData', - 'schema' => [ - 'title' => '是否开启镜像加速', - 'description' => '是否开启镜像加速。取值说明如下:'."\n" - ."\n" - .'- **true**:开启。'."\n" - .'- **false**:关闭。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - 'default' => 'false', - ], - ], - [ - 'name' => 'Workload', - 'in' => 'query', - 'allowEmptyValue' => false, - 'schema' => [ - 'description' => 'Workload需指定为`job`。', - 'type' => 'string', - 'required' => true, - 'example' => 'job', - ], + 'allowEmptyValue' => true, + 'schema' => ['title' => '是否开启镜像加速', 'description' => '是否开启镜像加速', 'type' => 'boolean', 'required' => false, 'default' => 'false'], ], [ 'name' => 'TriggerConfig', 'in' => 'query', - 'schema' => [ - 'description' => '任务触发配置,根据任务类型进行配置。'."\n" - .'- **定时任务**:**type**字段设为time,**config**字段为具体Cron表达式,**timezone**字段为指定时区。'."\n" - .'配置示例:`{"type":"time","config":"0 1 */1 * ?","timezone":"GMT+8:00"}`'."\n" - .'- **一次性任务**:**type**字段设为http,**config**配置具体的HTTP触发规则。更多信息,请参见[请求参数SourceHttpEventParameters](https://help.aliyun.com/document_detail/347586.html#section-lp1-vq0-ho3)。'."\n" - .'配置示例:`{"type":"http","config":{"type":"HTTPS","method"、["GET"],"ip":[],"referer":[],"securityConfig":"none"}}`', - 'type' => 'string', - 'required' => false, - 'example' => '{"type":"time","config":"0 1 */1 * ?","timezone":"GMT+8:00"}', - ], + 'schema' => ['description' => '任务触发配置,根据任务类型进行配置。'."\n" + .'- **定时任务**:**type**字段设为time,**config**字段为具体Cron表达式,**timezone**字段为指定时区。'."\n" + .'配置示例:`{"type":"time","config":"0 1 */1 * ?","timezone":"GMT+8:00"}`'."\n" + .'- **一次性任务**:**type**字段设为http,**config**配置具体的HTTP触发规则。更多信息,请参见[请求参数SourceHttpEventParameters](https://help.aliyun.com/document_detail/347586.html#section-lp1-vq0-ho3)。'."\n" + .'配置示例:`{"type":"http","config":{"type":"HTTPS","method"、["GET"],"ip":[],"referer":[],"securityConfig":"none"}}`', 'type' => 'string', 'required' => false, 'example' => '{"type":"time","config":"0 1 */1 * ?","timezone":"GMT+8:00"}'], ], [ 'name' => 'ConcurrencyPolicy', 'in' => 'query', - 'schema' => [ - 'description' => '任务并发策略。取值说明如下:'."\n" - ."\n" - .'- **Forbid**:禁止并发运行,在前一个任务未完成时,不创建新任务。'."\n" - .'- **Allow**:允许并发运行任务。'."\n" - .'- **Replace**:当到达新任务创建时间点,而前一个任务未完成时,新的任务会取代前一个任务。', - 'type' => 'string', - 'required' => false, - 'example' => 'Allow', - ], + 'schema' => ['description' => '任务并发策略。取值说明如下:'."\n" + ."\n" + .'- **Forbid**:禁止并发运行,在前一个任务未完成时,不创建新任务。'."\n" + .'- **Allow**:允许并发运行任务。'."\n" + .'- **Replace**:当到达新任务创建时间点,而前一个任务未完成时,新的任务会取代前一个任务。', 'type' => 'string', 'required' => false, 'example' => 'Allow'], ], [ 'name' => 'Timeout', 'in' => 'query', - 'schema' => [ - 'description' => '任务超时时间,单位为秒。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '3600', - ], + 'schema' => ['description' => '任务超时时间,单位为秒。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '3600'], ], [ 'name' => 'BackoffLimit', 'in' => 'query', - 'schema' => [ - 'description' => '任务重试次数。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '3', - ], + 'schema' => ['description' => '任务重试次数。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '3'], ], [ 'name' => 'Slice', 'in' => 'query', - 'schema' => [ - 'description' => '启用任务分片。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'schema' => ['description' => '启用任务分片。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], [ 'name' => 'SliceEnvs', 'in' => 'query', - 'schema' => [ - 'description' => '任务分片参数。', - 'type' => 'string', - 'required' => false, - 'example' => '[0,1,2]', - ], + 'schema' => ['description' => '任务分片参数。', 'type' => 'string', 'required' => false, 'example' => '[0,1,2]'], + ], + [ + 'name' => 'Replicas', + 'in' => 'query', + 'schema' => ['description' => '任务并发实例数。', 'type' => 'string', 'required' => false, 'example' => '3'], ], [ 'name' => 'RefAppId', 'in' => 'query', - 'schema' => [ - 'description' => '引用的任务目标ID。', - 'type' => 'string', - 'required' => false, - 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****', - ], + 'schema' => ['description' => '引用的任务目标ID。', 'type' => 'string', 'required' => false, 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****'], ], [ 'name' => 'ProgrammingLanguage', 'in' => 'query', - 'schema' => [ - 'description' => '程序编程语言。支持**java**、**php**、**python**和**shell**。', - 'type' => 'string', - 'required' => false, - 'example' => 'java', - ], + 'schema' => ['description' => '程序编程语言。支持**java**、**php**、**python**和**shell**。', 'type' => 'string', 'required' => false, 'example' => 'java'], ], [ 'name' => 'Python', 'in' => 'query', - 'schema' => [ - 'description' => 'Python环境。支持**PYTHON 3.9.15**。', - 'type' => 'string', - 'required' => false, - 'example' => 'PYTHON 3.9.15', - ], + 'schema' => ['description' => 'Python环境。支持**PYTHON 3.9.15**。', 'type' => 'string', 'required' => false, 'example' => 'PYTHON 3.9.15'], ], [ 'name' => 'PythonModules', 'in' => 'query', - 'schema' => [ - 'description' => '自定义安装模块依赖。默认安装根目录下requirements.txt定义的依赖项。如果未配置或自定义软件包,可以指定安装的依赖。', - 'type' => 'string', - 'required' => false, - 'example' => 'Flask==2.0', - ], + 'schema' => ['description' => '自定义安装模块依赖。默认安装根目录下requirements.txt定义的依赖项。如果未配置或自定义软件包,可以指定安装的依赖。', 'type' => 'string', 'required' => false, 'example' => 'Flask==2.0'], ], [ 'name' => 'NasConfigs', 'in' => 'query', - 'schema' => [ - 'type' => 'string', - 'required' => false, - ], + 'schema' => ['description' => '挂载NAS的配置。', 'type' => 'string', 'required' => false], ], [ 'name' => 'BestEffortType', 'in' => 'query', - 'schema' => [ - 'type' => 'string', - 'required' => false, - ], + 'schema' => ['description' => 'BestEffort策略。', 'type' => 'string', 'required' => false], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'description' => '创建的任务模板信息。', + 'description' => '更新的任务模板信息。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '01CF26C7-00A3-4AA6-BA76-7E95F2A3***', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => 'ac1a0b2215622246421415014e****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '01CF26C7-00A3-4AA6-BA76-7E95F2A3***'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => 'ac1a0b2215622246421415014e****'], 'Data' => [ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'ChangeOrderId' => [ - 'description' => '返回的发布单ID,用于查询任务执行状态。', - 'type' => 'string', - 'example' => '01db03d3-3ee9-48b3-b3d0-dfce2d88****', - ], - 'AppId' => [ - 'description' => '任务模板ID。'."\n", - 'type' => 'string', - 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****', - ], + 'ChangeOrderId' => ['description' => '返回的发布单ID,用于查询任务执行状态。', 'type' => 'string', 'example' => '01db03d3-3ee9-48b3-b3d0-dfce2d88****'], + 'AppId' => ['description' => '任务模板ID。'."\n", 'type' => 'string', 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****'], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '创建任务模板是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:创建成功。'."\n" - .'- **false**:创建失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '更新任务模板是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:更新成功。'."\n" + .'- **false**:更新失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'Application.MissingJdk', - 'errorMessage' => 'Your application must at least contain a JDK component.', - ], - [ - 'errorCode' => 'InvalidPackageType.NotFound', - 'errorMessage' => 'The package type must be War, FatJar, or Image.', - ], - [ - 'errorCode' => 'InvalidParameter.FileName', - 'errorMessage' => 'The application deployment package name is invalid. This name can contain only alphanumeric characters, hyphens (-), and underscores (_). In addition, you can upload JAR files only if the selected deployment version supports JAR file. Otherwise, upload WAR files only.', - ], - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'JarApplication.MissingJdk', - 'errorMessage' => 'A FatJar application must contain JDK.', - ], - [ - 'errorCode' => 'NoAvailableCluster.NotFound', - 'errorMessage' => 'No clusters are available for the current region.', - ], - [ - 'errorCode' => 'NoComputeResourceQuota.Exceed', - 'errorMessage' => 'Your compute resource is insufficient. Please contact us to raise the quota.', - ], - [ - 'errorCode' => 'PandoraApplication.MissingJdk', - 'errorMessage' => 'The Pandora application is missing a JDK component.', - ], - [ - 'errorCode' => 'PandoraApplication.OnlyJdk', - 'errorMessage' => 'A Pandora application only requires JDK component.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], - [ - 'errorCode' => 'InvalidComponent.NotFound', - 'errorMessage' => 'The current component (such as JDK, Tomcat, or EDASWebContainer) does not exist.', - ], - [ - 'errorCode' => 'InvalidHostnameIp.Invalid', - 'errorMessage' => 'The hostname and/or IP is invalid: Hostname [%s], IP [%s].', - ], - [ - 'errorCode' => 'InvalidInstanceSpecification.Unsupported', - 'errorMessage' => 'The instance specification is not supported: CPU [%s], memory [%s].', - ], - [ - 'errorCode' => 'InvalidServerlessRegion.Unsupported', - 'errorMessage' => 'The current region is not supported: %s', - ], - [ - 'errorCode' => 'WarApplication.MissingJdkWebcontainer', - 'errorMessage' => 'A War application must contain JDK and Tomcat.', - ], - [ - 'errorCode' => 'InvalidNamespace.WithUppercase', - 'errorMessage' => 'This namespace does not support creating SAE apps because it contains uppercase letters.', - ], - [ - 'errorCode' => 'LogService.ConfigQuotaExceed', - 'errorMessage' => 'The maximum number of Log Service configs is exceeded.', - ], - [ - 'errorCode' => 'LogService.InternalError', - 'errorMessage' => 'An exception occurred while calling Log Service. Please submit a ticket to solve the problem.', - ], - [ - 'errorCode' => 'LogService.LogDirInvalid', - 'errorMessage' => 'The log collection path is invalid.', - ], - [ - 'errorCode' => 'LogService.NotAvailable', - 'errorMessage' => 'Log Service is unavailable. Please activate Log Service first.', - ], - [ - 'errorCode' => 'LogService.ProjectNumQuotaExceed', - 'errorMessage' => 'The maximum number of Log Service projects is exceeded.', - ], - [ - 'errorCode' => 'vswitch.not.exist', - 'errorMessage' => 'The specified VSwitch does not exist.', - ], - [ - 'errorCode' => 'user.indebt', - 'errorMessage' => 'The user has an outstanding payment.', - ], - [ - 'errorCode' => 'NoComputeResourceQuota.App.Exceed', - 'errorMessage' => 'You can create %s instances for each application. Please submit a ticket to raise the quota.', - ], - [ - 'errorCode' => 'NoComputeResourceQuota.User.Exceed', - 'errorMessage' => 'Your account is limited to create %s instances. Please submit a ticket to raise the quota.', - ], - [ - 'errorCode' => 'System.Upgrading', - 'errorMessage' => 'The system is being upgraded. Please try again later.', - ], - [ - 'errorCode' => 'VolumnPath.Conflict', - 'errorMessage' => 'Conflict between log collection directory and persistent storage directory.', - ], - [ - 'errorCode' => 'MountConflict.ConfigMap', - 'errorMessage' => 'Conflict detected for ConfigMap path %s.', - ], - [ - 'errorCode' => 'NotFound.ConfigMap', - 'errorMessage' => 'The ConfigMap object (ID: %s) does not exist.', - ], - [ - 'errorCode' => 'NotFound.ConfigMapKey', - 'errorMessage' => 'The key %s of ConfigMap object (ID: %s) does not exist.', - ], - [ - 'errorCode' => 'Sls.Config.Mixed.Multi.Project', - 'errorMessage' => 'The specified Config contains multiple projects.', - ], - [ - 'errorCode' => 'Sls.Config.User.Defined.Missing.Logstore.Info', - 'errorMessage' => 'The specified Config is invalid. Both Project and Logstore must be specified.', - ], - [ - 'errorCode' => 'Sls.Config.User.Defined.Missing.Project.Info', - 'errorMessage' => 'The specified Config is invalid. Both Project and Logstore must be specified.', - ], - [ - 'errorCode' => 'Sls.Logstore.Name.Invalid', - 'errorMessage' => 'The specified name of Logstore is invalid. The Logstore name must not contain the prefix "sae-".', - ], - [ - 'errorCode' => 'Sls.Logstore.User.Defined.Not.Exist', - 'errorMessage' => 'The user defined Logstore does not exist.', - ], - [ - 'errorCode' => 'Sls.Project.Name.Invalid', - 'errorMessage' => 'The specified project name is invalid. The project name must not contain the prefix "sae-".', - ], - [ - 'errorCode' => 'Sls.Project.User.Defined.Not.Exist', - 'errorMessage' => 'The user defined project does not exist.', - ], - [ - 'errorCode' => 'InvalidImageUrl.AcrInstanceId.Domain.NotMatch', - 'errorMessage' => 'The specified domain of ImageUrl does not match AcrInstanceId domains.', - ], - [ - 'errorCode' => 'PhpApplication.MissingPhpRuntime', - 'errorMessage' => 'A PHP application must contain PHP Runtime.', - ], + ['errorCode' => 'Application.MissingJdk', 'errorMessage' => 'Your application must at least contain a JDK component.', 'description' => '应用必须至少包含JDK组件。'], + ['errorCode' => 'InvalidApplication.NotFound', 'errorMessage' => 'The current application does not exist.', 'description' => '找不到当前应用。'], + ['errorCode' => 'InvalidComponent.NotFound', 'errorMessage' => 'The current component (such as JDK, Tomcat, or EDASWebContainer) does not exist.', 'description' => '找不到当前组件(JDK、Tomcat、EDASWebContainer等)。'], + ['errorCode' => 'InvalidHostnameIp.Invalid', 'errorMessage' => 'The hostname and/or IP is invalid: Hostname [%s], IP [%s].', 'description' => '主机名或IP不合法:主机名[%s],IP[%s]。'], + ['errorCode' => 'InvalidInstanceSpecification.Unsupported', 'errorMessage' => 'The instance specification is not supported: CPU [%s], memory [%s].', 'description' => '不支持的实例规格。CPU[%s],Memory[%s]。'], + ['errorCode' => 'InvalidPackageType.NotFound', 'errorMessage' => 'The package type must be War, FatJar, or Image.', 'description' => '包类型必须为WAR、FatJAR或Image。'], + ['errorCode' => 'InvalidParameter.FileName', 'errorMessage' => 'The application deployment package name is invalid. This name can contain only alphanumeric characters, hyphens (-), and underscores (_). In addition, you can upload JAR files only if the selected deployment version supports JAR file. Otherwise, upload WAR files only.', 'description' => ''], + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], + ['errorCode' => 'JarApplication.MissingJdk', 'errorMessage' => 'A FatJar application must contain JDK.', 'description' => 'FatJar类型应用必须包含JDK。'], + ['errorCode' => 'NoComputeResourceQuota.Exceed', 'errorMessage' => 'Your compute resource is insufficient. Please contact us to raise the quota.', 'description' => ''], + ['errorCode' => 'PandoraApplication.MissingJdk', 'errorMessage' => 'The Pandora application is missing a JDK component.', 'description' => 'Pandora应用缺少JDK组件。'], + ['errorCode' => 'PandoraApplication.OnlyJdk', 'errorMessage' => 'A Pandora application only requires JDK component.', 'description' => 'Pandora应用只需要JDK组件。'], + ['errorCode' => 'WarApplication.MissingJdkWebcontainer', 'errorMessage' => 'A War application must contain JDK and Tomcat.', 'description' => 'WAR类型应用必须包含JDK和Tomcat。'], + ['errorCode' => 'LogService.ConfigQuotaExceed', 'errorMessage' => 'The maximum number of Log Service configs is exceeded.', 'description' => '日志服务配置个数超过配额限制,请加入钉群32874633联系技术产品专家进行咨询。'], + ['errorCode' => 'LogService.InternalError', 'errorMessage' => 'An exception occurred while calling Log Service. Please submit a ticket to solve the problem.', 'description' => '调用日志服务异常,请加入钉群32874633联系技术产品专家进行咨询。'], + ['errorCode' => 'LogService.LogDirInvalid', 'errorMessage' => 'The log collection path is invalid.', 'description' => '日志采集路径不合法。'], + ['errorCode' => 'LogService.NotAvailable', 'errorMessage' => 'Log Service is unavailable. Please activate Log Service first.', 'description' => '日志服务不可用,请先开通日志服务。'], + ['errorCode' => 'LogService.ProjectNumQuotaExceed', 'errorMessage' => 'The maximum number of Log Service projects is exceeded.', 'description' => '日志服务项目个数超过配额限制,请加入钉群32874633联系技术产品专家进行咨询。'], + ['errorCode' => 'user.indebt', 'errorMessage' => 'The user has an outstanding payment.', 'description' => '当前用户处于欠费状态。'], + ['errorCode' => 'NoComputeResourceQuota.App.Exceed', 'errorMessage' => 'You can create %s instances for each application. Please submit a ticket to raise the quota.', 'description' => '每个应用只允许创建%s个实例,请加入钉群32874633联系技术产品专家进行咨询。'], + ['errorCode' => 'NoComputeResourceQuota.User.Exceed', 'errorMessage' => 'Your account is limited to create %s instances. Please submit a ticket to raise the quota.', 'description' => '您的账户限额%s个实例,请加入钉群32874633联系技术产品专家进行咨询。'], + ['errorCode' => 'System.Upgrading', 'errorMessage' => 'The system is being upgraded. Please try again later.', 'description' => '系统正在升级,请稍后操作。'], + ['errorCode' => 'VolumnPath.Conflict', 'errorMessage' => 'Conflict between log collection directory and persistent storage directory.', 'description' => '日志采集目录与持久化存储目录冲突。'], + ['errorCode' => 'Application.ChangerOrderRunning', 'errorMessage' => 'An application change process is in progress. Please try again later.', 'description' => '应用有变更流程正在执行,请稍后重试。'], + ['errorCode' => 'Application.InvalidStatus', 'errorMessage' => 'The application status is abnormal. Please try again later.', 'description' => '应用状态异常,请稍后重试。'], + ['errorCode' => 'MountConflict.ConfigMap', 'errorMessage' => 'Conflict detected for ConfigMap path %s.', 'description' => 'ConfigMap挂载路径%s存在冲突。'], + ['errorCode' => 'NotFound.ConfigMap', 'errorMessage' => 'The ConfigMap object (ID: %s) does not exist.', 'description' => '找不到ConfigMap对象(ID=%s)。'], + ['errorCode' => 'NotFound.ConfigMapKey', 'errorMessage' => 'The key %s of ConfigMap object (ID: %s) does not exist.', 'description' => '找不到ConfigMap对象(ID=%s)的Key %s。'], + ['errorCode' => 'Package.Version.Too.Long', 'errorMessage' => 'The maximum length of package version is exceeded.', 'description' => '应用部署包版本号长度超过限制。'], + ['errorCode' => 'App.Package.Version.Exists', 'errorMessage' => 'The package version of application already exists.', 'description' => '应用部署包版本号已经存在。'], + ['errorCode' => 'Slb.Occupied', 'errorMessage' => 'The SLB instance is occupied.', 'description' => 'SLB实例被占用。'], + ['errorCode' => 'Slb.Tag.Not.Qualified', 'errorMessage' => 'The current SLB instance cannot be reused because it may have been occupied by %s.', 'description' => 'SLB实例正在被%s使用,不建议复用。'], + ['errorCode' => 'MinReadyInstances.Not.Smaller.Replicas', 'errorMessage' => 'The minimum number of available instances must be less than the number of application instances.', 'description' => '最小可用实例数必须小于应用实例数。'], + ['errorCode' => 'BatchWaitTime.Not.Smaller.Zero', 'errorMessage' => 'BatchWaitTime must not be smaller than zero.', 'description' => '分批间隔时间必须大于零。'], + ['errorCode' => 'Sls.Config.Mixed.Multi.Project', 'errorMessage' => 'The specified Config contains multiple projects.', 'description' => '您输入的SLS Config中指定了多个Project。'], + ['errorCode' => 'Sls.Config.User.Defined.Missing.Logstore.Info', 'errorMessage' => 'The specified Config is invalid. Both Project and Logstore must be specified.', 'description' => '您输入的SLS Config为自定义SLS配置,但是只有Project配置,缺失Logstore配置。'], + ['errorCode' => 'Sls.Config.User.Defined.Missing.Project.Info', 'errorMessage' => 'The specified Config is invalid. Both Project and Logstore must be specified.', 'description' => '您输入的SLS Config为自定义SLS配置,但是只有Logstore配置,缺失Project配置。'], + ['errorCode' => 'Sls.Logstore.Name.Invalid', 'errorMessage' => 'The specified name of Logstore is invalid. The Logstore name must not contain the prefix "sae-".', 'description' => '您输入的SLS Logstore名称不合法,前缀包含了"sae-",会与SAE自动创建的Logstore混淆。'], + ['errorCode' => 'Sls.Logstore.User.Defined.Not.Exist', 'errorMessage' => 'The user defined Logstore does not exist.', 'description' => '您输入的自建Logstore不存在。'], + ['errorCode' => 'Sls.Project.Name.Invalid', 'errorMessage' => 'The specified project name is invalid. The project name must not contain the prefix "sae-".', 'description' => '您输入的SLS Project名称不合法,前缀包含了"sae-",会与SAE自动创建的Project混淆。'], + ['errorCode' => 'Sls.Project.User.Defined.Not.Exist', 'errorMessage' => 'The user defined project does not exist.', 'description' => '您输入的自建Project不存在。'], + ['errorCode' => 'Sae.Errorcode.Ahas.Create.Error.Message', 'errorMessage' => 'Failed to create AHAS.', 'description' => '创建AHAS失败。'], + ['errorCode' => 'InvalidImageUrl.AcrInstanceId.Domain.NotMatch', 'errorMessage' => 'The specified domain of ImageUrl does not match AcrInstanceId domains.', 'description' => '指定的镜像地址ImageUrl域名与AcrInstanceId域名不匹配。'], + ['errorCode' => 'PhpApplication.MissingPhpRuntime', 'errorMessage' => 'A PHP application must contain PHP Runtime.', 'description' => 'PHP类型应用必须包含PHP运行时。'], ], 404 => [ - [ - 'errorCode' => 'Associate.Eip.Not.Enough', - 'errorMessage' => 'No sufficient EIPs are available.', - ], - [ - 'errorCode' => 'InvalidNamespaceId.NotFound', - 'errorMessage' => 'The specified NamespaceId does not exist.', - ], - [ - 'errorCode' => 'InvalidVpcId.NotFound', - 'errorMessage' => 'The specified VpcId does not exist.', - ], - [ - 'errorCode' => 'InvalidAcrInstanceId.NotFound', - 'errorMessage' => 'The specified AcrInstanceId does not exist.', - ], + ['errorCode' => 'InvalidNamespaceId.NotFound', 'errorMessage' => 'The specified NamespaceId does not exist.', 'description' => '指定的NamespaceId不存在。'], + ['errorCode' => 'InvalidAcrInstanceId.NotFound', 'errorMessage' => 'The specified AcrInstanceId does not exist.', 'description' => '指定的 AcrInstanceId 不存在。'], + ['errorCode' => 'Associate.Eip.Not.Enough', 'errorMessage' => 'No sufficient EIPs are available.', 'description' => '绑定EIP时,EIP不足,需要您购买。'], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"01CF26C7-00A3-4AA6-BA76-7E95F2A3***\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"ac1a0b2215622246421415014e****\\",\\n \\"Data\\": {\\n \\"ChangeOrderId\\": \\"01db03d3-3ee9-48b3-b3d0-dfce2d88****\\",\\n \\"AppId\\": \\"7171a6ca-d1cd-4928-8642-7d5cfe69****\\"\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<UpdateJobResponse>\\n <RequestId>01CF26C7-00A3-4AA6-BA76-7E95F2A3***</RequestId>\\n <Message>success</Message>\\n <TraceId>ac1a0b2215622246421415014e****</TraceId>\\n <Data>\\n <ChangeOrderId>01db03d3-3ee9-48b3-b3d0-dfce2d88****</ChangeOrderId>\\n <AppId>7171a6ca-d1cd-4928-8642-7d5cfe69****</AppId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</UpdateJobResponse>","errorExample":""}]', - 'title' => '创建任务模板', - 'summary' => '创建任务模板。', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"01CF26C7-00A3-4AA6-BA76-7E95F2A3***\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"ac1a0b2215622246421415014e****\\",\\n \\"Data\\": {\\n \\"ChangeOrderId\\": \\"01db03d3-3ee9-48b3-b3d0-dfce2d88****\\",\\n \\"AppId\\": \\"7171a6ca-d1cd-4928-8642-7d5cfe69****\\"\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<UpdateJobResponse>\\n <RequestId>01CF26C7-00A3-4AA6-BA76-7E95F2A3***</RequestId>\\n <Message>success</Message>\\n <TraceId>ac1a0b2215622246421415014e****</TraceId>\\n <Data>\\n <ChangeOrderId>01db03d3-3ee9-48b3-b3d0-dfce2d88****</ChangeOrderId>\\n <AppId>7171a6ca-d1cd-4928-8642-7d5cfe69****</AppId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</UpdateJobResponse>","errorExample":""}]', + 'title' => 'UpdateJob', + 'summary' => '调用UpdateJob接口更新任务模板。', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', - ], - 'DeleteHistoryJob' => [ - 'summary' => '删除任务。', - 'path' => '/pop/v1/sam/job/deleteHistoryJob', - 'methods' => [ - 'delete', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:25.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-09-08T05:48:07.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2022-12-26T09:19:37.000Z', 'description' => '错误码发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '40', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdateJob'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'sae:UpdateJob', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + ], + 'UpdateNamespace' => [ + 'path' => '/pop/v1/paas/namespace', + 'methods' => ['put'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ - 'abilityTreeCode' => '104054', - 'abilityTreeNodes' => [ - 'FEATUREsaeD9PL61', - ], + 'operationType' => 'update', + 'abilityTreeCode' => '6403', + 'abilityTreeNodes' => ['FEATUREsaeD9PL61'], ], 'parameters' => [ [ - 'name' => 'AppId', + 'name' => 'NamespaceId', 'in' => 'query', - 'schema' => [ - 'description' => '要删除的任务模板ID。', - 'type' => 'string', - 'required' => true, - 'example' => '017f39b8-dfa4-4e16-a84b-1dcee4b1****', - ], + 'schema' => ['description' => '长版命名空间ID。如果设置了该参数会继续生效而忽略NameSpaceShortId,为了兼容保留,推荐使用短版命名空间ID;格式为`<RegionId>:<NamespaceId>`,`NamespaceId`仅允许小写英文字母和数字,例如`cn-beijing:test`,不超过32个字符。SAE支持的**RegionId**,请参见[DescribeRegions](~~2834842~~)。', 'type' => 'string', 'required' => false, 'example' => 'cn-beijing:test'], ], [ - 'name' => 'JobId', + 'name' => 'NamespaceName', 'in' => 'query', - 'schema' => [ - 'description' => '任务ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'manual-3db7a8fa-5d40-4edc-92e4-49d50eab****', - ], + 'schema' => ['description' => '命名空间名称,不超过64个字符。', 'type' => 'string', 'required' => true, 'example' => 'name'], + ], + [ + 'name' => 'NamespaceDescription', + 'in' => 'query', + 'schema' => ['description' => '命名空间描述,不超过100个字符。', 'type' => 'string', 'required' => false, 'example' => 'desc'], + ], + [ + 'name' => 'NameSpaceShortId', + 'in' => 'query', + 'schema' => ['description' => '短版命名空间ID,不需要带上region,不超过20个字符,推荐;仅允许小写英文字母和数字。', 'type' => 'string', 'required' => false, 'example' => 'test'], + ], + [ + 'name' => 'EnableMicroRegistration', + 'in' => 'query', + 'schema' => ['description' => '是否启用SAE内置注册中心:'."\n" + .'- **true**'."\n" + .'- **false**'."\n" + ."\n" + .'若选择true,则将为该命名空间创建共享注册中心等相关信息,同时创建后无法关闭。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], ], 'responses' => [ @@ -37140,217 +22705,214 @@ 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '调用结果的附加信息。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], 'Data' => [ - 'description' => '返回结果。', - 'type' => 'string', - 'example' => '{"msg": "","code": 200,"success": true}', - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '删除任务是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:删除成功。'."\n" - .'- **false**:删除失败。', - 'type' => 'boolean', - 'example' => 'true', + 'description' => '命名空间信息。', + 'type' => 'object', + 'properties' => [ + 'NamespaceDescription' => ['description' => '命名空间描述。', 'type' => 'string', 'example' => 'desc'], + 'NamespaceId' => ['description' => '命名空间ID。', 'type' => 'string', 'example' => 'cn-beijing:test'], + 'NamespaceName' => ['description' => '命名空间名称。', 'type' => 'string', 'example' => 'name'], + 'RegionId' => ['description' => '命名空间所在地域。', 'type' => 'string', 'example' => 'cn-beijing'], + 'NameSpaceShortId' => ['description' => '短版命名空间ID。', 'type' => 'string', 'example' => 'test'], + 'EnableMicroRegistration' => ['description' => '是否启用SAE内置注册中心:'."\n" + .'- **true**'."\n" + .'- **false**', 'type' => 'boolean', 'example' => 'true'], + ], ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '更新命名空间信息是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:更新成功。'."\n" + .'- **false**:更新失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ + 400 => [ + ['errorCode' => 'InvalidNamespaceName.Format', 'errorMessage' => 'The specified NamespaceName is invalid. The name of the namespace cannot exceed 63 characters in length.', 'description' => '指定的NamespaceName不合法。命名空间名称的长度不能超过63个字符。'], + ['errorCode' => 'System.Upgrading', 'errorMessage' => 'The system is being upgraded. Please try again later.', 'description' => '系统正在升级,请稍后操作。'], + ['errorCode' => 'Exceed.Namespace', 'errorMessage' => 'Too many namespaces have been created.', 'description' => '创建的命名空间过多。'], + ['errorCode' => 'InvalidNamespaceId.Format', 'errorMessage' => 'The specified NamespaceId is invalid.', 'description' => '指定的NamespaceId不合法。正确格式为[所属regionId]:[命名空间标识],例如cn-beijing:test,并且长度不能超过32个字符。'], + ], 404 => [ - [ - 'errorCode' => 'InvalidAppId.NotFound', - 'errorMessage' => 'The specified AppId does not exist.', + ['errorCode' => 'InvalidNamespaceId.NotFound', 'errorMessage' => 'The specified NamespaceId does not exist.', 'description' => '指定的NamespaceId不存在。'], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"NamespaceDescription\\": \\"desc\\",\\n \\"NamespaceId\\": \\"cn-beijing:test\\",\\n \\"NamespaceName\\": \\"name\\",\\n \\"RegionId\\": \\"cn-beijing\\",\\n \\"NameSpaceShortId\\": \\"test\\",\\n \\"EnableMicroRegistration\\": true\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<UpdateNamespaceResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <NamespaceDescription>desc</NamespaceDescription>\\n <NamespaceId>cn-beijing:test</NamespaceId>\\n <NamespaceName>name</NamespaceName>\\n <RegionId>cn-beijing</RegionId>\\n <NameSpaceShortId>test</NameSpaceShortId>\\n <EnableMicroRegistration>true</EnableMicroRegistration>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</UpdateNamespaceResponse>","errorExample":""}]', + 'title' => '更新命名空间信息', + 'summary' => '更新命名空间信息。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:23.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2023-03-10T06:42:07.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2022-12-29T03:14:27.000Z', 'description' => '请求参数发生变更、响应参数发生变更'], + ['createdAt' => '2022-04-11T09:02:01.000Z', 'description' => '请求参数发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdateNamespace'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'sae:UpdateNamespace', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": \\"{\\\\\\"msg\\\\\\": \\\\\\"\\\\\\",\\\\\\"code\\\\\\": 200,\\\\\\"success\\\\\\": true}\\",\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeleteHistoryJobResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>{msg: \\"\\", code: 200, success: true}</Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DeleteHistoryJobResponse>","errorExample":""}]', - 'title' => 'DeleteHistoryJob', ], - 'DeleteJob' => [ - 'path' => '/pop/v1/sam/job/deleteJob', - 'methods' => [ - 'delete', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'UpdateNamespaceSlsConfigs' => [ + 'summary' => '更新命名空间级别sls配置', + 'path' => '/pop/cas/namespace/updateNamespaceSlsConfigs', + 'methods' => ['post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'abilityTreeCode' => '100737', - 'abilityTreeNodes' => [ - 'FEATUREsaeD9PL61', - ], + 'operationType' => 'update', + 'abilityTreeCode' => '288126', + 'abilityTreeNodes' => ['FEATUREsaeW0M31R'], + 'tenantRelevance' => 'tenant', ], 'parameters' => [ [ - 'name' => 'AppId', + 'name' => 'NamespaceId', 'in' => 'query', - 'schema' => [ - 'description' => '要删除的任务模板ID。', - 'type' => 'string', - 'required' => true, - 'example' => '017f39b8-dfa4-4e16-a84b-1dcee4b1****', - ], + 'schema' => ['description' => '命名空间ID', 'type' => 'string', 'required' => false, 'example' => 'cn-beijing:test'], + ], + [ + 'name' => 'NameSpaceShortId', + 'in' => 'query', + 'schema' => ['description' => '短版命名空间ID,不需要带上region,推荐。', 'type' => 'string', 'required' => false, 'example' => 'test'], + ], + [ + 'name' => 'SlsConfigs', + 'in' => 'query', + 'schema' => ['description' => '日志采集到SLS的配置。'."\n" + ."\n" + .'- 使用SAE自动创建的SLS资源:`[{"logDir":"","logType":"stdout"},{"logDir":"/tmp/a.log"}]`。'."\n" + .'- 使用自定义的SLS资源:`[{"projectName":"test-sls","logType":"stdout","logDir":"","logstoreName":"sae","logtailName":""},{"projectName":"test","logDir":"/tmp/a.log","logstoreName":"sae","logtailName":""}]`。'."\n" + ."\n" + .'参数说明如下:'."\n" + ."\n" + .'- **projectName**:配置SLS上的Project名称。 '."\n" + .'- **logDir**:日志路径。'."\n" + .'- **logType**:日志类型。**stdout**表示容器标准输出日志,仅可设置1条;如果不设置,则表示收集文件日志。'."\n" + .'- **logstoreName**:配置SLS上的Logstore名称。'."\n" + .'- **logtailName**:配置SLS上的Logtail名称,如果不指定,则表示新建Logtail。'."\n" + ."\n" + .'多次部署时如果SLS采集配置没有变更,则不需要设置该参数(即请求中无需包含**SlsConfigs**字段);如果不再需要使用SLS采集功能,您需要在请求中将该字段的值设置为空字符串(即请求中**SlsConfigs**字段的值为"")。'."\n" + ."\n" + .'> 随任务模板自动创建的Project会随着任务模板删除而删除,因此在选择已有Project时,不能选择SAE自动创建的Project。', 'type' => 'string', 'required' => false, 'example' => '[{"projectName":"test","logDir":"/tmp/a.log","logstoreName":"sae","logtailName":""}]'], + ], + [ + 'name' => 'SlsLogEnvTags', + 'in' => 'query', + 'schema' => ['description' => 'sls log tags', 'type' => 'string', 'required' => false], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'description' => '返回数据。', + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], - 'Data' => [ - 'description' => '返回结果。', - 'type' => 'string', - 'example' => '{"msg": "","code": 200,"success": true}', - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '删除任务模板是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:删除成功。'."\n" - .'- **false**:删除失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'requestId' => ['title' => 'Id of the request', 'description' => 'Id of the request', 'type' => 'string', 'example' => 'AD0286B2-F4A4-5D43-9329-97DEF1019F06'], + 'Message' => ['description' => '附加信息', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:2xx:成功。3xx:重定向。4xx:请求错误。5xx:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '更新命名空间sls配置是否成功。取值说明如下:true:获取成功。 false:获取失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ 404 => [ - [ - 'errorCode' => 'InvalidAppId.NotFound', - 'errorMessage' => 'The specified AppId does not exist.', + ['errorCode' => 'InvalidNamespaceId.NotFound', 'errorMessage' => 'The specified NamespaceId does not exist.', 'description' => '指定的NamespaceId不存在。'], + ], + ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"AD0286B2-F4A4-5D43-9329-97DEF1019F06\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => '更新命名空间的sls配置', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:25.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2025-12-22T06:16:48.000Z', 'description' => '请求参数发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'sae:UpdateNamespaceSlsConfigs', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": \\"{\\\\\\"msg\\\\\\": \\\\\\"\\\\\\",\\\\\\"code\\\\\\": 200,\\\\\\"success\\\\\\": true}\\",\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeleteJobResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>{msg: \\"\\", code: 200, success: true}</Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DeleteJobResponse>","errorExample":""}]', - 'title' => 'DeleteJob', - 'summary' => '删除任务模板。', ], - 'DescribeJobStatus' => [ - 'path' => '/pop/v1/sam/job/describeJobStatus', - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'UpdateNamespaceVpc' => [ + 'path' => '/pop/v1/sam/namespace/updateNamespaceVpc', + 'methods' => ['post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'abilityTreeCode' => '100738', - 'abilityTreeNodes' => [ - 'FEATUREsaeD9PL61', - ], + 'operationType' => 'update', + 'abilityTreeCode' => '6404', + 'abilityTreeNodes' => ['FEATUREsaeD9PL61'], ], 'parameters' => [ [ - 'name' => 'AppId', + 'name' => 'NamespaceId', 'in' => 'query', - 'schema' => [ - 'description' => '任务模板ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'e1a7a07-abcb-4652-a1d3-2d57f415****', - ], + 'schema' => ['description' => '长版命名空间ID。如果设置了该参数会继续生效而忽略NameSpaceShortId,该参数是为了兼容保留,推荐使用短版命名空间ID,简化参数。', 'type' => 'string', 'required' => false, 'example' => 'cn-beijing:test'], ], [ - 'name' => 'JobId', + 'name' => 'VpcId', 'in' => 'query', - 'schema' => [ - 'description' => '任务ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'event-b798157b-40a2-4388-b578-71fb897103**-**', - ], + 'schema' => ['description' => 'VPC ID。用于替换现有的VPC ID。', 'type' => 'string', 'required' => true, 'example' => 'vpc-2ze0i263cnn311nvj****'], + ], + [ + 'name' => 'NameSpaceShortId', + 'in' => 'query', + 'schema' => ['description' => '短版命名空间ID,不需要带上region,推荐。', 'type' => 'string', 'required' => false, 'example' => 'test'], ], ], 'responses' => [ @@ -37359,167 +22921,104 @@ 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '53F15A18-8079-5992-810C-0211A5AE****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0b1639af16575057857241351e****', - ], - 'Data' => [ - 'description' => '返回数据。', - 'type' => 'object', - 'properties' => [ - 'JobId' => [ - 'description' => '任务ID。', - 'type' => 'string', - 'example' => 'event-b798157b-40a2-4388-b578-71fb897103**-**', - ], - 'Active' => [ - 'description' => '正在运行的实例数。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '0', - ], - 'Succeeded' => [ - 'description' => '运行成功的实例数。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '3', - ], - 'Failed' => [ - 'description' => '运行失败的实例数。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '0', - ], - 'StartTime' => [ - 'description' => '任务的创建时间。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1657522800', - ], - 'CompletionTime' => [ - 'description' => '任务执行的完成时间。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1657522839', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'State' => [ - 'description' => '任务的运行状态。取值说明如下:'."\n" - ."\n" - .'- **0**:未执行。'."\n" - .'- **1**:执行成功。'."\n" - .'- **2**:执行失败。'."\n" - .'- **3**:正在执行。', - 'type' => 'string', - 'example' => '1', - ], - ], - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**目录。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '查询任务状态是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:查询成功。'."\n" - .'- **false**:查询失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '更新VPC信息是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:更新成功。'."\n" + .'- **false**:更新失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ - 404 => [ - [ - 'errorCode' => 'InvalidAppId.NotFound', - 'errorMessage' => 'The specified AppId does not exist.', - ], + 400 => [ + ['errorCode' => 'DeleteFail.NamespaceHasIngress', 'errorMessage' => 'Ingress detected when deleting the namespace.', 'description' => '删除命名空间时,命名空间存在Ingress。'], + ['errorCode' => 'Namespace.AppExists', 'errorMessage' => 'Please delete the application first.', 'description' => '请先删除应用。'], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"53F15A18-8079-5992-810C-0211A5AE****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0b1639af16575057857241351e****\\",\\n \\"Data\\": {\\n \\"JobId\\": \\"event-b798157b-40a2-4388-b578-71fb897103**-**\\",\\n \\"Active\\": 0,\\n \\"Succeeded\\": 3,\\n \\"Failed\\": 0,\\n \\"StartTime\\": 1657522800,\\n \\"CompletionTime\\": 1657522839,\\n \\"Message\\": \\"success\\",\\n \\"State\\": \\"1\\"\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeJobStatusResponse>\\n <RequestId>53F15A18-8079-5992-810C-0211A5AE****</RequestId>\\n <Message>success</Message>\\n <TraceId>0b1639af16575057857241351e****</TraceId>\\n <Data>\\n <JobId>event-b798157b-40a2-4388-b578-71fb897103**-**</JobId>\\n <Active>0</Active>\\n <Succeeded>3</Succeeded>\\n <Failed>0</Failed>\\n <StartTime>1657522800</StartTime>\\n <CompletionTime>1657522839</CompletionTime>\\n <Message>success</Message>\\n <State>1</State>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeJobStatusResponse>","errorExample":""}]', - 'title' => 'DescribeJobStatus', - 'summary' => '调用DescribeJobStatus接口查询任务状态。', - ], - 'DescribeJob' => [ - 'path' => '/pop/v1/sam/job/describeJob', - 'methods' => [ - 'get', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<UpdateNamespaceVpcResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Code>200</Code>\\n <Success>true</Success>\\n</UpdateNamespaceVpcResponse>","errorExample":""}]', + 'title' => '更新命名空间绑定的vpc', + 'summary' => '调用UpdateNamespaceVpc接口更新命名空间绑定的VPC。', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:23.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2022-12-29T03:14:27.000Z', 'description' => '请求参数发生变更'], ], - 'schemes' => [ - 'http', - 'https', + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '40', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdateNamespaceVpc'], + ], ], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'sae:UpdateNamespaceVpc', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], + ], + ], + 'UpdateSecret' => [ + 'summary' => '调用UpdateSecret接口更新Secret实例。', + 'path' => '/pop/v1/sam/secret/secret', + 'methods' => ['put'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '100736', - 'abilityTreeNodes' => [ - 'FEATUREsaeN5OIM9', - ], + 'abilityTreeCode' => '159988', + 'abilityTreeNodes' => ['FEATUREsaeD9PL61'], ], 'parameters' => [ [ - 'name' => 'AppId', + 'name' => 'NamespaceId', 'in' => 'query', - 'schema' => [ - 'description' => '任务模板ID。', - 'type' => 'string', - 'required' => true, - 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****', - ], + 'schema' => ['description' => 'Secret实例所在命名空间ID。如果所在命名空间为默认命名空间,则只需填写RegionId,例如`cn-beijing`。', 'type' => 'string', 'required' => true, 'example' => 'cn-beijing:test'], ], [ - 'name' => 'JobId', + 'name' => 'SecretId', + 'in' => 'query', + 'schema' => ['description' => 'Secret实例ID。', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'maximum' => '1000000000', 'minimum' => '1', 'example' => '16'], + ], + [ + 'name' => 'SecretData', 'in' => 'query', + 'style' => 'json', 'schema' => [ - 'description' => '任务ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'event-b798157b-40a2-4388-b578-71fb897103**-**', + 'description' => 'Secret数据。', + 'type' => 'object', + 'properties' => [ + 'SecretData' => ['description' => 'Secret键值对数据,为必填项。格式如下:'."\n" + ."\n" + .'{"Data":"{\\"k1\\":\\"v1\\", \\"k2\\":\\"v2\\"}"}'."\n" + ."\n" + .'k表示键,v表示值。关于配置项的更多信息,请参见[管理和使用保密字典](~~463383~~)。', 'type' => 'string', 'required' => true, 'example' => '{".dockerconfigjson":"eyJhdXRocyI6eyJyZWdpc3RyeS12cGMuY24tYmVpamluZy5hbGl5dW5jcy5jb20iOnsidXNlcm5hbWUiOiJ1c2VybmFtZSIsInBhc3N3b3JkIjoicGFzc3dvcmQiLCJhdXRoIjoiZFhObGNtNWhiV1U2Y0dGemMzZHZjbVE9In0sInJlZ2lzdHJ5LmNuLWJlaWppbmcuYWxpeXVuY3MuY29tIjp7InVzZXJuYW1lIjoidXNlcm5hbWUiLCJwYXNzd29yZCI6InBhc3N3b3JkIiwiYXV0aCI6ImRYTmxjbTVoYldVNmNHRnpjM2R2Y21RPSJ9fX0="}'], + ], + 'required' => true, ], ], ], @@ -37529,1255 +23028,452 @@ 'description' => '返回数据。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '01CF26C7-00A3-4AA6-BA76-7E95F2A3****', - ], - 'Message' => [ - 'description' => '调用结果的附加信息。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => 'ac1a0b2215622246421415014e****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '调用结果的附加信息。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], 'Data' => [ - 'description' => '任务模板信息。', + 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'VpcId' => [ - 'description' => 'VPC ID。', - 'type' => 'string', - 'example' => 'vpc-2ze0i263cnn311nvj****', - ], - 'ConfigMapMountDesc' => [ - 'description' => 'ConfigMap信息。', - 'type' => 'array', - 'items' => [ - 'description' => 'ConfigMap信息。', - 'type' => 'object', - 'properties' => [ - 'Key' => [ - 'description' => 'ConfigMap键值对。', - 'type' => 'string', - 'example' => 'k1', - ], - 'ConfigMapName' => [ - 'description' => 'ConfigMap名称。', - 'type' => 'string', - 'example' => 'test', - ], - 'MountPath' => [ - 'description' => '容器挂载路径。', - 'type' => 'string', - 'example' => '/tmp', - ], - 'ConfigMapId' => [ - 'description' => 'ConfigMap ID。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1', - ], - ], - ], - ], - 'SecurityGroupId' => [ - 'description' => '安全组ID。', - 'type' => 'string', - 'example' => 'sg-wz969ngg2e49q5i4****', - ], - 'Jdk' => [ - 'description' => '部署包依赖的JDK版本。支持版本如下:'."\n" - ."\n" - .'- **Open JDK 8**'."\n" - .'- **Open JDK 7**'."\n" - .'- **Dragonwell 11**'."\n" - .'- **Dragonwell 8**'."\n" - .'- **openjdk-8u191-jdk-alpine3.9**'."\n" - .'- **openjdk-7u201-jdk-alpine3.9**'."\n" - ."\n" - .'当**Package Type**为**Image**时不支持。', - 'type' => 'string', - 'example' => 'Open JDK 8', - ], - 'ImageUrl' => [ - 'description' => '镜像地址。当**Package Type**为**Image**时必填。', - 'type' => 'string', - 'example' => 'docker.io/library/nginx:1.14.2', - ], - 'SlsConfigs' => [ - 'description' => '日志采集到SLS的配置。'."\n" - ."\n" - .'- 使用SAE自动创建的SLS资源:`[{"logDir":"","logType":"stdout"},{"logDir":"/tmp/a.log"}]`。'."\n" - .'- 使用自定义的SLS资源:`[{"projectName":"test-sls","logType":"stdout","logDir":"","logstoreName":"sae","logtailName":""},{"projectName":"test","logDir":"/tmp/a.log","logstoreName":"sae","logtailName":""}]`。'."\n" - ."\n" - .'参数说明如下:'."\n" - ."\n" - .'- **projectName**:配置SLS上的Project名称。 '."\n" - .'- **logDir**:日志路径。'."\n" - .'- **logType**:日志类型。**stdout**表示容器标准输出日志,仅可设置1条;如果不设置,则表示收集文件日志。'."\n" - .'- **logstoreName**:配置SLS上的Logstore名称。'."\n" - .'- **logtailName**:配置SLS上的Logtail名称,如果不指定,则表示新建Logtail。'."\n" - ."\n" - .'多次部署时如果SLS采集配置没有变更,则不需要设置该参数(即请求中无需包含**SlsConfigs**字段);如果不再需要使用SLS采集功能,您需要在请求中将该字段的值设置为空字符串(即请求中**SlsConfigs**字段的值为"")。', - 'type' => 'string', - 'example' => '[{"logDir":"","logType":"stdout"},{"logDir":"/tmp/a.log"}]', - ], - 'Tags' => [ - 'description' => '标签信息。', - 'type' => 'array', - 'items' => [ - 'description' => '标签信息。', - 'type' => 'object', - 'properties' => [ - 'Key' => [ - 'description' => '标签键。', - 'type' => 'string', - 'example' => 'k1', - ], - 'Value' => [ - 'description' => '标签值。', - 'type' => 'string', - 'example' => 'v1', - ], - ], - ], - ], - 'PackageUrl' => [ - 'description' => '部署包地址。当**Package Type**为**FatJar**或**War**时必填。', - 'type' => 'string', - 'example' => 'https://edas-bj.oss-cn-beijing.aliyuncs.com/apps/K8s_APP_ID/d4c97c37-aba3-403e-ae1e-6f7d8742****/hello-sae.war', - ], - 'PackageType' => [ - 'description' => '任务包类型。取值说明如下:'."\n" - ."\n" - .'- 当您选择用Java部署时,支持**FatJar**、**War**和**Image**。'."\n" - .'- 当您选择用PHP部署时,支持类型如下:'."\n" - .' - **PhpZip**'."\n" - .' - **IMAGE\\_PHP\\_5\\_4**'."\n" - .' - **IMAGE\\_PHP\\_5\\_4\\_ALPINE**'."\n" - .' - **IMAGE\\_PHP\\_5\\_5**'."\n" - .' - **IMAGE\\_PHP\\_5\\_5\\_ALPINE**'."\n" - .' - **IMAGE\\_PHP\\_5\\_6**'."\n" - .' - **IMAGE\\_PHP\\_5\\_6\\_ALPINE**'."\n" - .' - **IMAGE\\_PHP\\_7\\_0**'."\n" - .' - **IMAGE\\_PHP\\_7\\_0\\_ALPINE**'."\n" - .' - **IMAGE\\_PHP\\_7\\_1**'."\n" - .' - **IMAGE\\_PHP\\_7\\_1\\_ALPINE**'."\n" - .' - **IMAGE\\_PHP\\_7\\_2**'."\n" - .' - **IMAGE\\_PHP\\_7\\_2\\_ALPINE**'."\n" - .' - **IMAGE\\_PHP\\_7\\_3**'."\n" - .' - **IMAGE\\_PHP\\_7\\_3\\_ALPINE**'."\n" - .'- 当您选择用Python部署时,支持**PythonZip**和**Image**。', - 'type' => 'string', - 'example' => 'War', - ], - 'PreStop' => [ - 'description' => '容器停止前执行脚本。在容器被删除前触发执行一段脚本,格式如:`{"exec":{"command":\\["cat","/etc/group"\\]}}`', - 'type' => 'string', - 'example' => '{"exec":{"command":["cat","/etc/group"]}}', - ], - 'PackageVersion' => [ - 'description' => '部署包的版本号。当**Package Type**为**FatJar**或**War**时必填。', - 'type' => 'string', - 'example' => '1.0', - ], - 'JarStartArgs' => [ - 'description' => 'JAR包启动任务参数。任务默认启动命令:`$JAVA_HOME/bin/java $JarStartOptions -jar $CATALINA_OPTS "$package_path" $JarStartArgs`', - 'type' => 'string', - 'example' => 'start', - ], - 'AppName' => [ - 'description' => '任务模板名称。', - 'type' => 'string', - 'example' => 'demo-app', - ], - 'AppId' => [ - 'description' => '任务模板ID。', - 'type' => 'string', - 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****', - ], - 'JarStartOptions' => [ - 'description' => 'JAR包启动任务选项。任务默认启动命令:`$JAVA_HOME/bin/java $JarStartOptions -jar $CATALINA_OPTS "$package_path" $JarStartArgs`', - 'type' => 'string', - 'example' => '-Dtest=true', - ], - 'Replicas' => [ - 'description' => '任务实例个数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '2', - ], - 'Memory' => [ - 'description' => '每个实例所需的内存,单位为MB,不能为0。与CPU为一一对应关系,目前仅支持以下固定规格:'."\n" - .'- **1024**:对应CPU为500毫核和1000毫核。'."\n" - .'- **2048**:对应CPU为500、1000毫核和2000毫核。'."\n" - .'- **4096**:对应CPU为1000、2000毫核和4000毫核。'."\n" - .'- **8192**:对应CPU为2000、4000毫核和8000毫核。'."\n" - .'- **12288**:对应CPU为12000毫核。'."\n" - .'- **16384**:对应CPU为4000、8000毫核和16000毫核。'."\n" - .'- **24576**:对应CPU为12000毫核。'."\n" - .'- **32768**:对应CPU为16000毫核。'."\n" - .'- **65536**:对应CPU为8000、16000和32000毫核。'."\n" - .'- **131072**:对应CPU为32000毫核。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '2048', - ], - 'PhpConfig' => [ - 'description' => 'PHP配置文件内容。', - 'type' => 'string', - 'example' => 'k1=v1', - ], - 'PhpConfigLocation' => [ - 'description' => 'PHP任务启动配置挂载路径,需要您保证PHP服务器会使用这个配置文件启动。', - 'type' => 'string', - 'example' => '/usr/local/etc/php/php.ini', - ], - 'PostStart' => [ - 'description' => '容器启动后执行脚本。在容器被创建后立刻触发执行一段脚本,格式如:`{"exec":{"command":\\["cat","/etc/group"\\]}}`', - 'type' => 'string', - 'example' => '{"exec":{"command":["cat","/etc/group"]}}', - ], - 'TerminationGracePeriodSeconds' => [ - 'description' => '优雅下线超时时间,默认为30,单位为秒。取值范围为1~300。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'CommandArgs' => [ - 'description' => '镜像启动命令参数。启动命令**Command**所需参数。格式如下:'."\n" - ."\n" - .'`["a","b"]`'."\n" - ."\n" - .'在**Command**参数的示例中,`CommandArgs=["abc", ">", "file0"]`,其中`["abc", ">", "file0"]`需要转成String类型,里面的格式为JSON数组。如果无此参数,则无需填写。', - 'type' => 'string', - 'example' => '["a","b"]', - ], - 'NamespaceId' => [ - 'description' => '命名空间ID。', - 'type' => 'string', - 'example' => 'cn-beijing:test', - ], - 'MountHost' => [ - 'description' => 'NAS在任务模板VPC内的挂载点。部署时如果配置没有变更,则不需要设置该参数(即请求中无需包含**MountHost**字段);如果需要清除NAS配置,您需要在请求中将该字段的值设置为空字符串(即请求中**MountHost**字段的值为"")。', - 'type' => 'string', - 'example' => 'example.com', - ], - 'TomcatConfig' => [ - 'description' => 'Tomcat文件配置,设置为""或"{}"表示删除配置:'."\n" - ."\n" - .'- **port**:端口范围为1024~65535,小于1024的端口需要Root权限才能操作。因为容器配置的是Admin权限,所以请填写大于1024的端口。如果不配置,则默认为8080。'."\n" - .'- **contextPath**:访问路径,默认为根目录"/"。'."\n" - .'- **maxThreads**:配置连接池的连接数大小,默认大小为400。'."\n" - .'- **uriEncoding**:Tomcat的编码格式,包括**UTF-8**、**ISO-8859-1**、**GBK**和**GB2312**。如果不设置,则默认为**ISO-8859-1**。'."\n" - .'- **useBodyEncoding**:是否使用**BodyEncoding for URL**,默认为**true**。', - 'type' => 'string', - 'example' => '{"port":8080,"contextPath":"/","maxThreads":400,"uriEncoding":"ISO-8859-1","useBodyEncodingForUri":true}', - ], - 'RegionId' => [ - 'description' => '地域ID。', - 'type' => 'string', - 'example' => 'cn-beijing', - ], - 'VSwitchId' => [ - 'description' => 'vSwitch ID。', - 'type' => 'string', - 'example' => 'vsw-2ze559r1z1bpwqxwp****', - ], - 'Cpu' => [ - 'description' => '每个实例所需的CPU,单位为毫核,不能为0。目前仅支持以下固定规格:'."\n" - ."\n" - .'- **500**'."\n" - .'- **1000**'."\n" - .'- **2000**'."\n" - .'- **4000**'."\n" - .'- **8000**'."\n" - .'- **16000**'."\n" - .'- **32000**', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1000', - ], - 'Envs' => [ - 'description' => '容器环境变量参数。支持自定义或引用配置项。如需引用配置项,请先创建ConfigMap实例。更多信息,请参见[CreateConfigMap](~~176914~~)。取值说明如下:'."\n" - .'- 自定义配置'."\n" - .' - **name**:环境变量名称。'."\n" - .' - **value**:环境变量值。'."\n" - .'- 引用配置项'."\n" - .' - **name**:环境变量名称。支持引用单个或全部键,如果引用全部键,需输入`sae-sys-configmap-all-<配置项名称>`,例如`sae-sys-configmap-all-test1`。'."\n" - .' - **valueFrom**:环境变量引用。取值为`configMapRef`。'."\n" - .' - **configMapId**:配置项ID。'."\n" - .' - **key**:键。如果引用全部健值,则不设置该字段。', - 'type' => 'string', - 'example' => '[{"name":"TEST_ENV_KEY","value":"TEST_ENV_VAR"}]', - ], - 'MountDesc' => [ - 'description' => '挂载描述信息。', - 'type' => 'array', - 'items' => [ - 'description' => '挂载描述信息。', - 'type' => 'object', - 'properties' => [ - 'MountPath' => [ - 'description' => '容器挂载路径。', - 'type' => 'string', - 'example' => '/tmp', - ], - 'NasPath' => [ - 'description' => 'NAS相对文件目录。', - 'type' => 'string', - 'example' => '/', - ], - ], - ], - ], - 'CustomHostAlias' => [ - 'description' => '容器内自定义Host映射。取值说明如下:'."\n" - ."\n" - .'- **hostName**:域名或主机名。'."\n" - .'- **ip**:IP地址。', - 'type' => 'string', - 'example' => '[{"hostName":"test.host.name","ip":"0.0.0.0"}]', - ], - 'WebContainer' => [ - 'description' => '部署包依赖的Tomcat版本。支持版本如下:'."\n" - ."\n" - .'- **apache-tomcat-7.0.91**'."\n" - .'- **apache-tomcat-8.5.42**'."\n" - ."\n" - .'当**Package Type**为**Image**时不支持。', - 'type' => 'string', - 'example' => 'apache-tomcat-7.0.91', - ], - 'Command' => [ - 'description' => '镜像启动命令。该命令必须为容器内存在的可执行的对象。示例如下:'."\n" - ."\n" - .'```'."\n" - .'command:'."\n" - .' - echo'."\n" - .' - abc'."\n" - .' - >'."\n" - .' - file0'."\n" - .'```'."\n" - .'根据上述示例,则`Command="echo", CommandArgs=["abc", ">", "file0"]`。', - 'type' => 'string', - 'example' => 'echo', - ], - 'WarStartOptions' => [ - 'description' => 'WAR包启动任务选项。任务默认启动命令:`java $JAVA_OPTS $CATALINA_OPTS -Options org.apache.catalina.startup.Bootstrap "$@" start`。', - 'type' => 'string', - 'example' => 'custom-option', - ], - 'NasId' => [ - 'description' => 'NAS ID。', - 'type' => 'string', - 'example' => 'AKSN89**', - ], - 'OssAkId' => [ - 'title' => 'OSS读写的AK', - 'description' => 'OSS读写的AccessKey ID。', - 'type' => 'string', - 'example' => 'xxxxxx', - ], - 'OssAkSecret' => [ - 'title' => 'OSS读写的secret', - 'description' => 'OSS读写的AccessKey Secret。', - 'type' => 'string', - 'example' => 'xxxxxx', - ], - 'OssMountDescs' => [ - 'title' => 'OSS挂载描述信息', - 'description' => 'OSS挂载描述信息。', - 'type' => 'array', - 'items' => [ - 'description' => 'OSS挂载描述信息。', - 'type' => 'object', - 'properties' => [ - 'bucketName' => [ - 'title' => 'Bucket名称', - 'description' => 'Bucket名称。', - 'type' => 'string', - 'example' => 'oss-bucket', - ], - 'bucketPath' => [ - 'title' => 'Bucket中Oss Key名称', - 'description' => '您在OSS创建的目录或OSS对象,如果OSS挂载目录不存在,会触发异常。', - 'type' => 'string', - 'example' => 'data/user.data', - ], - 'mountPath' => [ - 'title' => '挂载到容器的路径', - 'description' => '您在SAE的容器路径。如果路径已存在,为覆盖关系;如果路径不存在,会新建。', - 'type' => 'string', - 'example' => '/usr/data/user.data', - ], - 'readOnly' => [ - 'title' => '是否只读', - 'description' => '容器路径是否对挂载目录资源有可读权限,取值说明如下:'."\n" - ."\n" - .'- **true**:只读权限。'."\n" - .'- **false**:读写权限。', - 'type' => 'boolean', - 'example' => 'true', - ], - ], - ], - ], - 'EdasContainerVersion' => [ - 'description' => 'HSF框架中任务运行环境版本,例如Ali-Tomcat容器。', - 'type' => 'string', - 'example' => '3.5.3', - ], - 'Timezone' => [ - 'description' => '时区,默认为**Asia/Shanghai**。', - 'type' => 'string', - 'example' => 'Asia/Shanghai', - ], - 'AppDescription' => [ - 'description' => '任务模板描述信息。', - 'type' => 'string', - 'example' => '示例应用', - ], - 'AcrInstanceId' => [ - 'title' => 'ACR 企业版实例 ID', - 'description' => 'ACR企业版实例ID。', - 'type' => 'string', - 'example' => 'cri-xxxxxx', - ], - 'AcrAssumeRoleArn' => [ - 'description' => '跨账号拉取镜像时所需的RAM角色的ARN。更多信息,请参见[跨账号拉取阿里云镜像](~~190675~~)和[通过RAM角色实现跨云账号授权](~~223585~~)。', - 'type' => 'string', - 'example' => 'acs:ram::123456789012****:role/adminrole', - ], - 'ImagePullSecrets' => [ - 'description' => '对应保密字典ID。', - 'type' => 'string', - 'example' => '10', - ], - 'TriggerConfig' => [ - 'description' => '任务触发配置,根据任务类型进行配置。'."\n" - .'- **定时任务**:**type**字段设为time,**config**字段为具体Cron表达式,**timezone**字段为指定时区。'."\n" - .'配置示例:`{"type":"time","config":"0 1 */1 * ?","timezone":"GMT+8:00"}`'."\n" - .'- **一次性任务**:**type**字段设为http,**config**配置具体的HTTP触发规则。更多信息,请参见[请求参数SourceHttpEventParameters](https://help.aliyun.com/document_detail/347586.html#section-lp1-vq0-ho3)。'."\n" - .'配置示例:`{"type":"http","config":{"type":"HTTPS","method"、["GET"],"ip":[],"referer":[],"securityConfig":"none"}}`', - 'type' => 'string', - 'example' => '{"type":"time","config":"0 1 */1 * ?","timezone":"GMT+8:00"}', - ], - 'ConcurrencyPolicy' => [ - 'description' => '任务并发策略。取值说明如下:'."\n" - ."\n" - .'- **Forbid**:禁止并发运行,在前一个任务未完成时,不创建新任务。'."\n" - .'- **Allow**:允许并发运行任务。'."\n" - .'- **Replace**:当到达新任务创建时间点,而前一个任务未完成时,新的任务会取代前一个任务。', - 'type' => 'string', - 'example' => 'Allow', - ], - 'Suspend' => [ - 'description' => '是否暂停任务模板。', - 'type' => 'boolean', - 'example' => 'false', - ], - 'Timeout' => [ - 'description' => '任务超时时间,单位为秒。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '3600', - ], - 'BackoffLimit' => [ - 'description' => '任务重试次数。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '3', - ], - 'Slice' => [ - 'description' => '启用任务分片。', - 'type' => 'boolean', - 'example' => 'true', - ], - 'SliceEnvs' => [ - 'description' => '任务分片参数。', - 'type' => 'string', - 'example' => 'SliceEnvs', - ], - 'RefAppId' => [ - 'description' => '引用的任务模板ID。', - 'type' => 'string', - 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****', - ], - 'RefedAppIds' => [ - 'description' => '被引用的任务目标ID列表。', - 'type' => 'array', - 'items' => [ - 'description' => '任务模板ID。', - 'type' => 'string', - 'example' => '8621a6ca-d1cd-4928-8642-7d5cfe69****', - ], - ], - 'PublicWebHookUrls' => [ - 'description' => '一次性任务的公网请求 URL列表。', - 'type' => 'array', - 'items' => [ - 'description' => '公网URL。', - 'type' => 'string', - 'example' => 'http://***/webhook/putEvents?token=***', - ], - ], - 'VpcWebHookUrls' => [ - 'description' => '一次性任务的内网请求 URL列表。', - 'type' => 'array', - 'items' => [ - 'description' => '内网URL。', - 'type' => 'string', - 'example' => 'http://***/webhook/putEvents?token=***', - ], - ], - 'ProgrammingLanguage' => [ - 'description' => '创建任务模板的技术栈语言。取值说明如下:'."\n" - ."\n" - .'- **java**:Java语言。'."\n" - .'- **php**:PHP语言。'."\n" - .'- **python**:Python语言。'."\n" - .'- **other**:多语言,例如C++、Go、.NET和Node.js等。', - 'type' => 'string', - 'example' => 'java', - ], - 'NasConfigs' => [ - 'description' => '挂载NAS的配置。', - 'type' => 'string', - 'example' => '[{"mountPath":"/test1","readOnly":false,"nasId":"nasId1","mountDomain":"nasId1.cn-shenzhen.nas.aliyuncs.com","nasPath":"/test1"},{"nasId":"nasId2","mountDomain":"nasId2.cn-shenzhen.nas.aliyuncs.com","readOnly":false,"nasPath":"/test2","mountPath":"/test2"}]', - ], - 'Python' => [ - 'description' => 'Python环境。支持PYTHON 3.9.15。', - 'type' => 'string', - 'example' => 'PYTHON 3.9.15', - ], - 'PythonModules' => [ - 'description' => '自定义安装模块依赖。默认安装根目录下requirements.txt定义的依赖项。如果未配置或自定义软件包,可以指定安装的依赖。', - 'type' => 'string', - 'example' => 'Flask==2.0', - ], - 'BestEffortType' => [ - 'type' => 'string', - ], + 'SecretId' => ['description' => 'Secret实例ID。', 'type' => 'integer', 'format' => 'int64', 'example' => '16'], ], ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '获取任务模板配置信息是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:获取成功。'."\n" - .'- **false**:获取失败。', - 'type' => 'boolean', - 'example' => 'true', - ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '更新Secret实例是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:更新成功。'."\n" + .'- **false**:更新失败。', 'type' => 'boolean', 'example' => 'true'], ], ], ], ], 'errorCodes' => [ - 404 => [ - [ - 'errorCode' => 'InvalidAppId.NotFound', - 'errorMessage' => 'The specified AppId does not exist.', + 400 => [ + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], + ['errorCode' => 'InvalidSecretId.NotFound', 'errorMessage' => 'The specified SecretId [%s] does not exist in our records.', 'description' => '指定的保密字典ID[%s]不存在。'], + ['errorCode' => 'InvalidSecretDataKey.NotFound', 'errorMessage' => 'The specified Key [%s] does not exist in the specified Secret [%s].', 'description' => '指定的保密字典Key不存在于当前保密字典[%s]中'], + ], + 500 => [ + ['errorCode' => 'OperationFailed.RPCError', 'errorMessage' => 'Internal RPC request processing error.', 'description' => '内部RPC请求处理报错。'], + ], + ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"SecretId\\": 16\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<UpdateSecretResponse>\\n <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>\\n <Message>success</Message>\\n <TraceId>0a98a02315955564772843261e****</TraceId>\\n <Data>\\n <SecretId>16</SecretId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</UpdateSecretResponse>","errorExample":""}]', + 'title' => 'UpdateSecret', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:23.000Z', 'description' => 'OpenAPI 下线'], + ['createdAt' => '2023-05-24T05:53:44.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2022-12-05T08:02:45.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2022-11-22T13:28:09.000Z', 'description' => 'OpenAPI 下线'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdateSecret'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => '', + 'ramAction' => [ + 'action' => 'sae:UpdateSecret', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"01CF26C7-00A3-4AA6-BA76-7E95F2A3****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"ac1a0b2215622246421415014e****\\",\\n \\"Data\\": {\\n \\"VpcId\\": \\"vpc-2ze0i263cnn311nvj****\\",\\n \\"ConfigMapMountDesc\\": [\\n {\\n \\"Key\\": \\"k1\\",\\n \\"ConfigMapName\\": \\"test\\",\\n \\"MountPath\\": \\"/tmp\\",\\n \\"ConfigMapId\\": 1\\n }\\n ],\\n \\"SecurityGroupId\\": \\"sg-wz969ngg2e49q5i4****\\",\\n \\"Jdk\\": \\"Open JDK 8\\",\\n \\"ImageUrl\\": \\"docker.io/library/nginx:1.14.2\\",\\n \\"SlsConfigs\\": \\"[{\\\\\\"logDir\\\\\\":\\\\\\"\\\\\\",\\\\\\"logType\\\\\\":\\\\\\"stdout\\\\\\"},{\\\\\\"logDir\\\\\\":\\\\\\"/tmp/a.log\\\\\\"}]\\",\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"k1\\",\\n \\"Value\\": \\"v1\\"\\n }\\n ],\\n \\"PackageUrl\\": \\"https://edas-bj.oss-cn-beijing.aliyuncs.com/apps/K8s_APP_ID/d4c97c37-aba3-403e-ae1e-6f7d8742****/hello-sae.war\\",\\n \\"PackageType\\": \\"War\\",\\n \\"PreStop\\": \\"{\\\\\\"exec\\\\\\":{\\\\\\"command\\\\\\":[\\\\\\"cat\\\\\\",\\\\\\"/etc/group\\\\\\"]}}\\",\\n \\"PackageVersion\\": \\"1.0\\",\\n \\"JarStartArgs\\": \\"start\\",\\n \\"AppName\\": \\"demo-app\\",\\n \\"AppId\\": \\"7171a6ca-d1cd-4928-8642-7d5cfe69****\\",\\n \\"JarStartOptions\\": \\"-Dtest=true\\",\\n \\"Replicas\\": 2,\\n \\"Memory\\": 2048,\\n \\"PhpConfig\\": \\"k1=v1\\",\\n \\"PhpConfigLocation\\": \\"/usr/local/etc/php/php.ini\\",\\n \\"PostStart\\": \\"{\\\\\\"exec\\\\\\":{\\\\\\"command\\\\\\":[\\\\\\"cat\\\\\\",\\\\\\"/etc/group\\\\\\"]}}\\",\\n \\"TerminationGracePeriodSeconds\\": 10,\\n \\"CommandArgs\\": \\"[\\\\\\"a\\\\\\",\\\\\\"b\\\\\\"]\\",\\n \\"NamespaceId\\": \\"cn-beijing:test\\",\\n \\"MountHost\\": \\"example.com\\",\\n \\"TomcatConfig\\": \\"{\\\\\\"port\\\\\\":8080,\\\\\\"contextPath\\\\\\":\\\\\\"/\\\\\\",\\\\\\"maxThreads\\\\\\":400,\\\\\\"uriEncoding\\\\\\":\\\\\\"ISO-8859-1\\\\\\",\\\\\\"useBodyEncodingForUri\\\\\\":true}\\",\\n \\"RegionId\\": \\"cn-beijing\\",\\n \\"VSwitchId\\": \\"vsw-2ze559r1z1bpwqxwp****\\",\\n \\"Cpu\\": 1000,\\n \\"Envs\\": \\"[{\\\\\\"name\\\\\\":\\\\\\"TEST_ENV_KEY\\\\\\",\\\\\\"value\\\\\\":\\\\\\"TEST_ENV_VAR\\\\\\"}]\\",\\n \\"MountDesc\\": [\\n {\\n \\"MountPath\\": \\"/tmp\\",\\n \\"NasPath\\": \\"/\\"\\n }\\n ],\\n \\"CustomHostAlias\\": \\"[{\\\\\\"hostName\\\\\\":\\\\\\"test.host.name\\\\\\",\\\\\\"ip\\\\\\":\\\\\\"0.0.0.0\\\\\\"}]\\",\\n \\"WebContainer\\": \\"apache-tomcat-7.0.91\\",\\n \\"Command\\": \\"echo\\",\\n \\"WarStartOptions\\": \\"custom-option\\",\\n \\"NasId\\": \\"AKSN89**\\",\\n \\"OssAkId\\": \\"xxxxxx\\",\\n \\"OssAkSecret\\": \\"xxxxxx\\",\\n \\"OssMountDescs\\": [\\n {\\n \\"bucketName\\": \\"oss-bucket\\",\\n \\"bucketPath\\": \\"data/user.data\\",\\n \\"mountPath\\": \\"/usr/data/user.data\\",\\n \\"readOnly\\": true\\n }\\n ],\\n \\"EdasContainerVersion\\": \\"3.5.3\\",\\n \\"Timezone\\": \\"Asia/Shanghai\\",\\n \\"AppDescription\\": \\"示例应用\\",\\n \\"AcrInstanceId\\": \\"cri-xxxxxx\\",\\n \\"AcrAssumeRoleArn\\": \\"acs:ram::123456789012****:role/adminrole\\",\\n \\"ImagePullSecrets\\": \\"10\\",\\n \\"TriggerConfig\\": \\"{\\\\\\"type\\\\\\":\\\\\\"time\\\\\\",\\\\\\"config\\\\\\":\\\\\\"0 1 */1 * ?\\\\\\",\\\\\\"timezone\\\\\\":\\\\\\"GMT+8:00\\\\\\"}\\",\\n \\"ConcurrencyPolicy\\": \\"Allow\\",\\n \\"Suspend\\": false,\\n \\"Timeout\\": 3600,\\n \\"BackoffLimit\\": 3,\\n \\"Slice\\": true,\\n \\"SliceEnvs\\": \\"SliceEnvs\\",\\n \\"RefAppId\\": \\"7171a6ca-d1cd-4928-8642-7d5cfe69****\\",\\n \\"RefedAppIds\\": [\\n \\"8621a6ca-d1cd-4928-8642-7d5cfe69****\\"\\n ],\\n \\"PublicWebHookUrls\\": [\\n \\"http://***/webhook/putEvents?token=***\\"\\n ],\\n \\"VpcWebHookUrls\\": [\\n \\"http://***/webhook/putEvents?token=***\\"\\n ],\\n \\"ProgrammingLanguage\\": \\"java\\",\\n \\"NasConfigs\\": \\"[{\\\\\\"mountPath\\\\\\":\\\\\\"/test1\\\\\\",\\\\\\"readOnly\\\\\\":false,\\\\\\"nasId\\\\\\":\\\\\\"nasId1\\\\\\",\\\\\\"mountDomain\\\\\\":\\\\\\"nasId1.cn-shenzhen.nas.aliyuncs.com\\\\\\",\\\\\\"nasPath\\\\\\":\\\\\\"/test1\\\\\\"},{\\\\\\"nasId\\\\\\":\\\\\\"nasId2\\\\\\",\\\\\\"mountDomain\\\\\\":\\\\\\"nasId2.cn-shenzhen.nas.aliyuncs.com\\\\\\",\\\\\\"readOnly\\\\\\":false,\\\\\\"nasPath\\\\\\":\\\\\\"/test2\\\\\\",\\\\\\"mountPath\\\\\\":\\\\\\"/test2\\\\\\"}]\\",\\n \\"Python\\": \\"PYTHON 3.9.15\\",\\n \\"PythonModules\\": \\"Flask==2.0\\",\\n \\"BestEffortType\\": \\"\\"\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeJobResponse>\\n <RequestId>01CF26C7-00A3-4AA6-BA76-7E95F2A3****</RequestId>\\n <Message>success</Message>\\n <TraceId>ac1a0b2215622246421415014e****</TraceId>\\n <Data>\\n <VpcId>vpc-2ze0i263cnn311nvj****</VpcId>\\n <Readiness>{\\"exec\\":{\\"command\\":[\\"curl http://localhost:8080\\"]},\\"initialDelaySeconds\\":20,\\"timeoutSeconds\\":5}</Readiness>\\n <ConfigMapMountDesc>\\n <Key>k1</Key>\\n <ConfigMapName>test</ConfigMapName>\\n <MountPath>/tmp</MountPath>\\n <ConfigMapId>1</ConfigMapId>\\n </ConfigMapMountDesc>\\n <SecurityGroupId>sg-wz969ngg2e49q5i4****</SecurityGroupId>\\n <BatchWaitTime>10</BatchWaitTime>\\n <Jdk>Open JDK 8</Jdk>\\n <ImageUrl>docker.io/library/nginx:1.14.2</ImageUrl>\\n <SlsConfigs>[{\\"logDir\\":\\"\\",\\"logType\\":\\"stdout\\"},{\\"logDir\\":\\"/tmp/a.log\\"}]</SlsConfigs>\\n <Liveness>{\\"exec\\":{\\"command\\":[\\"curl http://localhost:8080\\"]},\\"initialDelaySeconds\\":20,\\"timeoutSeconds\\":3}</Liveness>\\n <Tags>\\n <Key>k1</Key>\\n <Value>v1</Value>\\n </Tags>\\n <PackageUrl>https://edas-bj.oss-cn-beijing.aliyuncs.com/apps/K8s_APP_ID/d4c97c37-aba3-403e-ae1e-6f7d8742****/hello-sae.war</PackageUrl>\\n <PackageType>War</PackageType>\\n <PreStop>{\\"exec\\":{\\"command\\":[\\"cat\\",\\"/etc/group\\"]}}</PreStop>\\n <PackageVersion>1.0</PackageVersion>\\n <JarStartArgs>start</JarStartArgs>\\n <AppName>demo-app</AppName>\\n <AppId>7171a6ca-d1cd-4928-8642-7d5cfe69****</AppId>\\n <JarStartOptions>-Dtest=true</JarStartOptions>\\n <Replicas>2</Replicas>\\n <MinReadyInstances>1</MinReadyInstances>\\n <Memory>2048</Memory>\\n <PhpConfig>k1=v1</PhpConfig>\\n <PhpConfigLocation>/usr/local/etc/php/php.ini</PhpConfigLocation>\\n <PostStart>{\\"exec\\":{\\"command\\":[\\"cat\\",\\"/etc/group\\"]}}</PostStart>\\n <TerminationGracePeriodSeconds>10</TerminationGracePeriodSeconds>\\n <CommandArgs>[\\"a\\",\\"b\\"]</CommandArgs>\\n <NamespaceId>cn-beijing:test</NamespaceId>\\n <MountHost>example.com</MountHost>\\n <TomcatConfig>{\\"port\\":8080,\\"contextPath\\":\\"/\\",\\"maxThreads\\":400,\\"uriEncoding\\":\\"ISO-8859-1\\",\\"useBodyEncodingForUri\\":true}</TomcatConfig>\\n <RegionId>cn-beijing</RegionId>\\n <VSwitchId>vsw-2ze559r1z1bpwqxwp****</VSwitchId>\\n <Cpu>1000</Cpu>\\n <Envs>[{\\"name\\":\\"TEST_ENV_KEY\\",\\"value\\":\\"TEST_ENV_VAR\\"}]</Envs>\\n <MountDesc>\\n <MountPath>/tmp</MountPath>\\n <NasPath>/</NasPath>\\n </MountDesc>\\n <EnableAhas>true</EnableAhas>\\n <CustomHostAlias>[{\\"hostName\\":\\"test.host.name\\",\\"ip\\":\\"0.0.0.0\\"}]</CustomHostAlias>\\n <WebContainer>apache-tomcat-7.0.91</WebContainer>\\n <Command>echo</Command>\\n <WarStartOptions>custom-option</WarStartOptions>\\n <PhpArmsConfigLocation>/usr/local/etc/php/conf.d/arms.ini</PhpArmsConfigLocation>\\n <NasId>AKSN89**</NasId>\\n <OssAkId>xxxxxx</OssAkId>\\n <OssAkSecret>xxxxxx</OssAkSecret>\\n <OssMountDescs>\\n <bucketName>oss-bucket</bucketName>\\n <bucketPath>data/user.data</bucketPath>\\n <mountPath>/usr/data/user.data</mountPath>\\n <readOnly>true</readOnly>\\n </OssMountDescs>\\n <EdasContainerVersion>3.5.3</EdasContainerVersion>\\n <Timezone>Asia/Shanghai</Timezone>\\n <AppDescription>示例应用</AppDescription>\\n <EnableGreyTagRoute>false</EnableGreyTagRoute>\\n <MseApplicationId>xxxxxxx@xxxxx</MseApplicationId>\\n <AcrInstanceId>cri-xxxxxx</AcrInstanceId>\\n <AcrAssumeRoleArn>acs:ram::123456789012****:role/adminrole</AcrAssumeRoleArn>\\n <AssociateEip>true</AssociateEip>\\n <TriggerConfig>{\\"type\\":\\"time\\",\\"config\\":\\"0 1 */1 * ?\\",\\"timezone\\":\\"GMT+8:00\\"}</TriggerConfig>\\n <ConcurrencyPolicy>Allow</ConcurrencyPolicy>\\n <Suspend>false</Suspend>\\n <Timeout>3600</Timeout>\\n <BackoffLimit>3</BackoffLimit>\\n <Slice>true</Slice>\\n <SliceEnvs>SliceEnvs</SliceEnvs>\\n <RefAppId>7171a6ca-d1cd-4928-8642-7d5cfe69****</RefAppId>\\n <RefedAppIds>8621a6ca-d1cd-4928-8642-7d5cfe69****</RefedAppIds>\\n <PublicWebHookUrls>http://***/webhook/putEvents?token=***</PublicWebHookUrls>\\n <VpcWebHookUrls>http://***/webhook/putEvents?token=***</VpcWebHookUrls>\\n <ProgrammingLanguage>java</ProgrammingLanguage>\\n <NasConfigs>[{\\"mountPath\\":\\"/test1\\",\\"readOnly\\":false,\\"nasId\\":\\"nasId1\\",\\"mountDomain\\":\\"nasId1.cn-shenzhen.nas.aliyuncs.com\\",\\"nasPath\\":\\"/test1\\"},{\\"nasId\\":\\"nasId2\\",\\"mountDomain\\":\\"nasId2.cn-shenzhen.nas.aliyuncs.com\\",\\"readOnly\\":false,\\"nasPath\\":\\"/test2\\",\\"mountPath\\":\\"/test2\\"}]</NasConfigs>\\n <Python>PYTHON 3.9.15</Python>\\n <PythonModules>Flask==2.0</PythonModules>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeJobResponse>","errorExample":""}]', - 'title' => '获取任务模板配置信息', - 'summary' => '调用DescribeJob接口获取任务模板配置信息。', - 'requestParamsDescription' => ' ', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', ], - 'ExecJob' => [ - 'path' => '/pop/v1/sam/job/execJob', - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'UpdateSwimmingLaneEnableAttribute' => [ + 'summary' => '更新泳道的启用属性。', + 'path' => '/pop/v1/cas/gray/updateSwimmingLaneEnableAttribute', + 'methods' => ['post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'consumes' => ['application/x-www-form-urlencoded'], + 'produces' => ['application/json'], + 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ - 'abilityTreeCode' => '100732', - 'abilityTreeNodes' => [ - 'FEATUREsaeD9PL61', - ], + 'operationType' => 'update', + 'abilityTreeCode' => '221727', + 'abilityTreeNodes' => ['FEATUREsaeX255DA'], ], 'parameters' => [ [ - 'name' => 'AppId', + 'name' => 'NamespaceId', 'in' => 'query', - 'schema' => [ - 'description' => '任务模板ID', - 'type' => 'string', - 'required' => true, - 'example' => 'ee1a7a07-abcb-4652-a1d3-2d57f415****', - ], + 'schema' => ['description' => '命名空间ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-beijing:test'], ], [ - 'name' => 'EventId', + 'name' => 'GroupId', 'in' => 'query', - 'schema' => [ - 'description' => '事件ID,用户自定义。用作幂等使用,相同事件ID仅创建一个任务。', - 'type' => 'string', - 'required' => false, - 'example' => 'custom', - ], + 'schema' => ['description' => '泳道组ID。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '2074'], ], [ - 'name' => 'Command', + 'name' => 'LaneId', 'in' => 'query', - 'schema' => [ - 'description' => '镜像启动命令。该命令必须为容器内存在的可执行的对象。示例如下:'."\n" - ."\n" - .'```'."\n" - .'command:'."\n" - .' - echo'."\n" - .' - abc'."\n" - .' - >'."\n" - .' - file0'."\n" - .'```'."\n" - .'根据上述示例,则`Command="echo", CommandArgs=["abc", ">", "file0"]`。', - 'type' => 'string', - 'required' => false, - 'example' => 'echo', - ], + 'schema' => ['description' => '泳道ID。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '9637'], ], [ - 'name' => 'CommandArgs', + 'name' => 'Enable', 'in' => 'query', - 'schema' => [ - 'description' => '镜像启动命令参数。上述启动命令**Command**所需参数。格式如下:'."\n" - ."\n" - .'`["a","b"]`'."\n" - ."\n" - .'在上述示例中,`CommandArgs=["abc", ">", "file0"]`,其中`["abc", ">", "file0"]`需要转成String类型,里面的格式为JSON数组。如果无此参数,则无需填写。', - 'type' => 'string', - 'required' => false, - 'example' => '["a","b"]', - ], + 'schema' => ['description' => '泳道状态:'."\n" + ."\n" + .'- true:开启'."\n" + .'- false:关闭', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], - [ - 'name' => 'Envs', - 'in' => 'query', + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '容器环境变量参数。支持自定义或引用配置项。如需引用配置项,请先创建ConfigMap实例。更多信息,请参见[CreateConfigMap](~~176914~~)。取值说明如下:'."\n" - .'- 自定义配置'."\n" - .' - **name**:环境变量名称。'."\n" - .' - **value**:环境变量值。'."\n" - .'- 引用配置项'."\n" - .' - **name**:环境变量名称。支持引用单个或全部键,如果引用全部键,需输入`sae-sys-configmap-all-<配置项名称>`,例如`sae-sys-configmap-all-test1`。'."\n" - .' - **valueFrom**:环境变量引用。取值为`configMapRef`。'."\n" - .' - **configMapId**:配置项ID。'."\n" - .' - **key**:键。如果引用全部健值,则不设置该字段。', - 'type' => 'string', - 'required' => false, - 'example' => '[{"name":"envtmp","value":"0"}]', + 'title' => 'Schema of Response', + 'description' => '返回信息。', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求 ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => 'ac1a0b2215622920113732501e****'], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + ."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:删除成功。'."\n" + .'- **false**:删除失败。', 'type' => 'boolean', 'example' => 'true'], + ], ], ], + ], + 'errorCodes' => [ + 400 => [ + ['errorCode' => 'InvalidParameter.NotEmpty', 'errorMessage' => 'You must specify the parameter %s.', 'description' => '不合法的参数:%s不能为空。'], + ['errorCode' => 'InvalidParameter.Obviously', 'errorMessage' => 'The specified parameter is invalid {%s}.', 'description' => '不合法的参数{%s}。'], + ['errorCode' => 'InvalidParameter.WithMessage', 'errorMessage' => 'The parameter is invalid {%s}: %s', 'description' => '不合法的参数{%s}:%s。'], + ['errorCode' => 'MseGatewayRule.CreateFailed', 'errorMessage' => 'Create MSE Gateway rule failed.', 'description' => '创建MSE微服务网关路由失败。'], + ['errorCode' => 'InternalApiError', 'errorMessage' => 'An exception occurred when calling mse:%s, error message: %s.', 'description' => '调用 mse:%s 接口异常,%s'], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"ac1a0b2215622920113732501e****\\",\\n \\"ErrorCode\\": \\"\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => '更新泳道的启用属性', + 'changeSet' => [ + ['createdAt' => '2025-12-25T03:03:25.000Z', 'description' => 'OpenAPI 下线'], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ [ - 'name' => 'JarStartOptions', - 'in' => 'query', - 'schema' => [ - 'description' => 'JAR包启动任务选项。任务默认启动命令:'."\n" - .'`$JAVA_HOME/bin/java $JarStartOptions -jar $CATALINA_OPTS "$package_path" $JarStartArg`', - 'type' => 'string', - 'required' => false, - 'example' => '-Xms4G -Xmx4G', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'sae:UpdateSwimmingLaneEnableAttribute', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], + ], + ], + 'UpdateWebApplication' => [ + 'summary' => '更新Web应用级别的配置。', + 'path' => '/pop/v2/api/web/applications/{ApplicationId}', + 'methods' => ['put'], + 'schemes' => ['http', 'https'], + 'tags' => [], + 'security' => [ [ - 'name' => 'JarStartArgs', - 'in' => 'query', - 'schema' => [ - 'description' => 'JAR包启动任务参数。任务默认启动命令:'."\n" - .'`$JAVA_HOME/bin/java $JarStartOptions -jar $CATALINA_OPTS "$package_path" $JarStartArgs`', - 'type' => 'string', - 'required' => false, - 'example' => 'custom-args', - ], + 'AK' => [], ], + ], + 'consumes' => ['application/json'], + 'produces' => ['application/json'], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '181749', + 'abilityTreeNodes' => ['FEATUREsaeUWY6ZL'], + ], + 'parameters' => [ [ - 'name' => 'WarStartOptions', + 'name' => 'NamespaceId', 'in' => 'query', - 'schema' => [ - 'description' => '设置WAR包部署任务的启动命令,操作步骤与镜像部署的启动命令配置操作相同。更多信息,请参见[设置启动命令](~~96677~~)。', - 'type' => 'string', - 'required' => false, - 'example' => 'CATALINA_OPTS=\\"$CATALINA_OPTS $Options\\" catalina.sh run', - ], + 'allowEmptyValue' => false, + 'schema' => ['title' => '命名空间ID', 'description' => '命名空间ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-beijing:test'], ], [ - 'name' => 'Time', - 'in' => 'query', - 'schema' => [ - 'description' => '任务触发时间,格式为`yyyy-MM-dd\'T\'HH:mm:ss\'Z\'`。', - 'type' => 'string', - 'required' => false, - 'example' => '2023-09-14T14:25:02Z', - ], + 'name' => 'ApplicationId', + 'in' => 'path', + 'allowEmptyValue' => false, + 'schema' => ['title' => '应用ID', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****'], ], [ - 'name' => 'Replicas', - 'in' => 'query', - 'schema' => [ - 'description' => '任务并发实例数', - 'type' => 'string', - 'required' => false, - 'example' => '3', - ], + 'name' => 'body', + 'in' => 'body', + 'allowEmptyValue' => false, + 'schema' => ['title' => '更新应用的信息', 'description' => '更新应用的信息。', 'required' => true, '$ref' => '#/components/schemas/UpdateWebApplicationInput'], ], ], 'responses' => [ 200 => [ - 'schema' => [ - 'description' => '返回数据', - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID', - 'type' => 'string', - 'example' => '67DD9A98-9CCC-5BE8-8C9E-B45E72F4****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0b87b7e716575071334387401e****', - ], - 'Data' => [ - 'description' => '返回数据', - 'type' => 'object', - 'properties' => [ - 'Data' => [ - 'description' => '任务ID', - 'type' => 'string', - 'example' => 'manual-3db7a8fa-5d40-4edc-92e4-49d50eab****', - ], - 'Msg' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'Success' => [ - 'description' => '执行任务是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:执行成功。'."\n" - .'- **false**:执行失败。', - 'type' => 'string', - 'example' => 'true', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - ], - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '执行任务是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:执行成功。'."\n" - .'- **false**:执行失败。', - 'type' => 'boolean', - 'example' => 'true', - ], - ], - ], + 'description' => '返回信息', + 'schema' => ['title' => '返回信息', 'description' => '返回信息。', 'required' => false, '$ref' => '#/components/schemas/WebApplicationBody'], + 'examples' => [], ], ], - 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'InvalidApplication.NotFound', - 'errorMessage' => 'The current application does not exist.', - ], - [ - 'errorCode' => 'JobForbidPolicy', - 'errorMessage' => 'You cannot execute new jobs because ongoing jobs exist.', - ], - [ - 'errorCode' => 'JobSuspend', - 'errorMessage' => 'The job is suspended.', - ], - [ - 'errorCode' => 'user.indebt', - 'errorMessage' => 'The user has an outstanding payment.', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 0,\\n \\"Data\\": {\\n \\"ApplicationId\\": \\"\\",\\n \\"ApplicationName\\": \\"\\",\\n \\"CreatedTime\\": \\"\\",\\n \\"Description\\": \\"\\",\\n \\"LastModifiedTime\\": \\"\\",\\n \\"NamespaceId\\": \\"\\",\\n \\"RevisionConfig\\": {\\n \\"Containers\\": [\\n {\\n \\"Args\\": \\"[\\\\\\"abc\\\\\\", \\\\\\">\\\\\\", \\\\\\"file0\\\\\\"]\\",\\n \\"Command\\": \\"[\\\\\\"/bin/sh\\\\\\"]\\",\\n \\"EnvironmentVariables\\": {\\n \\"key\\": \\"\\"\\n },\\n \\"Image\\": \\"registry.cn-shanghai.aliyuncs.com/serverless_devsxxxxx\\",\\n \\"WebNASConfig\\": {\\n \\"MountPoints\\": [\\n {\\n \\"MountDir\\": \\"\\",\\n \\"NasAddr\\": \\"\\",\\n \\"NasPath\\": \\"\\"\\n }\\n ]\\n },\\n \\"WebOSSConfig\\": {\\n \\"MountPoints\\": [\\n {\\n \\"BucketName\\": \\"\\",\\n \\"BucketPath\\": \\"\\",\\n \\"MountDir\\": \\"\\",\\n \\"ReadOnly\\": true\\n }\\n ]\\n },\\n \\"Port\\": 8080,\\n \\"RequestConcurrency\\": 100,\\n \\"RequestTimeout\\": 60,\\n \\"Resources\\": {\\n \\"Cpu\\": 2000,\\n \\"Memory\\": 2048\\n },\\n \\"StartupProbe\\": {\\n \\"FailureThreshold\\": 0,\\n \\"InitialDelaySeconds\\": 0,\\n \\"PeriodSeconds\\": 0,\\n \\"ProbeHandler\\": {\\n \\"HttpGet\\": {\\n \\"Host\\": \\"\\",\\n \\"HttpHeaders\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"value\\": \\"\\"\\n }\\n ],\\n \\"Path\\": \\"\\",\\n \\"Port\\": 0,\\n \\"Scheme\\": \\"\\"\\n },\\n \\"TcpSocket\\": {\\n \\"Host\\": \\"\\",\\n \\"Port\\": 0\\n }\\n },\\n \\"TimeoutSeconds\\": 0\\n },\\n \\"SLSCollectConfigs\\": {\\n \\"CollectConfigs\\": [\\n {\\n \\"LogPath\\": \\"\\",\\n \\"LogType\\": \\"\\",\\n \\"LogstoreName\\": \\"\\",\\n \\"LogtailName\\": \\"\\",\\n \\"MachineGroup\\": \\"\\",\\n \\"ProjectName\\": \\"\\"\\n }\\n ]\\n },\\n \\"MetricsCollectConfig\\": {\\n \\"LogstoreName\\": \\"my-sls-logstorename\\",\\n \\"ProjectName\\": \\"my-sls-project\\",\\n \\"EnablePushToUserSLS\\": true\\n },\\n \\"ImageRegistryConfig\\": {\\n \\"AuthConfig\\": {\\n \\"UserName\\": \\"admin\\",\\n \\"Password\\": \\"abc***\\"\\n },\\n \\"CertConfig\\": {\\n \\"Insecure\\": true,\\n \\"CertBase64\\": \\"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCmZha2VDZXJ0aWZpY2F0ZQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0t\\"\\n }\\n }\\n }\\n ],\\n \\"EnableArmsMetrics\\": true,\\n \\"WebNetworkConfig\\": {\\n \\"InternetAccess\\": true,\\n \\"SecurityGroupId\\": \\"sg-bp18hj1wtxgy3b0***\\",\\n \\"VSwitchIds\\": [\\n \\"vsw-bp1ozpcrdc6r****\\"\\n ]\\n }\\n },\\n \\"InternetURL\\": \\"\\",\\n \\"IntranetURL\\": \\"\\",\\n \\"VpcId\\": \\"\\",\\n \\"WebScalingConfig\\": {\\n \\"MaximumInstanceCount\\": 10,\\n \\"MinimumInstanceCount\\": 0\\n },\\n \\"WebTrafficConfig\\": {\\n \\"WebAclConfig\\": {\\n \\"WebAclEntries\\": [\\n {\\n \\"Entry\\": \\"1.2.3.4/32\\",\\n \\"Description\\": \\"办公网\\"\\n }\\n ],\\n \\"AclDescription\\": \\"\\"\\n },\\n \\"AuthType\\": \\"Anonymous\\",\\n \\"DisableInternetURL\\": true,\\n \\"RevisionsTrafficWeight\\": {\\n \\"key\\": 0\\n }\\n }\\n },\\n \\"Message\\": \\"\\",\\n \\"RequestId\\": \\"\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => '更新Web应用级别的配置', + 'description' => '调用UpdateWebApplication接口更新Web应用级别的配置。', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'sae:UpdateWebApplication', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"67DD9A98-9CCC-5BE8-8C9E-B45E72F4****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0b87b7e716575071334387401e****\\",\\n \\"Data\\": {\\n \\"Data\\": \\"manual-3db7a8fa-5d40-4edc-92e4-49d50eab****\\",\\n \\"Msg\\": \\"success\\",\\n \\"Success\\": \\"true\\",\\n \\"Code\\": \\"200\\"\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<ExecJobResponse>\\n <RequestId>67DD9A98-9CCC-5BE8-8C9E-B45E72F4****</RequestId>\\n <Message>success</Message>\\n <TraceId>0b87b7e716575071334387401e****</TraceId>\\n <Data>\\n <Data>manual-3db7a8fa-5d40-4edc-92e4-49d50eab****</Data>\\n <Msg>success</Msg>\\n <Success>true</Success>\\n <Code>200</Code>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</ExecJobResponse>","errorExample":""}]', - 'title' => 'ExecJob', - 'summary' => '调用ExecJob接口执行任务', ], - 'ListJobs' => [ - 'path' => '/pop/v1/sam/job/listJobs', - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'UpdateWebApplicationScalingConfig' => [ + 'summary' => '更新Web应用弹性配置。', + 'path' => '/pop/v2/api/web/application-scaling/{ApplicationId}', + 'methods' => ['put'], + 'schemes' => ['http', 'https'], + 'tags' => [], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', - 'deprecated' => false, + 'consumes' => ['application/json'], + 'produces' => ['application/json'], + 'operationType' => 'readAndWrite', 'systemTags' => [ - 'operationType' => 'list', - 'abilityTreeCode' => '100750', - 'abilityTreeNodes' => [ - 'FEATUREsaeN5OIM9', - ], + 'operationType' => 'update', + 'abilityTreeCode' => '225956', + 'abilityTreeNodes' => ['FEATUREsaeWX6046'], ], 'parameters' => [ [ - 'name' => 'CurrentPage', + 'name' => 'NamespaceId', 'in' => 'query', - 'schema' => [ - 'description' => '当前页数。取值从1开始。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], + 'allowEmptyValue' => false, + 'schema' => ['title' => '命名空间ID', 'description' => '命名空间ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-beijing:test'], ], [ - 'name' => 'PageSize', - 'in' => 'query', - 'schema' => [ - 'description' => '页面大小。取值范围为\\[0,200]。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '20', - ], + 'name' => 'ApplicationId', + 'in' => 'path', + 'allowEmptyValue' => false, + 'schema' => ['title' => '应用ID', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****'], ], [ - 'name' => 'AppName', - 'in' => 'query', - 'schema' => [ - 'description' => '任务模板名称。', - 'type' => 'string', - 'required' => false, - 'example' => 'demo-app', + 'name' => 'body', + 'in' => 'body', + 'allowEmptyValue' => false, + 'schema' => ['title' => '弹性配置信息', 'description' => '弹性配置信息。', 'required' => true, '$ref' => '#/components/schemas/UpdateWebApplicationScalingConfigInput'], + ], + ], + 'responses' => [ + 200 => [ + 'description' => '返回信息', + 'schema' => ['title' => '返回信息', 'description' => '返回信息。', 'required' => false, '$ref' => '#/components/schemas/WebApplicationScalingConfigBody'], + 'examples' => [], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Data\\": {\\n \\"MaximumInstanceCount\\": 10,\\n \\"MinimumInstanceCount\\": 1\\n },\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => '更新Web应用弹性配置', + 'description' => '调用UpdateWebApplicationScalingConfig接口更新Web应用弹性配置。', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'sae:UpdateWebApplicationScalingConfig', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], + ], + ], + 'UpdateWebApplicationTrafficConfig' => [ + 'summary' => '更新Web应用流量配置。', + 'path' => '/pop/v2/api/web/application-traffic/{ApplicationId}', + 'methods' => ['put'], + 'schemes' => ['http', 'https'], + 'tags' => [], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'consumes' => ['application/json'], + 'produces' => ['application/json'], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '225957', + 'abilityTreeNodes' => ['FEATUREsaeOXSSSO'], + ], + 'parameters' => [ [ 'name' => 'NamespaceId', 'in' => 'query', - 'schema' => [ - 'description' => '命名空间ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-beijing:demo', - ], + 'allowEmptyValue' => false, + 'schema' => ['title' => '命名空间ID', 'description' => '命名空间ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-beijing:test'], ], [ - 'name' => 'Tags', - 'in' => 'query', - 'schema' => [ - 'description' => '标签列表,JSON字符串。取值说明如下:'."\n" - ."\n" - .'- **key**:标签键。'."\n" - .'- **value**:标签值。', - 'type' => 'string', - 'required' => false, - 'example' => '[{"key":"key","value":"value"}]', - ], + 'name' => 'ApplicationId', + 'in' => 'path', + 'allowEmptyValue' => false, + 'schema' => ['title' => '应用ID', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****'], ], [ - 'name' => 'OrderBy', - 'in' => 'query', - 'schema' => [ - 'description' => '对任务模板进行排序。取值说明如下:'."\n" - ."\n" - .'- **running**:按照当前实例数进行排序。'."\n" - .'- **instances**:按照目标实例数进行排序。', - 'type' => 'string', - 'required' => false, - 'example' => 'running', + 'name' => 'body', + 'in' => 'body', + 'allowEmptyValue' => false, + 'schema' => ['title' => '流量配置信息', 'description' => '流量配置信息。', 'required' => true, '$ref' => '#/components/schemas/UpdateWebApplicationTrafficConfigInput'], + ], + ], + 'responses' => [ + 200 => [ + 'description' => '返回信息', + 'schema' => ['title' => '返回信息', 'description' => '返回信息。', 'required' => false, '$ref' => '#/components/schemas/WebApplicationTrafficConfigBody'], + 'examples' => [], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Data\\": {\\n \\"WebAclConfig\\": {\\n \\"WebAclEntries\\": [\\n {\\n \\"Entry\\": \\"219.145.XX.XX\\",\\n \\"Description\\": \\"办公网\\"\\n }\\n ],\\n \\"AclDescription\\": \\"192.168.0.0/24\\"\\n },\\n \\"AuthType\\": \\"Anonymous\\",\\n \\"DisableInternetURL\\": true,\\n \\"RevisionsTrafficWeight\\": {\\n \\"key\\": 0\\n }\\n },\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => '更新Web应用流量配置', + 'description' => '调用UpdateWebApplicationTrafficConfig接口更新Web应用流量配置。', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'sae:UpdateWebApplicationTrafficConfig', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], + ], + ], + 'UpdateWebCustomDomain' => [ + 'summary' => '更新自定义域名。', + 'path' => '/pop/v2/api/web/custom-domains/{DomainName}', + 'methods' => ['put'], + 'schemes' => ['http', 'https'], + 'tags' => [], + 'security' => [ [ - 'name' => 'Reverse', - 'in' => 'query', - 'schema' => [ - 'description' => '根据**OrderBy**参数传入的字段名排序。取值说明如下:'."\n" - ."\n" - .' - **true**:按升序排序。'."\n" - .' - **false**:按降序排序。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'AK' => [], ], + ], + 'consumes' => ['application/json'], + 'produces' => ['application/json'], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '225959', + 'abilityTreeNodes' => ['FEATUREsae5U7VP0'], + ], + 'parameters' => [ [ - 'name' => 'FieldType', + 'name' => 'NamespaceId', 'in' => 'query', - 'schema' => [ - 'description' => '设置筛选任务模板的维度。取值说明如下:'."\n" - ."\n" - .'- **appName**:任务模板名称。'."\n" - .'- **appIds**:任务模板ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'appName', - ], + 'allowEmptyValue' => false, + 'schema' => ['title' => '命名空间ID', 'description' => '命名空间ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], ], [ - 'name' => 'FieldValue', - 'in' => 'query', - 'schema' => [ - 'description' => '根据已设置的**FieldType**筛选维度,选择输入目标任务模板的任务模板名称或任务模板ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'demo-app', - ], + 'name' => 'DomainName', + 'in' => 'path', + 'allowEmptyValue' => false, + 'schema' => ['title' => '自定义域名名称', 'description' => '自定义域名名称。', 'type' => 'string', 'required' => true, 'example' => 'www.99zuowen.com'], ], [ - 'name' => 'Workload', - 'in' => 'query', - 'schema' => [ - 'description' => 'Workload需指定为`job`。', - 'type' => 'string', - 'required' => false, - 'example' => 'job', - ], + 'name' => 'body', + 'in' => 'body', + 'allowEmptyValue' => false, + 'schema' => ['title' => '自定义域名信息', 'description' => '自定义域名信息。', 'required' => true, '$ref' => '#/components/schemas/UpdateWebCustomDomainInput'], ], ], 'responses' => [ 200 => [ - 'schema' => [ - 'description' => '返回数据。', - 'type' => 'object', - 'properties' => [ - 'Message' => [ - 'description' => '调用结果的附加信息。', - 'type' => 'string', - 'example' => 'success', - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'B4D805CA-926D-41B1-8E63-7AD0C1ED****', - ], - 'Data' => [ - 'description' => '任务模板列表。', - 'type' => 'object', - 'properties' => [ - 'CurrentPage' => [ - 'description' => '当前页数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'TotalSize' => [ - 'description' => '任务模板总个数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '2', - ], - 'PageSize' => [ - 'description' => '页面大小。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '20', - ], - 'Applications' => [ - 'description' => '任务模板列表。', - 'type' => 'array', - 'items' => [ - 'description' => '任务模板详细信息。', - 'type' => 'object', - 'properties' => [ - 'AppName' => [ - 'description' => '任务模板名称。', - 'type' => 'string', - 'example' => 'demo-app', - ], - 'NamespaceId' => [ - 'description' => '命名空间ID。', - 'type' => 'string', - 'example' => 'cn-beijing:demo', - ], - 'AppId' => [ - 'description' => '任务模板ID。', - 'type' => 'string', - 'example' => 'f7730764-d88f-4b9a-8d8e-cd8efbfe****', - ], - 'Tags' => [ - 'description' => '任务模板标签。', - 'type' => 'array', - 'items' => [ - 'description' => '任务模板标签详细信息。', - 'type' => 'object', - 'properties' => [ - 'Key' => [ - 'description' => '标签键。', - 'type' => 'string', - 'example' => 'key', - ], - 'Value' => [ - 'description' => '标签值。', - 'type' => 'string', - 'example' => 'value', - ], - ], - ], - ], - 'RegionId' => [ - 'description' => '地域ID。', - 'type' => 'string', - 'example' => 'cn-beijing', - ], - 'AppDescription' => [ - 'description' => '任务模板描述信息。', - 'type' => 'string', - 'example' => 'description', - ], - 'TriggerConfig' => [ - 'description' => '任务触发配置,根据任务类型进行配置。'."\n" - .'- **定时任务**:**type**字段设为time,**config**字段为具体Cron表达式,**timezone**字段为指定时区。'."\n" - .'配置示例:`{"type":"time","config":"0 1 */1 * ?","timezone":"GMT+8:00"}`'."\n" - .'- **一次性任务**:**type**字段设为http,**config**配置具体的HTTP触发规则。更多信息,请参见[请求参数SourceHttpEventParameters](https://help.aliyun.com/document_detail/347586.html#section-lp1-vq0-ho3)。'."\n" - .'配置示例:`{"type":"http","config":{"type":"HTTPS","method"、["GET"],"ip":[],"referer":[],"securityConfig":"none"}}`', - 'type' => 'string', - 'example' => '{"type":"time","config":"0 1 */1 * ?","timezone":"GMT+8:00"}', - ], - 'Suspend' => [ - 'description' => '是否暂停任务模板。', - 'type' => 'boolean', - 'example' => 'false', - ], - 'Active' => [ - 'description' => '正在运行的实例数。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '0', - ], - 'Succeeded' => [ - 'description' => '运行成功的实例数。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '3', - ], - 'Failed' => [ - 'description' => '运行失败的实例数。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '0', - ], - 'LastStartTime' => [ - 'description' => '上一次任务启动时间。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1657522800', - ], - 'CompletionTime' => [ - 'description' => '上一次任务完成时间。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1657522839', - ], - 'LastChangeorderState' => [ - 'description' => '上一次发布单执行是否成功,取值说明如下:'."\n" - .'- **0**:发布单执行失败。'."\n" - .'- **1**:发布单执行成功。', - 'type' => 'string', - 'example' => '1', - ], - 'LastJobState' => [ - 'description' => '上一次任务的运行状态。取值说明如下:'."\n" - ."\n" - .'- **0**:未执行。'."\n" - .'- **1**:执行成功。'."\n" - .'- **2**:执行失败。'."\n" - .'- **3**:正在执行。', - 'type' => 'string', - 'example' => '0', - ], - 'Cpu' => [ - 'description' => '每个实例所需的CPU,单位为毫核,不能为0。目前仅支持以下固定规格:'."\n" - ."\n" - .'- **500**'."\n" - .'- **1000**'."\n" - .'- **2000**'."\n" - .'- **4000**'."\n" - .'- **8000**'."\n" - .'- **16000**'."\n" - .'- **32000**', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '500', - ], - 'Mem' => [ - 'description' => '每个实例所需的内存,单位为MB,不能为0。与CPU为一一对应关系,目前仅支持以下固定规格:'."\n" - ."\n" - .'- **1024**:对应CPU为500毫核和1000毫核。'."\n" - .'- **2048**:对应CPU为500、1000毫核和2000毫核。'."\n" - .'- **4096**:对应CPU为1000、2000毫核和4000毫核。'."\n" - .'- **8192**:对应CPU为2000、4000毫核和8000毫核。'."\n" - .'- **12288**:对应CPU为12000毫核。'."\n" - .'- **16384**:对应CPU为4000、8000毫核和16000毫核。'."\n" - .'- **24576**:对应CPU为12000毫核。'."\n" - .'- **32768**:对应CPU为16000毫核。'."\n" - .'- **65536**:对应CPU为8000、16000和32000毫核。'."\n" - .'- **131072**:对应CPU为32000毫核。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1024', - ], - 'Message' => [ - 'description' => '调用结果的附加信息。', - 'type' => 'string', - 'example' => 'success', - ], - 'ImageUrl' => [ - 'type' => 'string', - ], - ], - ], - ], - ], - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**目录。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '获取任务模板列表是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:获取成功。'."\n" - .'- **false**:获取失败。', - 'type' => 'boolean', - 'example' => 'true', - ], - 'CurrentPage' => [ - 'description' => '当前页数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'TotalSize' => [ - 'description' => '任务模板总个数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '2', - ], - 'PageSize' => [ - 'description' => '页面大小。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '20', - ], - ], - ], + 'description' => 'OK', + 'schema' => ['title' => 'OK', 'description' => 'OK.', 'required' => false, '$ref' => '#/components/schemas/WebCustomDomainBody'], + 'examples' => [], ], ], - 'errorCodes' => [ - 404 => [ - [ - 'errorCode' => 'InvalidAppId.NotFound', - 'errorMessage' => 'The specified AppId does not exist.', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 0,\\n \\"Data\\": {\\n \\"accountId\\": \\"123xxxxxx\\",\\n \\"WebCertConfig\\": {\\n \\"CertName\\": \\"\\",\\n \\"Certificate\\": \\"\\",\\n \\"PrivateKey\\": \\"\\"\\n },\\n \\"CreatedTime\\": \\"2023-03-30T08:02:19Z\\",\\n \\"DefaultForwardingAppName\\": \\"appxxxxx\\",\\n \\"DomainName\\": \\"example.com\\",\\n \\"LastModifiedTime\\": \\"2023-03-30T08:02:19Z\\",\\n \\"NamespaceId\\": \\"\\",\\n \\"Protocol\\": \\"HTTP\\",\\n \\"WebTLSConfig\\": {\\n \\"CipherSuites\\": [\\n \\"\\"\\n ],\\n \\"MaxVersion\\": \\"\\",\\n \\"MinVersion\\": \\"\\"\\n },\\n \\"WebWAFConfig\\": {\\n \\"EnableWAF\\": true\\n },\\n \\"RouteConfig\\": {\\n \\"routes\\": [\\n {\\n \\"path\\": \\"\\",\\n \\"applicationName\\": \\"\\"\\n }\\n ]\\n }\\n },\\n \\"Message\\": \\"\\",\\n \\"RequestId\\": \\"\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => '更新自定义域名', + 'description' => '更新自定义域名。', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'sae:UpdateWebCustomDomain', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => 'Namespace', 'arn' => 'acs:sae:{#regionId}:{#accountId}:namespace/{#NamespaceId}'], + ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"B4D805CA-926D-41B1-8E63-7AD0C1ED****\\",\\n \\"Data\\": {\\n \\"CurrentPage\\": 1,\\n \\"TotalSize\\": 2,\\n \\"PageSize\\": 20,\\n \\"Applications\\": [\\n {\\n \\"AppName\\": \\"demo-app\\",\\n \\"NamespaceId\\": \\"cn-beijing:demo\\",\\n \\"AppId\\": \\"f7730764-d88f-4b9a-8d8e-cd8efbfe****\\",\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"key\\",\\n \\"Value\\": \\"value\\"\\n }\\n ],\\n \\"RegionId\\": \\"cn-beijing\\",\\n \\"AppDescription\\": \\"description\\",\\n \\"TriggerConfig\\": \\"{\\\\\\"type\\\\\\":\\\\\\"time\\\\\\",\\\\\\"config\\\\\\":\\\\\\"0 1 */1 * ?\\\\\\",\\\\\\"timezone\\\\\\":\\\\\\"GMT+8:00\\\\\\"}\\",\\n \\"Suspend\\": false,\\n \\"Active\\": 0,\\n \\"Succeeded\\": 3,\\n \\"Failed\\": 0,\\n \\"LastStartTime\\": 1657522800,\\n \\"CompletionTime\\": 1657522839,\\n \\"LastChangeorderState\\": \\"1\\",\\n \\"LastJobState\\": \\"0\\",\\n \\"Cpu\\": 500,\\n \\"Mem\\": 1024,\\n \\"Message\\": \\"success\\",\\n \\"ImageUrl\\": \\"\\"\\n }\\n ]\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true,\\n \\"CurrentPage\\": 1,\\n \\"TotalSize\\": 2,\\n \\"PageSize\\": 20\\n}","errorExample":""},{"type":"xml","example":"<ListJobsResponse>\\n <Message>success</Message>\\n <RequestId>B4D805CA-926D-41B1-8E63-7AD0C1ED****</RequestId>\\n <Data>\\n <CurrentPage>1</CurrentPage>\\n <TotalSize>2</TotalSize>\\n <PageSize>20</PageSize>\\n <Applications>\\n <AppName>demo-app</AppName>\\n <NamespaceId>cn-beijing:demo</NamespaceId>\\n <AppId>f7730764-d88f-4b9a-8d8e-cd8efbfe****</AppId>\\n <Tags>\\n <Key>key</Key>\\n <Value>value</Value>\\n </Tags>\\n <RegionId>cn-beijing</RegionId>\\n <AppDescription>description</AppDescription>\\n <TriggerConfig>{\\"type\\":\\"time\\",\\"config\\":\\"0 1 */1 * ?\\",\\"timezone\\":\\"GMT+8:00\\"}</TriggerConfig>\\n <Suspend>false</Suspend>\\n <Active>0</Active>\\n <Succeeded>3</Succeeded>\\n <Failed>0</Failed>\\n <LastStartTime>1657522800</LastStartTime>\\n <CompletionTime>1657522839</CompletionTime>\\n <LastChangeorderState>1</LastChangeorderState>\\n <LastJobState>0</LastJobState>\\n <Cpu>500</Cpu>\\n <Mem>1024</Mem>\\n <Message>success</Message>\\n </Applications>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n <CurrentPage>1</CurrentPage>\\n <TotalSize>2</TotalSize>\\n <PageSize>20</PageSize>\\n</ListJobsResponse>","errorExample":""}]', - 'title' => 'ListJobs', - 'summary' => '调用ListJobs接口获取任务模板列表。', - 'requestParamsDescription' => ' ', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', ], - 'SuspendJob' => [ - 'path' => '/pop/v1/sam/job/suspendJob', - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'UpgradeApplicationApmService' => [ + 'path' => '/pop/v1/sam/app/applicationApmService', + 'methods' => ['post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -38786,35 +23482,14 @@ 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'abilityTreeCode' => '100748', - 'abilityTreeNodes' => [ - 'FEATUREsaeD9PL61', - ], + 'abilityTreeCode' => '6406', + 'abilityTreeNodes' => ['FEATUREsaeD9PL61'], ], 'parameters' => [ [ 'name' => 'AppId', 'in' => 'query', - 'schema' => [ - 'description' => '任务模板ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'ee1a7a07-abcb-4652-a1d3-2d57f415****', - ], - ], - [ - 'name' => 'Suspend', - 'in' => 'query', - 'schema' => [ - 'description' => '启动或暂停任务模板:'."\n" - ."\n" - .'- true:启动任务模板。'."\n" - ."\n" - .'- false:暂停任务模板。', - 'type' => 'boolean', - 'required' => true, - 'example' => 'true', - ], + 'schema' => ['description' => '应用id。', 'type' => 'string', 'required' => true, 'example' => '017f39b8-dfa4-4e16-a84b-1dcee4b1****'], ], ], 'responses' => [ @@ -38822,2998 +23497,3619 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '67DD9A98-9CCC-5BE8-8C9E-B45E72F4****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0b87b7e716575071334387401e****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****'], + 'Message' => ['description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'success'], + 'TraceId' => ['description' => '调用链ID,用于精确查询调用信息。', 'type' => 'string', 'example' => '0a98a02315955564772843261e****'], 'Data' => [ - 'description' => '执行是否成功。', - 'type' => 'string', - 'example' => '{success: true}', - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '执行任务是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:执行成功。'."\n" - .'- **false**:执行失败。', - 'type' => 'boolean', - 'example' => 'true', + 'description' => '返回结果。', + 'type' => 'object', + 'properties' => [ + 'Status' => ['description' => '应用功能是否全部生效。取值说明如下:'."\n" + .'- **true**:表示开启成功。'."\n" + .'- **false**:表示开启失败。', 'type' => 'boolean', 'example' => 'true'."\n"], + ], ], + 'ErrorCode' => ['description' => '错误码。取值说明如下:'."\n" + ."\n" + .'- 请求成功:不返回**ErrorCode**字段。'."\n" + .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', 'type' => 'string', 'example' => 'success'], + 'Code' => ['description' => '接口状态或POP错误码。取值说明如下:'."\n" + .'- **2xx**:成功。'."\n" + .'- **3xx**:重定向。'."\n" + .'- **4xx**:请求错误。'."\n" + .'- **5xx**:服务器错误。', 'type' => 'string', 'example' => '200'], + 'Success' => ['description' => '开启ARMS高级版监控是否成功。取值说明如下:'."\n" + .'- **true**:表示更改成功。'."\n" + .'- **false**:表示修改失败。', 'type' => 'boolean'], ], + 'description' => '', ], ], ], 'errorCodes' => [ - 404 => [ - [ - 'errorCode' => 'InvalidAppId.NotFound', - 'errorMessage' => 'The specified AppId does not exist.', + 400 => [ + ['errorCode' => 'System.Upgrading', 'errorMessage' => 'The system is being upgraded. Please try again later.', 'description' => '系统正在升级,请稍后操作。'], + ['errorCode' => 'InvalidApplication.NotFound', 'errorMessage' => 'The current application does not exist.', 'description' => '找不到当前应用。'], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"Status\\": true\\n },\\n \\"ErrorCode\\": \\"success\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => '开通ARMS高级版监控', + 'summary' => '开通ARMS高级版监控。', + 'description' => '高级监控功能属于收费服务,请依据业务需求进行购买。更多信息,请参见<props="china">[ARMS计费概述](https://help.aliyun.com/zh/arms/application-monitoring/product-overview/billing-overview-1)</props><props="intl">[ARMS计费概述](https://www.alibabacloud.com/help/zh/arms/application-monitoring/product-overview/billing-overview-1)</props>。', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '40', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpgradeApplicationApmService'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => '', + 'ramAction' => [ + 'action' => 'sae:UpgradeApplicationApmService', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"67DD9A98-9CCC-5BE8-8C9E-B45E72F4****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0b87b7e716575071334387401e****\\",\\n \\"Data\\": \\"{success: true}\\",\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<SuspendJobResponse>\\n <RequestId>67DD9A98-9CCC-5BE8-8C9E-B45E72F4****</RequestId>\\n <Message>success</Message>\\n <TraceId>0b87b7e716575071334387401e****</TraceId>\\n <Data>{success: true}</Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</SuspendJobResponse>","errorExample":""}]', - 'title' => '启动或暂停任务', - 'summary' => '暂停任务。', ], - 'UpdateJob' => [ - 'path' => '/pop/v1/sam/job/updateJob', - 'methods' => [ - 'post', + ], + 'endpoints' => [ + ['regionId' => 'cn-shenzhen', 'regionName' => '华南1(深圳)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'sae.cn-shenzhen.aliyuncs.com', 'endpoint' => 'sae.cn-shenzhen.aliyuncs.com', 'vpc' => 'sae-vpc.cn-shenzhen.aliyuncs.com'], + ['regionId' => 'cn-wulanchabu', 'regionName' => '华北6(乌兰察布)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'sae.cn-wulanchabu.aliyuncs.com', 'endpoint' => 'sae.cn-wulanchabu.aliyuncs.com', 'vpc' => 'sae-vpc.cn-wulanchabu.aliyuncs.com'], + ['regionId' => 'cn-beijing', 'regionName' => '华北2(北京)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'sae.cn-beijing.aliyuncs.com', 'endpoint' => 'sae.cn-beijing.aliyuncs.com', 'vpc' => 'sae-vpc.cn-beijing.aliyuncs.com'], + ['regionId' => 'ap-northeast-1', 'regionName' => '日本(东京)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'sae.ap-northeast-1.aliyuncs.com', 'endpoint' => 'sae.ap-northeast-1.aliyuncs.com', 'vpc' => 'sae-vpc.ap-northeast-1.aliyuncs.com'], + ['regionId' => 'cn-chengdu', 'regionName' => '西南1(成都)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'sae.cn-chengdu.aliyuncs.com', 'endpoint' => 'sae.cn-chengdu.aliyuncs.com', 'vpc' => 'sae-vpc.cn-chengdu.aliyuncs.com'], + ['regionId' => 'cn-shanghai', 'regionName' => '华东2(上海)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'sae.cn-shanghai.aliyuncs.com', 'endpoint' => 'sae.cn-shanghai.aliyuncs.com', 'vpc' => 'sae-vpc.cn-shanghai.aliyuncs.com'], + ['regionId' => 'cn-guangzhou', 'regionName' => '华南3(广州)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'sae.cn-guangzhou.aliyuncs.com', 'endpoint' => 'sae.cn-guangzhou.aliyuncs.com', 'vpc' => 'sae-vpc.cn-guangzhou.aliyuncs.com'], + ['regionId' => 'cn-hongkong', 'regionName' => '中国香港', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'sae.cn-hongkong.aliyuncs.com', 'endpoint' => 'sae.cn-hongkong.aliyuncs.com', 'vpc' => 'sae-vpc.cn-hongkong.aliyuncs.com'], + ['regionId' => 'cn-heyuan', 'regionName' => '华南2(河源)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'sae.cn-heyuan.aliyuncs.com', 'endpoint' => 'sae.cn-heyuan.aliyuncs.com', 'vpc' => 'sae-vpc.cn-heyuan.aliyuncs.com'], + ['regionId' => 'ap-southeast-1', 'regionName' => '新加坡', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'sae.ap-southeast-1.aliyuncs.com', 'endpoint' => 'sae.ap-southeast-1.aliyuncs.com', 'vpc' => 'sae-vpc.ap-southeast-1.aliyuncs.com'], + ['regionId' => 'cn-zhangjiakou', 'regionName' => '华北3(张家口)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'sae.cn-zhangjiakou.aliyuncs.com', 'endpoint' => 'sae.cn-zhangjiakou.aliyuncs.com', 'vpc' => 'sae-vpc.cn-zhangjiakou.aliyuncs.com'], + ['regionId' => 'cn-hangzhou', 'regionName' => '华东1(杭州)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'sae.cn-hangzhou.aliyuncs.com', 'endpoint' => 'sae.cn-hangzhou.aliyuncs.com', 'vpc' => 'sae-vpc.cn-hangzhou.aliyuncs.com'], + ['regionId' => 'us-west-1', 'regionName' => '美国(硅谷)', 'areaId' => 'europeAmerica', 'areaName' => '欧洲与美洲', 'public' => 'sae.us-west-1.aliyuncs.com', 'endpoint' => 'sae.us-west-1.aliyuncs.com', 'vpc' => 'sae-vpc.us-west-1.aliyuncs.com'], + ['regionId' => 'us-east-1', 'regionName' => '美国(弗吉尼亚)', 'areaId' => 'europeAmerica', 'areaName' => '欧洲与美洲', 'public' => 'sae.us-east-1.aliyuncs.com', 'endpoint' => 'sae.us-east-1.aliyuncs.com', 'vpc' => 'sae-vpc.us-east-1.aliyuncs.com'], + ['regionId' => 'eu-central-1', 'regionName' => '德国(法兰克福)', 'areaId' => 'europeAmerica', 'areaName' => '欧洲与美洲', 'public' => 'sae.eu-central-1.aliyuncs.com', 'endpoint' => 'sae.eu-central-1.aliyuncs.com', 'vpc' => 'sae-vpc.eu-central-1.aliyuncs.com'], + ], + 'errorCodes' => [ + ['code' => 'AccessDenied', 'message' => 'AccessDenied: %s', 'http_code' => 403, 'description' => '拒绝访问'], + ['code' => 'AdditionalVersionContainsMajorVersion', 'message' => 'The additionalVersionWeight %+v cannot contain major version %d.', 'http_code' => 400, 'description' => '版本权重中不能包含主版本'], + ['code' => 'AliasAlreadyExists', 'message' => 'The alias %s of service %s already exists.', 'http_code' => 409, 'description' => '同名的别名已经存在'], + ['code' => 'AliasNotFound', 'message' => 'The alias %s of service %s is not found.', 'http_code' => 404, 'description' => '所请求的别名不存在'], + ['code' => 'App.Package.Version.Exists', 'message' => 'The package version of application already exists.', 'http_code' => 400, 'description' => '应用部署包版本号已经存在。'], + ['code' => 'Application.ChangerOrder.Not.Running', 'message' => 'The change order is not running and cannot be terminated.', 'http_code' => 400, 'description' => '变更单不在运行中,不能进行中止操作。'], + ['code' => 'Application.ChangerOrderRunning', 'message' => 'An application change process is in progress. Please try again later.', 'http_code' => 400, 'description' => '应用有变更流程正在执行,请稍后重试。'], + ['code' => 'Application.InvalidStatus', 'message' => 'The application status is abnormal. Please try again later.', 'http_code' => 400, 'description' => '应用状态异常,请稍后重试。'], + ['code' => 'Application.MissingJdk', 'message' => 'Your application must at least contain a JDK component.', 'http_code' => 400, 'description' => '应用必须至少包含JDK组件。'], + ['code' => 'Application.NoInstanceAvailable', 'message' => 'No instance is available for the application. Please scale out and try again.', 'http_code' => 400, 'description' => '应用没有可用实例,请扩容后重试。'], + ['code' => 'Application.NotDeployYet', 'message' => 'The application has not been deployed. Please deploy it and try again.', 'http_code' => 400, 'description' => '应用没有部署,请部署后重试。'], + ['code' => 'ApplicationNameNotFound', 'message' => 'The applicationName is not found.', 'http_code' => 400, 'description' => '应用名不存在.'], + ['code' => 'Approval.Has.Been.Handled', 'message' => 'This approval request has been processed.', 'http_code' => 400, 'description' => '该条审批请求已经被处理'], + ['code' => 'Approval.Has.Been.Handled', 'message' => 'The approval request has been handled.', 'http_code' => 400, 'description' => '该审批请求已经被处理'], + ['code' => 'Approval.In.Processing', 'message' => 'The approval is in process.', 'http_code' => 400, 'description' => '该审批申请,正在被处理中。'], + ['code' => 'Approval.Rule.Exist', 'message' => 'Approval rules already exist in the specified namespace.', 'http_code' => 400, 'description' => '该命名空间下的权限审批规则已存在。'], + ['code' => 'Associate.Eip.Not.Enough', 'message' => 'No sufficient EIPs are available.', 'http_code' => 404, 'description' => '绑定EIP时,EIP不足,需要您购买。'], + ['code' => 'AsyncConfigNotExists', 'message' => 'AsyncConfig for %s:%s does not exist.', 'http_code' => 404, 'description' => '所请求的异步配置不存在'], + ['code' => 'AsyncInvocationStopped', 'message' => 'The async invocation for %s:%s:%s has been stopped.', 'http_code' => 412, 'description' => '异步有状态调用已经停止'], + ['code' => 'AuthenticationFailed', 'message' => 'You are not authorized. Go to the RAM console to configure the permission.', 'http_code' => 400, 'description' => '鉴权失败,您没有相应权限,请去RAM控制台配置权限。'], + ['code' => 'AuthenticationFailed', 'message' => 'You have not activated SAE. Please try again after activating.', 'http_code' => 403, 'description' => '您尚未开通SAE,请开通后重试。'], + ['code' => 'BadResponse', 'message' => 'BadResponse: %s', 'http_code' => 502, 'description' => '响应中包含非法内容'], + ['code' => 'BatchWaitTime.Not.Smaller.Zero', 'message' => 'BatchWaitTime must not be smaller than zero.', 'http_code' => 400, 'description' => '分批间隔时间必须大于零。'], + ['code' => 'CAExited', 'message' => 'The function either cannot be started or exited. %s', 'http_code' => 412, 'description' => '自定义运行时或镜像函数启动失败'], + ['code' => 'CAFileNotFound', 'message' => 'The function cannot be started. %s', 'http_code' => 412, 'description' => '自定义运行时函数启动文件缺失'], + ['code' => 'CAFilePermission', 'message' => 'The function cannot be started. %s', 'http_code' => 412, 'description' => '自定义运行时函数启动文件缺少可执行权限'], + ['code' => 'ChangOrder.Without.Approval.Info', 'message' => 'The change order does not contain approval information.', 'http_code' => 400, 'description' => '发布单中没有包含审批相关信息,无需走审批执行线路。'], + ['code' => 'ClientClosedRequest', 'message' => 'The client cancelled the request.', 'http_code' => 499, 'description' => '客户端中断了请求'], + ['code' => 'Concurrent.Update', 'message' => 'Failed to update ingress: another operation is in progress. Please try again later.', 'http_code' => 403, 'description' => '更新网关路由失败,另一个更新操作更在进行,请稍后重试。'], + ['code' => 'ConcurrentUpdateError', 'message' => 'ConcurrentUpdateError: %s', 'http_code' => 409, 'description' => '并发更新错误'], + ['code' => 'Contact.Exist', 'message' => 'The specified contact already exists.', 'http_code' => 400, 'description' => '联系人已存在'], + ['code' => 'Contact.Not.Exist', 'message' => 'The specified contact does not exist.', 'http_code' => 400, 'description' => '联系人不存在'], + ['code' => 'Credential.Already.Exists', 'message' => 'Long term credential already exists.', 'http_code' => 400, 'description' => '长期凭证已存在'], + ['code' => 'Credential.Disabled', 'message' => 'Credential is disabled.', 'http_code' => 400, 'description' => '凭证已被禁用'], + ['code' => 'Credential.Invalid.Duration', 'message' => 'Duration must be long-term (-1) or less than 3 days.', 'http_code' => 400, 'description' => '凭证有效期必须为长期(-1)或小于3天。'], + ['code' => 'Credential.No.Permission', 'message' => 'No permission to get credential of other account.', 'http_code' => 400, 'description' => '没有跨账号获取凭证的权限'], + ['code' => 'Credential.Not.Found', 'message' => 'Credential not found.', 'http_code' => 404, 'description' => '凭证不存在'], + ['code' => 'Credential.ServerCaNotFound', 'message' => 'Server CA not found.', 'http_code' => 404, 'description' => '服务端证书不存在'], + ['code' => 'DeleteFail.ConfigMapReferenced', 'message' => 'Failed to delete the ConfigMap. It has been used by other applications.', 'http_code' => 400, 'description' => '删除ConfigMap失败,ConfigMap已被其他应用使用。'], + ['code' => 'DeleteFail.NamespaceHasConfigMap', 'message' => 'The namespace contains ConfigMap and cannot be deleted.', 'http_code' => 400, 'description' => '删除命名空间时,命名空间存在ConfigMap。'], + ['code' => 'DeleteFail.NamespaceHasIngress', 'message' => 'Ingress detected when deleting the namespace.', 'http_code' => 400, 'description' => '删除命名空间时,命名空间存在Ingress。'], + ['code' => 'DependencyViolation.Application', 'message' => 'The specified resource of secret is dependent on application [%s], so the operation cannot be completed.', 'http_code' => 400, 'description' => '保密字典[%s]被应用[%s]使用中,删除操作无法完成。'], + ['code' => 'DependencyViolation.Job', 'message' => 'The specified resource of secret is dependent on job [%s], so the operation cannot be completed.', 'http_code' => 400, 'description' => '保密字典[%s]被任务模板[%s]使用中,删除操作无法完成。'], + ['code' => 'DestinationDeliveryFailed', 'message' => 'DestinationDeliveryFailed: %s', 'http_code' => 500, 'description' => '异步目标投递失败'], + ['code' => 'DomainNameAlreadyExists', 'message' => 'The domain name %s already exists.', 'http_code' => 409, 'description' => '域名已经存在'], + ['code' => 'DomainNameNotFound', 'message' => 'The domain name %s is not found.', 'http_code' => 404, 'description' => '所请求的域名不存在'], + ['code' => 'DomainNameNotResolved', 'message' => 'The domain name %s has not been resolved to your FC endpoint. The expected endpoint is %s.', 'http_code' => 400, 'description' => '域名未解析到函数计算的服务地址'], + ['code' => 'DomainNameResolveError', 'message' => 'Failed to resolve the domain name %s. Make sure that your name server is valid.', 'http_code' => 400, 'description' => '域名解析错误'], + ['code' => 'DomainRouteNotFound', 'message' => 'No route is found in the domain %s for path %s or method %s.', 'http_code' => 404, 'description' => '所请求的域名路由不存在'], + ['code' => 'Duplicate.TagKey', 'message' => 'The TagKey contains duplicate keys.', 'http_code' => 400, 'description' => '标签中存在重复的键,请保持键的唯一性。'], + ['code' => 'EbError', 'message' => 'The EventBridge is internal error', 'http_code' => 400, 'description' => 'EventBridge内部异常'], + ['code' => 'EntityTooLarge', 'message' => 'The maximum size for payloads (%s bytes) is exceeded.', 'http_code' => 400, 'description' => '请求的大小超过了限制'], + ['code' => 'EnvFromSecretIdConflict.AlreadyExist', 'message' => 'The specified SecretId [%s] already exist in the specified Envs.', 'http_code' => 400, 'description' => '指定的保密字典[%s]已经存在于环境变量中。'], + ['code' => 'EventSourceAlreadyExists', 'message' => 'The event source %s already exists in service %s.%s and function %s.', 'http_code' => 409, 'description' => '同名的事件源已经存在'], + ['code' => 'EventSourceNotFound', 'message' => 'The event source %s is not found in service %s.%s and function %s.', 'http_code' => 404, 'description' => '所请求的事件源不存在'], + ['code' => 'Exceed.ConfigMap', 'message' => 'Too many ConfigMap objects have been created in the namespace.', 'http_code' => 400, 'description' => '命名空间中创建的ConfigMap对象过多。'], + ['code' => 'Exceed.GreyTagRoute', 'message' => 'The number of GreyTagRoute related rules must be less than or equal to 1.', 'http_code' => 400, 'description' => '微服务流量灰度配置对应规则不可超过1条。'], + ['code' => 'Exceed.IngressRule', 'message' => 'The number of Ingress related rules must be less than or equal to 40.', 'http_code' => 400, 'description' => 'Ingress配置对应规则不可超过40条。'], + ['code' => 'Exceed.Namespace', 'message' => 'Too many namespaces have been created.', 'http_code' => 400, 'description' => '创建的命名空间过多。'], + ['code' => 'Exceed.TimerRules', 'message' => 'The maximum number of rules created in the namespace is exceeded.', 'http_code' => 400, 'description' => '命名空间中创建的定时批量启停规则过多。'], + ['code' => 'FnF.InvalidOutput', 'message' => 'The output (%s) is not a valid JSON object.', 'http_code' => 400, 'description' => '异步目标投递错误'], + ['code' => 'FunctionAlreadyExists', 'message' => 'applicationName %s already exists in applicationName %s.', 'http_code' => 409, 'description' => '同名的应用名已经存在'], + ['code' => 'FunctionNotEmpty', 'message' => 'function %s has triggers. Please delete all its triggers before deleting the function.', 'http_code' => 409, 'description' => 'The function %s has triggers. Delete all its triggers before deleting the function.'], + ['code' => 'FunctionNotFound', 'message' => 'applicationName %s does not exist in applicationName %s.', 'http_code' => 404, 'description' => '请求的应用名不存在'], + ['code' => 'FunctionNotFoundByVersion', 'message' => 'The function %s is not found in service %s of version %d.', 'http_code' => 404, 'description' => '所请求的函数在指定的服务和版本下不存在'], + ['code' => 'FunctionNotStarted', 'message' => 'Failed to start the function instance. %s', 'http_code' => 412, 'description' => '自定义运行时或者镜像的函数实例启动失败'], + ['code' => 'get.event.error', 'message' => 'Failed to obtain event information.', 'http_code' => 400, 'description' => '获得事件信息失败。'], + ['code' => 'HTTPTriggerNotFound', 'message' => 'there is no http trigger associated with service %s, function %s and qualifier %s', 'http_code' => 404, 'description' => 'No HTTP trigger is associated with the service %s, function %s, and qualifier %s.'], + ['code' => 'Illegal.argument', 'message' => 'Illegal argument', 'http_code' => 400, 'description' => '参数异常'], + ['code' => 'IndexAlreadyExist', 'message' => 'The logstore index is already created.', 'http_code' => 400, 'description' => '索引已经存在'], + ['code' => 'InstanceExist.NamespaceId', 'message' => 'The specified namespace ID already exists.', 'http_code' => 400, 'description' => '指定的命名空间ID已存在。'], + ['code' => 'InstanceExist.ScalingRuleName', 'message' => 'The specified ScalingRuleName already exists.', 'http_code' => 400, 'description' => '指定的弹性策略名称已存在。'], + ['code' => 'InstanceNotFound', 'message' => 'The instance %s is not found.', 'http_code' => 404, 'description' => '所请求的实例不存在'], + ['code' => 'InternalApiError', 'message' => 'An exception occurred when calling mse:%s, error message: %s.', 'http_code' => 400, 'description' => '调用 mse:%s 接口异常,%s'], + ['code' => 'InternalApiError', 'message' => 'An exception occurred when calling apig:%s, error message: %s.', 'http_code' => 400, 'description' => '调用 apig:%s 接口异常,%s'], + ['code' => 'InternalServerError', 'message' => 'An internal system error occurred.', 'http_code' => 500, 'description' => '系统内部错误'], + ['code' => 'Invalid.App.List.Not.Same.Namespace', 'message' => 'The selected applications do not belong to the same namespace.', 'http_code' => 400, 'description' => '所选择的应用不属于同一个命名空间。'], + ['code' => 'Invalid.Param.Tag.Scope', 'message' => 'The specified parameter is invalid: tag scope.', 'http_code' => 400, 'description' => 'scope参数有误。'], + ['code' => 'InvalidAccessKeyID', 'message' => 'Invalid AccessKey ID: %s', 'http_code' => 403, 'description' => '非法的Access Key ID'], + ['code' => 'InvalidAcrInstanceId.NotFound', 'message' => 'The specified AcrInstanceId does not exist.', 'http_code' => 404, 'description' => '指定的 AcrInstanceId 不存在。'], + ['code' => 'InvalidAppId.NotFound', 'message' => 'The specified AppId does not exist.', 'http_code' => 404, 'description' => '指定的AppId不存在。'], + ['code' => 'InvalidApplication.NotFound', 'message' => 'The current application does not exist.', 'http_code' => 400, 'description' => '找不到当前应用。'], + ['code' => 'InvalidArgument', 'message' => 'Can not update traffic config without any change.', 'http_code' => 400, 'description' => '流量配置信息没有产生更改'], + ['code' => 'InvalidChangeOrder.NotFound', 'message' => 'The current change order does not exist.', 'http_code' => 400, 'description' => '变更单不存在。'], + ['code' => 'InvalidComponent.NotFound', 'message' => 'The current component (such as JDK, Tomcat, or EDASWebContainer) does not exist.', 'http_code' => 400, 'description' => '找不到当前组件(JDK、Tomcat、EDASWebContainer等)。'], + ['code' => 'InvalidComponentType.NotFound', 'message' => 'The specified Type does not exist.', 'http_code' => 400, 'description' => '指定的Type不存在。'], + ['code' => 'InvalidDestinationResources', 'message' => 'The destination resource is invalid: %s', 'http_code' => 400, 'description' => '异步目标配置非法'], + ['code' => 'InvalidHostnameIp.Invalid', 'message' => 'The hostname and/or IP is invalid: Hostname [%s], IP [%s].', 'http_code' => 400, 'description' => '主机名或IP不合法:主机名[%s],IP[%s]。'], + ['code' => 'InvalidICPLicense', 'message' => 'The domain name %s does not have an ICP filing, or the ICP filing has not been completed in Alibaba Cloud.', 'http_code' => 400, 'description' => '域名未在阿里云备案'], + ['code' => 'InvalidImageUrl.AcrInstanceId.Domain.NotMatch', 'message' => 'The specified domain of ImageUrl does not match AcrInstanceId domains.', 'http_code' => 400, 'description' => '指定的镜像地址ImageUrl域名与AcrInstanceId域名不匹配。'], + ['code' => 'InvalidImageUrl.MissingAcrInstanceId', 'message' => 'The specified domain of ImageUrl is from ACREE, but you are not specified AcrInstanceId.', 'http_code' => 400, 'description' => '指定的镜像地址 ImageUrl 域名为容器镜像服务企业版 ACREE,但未指定实例 AcrInstanceId。'], + ['code' => 'InvalidInstanceSpecification.Unsupported', 'message' => 'The instance specification is not supported: CPU [%s], memory [%s].', 'http_code' => 400, 'description' => '不支持的实例规格。CPU[%s],Memory[%s]。'], + ['code' => 'InvalidLoadBalancerId.NotFound', 'message' => 'LoadBalancerId does not exist.', 'http_code' => 404, 'description' => '负载均衡ID不存在。请检查该负载均衡的ID是否正确。'], + ['code' => 'InvalidNamespace.WithUppercase', 'message' => 'This namespace does not support creating SAE apps because it contains uppercase letters.', 'http_code' => 400, 'description' => '命名空间不支持创建SAE应用,因为它带有大写字母。'], + ['code' => 'InvalidNamespaceId.Format', 'message' => 'The specified NamespaceId is invalid.', 'http_code' => 400, 'description' => '指定的NamespaceId不合法。正确格式为[所属regionId]:[命名空间标识],例如cn-beijing:test,并且长度不能超过32个字符。'], + ['code' => 'InvalidNamespaceId.NotFound', 'message' => 'The specified NamespaceId does not exist.', 'http_code' => 404, 'description' => '指定的NamespaceId不存在。'], + ['code' => 'InvalidNamespaceIdSuffix.Format', 'message' => 'The specified NamespaceId is invalid. NamespaceId can only contain alphabetical letters or numbers.', 'http_code' => 400, 'description' => '指定的NamespaceId不合法。命名空间ID只能由字母或数字组成。'], + ['code' => 'InvalidNamespaceName.Format', 'message' => 'The specified NamespaceName is invalid. The name of the namespace cannot exceed 63 characters in length.', 'http_code' => 400, 'description' => '指定的NamespaceName不合法。命名空间名称的长度不能超过63个字符。'], + ['code' => 'InvalidOperation.NamespaceClusterNotDeleted', 'message' => 'The specified NamespaceId contains clusters.', 'http_code' => 400, 'description' => '指定的NamespaceId下还有集群。'], + ['code' => 'InvalidPackageType.NotFound', 'message' => 'The package type must be War, FatJar, or Image.', 'http_code' => 400, 'description' => '包类型必须为WAR、FatJAR或Image。'], + ['code' => 'InvalidParam.ProtocolNotSupport', 'message' => 'Only TCP protocol is supported.', 'http_code' => 400, 'description' => '不支持指定的协议,只支持TCP协议。'], + ['code' => 'InvalidParameter.FileName', 'message' => 'The application deployment package name is invalid. This name can contain only alphanumeric characters, hyphens (-), and underscores (_). For deploying java package, you can upload JAR files only if the selected deployment version supports JAR file. Otherwise, upload WAR files only. For deploying php package, you can upload ZIP files only if the selected deployment version supports ZIP file.', 'http_code' => 400, 'description' => '应用部署程序包名称无效。名称只能包含字母、数字和特殊字符“-”“_”。Java 软件包部署,仅当选择的部署版本支持JAR部署时方可上传JAR包,否则只能上传WAR包;PHP 软件包部署,仅当选择的部署版本支持ZIP部署时方可上传ZIP包'], + ['code' => 'InvalidParameter.NoPermission', 'message' => 'Resource no permission', 'http_code' => 400, 'description' => '请求资源无权限'], + ['code' => 'InvalidParameter.NotEmpty', 'message' => 'You must specify the parameter %s.', 'http_code' => 400, 'description' => '不合法的参数:%s不能为空。'], + ['code' => 'InvalidParameter.Obviously', 'message' => 'The specified parameter is invalid {%s}.', 'http_code' => 400, 'description' => '不合法的参数{%s}。'], + ['code' => 'InvalidParameter.TagKey', 'message' => 'The specified TagKey is invalid.', 'http_code' => 400, 'description' => '标签键不合法。'], + ['code' => 'InvalidParameter.TagValue', 'message' => 'The specified TagValue is invalid.', 'http_code' => 400, 'description' => '标签值不合法。'], + ['code' => 'InvalidParameter.UserNotFound', 'message' => 'The user ID is not found. Please make sure that you have activated the SAE service.', 'http_code' => 400, 'description' => '无法找到指定的用户ID,请确保您已经开通SAE服务。'], + ['code' => 'InvalidParameter.UserNotFound.ServiceDisabled', 'message' => 'The user ID is not found. Please make sure that you have activated the SAE service.', 'http_code' => 400, 'description' => '无法找到指定的用户ID,请确保您已经开通SAE服务。'], + ['code' => 'InvalidParameter.WithMessage', 'message' => 'The parameter is invalid {%s}: %s', 'http_code' => 400, 'description' => '不合法的参数{%s}:%s。'], + ['code' => 'InvalidParameters.InvalidExpression', 'message' => 'The specified cron expression is invalid.', 'http_code' => 400, 'description' => '指定的Cron表达式不合法。'], + ['code' => 'InvalidRegionId.NotFound', 'message' => 'The specified RegionId is invalid.', 'http_code' => 404, 'description' => '找不到请求对应的Region。请求对应的Region信息不存在或未开放,请检查请求的Reigon信息是否正确或者提交工单联系我们查看更多信息。'], + ['code' => 'InvalidResourceType.NotFound', 'message' => 'The specified resource type is not supported.', 'http_code' => 400, 'description' => '不支持指定的资源类型。'], + ['code' => 'InvalidResponse.Api', 'message' => 'The response of API %s is empty.', 'http_code' => 404, 'description' => 'API返回数据为空。'], + ['code' => 'InvalidScalingRuleDate.BeginAfterEnd', 'message' => 'The specified beginning time is later than the ending time.', 'http_code' => 400, 'description' => '指定的开始时间晚于结束时间。'], + ['code' => 'InvalidScalingRuleDate.Format', 'message' => 'The specified date is invalid.', 'http_code' => 400, 'description' => '指定的日期不合法。正确的格式为yyyy-MM-dd。'], + ['code' => 'InvalidScalingRuleName.NotFound', 'message' => 'The specified ScalingRuleName does not exist.', 'http_code' => 400, 'description' => '指定的ScalingRuleName不存在。'], + ['code' => 'InvalidScalingRuleTime.Conflict', 'message' => 'The specified scaling rule time is invalid. Another schedule has been set for the specified time range. Please set a different time.', 'http_code' => 400, 'description' => '指定的弹性策略时间无效。该时间段已设置过定时策略,请重新选择时间设置。'], + ['code' => 'InvalidScalingRuleTime.Format', 'message' => 'The specified time is invalid.', 'http_code' => 400, 'description' => '指定的时间不合法。正确的格式为HH:mm。'], + ['code' => 'InvalidSecretDataKey.NotFound', 'message' => 'The specified Key [%s] does not exist in the specified Secret [%s].', 'http_code' => 400, 'description' => '指定的保密字典Key不存在于当前保密字典[%s]中'], + ['code' => 'InvalidSecretId.NotFound', 'message' => 'The specified SecretId [%s] does not exist in our records.', 'http_code' => 400, 'description' => '指定的保密字典ID[%s]不存在。'], + ['code' => 'InvalidSecretType.NotAvailable', 'message' => 'The specified SecretType [%s] is not supported.', 'http_code' => 400, 'description' => '指定的保密字典类型不支持。'], + ['code' => 'InvalidServerlessRegion.Unsupported', 'message' => 'The current region is not supported: %s', 'http_code' => 400, 'description' => '不支持当前地域:%s。'], + ['code' => 'InvalidVpcId.NotFound', 'message' => 'The specified VpcId does not exist.', 'http_code' => 404, 'description' => '指定的VpcId不存在。'], + ['code' => 'JarApplication.MissingJdk', 'message' => 'A FatJar application must contain JDK.', 'http_code' => 400, 'description' => 'FatJar类型应用必须包含JDK。'], + ['code' => 'JobForbidPolicy', 'message' => 'You cannot execute new jobs because ongoing jobs exist.', 'http_code' => 400, 'description' => '存在正在执行的任务,根据并发策略无法执行新任务。'], + ['code' => 'JobSuspend', 'message' => 'The job is suspended.', 'http_code' => 400, 'description' => '任务已经停止,请启用任务后再进行执行。'], + ['code' => 'Kubeconfig.Already.Exists', 'message' => 'Long term kubeconfig already exists.', 'http_code' => 400, 'description' => '长期Kubeconfig已存在'], + ['code' => 'Kubeconfig.Disabled', 'message' => 'Kubeconfig is disabled.', 'http_code' => 400, 'description' => 'Kubeconfig已被禁用'], + ['code' => 'Kubeconfig.Invalid.Duration', 'message' => 'Duration must be long-term (-1) or less than 3 days.', 'http_code' => 400, 'description' => 'Kubeconfig有效期必须为长期(-1)或小于3天。'], + ['code' => 'Kubeconfig.No.Permission', 'message' => 'No permission to get Kubeconfig of other account.', 'http_code' => 400, 'description' => '没有跨账号获取Kubeconfig的权限'], + ['code' => 'Kubeconfig.Not.Found', 'message' => 'Kubeconfig not found.', 'http_code' => 404, 'description' => '获取Kubeconfig失败'], + ['code' => 'Kubeconfig.ServerCaNotFound', 'message' => 'Server CA not found.', 'http_code' => 404, 'description' => '查询服务端证书失败'], + ['code' => 'LayerNotFound', 'message' => 'The layer is not found. LayerName: %s.', 'http_code' => 404, 'description' => '所请求的层不存在'], + ['code' => 'LayerVersionNotFound', 'message' => 'The layer version is not found. LayerName: %s , Version:%d.', 'http_code' => 404, 'description' => '所请求的层版本不存在'], + ['code' => 'LayerVersionNotFoundByArn', 'message' => 'The layer version is not found. LayerArn: %s.', 'http_code' => 404, 'description' => '所请求的层版本不存在'], + ['code' => 'LimitExceededError', 'message' => 'LimitExceededError: %s', 'http_code' => 400, 'description' => '函数或者触发器数量超过了限制'], + ['code' => 'LogService.ConfigNameInvalid', 'message' => 'The log collection configuration name is invalid.', 'http_code' => 400, 'description' => '日志采集配置名称不合法。'], + ['code' => 'LogService.ConfigQuotaExceed', 'message' => 'The maximum number of Log Service configs is exceeded.', 'http_code' => 400, 'description' => '日志服务配置个数超过配额限制,请加入钉群32874633联系技术产品专家进行咨询。'], + ['code' => 'LogService.InternalError', 'message' => 'An exception occurred while calling Log Service. Please submit a ticket to solve the problem.', 'http_code' => 400, 'description' => '调用日志服务异常,请加入钉群32874633联系技术产品专家进行咨询。'], + ['code' => 'LogService.LogDirInvalid', 'message' => 'The log collection path is invalid.', 'http_code' => 400, 'description' => '日志采集路径不合法。'], + ['code' => 'LogService.NotAvailable', 'message' => 'Log Service is unavailable. Please activate Log Service first.', 'http_code' => 400, 'description' => '日志服务不可用,请先开通日志服务。'], + ['code' => 'LogService.ProjectNumQuotaExceed', 'message' => 'The maximum number of Log Service projects is exceeded.', 'http_code' => 400, 'description' => '日志服务项目个数超过配额限制,请加入钉群32874633联系技术产品专家进行咨询。'], + ['code' => 'Mamespace.Have.No.Applications', 'message' => 'There are no applications in this namespace.', 'http_code' => 400, 'description' => '该命名空间中没有应用。'], + ['code' => 'Measuredata.Query.Error', 'message' => 'An error occurred while querying measurement information.', 'http_code' => 500, 'description' => '当查询计量信息时报错。'], + ['code' => 'Micro.Service.MetaData.NotFound', 'message' => 'The micro service metadata not found {%s}.', 'http_code' => 400, 'description' => '微服务原信息不存在'], + ['code' => 'Micro.Service.NotFound', 'message' => 'The micro service not found {%s}.', 'http_code' => 400, 'description' => '服务不存在'], + ['code' => 'MinReadyInstanceRatio.Invalid', 'message' => 'The ratio of minimum available instances must be between 0 and 100.', 'http_code' => 400, 'description' => '最小存活实例数比例值必须在0~100之间。'], + ['code' => 'MinReadyInstances.Not.Smaller.Replicas', 'message' => 'The minimum number of available instances must be less than the number of application instances.', 'http_code' => 400, 'description' => '最小可用实例数必须小于应用实例数。'], + ['code' => 'Missing.OOSServiceRole', 'message' => 'You must specify OOSServiceRole. Please refer to the documentation to add OOSServiceRole in the RAM console.', 'http_code' => 400, 'description' => 'OOSServiceRole不存在,请根据文档在RAM控制台添加OOSServiceRole。'], + ['code' => 'Missing.TagKey', 'message' => 'You must specify TagKey.', 'http_code' => 400, 'description' => '标签值不能为空。'], + ['code' => 'MissingRequiredHeader', 'message' => 'The required HTTP header %s was not specified.', 'http_code' => 400, 'description' => '请求缺少必须的HTTP头'], + ['code' => 'MountConflict.ConfigMap', 'message' => 'Conflict detected for ConfigMap path %s.', 'http_code' => 400, 'description' => 'ConfigMap挂载路径%s存在冲突。'], + ['code' => 'MountConflict.Secret', 'message' => 'Conflict detected for Secret path %s.', 'http_code' => 400, 'description' => 'Secret挂载路径%s存在冲突。'], + ['code' => 'MSEGateway.NotExist', 'message' => 'The MSE gateway not exist.', 'http_code' => 400, 'description' => 'MSE微服务网关不存在。'], + ['code' => 'MseGatewayRoute.DeleteFailed', 'message' => 'Delete MSE gateway route failed.', 'http_code' => 400, 'description' => '删除MSE微服务网关路由失败。'], + ['code' => 'MseGatewayRule.CreateFailed', 'message' => 'Create MSE Gateway rule failed.', 'http_code' => 400, 'description' => '创建MSE微服务网关路由失败。'], + ['code' => 'MseGatewayRule.UpdateFailed', 'message' => 'Update MSE Gateway rule failed.', 'http_code' => 400, 'description' => '更新MSE微服务网关路由失败。'], + ['code' => 'Namespace.AppExists', 'message' => 'Please delete the application first.', 'http_code' => 400, 'description' => '请先删除应用。'], + ['code' => 'No.Permission', 'message' => 'The account has no permission.', 'http_code' => 400, 'description' => '该账号没有操作权限。'], + ['code' => 'NoAvailableCluster.NotFound', 'message' => 'No clusters are available for the current region.', 'http_code' => 400, 'description' => '当前地域没有可用集群。'], + ['code' => 'NoComputeResourceQuota.App.Exceed', 'message' => 'You can create %s instances for each application. Please submit a ticket to raise the quota.', 'http_code' => 400, 'description' => '每个应用只允许创建%s个实例,请加入钉群32874633联系技术产品专家进行咨询。'], + ['code' => 'NoComputeResourceQuota.Exceed', 'message' => 'Your compute resource is insufficient. please join the DingTalk group 32874633 for technical support.', 'http_code' => 400, 'description' => '计算资源不足,请加入钉群32874633联系技术产品专家进行咨询。'], + ['code' => 'NoComputeResourceQuota.User.Exceed', 'message' => 'Your account is limited to create %s instances. Please submit a ticket to raise the quota.', 'http_code' => 400, 'description' => '您的账户限额%s个实例,请加入钉群32874633联系技术产品专家进行咨询。'], + ['code' => 'NotFound.ConfigMap', 'message' => 'The ConfigMap object (ID: %s) does not exist.', 'http_code' => 400, 'description' => '找不到ConfigMap对象(ID=%s)。'], + ['code' => 'NotFound.ConfigMapKey', 'message' => 'The key %s of ConfigMap object (ID: %s) does not exist.', 'http_code' => 400, 'description' => '找不到ConfigMap对象(ID=%s)的Key %s。'], + ['code' => 'NotFound.Ingress', 'message' => 'Ingress not exist.', 'http_code' => 404, 'description' => 'Ingress不存在'], + ['code' => 'Notification.Too.Frequent', 'message' => 'Notifications are too frequent.', 'http_code' => 400, 'description' => '通知太频繁'], + ['code' => 'NumberExceed.ResourceIds', 'message' => 'The number of resource IDs cannot exceed 50.', 'http_code' => 400, 'description' => '资源ID个数不能超过50。'], + ['code' => 'NumberExceed.Tags', 'message' => 'The maximum number of tags is exceeded.', 'http_code' => 400, 'description' => '资源标签已达上限。'], + ['code' => 'NumberExceed.Tags', 'message' => 'The specified parameter Tags count exceed.', 'http_code' => 400, 'description' => '单个资源最大Tag数超限,最大20个标签。'], + ['code' => 'OnDemandConfigNotFound', 'message' => 'on-demand config for %s does not exist', 'http_code' => 404, 'description' => 'The on-demand configuration for %s is not found.'], + ['code' => 'Open.EipAndAutoScaling.NotSameTime', 'message' => 'EIP association and auto scaling cannot be enabled at the same time.', 'http_code' => 404, 'description' => '绑定EIP操作和自动弹性不能同时打开'], + ['code' => 'Operation.Not.Be.Approved.Yet', 'message' => 'This operation is not approved.', 'http_code' => 400, 'description' => '该操作还未被批准。'], + ['code' => 'OperationDenied.SDKNotSupported', 'message' => 'Metrics is not supported in SDK', 'http_code' => 400, 'description' => 'SDK未开放指标弹性规则。'], + ['code' => 'OperationFailed.DauthHttpRequest', 'message' => 'request dauth failed.', 'http_code' => 500, 'description' => '请求认证系统失败。'], + ['code' => 'OperationFailed.RPCError', 'message' => 'Internal RPC request processing error.', 'http_code' => 500, 'description' => '内部RPC请求处理报错。'], + ['code' => 'ORDER.OPEND', 'message' => 'order opend.', 'http_code' => 400, 'description' => '服务已开通'], + ['code' => 'OSSInvalidRequest', 'message' => 'Error for the OSS event source: %s', 'http_code' => 400, 'description' => '创建OSS触发器的参数错误'], + ['code' => 'Package.Version.Too.Long', 'message' => 'The maximum length of package version is exceeded.', 'http_code' => 400, 'description' => '应用部署包版本号长度超过限制。'], + ['code' => 'PandoraApplication.MissingJdk', 'message' => 'The Pandora application is missing a JDK component.', 'http_code' => 400, 'description' => 'Pandora应用缺少JDK组件。'], + ['code' => 'PandoraApplication.OnlyJdk', 'message' => 'A Pandora application only requires JDK component.', 'http_code' => 400, 'description' => 'Pandora应用只需要JDK组件。'], + ['code' => 'PathNotSupported', 'message' => '%s against %s is not supported.', 'http_code' => 404, 'description' => 'API请求的HTTP方法或者路径错误'], + ['code' => 'Pay.Insufficient.Balance', 'message' => 'pay insufficient balance', 'http_code' => 400, 'description' => '余额不足'], + ['code' => 'PhpApplication.MissingPhpRuntime', 'message' => 'A PHP application must contain PHP Runtime.', 'http_code' => 400, 'description' => 'PHP类型应用必须包含PHP运行时。'], + ['code' => 'Pipeline.Can.Not.Start.Next.Batch', 'message' => 'You cannot start the next batch under the current status.', 'http_code' => 400, 'description' => '发布单当前状态下不能开始下一批部署。'], + ['code' => 'PreconditionFailed', 'message' => 'The resource being modified has been changed.', 'http_code' => 412, 'description' => '更新的资源已经发生了变化'], + ['code' => 'ProjectAlreadyExist', 'message' => 'Project %s already exists.', 'http_code' => 400, 'description' => 'project已经存在'], + ['code' => 'ProjectQuotaExceed', 'message' => 'sls project exceeds maximum value.', 'http_code' => 403, 'description' => 'project超过最大值'], + ['code' => 'ProvisionConfigExist', 'message' => 'The provisioned configuration already exists for service %s, alias %s, functions %s.', 'http_code' => 409, 'description' => '预留配置已经存在'], + ['code' => 'ProvisionConfigNotFound', 'message' => 'The provisioned configuration is not found in service %s, alias %s, or functions %s.', 'http_code' => 404, 'description' => '所请求的预留配置不存在'], + ['code' => 'PullImageFailed', 'message' => 'Failed to pull image. %s', 'http_code' => 412, 'description' => '自定义镜像的函数拉取镜像失败'], + ['code' => 'QuotaExceeded.ScalingRule', 'message' => 'The maximum number of application scaling rules is exceeded.', 'http_code' => 400, 'description' => '应用弹性策略数量到达上限。'], + ['code' => 'QuotaExceeded.ScalingRuleTime', 'message' => 'The maximum number of scaling policy trigger time is exceeded.', 'http_code' => 400, 'description' => '弹性策略触发时间到达上限。'], + ['code' => 'QuotaExceeded.SecretDataKey', 'message' => 'The specified key in SecretData exceeded quota [%s].', 'http_code' => 400, 'description' => '保密字典字段数量超过上限 [%s].'], + ['code' => 'QuotaExceeded.SecretInNamespace', 'message' => 'The specified secret exceeded quota [%s].', 'http_code' => 400, 'description' => '超过保密字典上限 [%s]。 '], + ['code' => 'RequestTimeTooSkewed', 'message' => 'the difference between the request time %s and the current time %s is too large', 'http_code' => 403, 'description' => 'The interval between the request time %s and the current time %s is too long.'], + ['code' => 'Resouce.no.permission', 'message' => 'You are not authorized to operate on the specified resources.', 'http_code' => 400, 'description' => '没有权限操作资源。'], + ['code' => 'ResourceExhausted', 'message' => 'The number of concurrent requests exceeds the limit for the account or function.', 'http_code' => 429, 'description' => '并发调用的请求数超过了账号级别或函数级别限制'], + ['code' => 'ResourceThrottled', 'message' => 'ResourceThrottled: %s', 'http_code' => 503, 'description' => '资源流控错误'], + ['code' => 'rollback.error', 'message' => 'Failed to roll back.', 'http_code' => 400, 'description' => '回滚异常。'], + ['code' => 'Sae.Errorcode.Ahas.Create.Error.Message', 'message' => 'Failed to create AHAS.', 'http_code' => 400, 'description' => '创建AHAS失败。'], + ['code' => 'Saectl.Execution.Error', 'message' => '%s.', 'http_code' => 500, 'description' => 'saectl 执行失败。'], + ['code' => 'Saectl.Timeout', 'message' => '%s.', 'http_code' => 500, 'description' => 'saectl 执行超时'], + ['code' => 'SAERAMAuthorization', 'message' => 'The specified role does not exist.', 'http_code' => 400, 'description' => '角色不存在'], + ['code' => 'SecretNameConflict.AlreadyExist', 'message' => 'The specified SecretName [%s] already exist in this namespace.', 'http_code' => 400, 'description' => '指定的保密字典名称已经存在与当前命名空间中。'], + ['code' => 'ServerError.CreateSlrFailed', 'message' => 'Failed to create ServiceLinkedRoleForSAE. Please try again.', 'http_code' => 400, 'description' => '创建ServiceLinkedRoleForSAE失败, 请重试。'], + ['code' => 'ServiceAlreadyExists', 'message' => 'applicationName %s already exists', 'http_code' => 409, 'description' => '同名的应用已经存在'], + ['code' => 'ServiceNotEmpty', 'message' => 'The applicationName %s has active %s.', 'http_code' => 409, 'description' => '要删除的应用下存在函数、版本或别名'], + ['code' => 'ServiceNotFound', 'message' => 'applicationName %s does not exist.', 'http_code' => 404, 'description' => '请求的应用名不存在'], + ['code' => 'ServiceUnavailable', 'message' => 'The service is temporarily unavailable.', 'http_code' => 503, 'description' => '服务暂时不可用'], + ['code' => 'SignatureNotMatch', 'message' => 'The request signature we calculated does not match the signature you provided. Check your access key and signing method.', 'http_code' => 403, 'description' => '请求签名错误'], + ['code' => 'Slb.NotFound', 'message' => 'The SLB instance does not exist: slbId [%s]', 'http_code' => 400, 'description' => 'SLB不存在:slbId[%s]。'], + ['code' => 'Slb.Occupied', 'message' => 'The SLB instance is occupied.', 'http_code' => 400, 'description' => 'SLB实例被占用。'], + ['code' => 'Slb.Tag.Not.Qualified', 'message' => 'The current SLB instance cannot be reused because it may have been occupied by %s.', 'http_code' => 400, 'description' => 'SLB实例正在被%s使用,不建议复用。'], + ['code' => 'SlbAppVSwitch.NotMatch', 'message' => 'The SLB instance does not match the vSwitch of the current application.', 'http_code' => 400, 'description' => 'SLB与应用vSwitch不匹配。'], + ['code' => 'SlbHttpsCert.NotConsistent', 'message' => 'The HTTPS listening certificate for each listener must match.', 'http_code' => 400, 'description' => 'SLB设置HTTPS监听证书配置必须一致。'], + ['code' => 'SlbHttpsCert.NotFound', 'message' => 'You must configure the certificate before you configure HTTPS listening for the SLB instance.', 'http_code' => 400, 'description' => 'SLB设置HTTPS监听必须有证书配置。'], + ['code' => 'SLBInstanceQuota.OverQuota', 'message' => 'The total number of SLB instances exceeds the quota. Please reduce the instances and try again.', 'http_code' => 400, 'description' => 'SLB总实例数超过了限额,请您减少数量后重试。'], + ['code' => 'SlbListenerPort.NotAvailable', 'message' => 'The SLB listening port is unavailable: slbId [%s], port [%s]', 'http_code' => 400, 'description' => 'SLB监听端口被占用:slbId[%s], port[%s]。'], + ['code' => 'SlbListenerType.Invalid', 'message' => 'An SLB listener type error occurred. Only HTTPS and TCP are supported.', 'http_code' => 400, 'description' => 'SLB监听类型异常,只支持HTTPS和TCP类型。'], + ['code' => 'SlbSpec.NotSupport', 'message' => 'Shared performance SLB instances are not supported.', 'http_code' => 400, 'description' => '不支持性能共享型SLB实例。'], + ['code' => 'SlbStatus.Invalid', 'message' => 'The SLB instance status is not active.', 'http_code' => 400, 'description' => 'SLB实例状态不为active。'], + ['code' => 'SlbType.Invalid', 'message' => 'An SLB network type error occurred.', 'http_code' => 400, 'description' => 'SLB网络类型异常。'], + ['code' => 'SlbWarmup.ConfigFailed', 'message' => 'Failed to create slb warmup.', 'http_code' => 400, 'description' => '配置slb小流量预热失败'], + ['code' => 'SlbWarmup.DeleteFailed', 'message' => 'Failed to delete slb warmup.', 'http_code' => 400, 'description' => '删除slb小流量预热配置失败'], + ['code' => 'Sls.Config.Mixed.Multi.Project', 'message' => 'The specified Config contains multiple projects.', 'http_code' => 400, 'description' => '您输入的SLS Config中指定了多个Project。'], + ['code' => 'Sls.Config.User.Defined.Missing.Logstore.Info', 'message' => 'The specified Config is invalid. Both Project and Logstore must be specified.', 'http_code' => 400, 'description' => '您输入的SLS Config为自定义SLS配置,但是只有Project配置,缺失Logstore配置。'], + ['code' => 'Sls.Config.User.Defined.Missing.Project.Info', 'message' => 'The specified Config is invalid. Both Project and Logstore must be specified.', 'http_code' => 400, 'description' => '您输入的SLS Config为自定义SLS配置,但是只有Logstore配置,缺失Project配置。'], + ['code' => 'Sls.Logstore.Name.Invalid', 'message' => 'The specified name of Logstore is invalid. The Logstore name must not contain the prefix "sae-".', 'http_code' => 400, 'description' => '您输入的SLS Logstore名称不合法,前缀包含了"sae-",会与SAE自动创建的Logstore混淆。'], + ['code' => 'Sls.Logstore.User.Defined.Not.Exist', 'message' => 'The user defined Logstore does not exist.', 'http_code' => 400, 'description' => '您输入的自建Logstore不存在。'], + ['code' => 'Sls.Logtail.Name.Invalid', 'message' => 'The specified name of Logtail is invalid. The Logtail name must not contain the prefix sae-.', 'http_code' => 400, 'description' => '您输入的SLS Logtail名称不合法,前缀包含了"sae-",会与SAE自动创建的Logtail混淆。'], + ['code' => 'Sls.NotExist', 'message' => 'SLS configuration does not exist.', 'http_code' => 400, 'description' => 'sls资源不存在'], + ['code' => 'Sls.Project.Name.Invalid', 'message' => 'The specified project name is invalid. The project name must not contain the prefix "sae-".', 'http_code' => 400, 'description' => '您输入的SLS Project名称不合法,前缀包含了"sae-",会与SAE自动创建的Project混淆。'], + ['code' => 'Sls.Project.User.Defined.Not.Exist', 'message' => 'The user defined project does not exist.', 'http_code' => 400, 'description' => '您输入的自建Project不存在。'], + ['code' => 'Sls.With.Redundant.Logtail.Param', 'message' => 'The specified SLS config contains redundant logtail parameters. When you create SLS resources by using SAE, you do not need to specify the logtail parameter.', 'http_code' => 400, 'description' => '参数中包含了多余logtail信息,当选择通过SAE创建SLS资源时,无需指定logtail参数。'], + ['code' => 'SLSInvalidRequest', 'message' => 'An exception occurred when calling sls:%s.', 'http_code' => 400, 'description' => '调用sls发生异常'], + ['code' => 'SSLCert.NotFound', 'message' => 'The specified SSL certificate cannot be found.', 'http_code' => 400, 'description' => '找不到对应的SSL证书。'], + ['code' => 'StatefulAsyncInvocationAlreadyCompleted', 'message' => 'The invocation (status: %s) has already been completed and cannot be stopped.', 'http_code' => 412, 'description' => '异步有状态调用已经存在'], + ['code' => 'StatefulAsyncInvocationAlreadyExists', 'message' => 'The stateful invocation %s already exists.', 'http_code' => 409, 'description' => '异步有状态调用已经存在'], + ['code' => 'StatefulAsyncInvocationNotFound', 'message' => 'The stateful invocation for %s:%s:%s does not exist.', 'http_code' => 404, 'description' => '所请求的异步有状态调用不存在'], + ['code' => 'SubdomainTriggerMappingAlreadyExists', 'message' => 'The subdomain %s already exists.', 'http_code' => 409, 'description' => '子域名已经存在'], + ['code' => 'SubdomainTriggerMappingNotFound', 'message' => 'The subdomain %s is not found.', 'http_code' => 404, 'description' => '所请求的子域名不存在'], + ['code' => 'SubUserNoPermission', 'message' => 'An error occurred while performing RAM authentication. Go to the RAM console to authorize the specified sub account.', 'http_code' => 401, 'description' => 'RAM鉴权失败,您需要去RAM控制台针对该子账户进行授权。'], + ['code' => 'System.Upgrading', 'message' => 'The system is being upgraded. Please try again later.', 'http_code' => 400, 'description' => '系统正在升级,请稍后操作。'], + ['code' => 'Target.Is.Already.Officer', 'message' => 'It is unnecessary to transfer approval permissions to an approver.', 'http_code' => 400, 'description' => '目标已经是该资源的审批人,无需再向其转交审批权限。'], + ['code' => 'Target.Is.Operator', 'message' => 'You cannot transfer approval permissions to an operator.', 'http_code' => 400, 'description' => '目标是操作者,无法向其转交操作审批权限。'], + ['code' => 'TargetServerErrorNeedsRetry', 'message' => 'TargetServerErrorNeedsRetry: %s', 'http_code' => 503, 'description' => '异步目标投递错误'], + ['code' => 'TooMany.Configmap', 'message' => 'The maximum number of keys or the maximum length of Configmap is exceeded.', 'http_code' => 400, 'description' => 'Configmap的key数量,或者内容长度超过最大限制。'], + ['code' => 'TriggerAlreadyExists', 'message' => 'The trigger % already exists in service %s or function %s.', 'http_code' => 409, 'description' => '同名的触发器已经存在'], + ['code' => 'TriggerNotFound', 'message' => 'The trigger % is not found in service %s or function %s.', 'http_code' => 404, 'description' => '所请求的触发器不存在'], + ['code' => 'unsupported.workload', 'message' => 'The specified instances to scale in application does not support the workload', 'http_code' => 400, 'description' => '指定实例缩容应用不支持该工作负载。'], + ['code' => 'UnsupportedMediaType', 'message' => 'The content type must be application/json or application/octet-stream.', 'http_code' => 415, 'description' => '请求的媒体类型错误'], + ['code' => 'user.indebt', 'message' => 'The user has an outstanding payment.', 'http_code' => 400, 'description' => '当前用户处于欠费状态。'], + ['code' => 'VersionAlreadyInUse', 'message' => 'The version %d is already used by the alias %s. Please first delete all the aliases that use this version.', 'http_code' => 409, 'description' => '当前版本正在使用,无法删除'], + ['code' => 'VersionIsDeleted', 'message' => 'VersionIsDeleted: %s', 'http_code' => 404, 'description' => '所请求的版本已经被删除'], + ['code' => 'VersionNotFound', 'message' => 'The version %d of service %s is not found.', 'http_code' => 404, 'description' => '所请求的版本不存在'], + ['code' => 'VersionPublishError', 'message' => 'Failed to publish a version for the service %s. Detail: %s', 'http_code' => 400, 'description' => '当前服务无法发布版本'], + ['code' => 'VolumnPath.Conflict', 'message' => 'Conflict between log collection directory and persistent storage directory.', 'http_code' => 400, 'description' => '日志采集目录与持久化存储目录冲突。'], + ['code' => 'VpcBindingAlreadyExists', 'message' => 'The VPC binding already exists.', 'http_code' => 409, 'description' => 'VPC绑定已经存在'], + ['code' => 'VpcBindingNotFound', 'message' => 'The requested VPC binding is not found.', 'http_code' => 404, 'description' => '所请求的VPC绑定不存在'], + ['code' => 'vswitch.not.exist', 'message' => 'The specified vSwitch does not exist.', 'http_code' => 400, 'description' => 'vSwitch不存在,请更换vSwitch。'], + ['code' => 'Vswitch.UpdateFail', 'message' => 'vswitch update fail.', 'http_code' => 400, 'description' => 'vswitch更新失败'], + ['code' => 'WarApplication.MissingJdkWebcontainer', 'message' => 'A War application must contain JDK and Tomcat.', 'http_code' => 400, 'description' => 'WAR类型应用必须包含JDK和Tomcat。'], + ['code' => 'Saectl.Execution.Error', 'message' => '%s.', 'http_code' => 400, 'description' => 'saectl 执行失败。'], + ], + 'changeSet' => [ + [ + 'apis' => [ + ['description' => 'OpenAPI 下线', 'api' => 'ListAppEvents'], + ['description' => 'OpenAPI 下线', 'api' => 'ListAppEvents'], + ['description' => 'OpenAPI 下线', 'api' => 'ListChangeOrders'], + ['description' => 'OpenAPI 下线', 'api' => 'ListNamespaceChangeOrders'], + ['description' => 'OpenAPI 下线', 'api' => 'ListAppEvents'], + ], + 'createdAt' => '2026-04-13T02:34:54.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationConfig'], ], - 'schemes' => [ - 'http', - 'https', + 'createdAt' => '2026-03-05T03:34:48.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'OpenAPI 下线', 'api' => 'DeployApplication'], + ['description' => 'OpenAPI 下线', 'api' => 'CreateApplication'], + ['description' => 'OpenAPI 下线', 'api' => 'DescribeApplicationConfig'], + ['description' => 'OpenAPI 下线', 'api' => 'DeployApplication'], + ['description' => 'OpenAPI 下线', 'api' => 'CreateApplication'], + ['description' => 'OpenAPI 下线', 'api' => 'DescribeApplicationConfig'], + ['description' => 'OpenAPI 下线', 'api' => 'DescribeApplicationConfig'], + ['description' => 'OpenAPI 下线', 'api' => 'DeployApplication'], + ['description' => 'OpenAPI 下线', 'api' => 'CreateApplication'], + ['description' => 'OpenAPI 下线', 'api' => 'DescribeApplicationConfig'], + ], + 'createdAt' => '2026-03-04T03:39:22.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'CreateApplication'], + ['description' => '请求参数发生变更', 'api' => 'DeployApplication'], + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationConfig'], + ['description' => '响应参数发生变更', 'api' => 'ListApplications'], + ], + 'createdAt' => '2026-02-25T06:15:36.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'OpenAPI 下线', 'api' => 'ListApplications'], + ['description' => 'OpenAPI 下线', 'api' => 'CreateApplication'], + ['description' => 'OpenAPI 下线', 'api' => 'DescribeApplicationConfig'], + ['description' => 'OpenAPI 下线', 'api' => 'DeployApplication'], + ['description' => 'OpenAPI 下线', 'api' => 'DeployApplication'], + ['description' => 'OpenAPI 下线', 'api' => 'CreateApplication'], + ['description' => 'OpenAPI 下线', 'api' => 'DescribeApplicationConfig'], + ['description' => 'OpenAPI 下线', 'api' => 'ListApplications'], + ['description' => 'OpenAPI 下线', 'api' => 'DeployApplication'], + ['description' => 'OpenAPI 下线', 'api' => 'CreateApplication'], + ], + 'createdAt' => '2026-01-13T08:52:08.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationInstances'], ], - 'security' => [ - [ - 'AK' => [], - ], + 'createdAt' => '2025-12-29T08:08:56.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'UpdateApplicationVswitches'], ], - 'operationType' => 'readAndWrite', - 'deprecated' => false, - 'systemTags' => [ + 'createdAt' => '2025-12-29T02:31:16.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'OpenAPI 下线', 'api' => 'CreateApplication'], + ['description' => 'OpenAPI 下线', 'api' => 'CreateApplication'], + ['description' => 'OpenAPI 下线', 'api' => 'UpdateApplicationVswitches'], + ['description' => 'OpenAPI 下线', 'api' => 'DescribeApplicationInstances'], + ], + 'createdAt' => '2025-12-25T07:49:55.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'OpenAPI 下线', 'api' => 'DeployApplication'], + ['description' => 'OpenAPI 下线', 'api' => 'CreateApplication'], + ['description' => 'OpenAPI 下线', 'api' => 'UpdateWebCustomDomain'], + ['description' => 'OpenAPI 下线', 'api' => 'UpdateWebApplicationTrafficConfig'], + ['description' => 'OpenAPI 下线', 'api' => 'UpdateWebApplicationScalingConfig'], + ['description' => 'OpenAPI 下线', 'api' => 'UpdateWebApplication'], + ['description' => 'OpenAPI 下线', 'api' => 'StopWebApplication'], + ['description' => 'OpenAPI 下线', 'api' => 'StartWebApplication'], + ['description' => 'OpenAPI 下线', 'api' => 'PublishWebApplicationRevision'], + ['description' => 'OpenAPI 下线', 'api' => 'ListWebCustomDomains'], + ], + 'createdAt' => '2025-12-25T03:02:51.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'OpenAPI 下线', 'api' => 'DescribeApplicationSlbs'], + ['description' => 'OpenAPI 下线', 'api' => 'DescribeApplicationSlbs'], + ['description' => 'OpenAPI 下线', 'api' => 'DescribeApplicationSlbs'], + ], + 'createdAt' => '2025-12-23T07:28:24.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'OpenAPI 下线', 'api' => 'DescribeApplicationSlbs'], + ], + 'createdAt' => '2025-12-23T07:28:23.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'UpdateNamespaceSlsConfigs'], + ], + 'createdAt' => '2025-12-22T06:16:48.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'DeployApplication'], + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationConfig'], + ['description' => '请求参数发生变更', 'api' => 'CreateApplication'], + ], + 'createdAt' => '2025-12-22T05:47:30.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'OpenAPI 下线', 'api' => 'RescaleApplicationVertically'], + ['description' => 'OpenAPI 下线', 'api' => 'UpdateAppMode'], + ['description' => 'OpenAPI 下线', 'api' => 'RescaleApplicationVertically'], + ['description' => 'OpenAPI 下线', 'api' => 'RescaleApplicationVertically'], + ['description' => 'OpenAPI 下线', 'api' => 'UpdateAppMode'], + ['description' => 'OpenAPI 下线', 'api' => 'UpdateAppMode'], + ['description' => 'OpenAPI 下线', 'api' => 'UpdateAppMode'], + ['description' => 'OpenAPI 下线', 'api' => 'UpdateAppMode'], + ['description' => 'OpenAPI 下线', 'api' => 'UpdateAppMode'], + ['description' => 'OpenAPI 下线', 'api' => 'UpdateAppMode'], + ], + 'createdAt' => '2025-12-19T07:00:08.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '响应参数发生变更', 'api' => 'ListApplications'], + ], + 'createdAt' => '2025-12-05T01:42:14.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'ListApplications'], + ], + 'createdAt' => '2025-12-01T03:12:30.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationInstances'], + ], + 'createdAt' => '2025-12-01T01:47:33.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'CreateApplication'], + ['description' => '请求参数发生变更', 'api' => 'DeployApplication'], + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationConfig'], + ], + 'createdAt' => '2025-11-27T05:53:16.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'RescaleApplicationVertically'], + ['description' => '请求参数发生变更', 'api' => 'UpdateApplicationVswitches'], + ], + 'createdAt' => '2025-11-26T04:58:01.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '响应参数发生变更', 'api' => 'DescribeNamespaceResources'], + ], + 'createdAt' => '2025-11-04T07:29:33.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'CreateApplication'], + ['description' => '请求参数发生变更', 'api' => 'DeployApplication'], + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationConfig'], + ], + 'createdAt' => '2025-11-04T03:35:18.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'DescribeInstanceLog'], + ], + 'createdAt' => '2025-10-30T05:34:31.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '响应参数发生变更', 'api' => 'DescribeNamespaceResources'], + ], + 'createdAt' => '2025-10-28T12:49:40.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'DeployApplication'], + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationConfig'], + ], + 'createdAt' => '2025-10-24T09:36:51.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'CreateIngress'], + ['description' => '响应参数发生变更', 'api' => 'DescribeIngress'], + ['description' => '请求参数发生变更', 'api' => 'UpdateIngress'], + ], + 'createdAt' => '2025-10-24T08:31:40.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'RescaleApplicationVertically'], + ], + 'createdAt' => '2025-10-15T07:13:17.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'DeployApplication'], + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationConfig'], + ], + 'createdAt' => '2025-10-13T09:41:27.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationConfig'], + ], + 'createdAt' => '2025-09-29T09:27:55.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'CreateApplication'], + ['description' => '请求参数发生变更', 'api' => 'DeployApplication'], + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationConfig'], + ], + 'createdAt' => '2025-09-18T11:31:48.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'CreateJob'], + ['description' => '请求参数发生变更', 'api' => 'DescribeConfigurationPrice'], + ['description' => '响应参数发生变更', 'api' => 'DescribeJob'], + ['description' => '请求参数发生变更', 'api' => 'UpdateJob'], + ], + 'createdAt' => '2025-09-08T05:48:22.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'CreateApplication'], + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationConfig'], + ], + 'createdAt' => '2025-07-30T07:00:28.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'CreateApplication'], + ['description' => '请求参数发生变更', 'api' => 'DeployApplication'], + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationConfig'], + ], + 'createdAt' => '2025-07-29T05:34:28.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'UpdateAppMode'], + ], + 'createdAt' => '2025-07-23T09:05:36.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更、响应参数发生变更', 'api' => 'ListIngresses'], + ], + 'createdAt' => '2025-07-14T12:57:42.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '响应参数发生变更', 'api' => 'ListJobs'], + ], + 'createdAt' => '2025-07-10T07:33:05.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'CreateApplication'], + ['description' => '请求参数发生变更', 'api' => 'DeployApplication'], + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationConfig'], + ['description' => '响应参数发生变更', 'api' => 'GetApplication'], + ['description' => '请求参数发生变更', 'api' => 'ListApplications'], + ], + 'createdAt' => '2025-07-04T06:13:17.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationScalingRules'], + ], + 'createdAt' => '2025-06-27T03:15:10.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '响应参数发生变更', 'api' => 'ListApplications'], + ], + 'createdAt' => '2025-06-24T11:14:56.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '响应参数发生变更', 'api' => 'ListAppEvents'], + ], + 'createdAt' => '2025-06-20T10:10:21.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationScalingRules'], + ], + 'createdAt' => '2025-06-09T08:45:02.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationConfig'], + ], + 'createdAt' => '2025-05-29T01:55:11.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'CreateApplication'], + ['description' => '请求参数发生变更', 'api' => 'DeployApplication'], + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationConfig'], + ], + 'createdAt' => '2025-05-26T08:50:44.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'DeployApplication'], + ], + 'createdAt' => '2025-05-22T02:32:22.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'CreateApplication'], + ], + 'createdAt' => '2025-05-22T02:27:41.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '响应参数发生变更', 'api' => 'QueryResourceStatics'], + ], + 'createdAt' => '2025-05-22T02:23:37.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'AbortChangeOrder'], + ], + 'createdAt' => '2025-05-19T10:46:04.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationGroups'], + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationSlbs'], + ['description' => '响应参数发生变更', 'api' => 'DescribeChangeOrder'], + ], + 'createdAt' => '2025-05-13T11:34:30.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '响应参数发生变更', 'api' => 'GetWebshellToken'], + ], + 'createdAt' => '2025-05-07T09:46:22.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'CreateApplication'], + ['description' => '请求参数发生变更', 'api' => 'DeployApplication'], + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationConfig'], + ], + 'createdAt' => '2025-04-25T11:27:39.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'DescribeConfigurationPrice'], + ['description' => '响应参数发生变更', 'api' => 'QueryResourceStatics'], + ], + 'createdAt' => '2025-04-22T01:55:01.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'CreateApplication'], + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationConfig'], + ['description' => '响应参数发生变更', 'api' => 'ListApplications'], + ['description' => '请求参数发生变更', 'api' => 'RescaleApplicationVertically'], + ], + 'createdAt' => '2025-04-07T03:09:41.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'DescribeApplicationInstances'], + ], + 'createdAt' => '2025-04-01T07:12:45.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更、响应参数发生变更', 'api' => 'GetChangeOrderMetric'], + ['description' => '请求参数发生变更', 'api' => 'ListChangeOrders'], + ], + 'createdAt' => '2025-04-01T07:07:09.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationInstances'], + ], + 'createdAt' => '2025-04-01T06:37:18.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'CreateIngress'], + ['description' => '响应参数发生变更', 'api' => 'DescribeIngress'], + ['description' => '响应参数发生变更', 'api' => 'ListIngresses'], + ['description' => '请求参数发生变更', 'api' => 'UpdateIngress'], + ], + 'createdAt' => '2025-03-21T02:12:22.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '响应参数发生变更', 'api' => 'ListApplications'], + ], + 'createdAt' => '2025-03-14T02:30:54.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationScalingRule'], + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationScalingRules'], + ], + 'createdAt' => '2025-03-14T02:09:32.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'CreateApplication'], + ['description' => '请求参数发生变更', 'api' => 'DeployApplication'], + ], + 'createdAt' => '2025-03-13T11:49:22.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '响应参数发生变更', 'api' => 'ListApplications'], + ], + 'createdAt' => '2025-03-12T08:03:40.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '响应参数发生变更', 'api' => 'ListApplications'], + ], + 'createdAt' => '2025-02-27T03:42:56.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'DescribeConfigurationPrice'], + ], + 'createdAt' => '2025-02-27T01:45:46.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationConfig'], + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationSlbs'], + ['description' => '响应参数发生变更', 'api' => 'ListIngresses'], + ], + 'createdAt' => '2025-02-26T08:54:22.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationConfig'], + ], + 'createdAt' => '2025-02-13T01:46:29.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'DeployApplication'], + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationConfig'], + ], + 'createdAt' => '2025-01-20T11:43:02.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'CreateApplication'], + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationConfig'], + ], + 'createdAt' => '2025-01-13T06:08:11.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'CreateIngress'], + ['description' => '响应参数发生变更', 'api' => 'DescribeIngress'], + ], + 'createdAt' => '2025-01-10T02:31:07.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationConfig'], + ], + 'createdAt' => '2025-01-02T06:59:48.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'GetWebshellToken'], + ], + 'createdAt' => '2025-01-02T02:46:10.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更、响应参数发生变更', 'api' => 'DescribeApplicationInstances'], + ], + 'createdAt' => '2024-12-26T11:35:19.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'CreateApplication'], + ['description' => '请求参数发生变更', 'api' => 'DeployApplication'], + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationConfig'], + ], + 'createdAt' => '2024-12-26T08:39:12.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationInstances'], + ], + 'createdAt' => '2024-12-20T14:02:59.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'CreateApplication'], + ['description' => '请求参数发生变更', 'api' => 'DeployApplication'], + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationConfig'], + ['description' => '请求参数发生变更', 'api' => 'DescribeInstanceLog'], + ], + 'createdAt' => '2024-12-17T11:33:51.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '错误码发生变更、请求参数发生变更', 'api' => 'CreateApplication'], + ['description' => '错误码发生变更、请求参数发生变更', 'api' => 'DeployApplication'], + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationConfig'], + ], + 'createdAt' => '2024-12-10T09:29:39.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'CreateApplication'], + ['description' => '请求参数发生变更', 'api' => 'DeployApplication'], + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationConfig'], + ], + 'createdAt' => '2024-11-08T03:12:08.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '响应参数发生变更', 'api' => 'DescribeIngress'], + ], + 'createdAt' => '2024-11-06T01:59:25.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'CreateIngress'], + ['description' => '响应参数发生变更', 'api' => 'DescribeIngress'], + ['description' => '请求参数发生变更', 'api' => 'UpdateIngress'], + ], + 'createdAt' => '2024-10-29T08:50:58.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '响应参数发生变更', 'api' => 'QueryResourceStatics'], + ], + 'createdAt' => '2024-10-28T12:23:25.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '响应参数发生变更', 'api' => 'DescribeConfigurationPrice'], + ], + 'createdAt' => '2024-10-17T05:36:28.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'CreateApplication'], + ['description' => '请求参数发生变更', 'api' => 'DeployApplication'], + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationConfig'], + ], + 'createdAt' => '2024-10-11T03:29:50.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'RescaleApplicationVertically'], + ], + 'createdAt' => '2024-09-24T01:48:11.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '响应参数发生变更', 'api' => 'ListApplications'], + ], + 'createdAt' => '2024-09-13T02:14:01.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'CreateApplication'], + ['description' => '请求参数发生变更', 'api' => 'DeployApplication'], + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationConfig'], + ], + 'createdAt' => '2024-09-12T03:25:01.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'CreateIngress'], + ['description' => '响应参数发生变更', 'api' => 'DescribeIngress'], + ['description' => '请求参数发生变更', 'api' => 'UpdateIngress'], + ], + 'createdAt' => '2024-09-11T08:46:03.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更、响应参数发生变更', 'api' => 'CreateApplicationScalingRule'], + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationScalingRule'], + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationScalingRules'], + ['description' => '请求参数发生变更、响应参数发生变更', 'api' => 'UpdateApplicationScalingRule'], + ], + 'createdAt' => '2024-08-30T09:17:01.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '响应参数发生变更', 'api' => 'DescribeWebCustomDomain'], + ['description' => '请求参数发生变更', 'api' => 'ListWebCustomDomains'], + ], + 'createdAt' => '2024-08-28T10:51:52.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'CreateApplication'], + ['description' => '请求参数发生变更', 'api' => 'DeployApplication'], + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationConfig'], + ], + 'createdAt' => '2024-08-28T07:05:23.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'CreateIngress'], + ['description' => '响应参数发生变更', 'api' => 'DescribeIngress'], + ['description' => '请求参数发生变更', 'api' => 'UpdateIngress'], + ], + 'createdAt' => '2024-08-21T01:31:51.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationConfig'], + ], + 'createdAt' => '2024-08-12T10:24:39.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'BindSlb'], + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationSlbs'], + ], + 'createdAt' => '2024-08-07T11:18:44.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationSlbs'], + ], + 'createdAt' => '2024-06-18T11:54:38.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationSlbs'], + ], + 'createdAt' => '2024-05-30T07:26:35.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '响应参数发生变更', 'api' => 'ListApplications'], + ], + 'createdAt' => '2024-05-24T09:21:21.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'CreateApplication'], + ['description' => '请求参数发生变更', 'api' => 'DeployApplication'], + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationConfig'], + ['description' => '响应参数发生变更', 'api' => 'ListApplications'], + ], + 'createdAt' => '2024-05-21T02:17:18.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更、响应参数发生变更', 'api' => 'DescribeAppServiceDetail'], + ], + 'createdAt' => '2024-05-20T11:58:47.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'BatchStartApplications'], + ['description' => '请求参数发生变更', 'api' => 'BatchStopApplications'], + ], + 'createdAt' => '2024-04-12T01:57:24.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'GetArmsTopNMetric'], + ['description' => '请求参数发生变更', 'api' => 'GetAvailabilityMetric'], + ['description' => '请求参数发生变更', 'api' => 'GetChangeOrderMetric'], + ['description' => '请求参数发生变更', 'api' => 'GetScaleAppMetric'], + ['description' => '请求参数发生变更', 'api' => 'GetWarningEventMetric'], + ], + 'createdAt' => '2024-03-28T05:29:44.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'CreateApplication'], + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationConfig'], + ['description' => '请求参数发生变更', 'api' => 'ListApplications'], + ], + 'createdAt' => '2024-01-22T11:45:39.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '响应参数发生变更', 'api' => 'DescribeConfigurationPrice'], + ], + 'createdAt' => '2023-12-06T09:23:42.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationConfig'], + ], + 'createdAt' => '2023-10-24T12:02:55.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'CreateApplication'], + ], + 'createdAt' => '2023-10-24T10:42:22.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationConfig'], + ['description' => '响应参数发生变更', 'api' => 'ListIngresses'], + ], + 'createdAt' => '2023-09-25T08:35:21.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationConfig'], + ], + 'createdAt' => '2023-06-07T08:56:28.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'CreateApplication'], + ['description' => '请求参数发生变更', 'api' => 'DeployApplication'], + ], + 'createdAt' => '2023-06-07T08:48:47.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'DeployApplication'], + ], + 'createdAt' => '2023-06-05T02:22:43.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationScalingRule'], + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationScalingRules'], + ], + 'createdAt' => '2023-05-31T11:10:59.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '响应参数发生变更', 'api' => 'CreateApplicationScalingRule'], + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationScalingRule'], + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationScalingRules'], + ['description' => '响应参数发生变更', 'api' => 'UpdateApplicationScalingRule'], + ], + 'createdAt' => '2023-05-24T09:15:01.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'CreateSecret'], + ['description' => '请求参数发生变更', 'api' => 'UpdateSecret'], + ], + 'createdAt' => '2023-05-24T05:53:56.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '响应参数发生变更', 'api' => 'CreateApplicationScalingRule'], + ], + 'createdAt' => '2023-05-23T09:39:04.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '响应参数发生变更', 'api' => 'DescribeIngress'], + ], + 'createdAt' => '2023-05-08T05:55:34.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'CreateApplication'], + ['description' => '响应参数发生变更', 'api' => 'ListJobs'], + ['description' => '请求参数发生变更', 'api' => 'RestartApplication'], + ], + 'createdAt' => '2023-03-30T11:11:55.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '错误码发生变更', 'api' => 'DescribeApplicationImage'], + ['description' => '错误码发生变更', 'api' => 'DescribeInstanceSpecifications'], + ], + 'createdAt' => '2023-03-24T08:24:04.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '错误码发生变更', 'api' => 'DescribeEdasContainers'], + ], + 'createdAt' => '2023-03-24T08:24:02.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'CreateNamespace'], + ['description' => '请求参数发生变更', 'api' => 'UpdateNamespace'], + ], + 'createdAt' => '2023-03-24T08:23:01.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '响应参数发生变更', 'api' => 'ListGreyTagRoute'], + ], + 'createdAt' => '2023-01-09T07:10:59.000Z', + 'description' => '增加serviceName参数', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'DeleteNamespace'], + ['description' => '请求参数发生变更', 'api' => 'DescribeNamespace'], + ], + 'createdAt' => '2023-01-04T08:04:42.000Z', + 'description' => '修改必填属性', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'CreateGreyTagRoute'], + ['description' => '请求参数发生变更、响应参数发生变更', 'api' => 'CreateNamespace'], + ['description' => '请求参数发生变更', 'api' => 'DeleteNamespace'], + ['description' => '响应参数发生变更', 'api' => 'DescribeGreyTagRoute'], + ['description' => '请求参数发生变更、响应参数发生变更、错误码发生变更', 'api' => 'DescribeNamespace'], + ['description' => '响应参数发生变更、错误码发生变更', 'api' => 'DescribeNamespaceList'], + ['description' => '请求参数发生变更、响应参数发生变更', 'api' => 'DescribeNamespaceResources'], + ['description' => '响应参数发生变更', 'api' => 'DescribeNamespaces'], + ['description' => '响应参数发生变更', 'api' => 'ListGreyTagRoute'], + ], + 'createdAt' => '2022-12-29T03:14:56.000Z', + 'description' => '接口优化', + ], + [ + 'apis' => [ + ['description' => '错误码发生变更', 'api' => 'CreateApplication'], + ['description' => '错误码发生变更', 'api' => 'CreateApplicationScalingRule'], + ['description' => '错误码发生变更', 'api' => 'CreateJob'], + ['description' => '错误码发生变更', 'api' => 'DeployApplication'], + ['description' => '错误码发生变更', 'api' => 'EnableApplicationScalingRule'], + ['description' => '错误码发生变更', 'api' => 'ReduceApplicationCapacityByInstanceIds'], + ['description' => '错误码发生变更', 'api' => 'RescaleApplication'], + ['description' => '错误码发生变更', 'api' => 'RescaleApplicationVertically'], + ['description' => '错误码发生变更', 'api' => 'RestartApplication'], + ['description' => '错误码发生变更', 'api' => 'RestartInstances'], + ], + 'createdAt' => '2022-12-26T09:20:16.000Z', + 'description' => '更新错误码说明', + ], + [ + 'apis' => [ + ['description' => '响应参数发生变更、响应参数发生变更', 'api' => 'CreateApplicationScalingRule'], + ['description' => '响应参数发生变更', 'api' => 'DeleteApplicationScalingRule'], + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationScalingRule'], + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationScalingRules'], + ['description' => '响应参数发生变更', 'api' => 'DisableApplicationScalingRule'], + ['description' => '响应参数发生变更', 'api' => 'EnableApplicationScalingRule'], + ['description' => '响应参数发生变更', 'api' => 'UpdateApplicationScalingRule'], + ], + 'createdAt' => '2022-12-19T02:16:51.000Z', + 'description' => '给ApplicationScalingRule相关接口的返回结构增加ErrorCode等信息', + ], + [ + 'apis' => [ + ['description' => '响应参数发生变更', 'api' => 'UpdateSecret'], + ], + 'createdAt' => '2022-12-05T08:03:12.000Z', + 'description' => '修复 Secret 返回类型', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'DeployApplication'], + ], + 'createdAt' => '2022-12-02T03:33:51.000Z', + 'description' => '发布保密字典资源', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'CreateIngress'], + ['description' => '响应参数发生变更', 'api' => 'DescribeIngress'], + ['description' => '响应参数发生变更', 'api' => 'ListIngresses'], + ['description' => '请求参数发生变更', 'api' => 'UpdateIngress'], + ], + 'createdAt' => '2022-12-02T02:47:31.000Z', + 'description' => 'ALB增加多证书参数', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'CreateApplication'], + ['description' => '请求参数发生变更', 'api' => 'CreateJob'], + ['description' => 'OpenAPI 下线', 'api' => 'CreateSecret'], + ['description' => 'OpenAPI 下线', 'api' => 'DeleteSecret'], + ['description' => '请求参数发生变更', 'api' => 'DeployApplication'], + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationConfig'], + ['description' => '请求参数发生变更', 'api' => 'DescribeAppServiceDetail'], + ['description' => '响应参数发生变更', 'api' => 'DescribeJob'], + ['description' => 'OpenAPI 下线', 'api' => 'DescribeSecret'], + ['description' => '请求参数发生变更', 'api' => 'ExecJob'], + ], + 'createdAt' => '2022-11-22T13:30:21.000Z', + 'description' => '【新功能】:应用/任务支持Python zip包直接部署,降低用户制作Docker镜像门槛。【新功能】:支持保密字典(K8s Secret),支持跨账号通过用户名密码拉取镜像。【新功能】:支持应用停止状态下修改部署配置。【体验优化】:应用切换 vswitch免重启功能优化,对所有实例立即生效。【体验优化】:优化SLB发布单类型,区分绑定及修改操作,并记录SLB的ip信息。【体验优化】:日志采集到SLS增加应用名tag。【体验优化】:任务模板列表中新增任务执行状态。【体验优化】:优化任务执行链路耗时,减少冷启动对任务创建的影响。【bugfix】:修复偶发情况下ConfigMap配置失败问题。', + ], + [ + 'apis' => [ + ['description' => '错误码发生变更', 'api' => 'UpdateApplicationScalingRule'], + ], + 'createdAt' => '2022-11-09T01:55:39.000Z', + 'description' => '增加异常状态码', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'ListAppServicesPage'], + ['description' => '请求参数发生变更', 'api' => 'ListAppVersions'], + ['description' => '请求参数发生变更', 'api' => 'TagResources'], + ], + 'createdAt' => '2022-10-25T08:49:21.000Z', + 'description' => '修改字段属性', + ], + [ + 'apis' => [ + ['description' => '响应参数发生变更', 'api' => 'DescribeNamespaces'], + ], + 'createdAt' => '2022-10-13T13:05:10.000Z', + 'description' => '更新Namespace字段可见性', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'CreateApplication'], + ['description' => '请求参数发生变更', 'api' => 'DeployApplication'], + ], + 'createdAt' => '2022-08-02T06:11:33.000Z', + 'description' => 'Delete kafka params', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'DescribeConfigurationPrice'], + ], + 'createdAt' => '2022-07-08T07:35:51.000Z', + 'description' => '更新Job询价', + ], + [ + 'apis' => [ + ['description' => '错误码发生变更', 'api' => 'StartApplication'], + ], + 'createdAt' => '2022-05-27T03:01:34.000Z', + 'description' => 'ErrorCode 更新', + ], + [ + 'apis' => [ + ['description' => '错误码发生变更', 'api' => 'ListApplications'], + ], + 'createdAt' => '2022-05-26T03:01:50.000Z', + 'description' => '增加错误码说明', + ], + [ + 'apis' => [ + ['description' => '错误码发生变更', 'api' => 'CreateApplication'], + ['description' => '错误码发生变更', 'api' => 'DeployApplication'], + ], + 'createdAt' => '2022-05-16T11:16:34.000Z', + 'description' => '增加 ACREE 错误码', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'UpdateNamespace'], + ], + 'createdAt' => '2022-04-11T11:40:59.000Z', + 'description' => '更改字段是否必填', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'CreateNamespace'], + ], + 'createdAt' => '2022-04-11T08:51:41.000Z', + 'description' => '修改字段是否必选', + ], + [ + 'apis' => [ + ['description' => '错误码发生变更', 'api' => 'DeployApplication'], + ], + 'createdAt' => '2022-03-17T11:01:04.000Z', + 'description' => '增加错误码说明', + ], + [ + 'apis' => [ + ['description' => '错误码发生变更、请求参数发生变更', 'api' => 'CreateApplication'], + ['description' => '请求参数发生变更', 'api' => 'DeployApplication'], + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationConfig'], + ['description' => '响应参数发生变更', 'api' => 'DescribeChangeOrder'], + ['description' => '响应参数发生变更', 'api' => 'DescribeGreyTagRoute'], + ['description' => '响应参数发生变更', 'api' => 'ListAppServicesPage'], + ], + 'createdAt' => '2022-03-17T07:57:44.000Z', + 'description' => '发布鹿鼎山迭代的接口', + ], + [ + 'apis' => [ + ['description' => '错误码发生变更', 'api' => 'BindSlb'], + ], + 'createdAt' => '2022-02-25T09:30:52.000Z', + 'description' => 'vswitch状态码问题修复', + ], + [ + 'apis' => [ + ['description' => '错误码发生变更', 'api' => 'DescribeNamespaces'], + ], + 'createdAt' => '2022-02-21T04:51:35.000Z', + 'description' => '调整超时时间', + ], + [ + 'apis' => [ + ['description' => '错误码发生变更', 'api' => 'RollbackApplication'], + ], + 'createdAt' => '2022-02-21T02:54:50.000Z', + 'description' => '状态码修改', + ], + [ + 'apis' => [ + ['description' => '错误码发生变更', 'api' => 'EnableApplicationScalingRule'], + ], + 'createdAt' => '2022-02-16T02:50:21.000Z', + 'description' => '新增异常状态码说明', + ], + [ + 'apis' => [ + ['description' => '错误码发生变更', 'api' => 'CreateApplication'], + ['description' => '错误码发生变更', 'api' => 'DeployApplication'], + ['description' => '错误码发生变更', 'api' => 'RollbackApplication'], + ], + 'createdAt' => '2022-01-18T06:13:34.000Z', + 'description' => 'Support describe price.', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'CreateApplication'], + ], + 'createdAt' => '2021-12-28T04:34:26.000Z', + 'description' => '创建应用,SDK 开放 ACREE', + ], + [ + 'apis' => [ + ['description' => '响应参数发生变更、错误码发生变更', 'api' => 'DescribeRegions'], + ], + 'createdAt' => '2021-12-01T09:28:33.000Z', + 'description' => '错误码完善', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'CreateConfigMap'], + ['description' => '请求参数发生变更', 'api' => 'UpdateConfigMap'], + ], + 'createdAt' => '2021-11-25T02:55:07.000Z', + 'description' => '修复创建和修改configMap入参说明', + ], + [ + 'apis' => [ + ['description' => '响应参数发生变更', 'api' => 'DeployApplication'], + ['description' => 'OpenAPI 下线', 'api' => 'DescribeAppServiceDetail'], + ['description' => 'OpenAPI 下线', 'api' => 'ListAppServicesPage'], + ['description' => '响应参数发生变更', 'api' => 'RollbackApplication'], + ], + 'createdAt' => '2021-11-18T05:39:42.000Z', + 'description' => '上线操作审批功能', + ], + [ + 'apis' => [ + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationConfig'], + ['description' => '响应参数发生变更', 'api' => 'DescribeApplicationStatus'], + ['description' => '响应参数发生变更', 'api' => 'DescribeChangeOrder'], + ], + 'createdAt' => '2021-11-18T05:39:23.000Z', + 'description' => '增加发布单子状态', + ], + [ + 'apis' => [ + ['description' => '错误码发生变更', 'api' => 'CreateApplication'], + ['description' => '错误码发生变更', 'api' => 'DeployApplication'], + ['description' => '错误码发生变更', 'api' => 'RescaleApplication'], + ], + 'createdAt' => '2021-11-18T05:39:03.000Z', + 'description' => '修改eip相关错误码', + ], + [ + 'apis' => [ + ['description' => '错误码发生变更', 'api' => 'CreateGreyTagRoute'], + ['description' => '错误码发生变更', 'api' => 'UpdateGreyTagRoute'], + ['description' => '错误码发生变更', 'api' => 'UpdateIngress'], + ], + 'createdAt' => '2021-11-18T05:35:06.000Z', + 'description' => '异常状态码code修正', + ], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '350', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeJob'], + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteIngress'], + ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteNamespace'], + ['threshold' => '-1', 'countWindow' => 1, 'regionId' => '*'], + ['threshold' => '20', 'countWindow' => 60, 'regionId' => '*', 'api' => 'StartApplication'], + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdateApplicationDescription'], + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteConfigMap'], + ['threshold' => '40', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateApplication'], + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListNamespacedConfigMaps'], + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeInstanceLog'], + ['threshold' => '20', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeJobHistory'], + ['threshold' => '40', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeJobStatus'], + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListAppVersions'], + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdateAppSecurityGroup'], + ['threshold' => '40', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateJob'], + ['threshold' => '350', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListAppServicesPage'], + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdateSecret'], + ['threshold' => '30', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeConfigurationPrice'], + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteGreyTagRoute'], + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdateApplicationVswitches'], + ['threshold' => '40', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdateNamespaceVpc'], + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeConfigMap'], + ['threshold' => '40', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListJobs'], + ['threshold' => '40', 'countWindow' => 60, 'regionId' => '*', 'api' => 'BatchStopApplications'], + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ConfirmPipelineBatch'], + ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'RestartApplication'], + ['threshold' => '5000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeApplicationGroups'], + ['threshold' => '20', 'countWindow' => 60, 'regionId' => '*', 'api' => 'BindSlb'], + ['threshold' => '40', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DowngradeApplicationApmService'], + ['threshold' => '20', 'countWindow' => 60, 'regionId' => '*', 'api' => 'RescaleApplicationVertically'], + ['threshold' => '200', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ReduceApplicationCapacityByInstanceIds'], + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdateGreyTagRoute'], + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListSecrets'], + ['threshold' => '20', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdateApplicationScalingRule'], + ['threshold' => '40', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdateJob'], + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeGreyTagRoute'], + ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DisableApplicationScalingRule'], + ['threshold' => '40', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListNamespaceChangeOrders'], + ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdateNamespace'], + ['threshold' => '20', 'countWindow' => 60, 'regionId' => '*', 'api' => 'RescaleApplication'], + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateIngress'], + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeNamespaceList'], + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeSecret'], + ['threshold' => '40', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpgradeApplicationApmService'], + ['threshold' => '40', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DisableArms'], + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'AbortAndRollbackChangeOrder'], + ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateNamespace'], + ['threshold' => '40', 'countWindow' => 60, 'regionId' => '*', 'api' => 'QueryResourceStatics'], + ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteApplicationScalingRule'], + ['threshold' => '40', 'countWindow' => 60, 'regionId' => '*', 'api' => 'SuspendJob'], + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GetChangeOrderMetric'], + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateSecret'], + ['threshold' => '20', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateApplicationScalingRule'], + ['threshold' => '20', 'countWindow' => 60, 'regionId' => '*', 'api' => 'RollbackApplication'], + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GetWarningEventMetric'], + ['threshold' => '20', 'countWindow' => 60, 'regionId' => '*', 'api' => 'RestartInstances'], + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdateConfigMap'], + ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListAppEvents'], + ['threshold' => '40', 'countWindow' => 60, 'regionId' => '*', 'api' => 'BatchStartApplications'], + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateConfigMap'], + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateGreyTagRoute'], + ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'EnableApplicationScalingRule'], + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'AbortChangeOrder'], + ['threshold' => '20', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteApplication'], + ['threshold' => '350', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeApplicationScalingRules'], + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GetArmsTopNMetric'], + ['threshold' => '5000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeApplicationInstances'], + ['threshold' => '40', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeployApplication'], + ['threshold' => '200', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeApplicationScalingRule'], + ['threshold' => '400', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeChangeOrder'], + ['threshold' => '70', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeApplicationSlbs'], + ['threshold' => '20', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteHistoryJob'], + ['threshold' => '20', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UnbindSlb'], + ['threshold' => '800', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeApplicationConfig'], + ['threshold' => '2000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeRegions'], + ['threshold' => '500', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeApplicationStatus'], + ['threshold' => '400', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ExecJob'], + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeIngress'], + ['threshold' => '40', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeNamespaceResources'], + ['threshold' => '40', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteJob'], + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GetAvailabilityMetric'], + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GetScaleAppMetric'], + ['threshold' => '20', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListLogConfigs'], + ['threshold' => '350', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeAppServiceDetail'], + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdateIngress'], + ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListApplications'], + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'StopApplication'], + ['threshold' => '20', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GetWebshellToken'], + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteSecret'], + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListGreyTagRoute'], + ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribePipeline'], + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListIngresses'], + ], + ], + 'ram' => [ + 'productCode' => 'SAE', + 'productName' => 'Serverless 应用引擎', + 'ramCodes' => ['sae'], + 'ramLevel' => '资源级', + 'ramConditions' => [], + 'ramActions' => [ + [ + 'apiName' => 'StartApplication', + 'description' => '启动应用', 'operationType' => 'update', - 'abilityTreeCode' => '100734', - 'abilityTreeNodes' => [ - 'FEATUREsaeN5OIM9', + 'ramAction' => [ + 'action' => 'sae:StartApplication', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], - 'parameters' => [ - [ - 'name' => 'AppId', - 'in' => 'query', - 'schema' => [ - 'description' => '需要更新的任务模板ID。', - 'type' => 'string', - 'required' => true, - 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****', + [ + 'apiName' => 'UpdateApplicationDescription', + 'description' => '更新应用描述', + 'operationType' => '', + 'ramAction' => [ + 'action' => 'sae:UpdateApplicationDescription', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'Jdk', - 'in' => 'query', - 'schema' => [ - 'description' => '部署包依赖的JDK版本。支持版本如下:'."\n" - ."\n" - .'- **Open JDK 8**'."\n" - .'- **Open JDK 7**'."\n" - .'- **Dragonwell 11**'."\n" - .'- **Dragonwell 8**'."\n" - .'- **openjdk-8u191-jdk-alpine3.9**'."\n" - .'- **openjdk-7u201-jdk-alpine3.9**'."\n" - ."\n" - .'当**Package Type**为**Image**时不支持。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'Open JDK 8', + ], + [ + 'apiName' => 'StopWebApplication', + 'description' => '停止Web应用', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'sae:StopWebApplication', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'WebContainer', - 'in' => 'query', - 'schema' => [ - 'description' => '部署包依赖的Tomcat版本。支持版本如下:'."\n" - ."\n" - .'- **apache-tomcat-7.0.91**'."\n" - .'- **apache-tomcat-8.5.42**'."\n" - ."\n" - .'当**Package Type**为**Image**时不支持。', - 'type' => 'string', - 'required' => false, - 'example' => 'apache-tomcat-7.0.91', + ], + [ + 'apiName' => 'ListApplicationsForSwimmingLane', + 'description' => '查询泳道组应用列表', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'sae:ListApplicationsForSwimmingLane', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'PackageVersion', - 'in' => 'query', - 'schema' => [ - 'description' => '部署包的版本号。当**Package Type**为**FatJar**、**War**或**PythonZip**时必填。'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '1.0.1', + ], + [ + 'apiName' => 'CreateConfigMap', + 'description' => '创建ConfigMap实例', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'sae:CreateConfigMap', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'PackageUrl', - 'in' => 'query', - 'schema' => [ - 'description' => '部署包地址。当**Package Type**为**FatJar**、**War**或**PythonZip**时必填。'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'http://myoss.oss-cn-hangzhou.aliyuncs.com/my-buc/2019-06-30/****.jar', + ], + [ + 'apiName' => 'UpdateNamespace', + 'description' => '更新命名空间信息', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'sae:UpdateNamespace', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'ImageUrl', - 'in' => 'query', - 'schema' => [ - 'description' => '镜像地址。当**Package Type**为**Image**时必填。', - 'type' => 'string', - 'required' => false, - 'example' => 'registry.cn-hangzhou.aliyuncs.com/sae_test/ali_sae_test:0.0.1', + ], + [ + 'apiName' => 'ListSwimmingLaneGatewayRoutes', + 'description' => '查询泳道可选的网关路由', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'sae:ListSwimmingLaneGatewayRoutes', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'Command', - 'in' => 'query', - 'schema' => [ - 'description' => '镜像启动命令。该命令必须为容器内存在的可执行的对象。示例如下:'."\n" - ."\n" - .'```'."\n" - .'command:'."\n" - .' - echo'."\n" - .' - abc'."\n" - .' - >'."\n" - .' - file0'."\n" - .'```'."\n" - .'根据上述示例,则`Command="echo", CommandArgs=["abc", ">", "file0"]`。', - 'type' => 'string', - 'required' => false, - 'example' => 'echo', + ], + [ + 'apiName' => 'UpdateWebApplicationTrafficConfig', + 'description' => '更新Web应用流量配置', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'sae:UpdateWebApplicationTrafficConfig', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'CommandArgs', - 'in' => 'query', - 'schema' => [ - 'description' => '镜像启动命令参数。上述启动命令**Command**所需参数。格式如下:'."\n" - ."\n" - .'`["a","b"]`'."\n" - ."\n" - .'在上述示例中,`CommandArgs=["abc", ">", "file0"]`,其中`["abc", ">", "file0"]`需要转成String类型,里面的格式为JSON数组。如果无此参数,则无需填写。', - 'type' => 'string', - 'required' => false, - 'example' => '["a","b"]', + ], + [ + 'apiName' => 'CreateApplicationScalingRule', + 'description' => '创建应用弹性伸缩策略', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'sae:CreateApplicationScalingRule', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'Envs', - 'in' => 'query', - 'schema' => [ - 'description' => '容器环境变量参数。支持自定义或引用配置项。如需引用配置项,请先创建ConfigMap实例。更多信息,请参见[CreateConfigMap](~~176914~~)。取值说明如下:'."\n" - .'- 自定义配置'."\n" - .' - **name**:环境变量名称。'."\n" - .' - **value**:环境变量值。'."\n" - .'- 引用配置项'."\n" - .' - **name**:环境变量名称。支持引用单个或全部键,如果引用全部键,需输入`sae-sys-configmap-all-<配置项名称>`,例如`sae-sys-configmap-all-test1`。'."\n" - .' - **valueFrom**:环境变量引用。取值为`configMapRef`。'."\n" - .' - **configMapId**:配置项ID。'."\n" - .' - **key**:键。如果引用全部健值,则不设置该字段。', - 'type' => 'string', - 'required' => false, - 'example' => '[{"name":"envtmp","value":"0"}]', + ], + [ + 'apiName' => 'UpdateWebCustomDomain', + 'description' => '更新自定义域名', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'sae:UpdateWebCustomDomain', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => 'Namespace', 'arn' => 'acs:sae:{#regionId}:{#accountId}:namespace/{#NamespaceId}'], ], ], - [ - 'name' => 'CustomHostAlias', - 'in' => 'query', - 'schema' => [ - 'description' => '容器内自定义Host映射。取值说明如下:'."\n" - ."\n" - .'- **hostName**:域名或主机名。'."\n" - .'- **ip**:IP地址。', - 'type' => 'string', - 'required' => false, - 'example' => '[{"hostName":"samplehost","ip":"127.0.0.1"}]', + ], + [ + 'apiName' => 'UpgradeApplicationApmService', + 'description' => '开通ARMS高级版监控', + 'operationType' => '', + 'ramAction' => [ + 'action' => 'sae:UpgradeApplicationApmService', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'JarStartOptions', - 'in' => 'query', - 'schema' => [ - 'description' => 'JAR包启动任务选项。任务默认启动命令:`$JAVA_HOME/bin/java $JarStartOptions -jar $CATALINA_OPTS "$package_path" $JarStartArgs`', - 'type' => 'string', - 'required' => false, - 'example' => 'custom-option', + ], + [ + 'apiName' => 'DescribeApplicationConfig', + 'description' => '获取应用配置信息', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeApplicationConfig', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'JarStartArgs', - 'in' => 'query', - 'schema' => [ - 'description' => 'JAR包启动任务参数。任务默认启动命令:`$JAVA_HOME/bin/java $JarStartOptions -jar $CATALINA_OPTS "$package_path" $JarStartArgs`', - 'type' => 'string', - 'required' => false, - 'example' => '-Xms4G -Xmx4G', + ], + [ + 'apiName' => 'DescribeWebApplication', + 'description' => '查询Web应用', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeWebApplication', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'EdasContainerVersion', - 'in' => 'query', - 'schema' => [ - 'description' => 'HSF框架中任务运行环境版本,例如Ali-Tomcat容器。', - 'type' => 'string', - 'required' => false, - 'example' => '3.5.3', + ], + [ + 'apiName' => 'CreateOrUpdateSwimmingLaneGroup', + 'description' => '创建或更新泳道组', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'sae:CreateOrUpdateSwimmingLaneGroup', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'SlsConfigs', - 'in' => 'query', - 'schema' => [ - 'description' => '日志采集到SLS的配置。'."\n" - ."\n" - .'- 使用SAE自动创建的SLS资源:`[{"logDir":"","logType":"stdout"},{"logDir":"/tmp/a.log"}]`。'."\n" - .'- 使用自定义的SLS资源:`[{"projectName":"test-sls","logType":"stdout","logDir":"","logstoreName":"sae","logtailName":""},{"projectName":"test","logDir":"/tmp/a.log","logstoreName":"sae","logtailName":""}]`。'."\n" - ."\n" - .'参数说明如下:'."\n" - ."\n" - .'- **projectName**:配置SLS上的Project名称。 '."\n" - .'- **logDir**:日志路径。'."\n" - .'- **logType**:日志类型。**stdout**表示容器标准输出日志,仅可设置1条;如果不设置,则表示收集文件日志。'."\n" - .'- **logstoreName**:配置SLS上的Logstore名称。'."\n" - .'- **logtailName**:配置SLS上的Logtail名称,如果不指定,则表示新建Logtail。'."\n" - ."\n" - .'多次部署时如果SLS采集配置没有变更,则不需要设置该参数(即请求中无需包含**SlsConfigs**字段);如果不再需要使用SLS采集功能,您需要在请求中将该字段的值设置为空字符串(即请求中**SlsConfigs**字段的值为"")。'."\n" - ."\n" - .'> 随任务模板自动创建的Project会随着任务模板删除而删除,因此在选择已有Project时,不能选择SAE自动创建的Project。', - 'type' => 'string', - 'required' => false, - 'example' => '[{"logDir":"","logType":"stdout"},{"logDir":"/tmp/a.log"}]', + ], + [ + 'apiName' => 'ListWebApplications', + 'description' => '获取Web应用列表', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'sae:ListWebApplications', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'Timezone', - 'in' => 'query', - 'schema' => [ - 'description' => '时区,默认为**Asia/Shanghai**。', - 'type' => 'string', - 'required' => false, - 'example' => 'Asia/Shanghai', + ], + [ + 'apiName' => 'UnbindNlb', + 'description' => '应用访问删除NLB监听', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'sae:UnbindNlb', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'NasId', - 'in' => 'query', - 'schema' => [ - 'description' => 'NAS文件系统的ID。部署时如果配置没有变更,则不需要设置该参数(即请求中无需包含**NasId**字段);如果需要清除NAS配置,您需要在请求中将该字段的值设置为空字符串(即请求中**NasId**字段的值为"")。', - 'type' => 'string', - 'required' => false, - 'example' => '10d3b4****', + ], + [ + 'apiName' => 'ListAppServices', + 'description' => '查询微服务的服务列表', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'sae:ListAppServices', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'MountHost', - 'in' => 'query', - 'schema' => [ - 'description' => 'NAS在任务模板VPC内的挂载点。部署时如果配置没有变更,则不需要设置该参数(即请求中无需包含**MountHost**字段);如果需要清除NAS配置,您需要在请求中将该字段的值设置为空字符串(即请求中**MountHost**字段的值为"")。', - 'type' => 'string', - 'required' => false, - 'example' => '10d3b4bc9****.com', + ], + [ + 'apiName' => 'DescribeNamespaces', + 'description' => '查询命名空间列表', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeNamespaces', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'MountDesc', - 'in' => 'query', - 'schema' => [ - 'description' => 'NAS挂载描述。部署时如果配置没有变更,则不需要设置该参数(即请求中无需包含**MountDesc**字段);如果需要清除NAS配置,您需要在请求中将该字段的值设置为空字符串(即请求中**MountDesc**字段的值为"")。', - 'type' => 'string', - 'required' => false, - 'example' => '[{mountPath: "/tmp", nasPath: "/"}]', + ], + [ + 'apiName' => 'DescribeSwimmingLane', + 'description' => '查询泳道详情', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeSwimmingLane', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'PostStart', - 'in' => 'query', - 'schema' => [ - 'description' => '容器启动后执行脚本。在容器被创建后立刻触发执行一段脚本,格式如:`{"exec":{"command":\\["sh","-c","echo hello"\\]}}`', - 'type' => 'string', - 'required' => false, - 'example' => '{"exec":{"command":["sh","-c","echo hello"]}}', + ], + [ + 'apiName' => 'BindSlb', + 'description' => '为应用绑定SLB', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'sae:BindSlb', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'PreStop', - 'in' => 'query', - 'schema' => [ - 'description' => '容器停止前执行脚本。在容器被删除前触发执行一段脚本,格式如:`{"exec":{"command":\\["sh","-c","echo hello"\\]}}`', - 'type' => 'string', - 'required' => false, - 'example' => '{"exec":{"command":["sh","-c","echo hello"]}}', + ], + [ + 'apiName' => 'DescribeWebApplicationTrafficConfig', + 'description' => '查询Web应用流量配置', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeWebApplicationTrafficConfig', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'WarStartOptions', - 'in' => 'query', - 'schema' => [ - 'description' => '设置WAR包部署任务的启动命令,操作步骤与镜像部署的启动命令配置操作相同。更多信息,请参见[设置启动命令](~~96677~~)。', - 'type' => 'string', - 'required' => false, - 'example' => 'CATALINA_OPTS=\\"$CATALINA_OPTS $Options\\" catalina.sh run', + ], + [ + 'apiName' => 'ListAppEvents', + 'description' => '查看应用事件', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:ListAppEvents', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'ConfigMapMountDesc', - 'in' => 'formData', - 'schema' => [ - 'description' => '**ConfigMap**挂载描述。使用在命名空间配置项页面创建的配置项来向容器中注入配置信息。参数说明如下:'."\n" - ."\n" - .'- **congfigMapId**:ConfigMap实例ID。可通过调用[ListNamespacedConfigMaps](~~176917~~)接口获取。'."\n" - .'- **key**:键值。'."\n" - ."\n" - .'> 可通过传递`sae-sys-configmap-all`参数挂载所有键。'."\n" - ."\n" - .'- **mountPath**:挂载路径。', - 'type' => 'string', - 'required' => false, - 'example' => '[{"configMapId":16,"key":"test","mountPath":"/tmp"}]', + ], + [ + 'apiName' => 'DisableArms', + 'description' => 'DisableArms', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'sae:DisableArms', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'TerminationGracePeriodSeconds', - 'in' => 'query', - 'schema' => [ - 'description' => '优雅下线超时时间,默认为30,单位为秒。取值范围为1~300。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'maximum' => '6000', - 'minimum' => '0', - 'example' => '10', - 'default' => '30', + ], + [ + 'apiName' => 'ResumeTraffic', + 'description' => '恢复实例的流量', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'sae:ResumeTraffic', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'PhpConfigLocation', - 'in' => 'query', - 'schema' => [ - 'description' => 'PHP任务启动配置挂载路径,需要您保证PHP服务器会使用这个配置文件启动。', - 'type' => 'string', - 'required' => false, - 'example' => '/usr/local/etc/php/php.ini', + ], + [ + 'apiName' => 'DeleteWebCustomDomain', + 'description' => '删除自定义域名', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'sae:DeleteWebCustomDomain', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => 'Namespace', 'arn' => 'acs:sae:{#regionId}:{#accountId}:namespace/{#NamespaceId}'], ], ], - [ - 'name' => 'PhpConfig', - 'in' => 'formData', - 'schema' => [ - 'description' => 'PHP配置文件内容。', - 'type' => 'string', - 'required' => false, - 'example' => 'k1=v1', + ], + [ + 'apiName' => 'TagResources', + 'description' => '给指定的资源打上标签', + 'operationType' => '', + 'ramAction' => [ + 'action' => 'sae:TagResources', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'TomcatConfig', - 'in' => 'query', - 'schema' => [ - 'description' => 'Tomcat文件配置,设置为""或"{}"表示删除配置。取值说明如下:'."\n" - ."\n" - .'- **port**:端口范围为1024~65535,小于1024的端口需要Root权限才能操作。因为容器配置的是Admin权限,所以请填写大于1024的端口。如果不配置,则默认为8080。'."\n" - .'- **contextPath**:访问路径,默认为根目录"/"。'."\n" - .'- **maxThreads**:配置连接池的连接数大小,默认大小为400。'."\n" - .'- **uriEncoding**:Tomcat的编码格式,包括**UTF-8**、**ISO-8859-1**、**GBK和GB2312**。如果不设置,则默认为**ISO-8859-1**。'."\n" - .'- **useBodyEncoding**:是否使用**BodyEncoding for URL**,默认为**true**。', - 'type' => 'string', - 'required' => false, - 'example' => '{"port":8080,"contextPath":"/","maxThreads":400,"uriEncoding":"ISO-8859-1","useBodyEncodingForUri":true}', + ], + [ + 'apiName' => 'CreateSecret', + 'description' => 'CreateSecret', + 'operationType' => '', + 'ramAction' => [ + 'action' => 'sae:CreateSecret', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'OssMountDescs', - 'in' => 'formData', - 'schema' => [ - 'title' => 'OSS挂载描述信息', - 'description' => 'OSS挂载描述信息。参数说明如下:'."\n" - ."\n" - .'- **bucketName**:Bucket名称。'."\n" - .'- **bucketPath**:您在OSS创建的目录或OSS对象,如果OSS挂载目录不存在,会触发异常。'."\n" - .'- **mountPath**:您在SAE的容器路径。如果路径已存在,为覆盖关系;如果路径不存在,会新建。'."\n" - .'- **readOnly**:容器路径是否对挂载目录资源有可读权限,取值说明如下:'."\n" - .' - **true**:只读权限。'."\n" - .' - **false**:读写权限。', - 'type' => 'string', - 'required' => false, - 'example' => '[{"bucketName": "oss-bucket", "bucketPath": "data/user.data", "mountPath": "/usr/data/user.data", "readOnly": true}]', + ], + [ + 'apiName' => 'ListApplications', + 'description' => '获取应用列表', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:ListApplications', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'OssAkId', - 'in' => 'formData', - 'schema' => [ - 'title' => 'OSS使用的AKID', - 'description' => 'OSS读写的AccessKey ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'xxxxxx', + ], + [ + 'apiName' => 'ListAllSwimmingLaneGroups', + 'description' => '查询所有泳道组', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'sae:ListAllSwimmingLaneGroups', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'OssAkSecret', - 'in' => 'formData', - 'schema' => [ - 'title' => 'OSS AKID对应的secret', - 'description' => 'OSS读写的AccessKey Secret。', - 'type' => 'string', - 'required' => false, - 'example' => 'xxxxxx', + ], + [ + 'apiName' => 'GetWebshellToken', + 'description' => '获取远程登录Token', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:GetWebshellToken', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'Php', - 'in' => 'formData', - 'schema' => [ - 'title' => 'PHP部署包依赖的PHP版本。镜像不支持', - 'description' => 'ACR企业版实例ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'cri-xxxxxx', + ], + [ + 'apiName' => 'UpdateNamespaceVpc', + 'description' => '更新命名空间绑定的vpc', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'sae:UpdateNamespaceVpc', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'AcrInstanceId', - 'in' => 'formData', - 'schema' => [ - 'title' => 'ACR 企业版实例 ID', - 'description' => 'ACR企业版实例ID。当**ImageUrl**为容器镜像服务企业版时必填。', - 'type' => 'string', - 'required' => false, - 'example' => 'cri-xxxxxx', + ], + [ + 'apiName' => 'RescaleApplication', + 'description' => '应用扩缩容', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'sae:RescaleApplication', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'AcrAssumeRoleArn', - 'in' => 'query', - 'schema' => [ - 'description' => '跨账号拉取镜像时所需的RAM角色的ARN。更多信息,请参见[通过RAM角色实现跨云账号授权](~~223585~~)。', - 'type' => 'string', - 'required' => false, - 'example' => 'acs:ram::123456789012****:role/adminrole', + ], + [ + 'apiName' => 'DescribeJobHistory', + 'description' => 'DescribeJobHistory', + 'operationType' => '', + 'ramAction' => [ + 'action' => 'sae:DescribeJobHistory', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'ImagePullSecrets', - 'in' => 'query', - 'schema' => [ - 'description' => '对应保密字典ID。', - 'type' => 'string', - 'required' => false, - 'example' => '10', + ], + [ + 'apiName' => 'ListApplicationCenterServiceInstances', + 'description' => '查询应用中心服务实例列表', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:ListApplicationCenterServiceInstances', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'EnableImageAccl', - 'in' => 'formData', - 'allowEmptyValue' => true, - 'schema' => [ - 'title' => '是否开启镜像加速', - 'type' => 'boolean', - 'default' => 'false', + ], + [ + 'apiName' => 'BindNlb', + 'description' => '为应用绑定NLB', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'sae:BindNlb', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'TriggerConfig', - 'in' => 'query', - 'schema' => [ - 'description' => '任务触发配置,根据任务类型进行配置。'."\n" - .'- **定时任务**:**type**字段设为time,**config**字段为具体Cron表达式,**timezone**字段为指定时区。'."\n" - .'配置示例:`{"type":"time","config":"0 1 */1 * ?","timezone":"GMT+8:00"}`'."\n" - .'- **一次性任务**:**type**字段设为http,**config**配置具体的HTTP触发规则。更多信息,请参见[请求参数SourceHttpEventParameters](https://help.aliyun.com/document_detail/347586.html#section-lp1-vq0-ho3)。'."\n" - .'配置示例:`{"type":"http","config":{"type":"HTTPS","method"、["GET"],"ip":[],"referer":[],"securityConfig":"none"}}`', - 'type' => 'string', - 'required' => false, - 'example' => '{"type":"time","config":"0 1 */1 * ?","timezone":"GMT+8:00"}', + ], + [ + 'apiName' => 'DisableApplicationScalingRule', + 'description' => '禁用应用弹性伸缩策略', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'sae:DisableApplicationScalingRule', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'ConcurrencyPolicy', - 'in' => 'query', - 'schema' => [ - 'description' => '任务并发策略。取值说明如下:'."\n" - ."\n" - .'- **Forbid**:禁止并发运行,在前一个任务未完成时,不创建新任务。'."\n" - .'- **Allow**:允许并发运行任务。'."\n" - .'- **Replace**:当到达新任务创建时间点,而前一个任务未完成时,新的任务会取代前一个任务。', - 'type' => 'string', - 'required' => false, - 'example' => 'Allow', + ], + [ + 'apiName' => 'GetWarningEventMetric', + 'description' => 'GetWarningEventMetric', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'sae:GetWarningEventMetric', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'Timeout', - 'in' => 'query', - 'schema' => [ - 'description' => '任务超时时间,单位为秒。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '3600', + ], + [ + 'apiName' => 'DowngradeApplicationApmService', + 'description' => '关闭ARMS高级版监控', + 'operationType' => '', + 'ramAction' => [ + 'action' => 'sae:DowngradeApplicationApmService', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'BackoffLimit', - 'in' => 'query', - 'schema' => [ - 'description' => '任务重试次数。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '3', + ], + [ + 'apiName' => 'BatchRestartApplications', + 'description' => '批量重启应用', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'sae:BatchRestartApplications', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'Slice', - 'in' => 'query', - 'schema' => [ - 'description' => '启用任务分片。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', + ], + [ + 'apiName' => 'DescribeApplicationNlbs', + 'description' => '查看应用绑定的NLB配置', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeApplicationNlbs', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'SliceEnvs', - 'in' => 'query', - 'schema' => [ - 'description' => '任务分片参数。', - 'type' => 'string', - 'required' => false, - 'example' => '[0,1,2]', + ], + [ + 'apiName' => 'DeleteWebApplicationRevision', + 'description' => '删除Web应用版本', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'sae:DeleteWebApplicationRevision', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'Replicas', - 'in' => 'query', - 'schema' => [ - 'description' => '任务并发实例数。', - 'type' => 'string', - 'required' => false, - 'example' => '3', + ], + [ + 'apiName' => 'DescribeApplicationStatus', + 'description' => '获取应用的状态信息', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeApplicationStatus', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'RefAppId', - 'in' => 'query', - 'schema' => [ - 'description' => '引用的任务目标ID。', - 'type' => 'string', - 'required' => false, - 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****', + ], + [ + 'apiName' => 'AbortChangeOrder', + 'description' => '中止变更单', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'sae:AbortChangeOrder', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'ProgrammingLanguage', - 'in' => 'query', - 'schema' => [ - 'description' => '程序编程语言。支持**java**、**php**、**python**和**shell**。', - 'type' => 'string', - 'required' => false, - 'example' => 'java', + ], + [ + 'apiName' => 'EnableApplicationScalingRule', + 'description' => 'EnableApplicationScalingRule', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'sae:EnableApplicationScalingRule', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'Python', - 'in' => 'query', - 'schema' => [ - 'description' => 'Python环境。支持**PYTHON 3.9.15**。', - 'type' => 'string', - 'required' => false, - 'example' => 'PYTHON 3.9.15', + ], + [ + 'apiName' => 'DescribeApplicationScalingRules', + 'description' => '查询应用弹性伸缩策略', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeApplicationScalingRules', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'PythonModules', - 'in' => 'query', - 'schema' => [ - 'description' => '自定义安装模块依赖。默认安装根目录下requirements.txt定义的依赖项。如果未配置或自定义软件包,可以指定安装的依赖。', - 'type' => 'string', - 'required' => false, - 'example' => 'Flask==2.0', + ], + [ + 'apiName' => 'DescribeApplicationGroups', + 'description' => '获取应用实例分组', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeApplicationGroups', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'NasConfigs', - 'in' => 'query', - 'schema' => [ - 'type' => 'string', + ], + [ + 'apiName' => 'RestartInstances', + 'description' => '重启应用实例', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'sae:RestartInstances', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'BestEffortType', - 'in' => 'query', - 'schema' => [ - 'type' => 'string', + ], + [ + 'apiName' => 'SuspendJob', + 'description' => '启动或暂停任务', + 'operationType' => '', + 'ramAction' => [ + 'action' => 'sae:SuspendJob', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'description' => '更新的任务模板信息。', - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '01CF26C7-00A3-4AA6-BA76-7E95F2A3***', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => 'ac1a0b2215622246421415014e****', - ], - 'Data' => [ - 'description' => '返回结果。', - 'type' => 'object', - 'properties' => [ - 'ChangeOrderId' => [ - 'description' => '返回的发布单ID,用于查询任务执行状态。', - 'type' => 'string', - 'example' => '01db03d3-3ee9-48b3-b3d0-dfce2d88****', - ], - 'AppId' => [ - 'description' => '任务模板ID。'."\n", - 'type' => 'string', - 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****', - ], - ], - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '更新任务模板是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:更新成功。'."\n" - .'- **false**:更新失败。', - 'type' => 'boolean', - 'example' => 'true', - ], - ], + [ + 'apiName' => 'ListIngresses', + 'description' => 'ListIngresses', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:ListIngresses', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], - 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'Application.MissingJdk', - 'errorMessage' => 'Your application must at least contain a JDK component.', - ], - [ - 'errorCode' => 'InvalidApplication.NotFound', - 'errorMessage' => 'The current application does not exist.', - ], - [ - 'errorCode' => 'InvalidComponent.NotFound', - 'errorMessage' => 'The current component (such as JDK, Tomcat, or EDASWebContainer) does not exist.', - ], - [ - 'errorCode' => 'InvalidHostnameIp.Invalid', - 'errorMessage' => 'The hostname and/or IP is invalid: Hostname [%s], IP [%s].', - ], - [ - 'errorCode' => 'InvalidInstanceSpecification.Unsupported', - 'errorMessage' => 'The instance specification is not supported: CPU [%s], memory [%s].', - ], - [ - 'errorCode' => 'InvalidPackageType.NotFound', - 'errorMessage' => 'The package type must be War, FatJar, or Image.', - ], - [ - 'errorCode' => 'InvalidParameter.FileName', - 'errorMessage' => 'The application deployment package name is invalid. This name can contain only alphanumeric characters, hyphens (-), and underscores (_). In addition, you can upload JAR files only if the selected deployment version supports JAR file. Otherwise, upload WAR files only.', - ], - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', - ], - [ - 'errorCode' => 'JarApplication.MissingJdk', - 'errorMessage' => 'A FatJar application must contain JDK.', - ], - [ - 'errorCode' => 'NoComputeResourceQuota.Exceed', - 'errorMessage' => 'Your compute resource is insufficient. Please contact us to raise the quota.', - ], - [ - 'errorCode' => 'PandoraApplication.MissingJdk', - 'errorMessage' => 'The Pandora application is missing a JDK component.', - ], - [ - 'errorCode' => 'PandoraApplication.OnlyJdk', - 'errorMessage' => 'A Pandora application only requires JDK component.', - ], - [ - 'errorCode' => 'WarApplication.MissingJdkWebcontainer', - 'errorMessage' => 'A War application must contain JDK and Tomcat.', - ], - [ - 'errorCode' => 'LogService.ConfigQuotaExceed', - 'errorMessage' => 'The maximum number of Log Service configs is exceeded.', - ], - [ - 'errorCode' => 'LogService.InternalError', - 'errorMessage' => 'An exception occurred while calling Log Service. Please submit a ticket to solve the problem.', - ], - [ - 'errorCode' => 'LogService.LogDirInvalid', - 'errorMessage' => 'The log collection path is invalid.', - ], - [ - 'errorCode' => 'LogService.NotAvailable', - 'errorMessage' => 'Log Service is unavailable. Please activate Log Service first.', - ], - [ - 'errorCode' => 'LogService.ProjectNumQuotaExceed', - 'errorMessage' => 'The maximum number of Log Service projects is exceeded.', - ], - [ - 'errorCode' => 'user.indebt', - 'errorMessage' => 'The user has an outstanding payment.', - ], - [ - 'errorCode' => 'NoComputeResourceQuota.App.Exceed', - 'errorMessage' => 'You can create %s instances for each application. Please submit a ticket to raise the quota.', - ], - [ - 'errorCode' => 'NoComputeResourceQuota.User.Exceed', - 'errorMessage' => 'Your account is limited to create %s instances. Please submit a ticket to raise the quota.', - ], - [ - 'errorCode' => 'System.Upgrading', - 'errorMessage' => 'The system is being upgraded. Please try again later.', - ], - [ - 'errorCode' => 'VolumnPath.Conflict', - 'errorMessage' => 'Conflict between log collection directory and persistent storage directory.', - ], - [ - 'errorCode' => 'Application.ChangerOrderRunning', - 'errorMessage' => 'An application change process is in progress. Please try again later.', - ], - [ - 'errorCode' => 'Application.InvalidStatus', - 'errorMessage' => 'The application status is abnormal. Please try again later.', - ], - [ - 'errorCode' => 'MountConflict.ConfigMap', - 'errorMessage' => 'Conflict detected for ConfigMap path %s.', - ], - [ - 'errorCode' => 'NotFound.ConfigMap', - 'errorMessage' => 'The ConfigMap object (ID: %s) does not exist.', - ], - [ - 'errorCode' => 'NotFound.ConfigMapKey', - 'errorMessage' => 'The key %s of ConfigMap object (ID: %s) does not exist.', - ], - [ - 'errorCode' => 'Package.Version.Too.Long', - 'errorMessage' => 'The maximum length of package version is exceeded.', - ], - [ - 'errorCode' => 'App.Package.Version.Exists', - 'errorMessage' => 'The package version of application already exists.', - ], - [ - 'errorCode' => 'Slb.Occupied', - 'errorMessage' => 'The SLB instance is occupied.', - ], - [ - 'errorCode' => 'Slb.Tag.Not.Qualified', - 'errorMessage' => 'The current SLB instance cannot be reused because it may have been occupied by %s.', - ], - [ - 'errorCode' => 'MinReadyInstances.Not.Smaller.Replicas', - 'errorMessage' => 'The minimum number of available instances must be less than the number of application instances.', - ], - [ - 'errorCode' => 'BatchWaitTime.Not.Smaller.Zero', - 'errorMessage' => 'BatchWaitTime must not be smaller than zero.', - ], - [ - 'errorCode' => 'Sls.Config.Mixed.Multi.Project', - 'errorMessage' => 'The specified Config contains multiple projects.', - ], - [ - 'errorCode' => 'Sls.Config.User.Defined.Missing.Logstore.Info', - 'errorMessage' => 'The specified Config is invalid. Both Project and Logstore must be specified.', - ], - [ - 'errorCode' => 'Sls.Config.User.Defined.Missing.Project.Info', - 'errorMessage' => 'The specified Config is invalid. Both Project and Logstore must be specified.', - ], - [ - 'errorCode' => 'Sls.Logstore.Name.Invalid', - 'errorMessage' => 'The specified name of Logstore is invalid. The Logstore name must not contain the prefix "sae-".', - ], - [ - 'errorCode' => 'Sls.Logstore.User.Defined.Not.Exist', - 'errorMessage' => 'The user defined Logstore does not exist.', - ], - [ - 'errorCode' => 'Sls.Project.Name.Invalid', - 'errorMessage' => 'The specified project name is invalid. The project name must not contain the prefix "sae-".', - ], - [ - 'errorCode' => 'Sls.Project.User.Defined.Not.Exist', - 'errorMessage' => 'The user defined project does not exist.', - ], - [ - 'errorCode' => 'Sae.Errorcode.Ahas.Create.Error.Message', - 'errorMessage' => 'Failed to create AHAS.', - ], - [ - 'errorCode' => 'InvalidImageUrl.AcrInstanceId.Domain.NotMatch', - 'errorMessage' => 'The specified domain of ImageUrl does not match AcrInstanceId domains.', - ], - [ - 'errorCode' => 'PhpApplication.MissingPhpRuntime', - 'errorMessage' => 'A PHP application must contain PHP Runtime.', + [ + 'apiName' => 'GetAvailabilityMetric', + 'description' => 'GetAvailabilityMetric', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'sae:GetAvailabilityMetric', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - 404 => [ - [ - 'errorCode' => 'InvalidNamespaceId.NotFound', - 'errorMessage' => 'The specified NamespaceId does not exist.', - ], - [ - 'errorCode' => 'InvalidAcrInstanceId.NotFound', - 'errorMessage' => 'The specified AcrInstanceId does not exist.', - ], - [ - 'errorCode' => 'Associate.Eip.Not.Enough', - 'errorMessage' => 'No sufficient EIPs are available.', + ], + [ + 'apiName' => 'DeleteSwimmingLaneGroup', + 'description' => '删除泳道组', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'sae:DeleteSwimmingLaneGroup', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"01CF26C7-00A3-4AA6-BA76-7E95F2A3***\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"ac1a0b2215622246421415014e****\\",\\n \\"Data\\": {\\n \\"ChangeOrderId\\": \\"01db03d3-3ee9-48b3-b3d0-dfce2d88****\\",\\n \\"AppId\\": \\"7171a6ca-d1cd-4928-8642-7d5cfe69****\\"\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<UpdateJobResponse>\\n <RequestId>01CF26C7-00A3-4AA6-BA76-7E95F2A3***</RequestId>\\n <Message>success</Message>\\n <TraceId>ac1a0b2215622246421415014e****</TraceId>\\n <Data>\\n <ChangeOrderId>01db03d3-3ee9-48b3-b3d0-dfce2d88****</ChangeOrderId>\\n <AppId>7171a6ca-d1cd-4928-8642-7d5cfe69****</AppId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</UpdateJobResponse>","errorExample":""}]', - 'title' => 'UpdateJob', - 'summary' => '调用UpdateJob接口更新任务模板。', - 'requestParamsDescription' => ' ', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', - ], - 'DescribeJobHistory' => [ - 'path' => '/pop/v1/sam/job/describeJobHistory', - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', + [ + 'apiName' => 'UntagResources', + 'description' => '移除指定资源和标签之间的绑定关系', + 'operationType' => '', + 'ramAction' => [ + 'action' => 'sae:UntagResources', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], ], - 'security' => [ - [ - 'AK' => [], + [ + 'apiName' => 'StopApplication', + 'description' => '停止应用', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'sae:StopApplication', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => 'Application', 'arn' => 'acs:sae:{#regionId}:{#accountId}:application/{#namespaceid}/{#appid}'], + ], ], ], - 'operationType' => 'readAndWrite', - 'deprecated' => false, - 'systemTags' => [ - 'abilityTreeCode' => '124658', - 'abilityTreeNodes' => [ - 'FEATUREsaeD9PL61', + [ + 'apiName' => 'DescribeApplicationSlbs', + 'description' => '获取应用SLB配置信息', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeApplicationSlbs', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], - 'parameters' => [ - [ - 'name' => 'AppId', - 'in' => 'query', - 'schema' => [ - 'description' => '任务模板ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'e1a7a07-abcb-4652-a1d3-2d57f415****', + [ + 'apiName' => 'ReduceApplicationCapacityByInstanceIds', + 'description' => '应用缩容', + 'operationType' => '', + 'ramAction' => [ + 'action' => 'sae:ReduceApplicationCapacityByInstanceIds', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'CurrentPage', - 'in' => 'query', - 'schema' => [ - 'description' => '当前页码。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '1', + ], + [ + 'apiName' => 'DescribeSecret', + 'description' => '查询Secret实例详情', + 'operationType' => '', + 'ramAction' => [ + 'action' => 'sae:DescribeSecret', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'PageSize', - 'in' => 'query', - 'schema' => [ - 'description' => '分页查询时设置的每页数量。取值范围\\[0,10000\\]。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '20', + ], + [ + 'apiName' => 'ListChangeOrders', + 'description' => '获取变更单列表', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:ListChangeOrders', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'State', - 'in' => 'query', - 'schema' => [ - 'description' => '任务的运行状态。取值说明如下:'."\n" - .'- **0**:未执行。'."\n" - .'- **1**:执行成功。'."\n" - .'- **2**:执行失败。'."\n" - .'- **3**:正在执行。', - 'type' => 'string', - 'required' => false, - 'example' => '1', + ], + [ + 'apiName' => 'RollbackApplication', + 'description' => '回退应用历史版本', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'sae:RollbackApplication', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'description' => '返回数据。', - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '53F15A18-8079-5992-810C-0211A5AE****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0b1639af16575057857241351e****', - ], - 'Data' => [ - 'description' => '返回数据。', - 'type' => 'object', - 'properties' => [ - 'CurrentPage' => [ - 'description' => '当前页码。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1', - ], - 'TotalSize' => [ - 'description' => '任务总数。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '20', - ], - 'PageSize' => [ - 'description' => '分页查询时设置的每页数量。取值范围\\[0,10000\\]。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '20', - ], - 'Jobs' => [ - 'description' => '任务列表。', - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'JobId' => [ - 'description' => '任务ID。', - 'type' => 'string', - 'example' => 'manual-3db7a8fa-5d40-4edc-92e4-49d50eab****', - ], - 'Active' => [ - 'description' => '正在运行的实例数。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '0', - ], - 'Succeeded' => [ - 'description' => '运行成功的实例数。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '3', - ], - 'Failed' => [ - 'description' => '运行失败的实例数。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '0', - ], - 'StartTime' => [ - 'description' => '任务的创建时间。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1657522800', - ], - 'CompletionTime' => [ - 'description' => '任务执行的完成时间。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1657522839', - ], - 'Message' => [ - 'description' => '任务执行异常时的附加信息。', - 'type' => 'string', - 'example' => '空', - ], - 'State' => [ - 'description' => '任务的运行状态。取值说明如下:'."\n" - .'- **0**:未执行。'."\n" - .'- **1**:执行成功。'."\n" - .'- **2**:执行失败。'."\n" - .'- **3**:正在执行。', - 'type' => 'string', - 'example' => '1', - ], - ], - ], - ], - ], - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**目录。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '查询任务状态是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:查询成功。'."\n" - .'- **false**:查询失败。', - 'type' => 'boolean', - 'example' => 'true', - ], - ], + [ + 'apiName' => 'DescribeApplicationImage', + 'description' => '描述应用镜像信息', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeApplicationImage', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], - 'errorCodes' => [ - 404 => [ - [ - 'errorCode' => 'InvalidAppId.NotFound', - 'errorMessage' => 'The specified AppId does not exist.', + [ + 'apiName' => 'ListNamespaceChangeOrders', + 'description' => '获取命名空间发布单列表', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:ListNamespaceChangeOrders', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"53F15A18-8079-5992-810C-0211A5AE****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0b1639af16575057857241351e****\\",\\n \\"Data\\": {\\n \\"CurrentPage\\": 1,\\n \\"TotalSize\\": 20,\\n \\"PageSize\\": 20,\\n \\"Jobs\\": [\\n {\\n \\"JobId\\": \\"manual-3db7a8fa-5d40-4edc-92e4-49d50eab****\\",\\n \\"Active\\": 0,\\n \\"Succeeded\\": 3,\\n \\"Failed\\": 0,\\n \\"StartTime\\": 1657522800,\\n \\"CompletionTime\\": 1657522839,\\n \\"Message\\": \\"空\\",\\n \\"State\\": \\"1\\"\\n }\\n ]\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeJobHistoryResponse>\\n <RequestId>53F15A18-8079-5992-810C-0211A5AE****</RequestId>\\n <Message>success</Message>\\n <TraceId>0b1639af16575057857241351e****</TraceId>\\n <Data>\\n <CurrentPage>1</CurrentPage>\\n <TotalSize>20</TotalSize>\\n <PageSize>20</PageSize>\\n <Jobs>\\n <JobId>manual-3db7a8fa-5d40-4edc-92e4-49d50eab****</JobId>\\n <Active>0</Active>\\n <Succeeded>3</Succeeded>\\n <Failed>0</Failed>\\n <StartTime>1657522800</StartTime>\\n <CompletionTime>1657522839</CompletionTime>\\n <State>1</State>\\n </Jobs>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeJobHistoryResponse>","errorExample":""}]', - 'title' => 'DescribeJobHistory', - 'summary' => '调用DescribeJobHistory接口查询任务记录。', - ], - 'DescribeConfigurationPrice' => [ - 'path' => '/pop/v1/paas/configurationPrice', - 'methods' => [ - 'get', + [ + 'apiName' => 'DeployApplication', + 'description' => '部署应用', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'sae:DeployApplication', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], ], - 'schemes' => [ - 'http', - 'https', + [ + 'apiName' => 'UpdateJob', + 'description' => 'UpdateJob', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'sae:UpdateJob', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], ], - 'security' => [ - [ - 'AK' => [], + [ + 'apiName' => 'CreateApplication', + 'description' => '创建一个SAE应用', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'sae:CreateApplication', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], - 'operationType' => 'read', - 'deprecated' => false, - 'systemTags' => [ + [ + 'apiName' => 'RestartApplication', + 'description' => '重启应用', 'operationType' => 'none', - 'abilityTreeCode' => '6329', - 'abilityTreeNodes' => [ - 'FEATUREsaeD9Y7UY', - 'FEATUREsaeQL07ZC', + 'ramAction' => [ + 'action' => 'sae:RestartApplication', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], - 'parameters' => [ - [ - 'name' => 'Cpu', - 'in' => 'query', - 'schema' => [ - 'description' => '每个实例所需的CPU,单位为毫核,不能为0。目前仅支持以下固定规格:'."\n" - .'- **500**'."\n" - .'- **1000**'."\n" - .'- **2000**'."\n" - .'- **4000**'."\n" - .'- **8000**'."\n" - .'- **12000**'."\n" - .'- **16000**'."\n" - .'- **32000**', - 'type' => 'integer', - 'format' => 'int32', - 'required' => true, - 'example' => '2000', + [ + 'apiName' => 'DescribeJob', + 'description' => '获取任务模板配置信息', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeJob', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'Memory', - 'in' => 'query', - 'schema' => [ - 'description' => '每个实例所需的内存,单位为MB,不能为0。与CPU为一一对应关系,目前仅支持以下固定规格:'."\n" - .'- **1024**:对应CPU为500毫核和1000毫核。'."\n" - .'- **2048**:对应CPU为500、1000毫核和2000毫核。'."\n" - .'- **4096**:对应CPU为1000、2000毫核和4000毫核。'."\n" - .'- **8192**:对应CPU为2000、4000毫核和8000毫核。'."\n" - .'- **12288**:对应CPU为12000毫核。'."\n" - .'- **16384**:对应CPU为4000、8000毫核和16000毫核。'."\n" - .'- **24576**:对应CPU为12000毫核。'."\n" - .'- **32768**:对应CPU为16000毫核。'."\n" - .'- **65536**:对应CPU为8000、16000和32000毫核。'."\n" - .'- **131072**:对应CPU为32000毫核。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => true, - 'example' => '4096', + ], + [ + 'apiName' => 'UpdateAppMode', + 'description' => '更新应用闲置模式', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'sae:UpdateAppMode', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'Workload', - 'in' => 'query', - 'schema' => [ - 'description' => '应用场景:'."\n" - ."\n" - .'- web'."\n" - ."\n" - .'- micro_service', - 'type' => 'string', - 'required' => false, - 'example' => 'Web', + ], + [ + 'apiName' => 'CreateJob', + 'description' => '创建任务模板', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'sae:CreateJob', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'ResourceType', - 'in' => 'query', - 'schema' => [ - 'description' => '资源类型。支持NULL(默认)、default(默认)和haiguang(海光服务器)类型。', - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'default' => 'default', - 'haiguang' => 'haiguang', - ], - 'example' => 'default', + ], + [ + 'apiName' => 'UpdateApplicationVswitches', + 'description' => '更新交换机配置', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'sae:UpdateApplicationVswitches', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'NewSaeVersion', - 'in' => 'query', - 'schema' => [ - 'description' => '应用版本:'."\n" - ."\n" - .'- lite:轻量版'."\n" - .'- std:标准版'."\n" - .'- pro:专业版', - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'std' => 'std', - 'lite' => 'lite', - 'pro' => 'pro', - ], - 'example' => 'std', + ], + [ + 'apiName' => 'ListSwimmingLaneGroupTags', + 'description' => '查询所有泳道标签列表', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'sae:ListSwimmingLaneGroupTags', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'BestEffortType', - 'in' => 'query', - 'schema' => [ - 'description' => 'BestEffort策略'."\n" - ."\n" - .'- besteffort BestEffort'."\n" - .'- try-besteffort BestEffort优先'."\n" - .'- default 默认', - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'default' => 'default', - 'try-besteffort' => 'try-besteffort', - 'besteffort' => 'besteffort', - ], - 'example' => 'default', + ], + [ + 'apiName' => 'SuspendTraffic', + 'description' => '将流量从实例摘除', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'sae:SuspendTraffic', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'GpuA10', - 'in' => 'query', - 'schema' => [ - 'type' => 'string', - 'required' => false, + ], + [ + 'apiName' => 'UpdateNamespaceSlsConfigs', + 'description' => '更新命名空间的sls配置', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'sae:UpdateNamespaceSlsConfigs', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'GpuPpu810e', - 'in' => 'query', - 'schema' => [ - 'type' => 'string', - 'required' => false, + ], + [ + 'apiName' => 'ExecJob', + 'description' => 'ExecJob', + 'operationType' => '', + 'ramAction' => [ + 'action' => 'sae:ExecJob', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'description' => '返回信息。', - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'ADCEC067-86AD-19E2-BD43-E83F3841****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链id。', - 'type' => 'string', - 'example' => '1a0dcc771722848598056771******', - ], - 'Data' => [ - 'description' => '价格信息。', - 'type' => 'object', - 'properties' => [ - 'BagUsage' => [ - 'description' => '资源包剩余量。', - 'type' => 'object', - 'properties' => [ - 'Cpu' => [ - 'description' => 'CPU剩余量,单位:核*时。', - 'type' => 'number', - 'format' => 'float', - 'example' => '497570.450009', - ], - 'Mem' => [ - 'description' => '内存剩余量,单位:GiB*时。', - 'type' => 'number', - 'format' => 'float', - 'example' => '989802.563546', - ], - 'Cu' => [ - 'description' => '资源包剩余CU量', - 'type' => 'number', - 'format' => 'float', - 'example' => '10000', - ], - ], - ], - 'Order' => [ - 'description' => '价格信息。', - 'type' => 'object', - 'properties' => [ - 'OriginalAmount' => [ - 'description' => '订单原价。', - 'type' => 'number', - 'format' => 'float', - 'example' => '0.0092592', - ], - 'DiscountAmount' => [ - 'description' => '订单优惠金额。', - 'type' => 'number', - 'format' => 'float', - 'example' => '0.0018518', - ], - 'RuleIds' => [ - 'description' => '活动ID。', - 'type' => 'array', - 'items' => [ - 'description' => '活动ID。', - 'type' => 'string', - 'example' => '2000010******', - ], - ], - 'TradeAmount' => [ - 'description' => '订单成交价。', - 'type' => 'number', - 'format' => 'float', - 'example' => ' 0.0074074', - ], - ], - ], - 'Rules' => [ - 'description' => '活动规则。', - 'type' => 'array', - 'items' => [ - 'description' => '活动规则。', - 'type' => 'object', - 'properties' => [ - 'RuleDescId' => [ - 'description' => '规则ID。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '2000010******', - ], - 'Name' => [ - 'description' => '规则名称。', - 'type' => 'string', - 'example' => '后付费8折优惠', - ], - ], - ], - ], - 'RequestPrice' => [ - 'description' => '求情次数价格。', - 'type' => 'object', - 'properties' => [ - 'Order' => [ - 'description' => '价格信息。', - 'type' => 'object', - 'properties' => [ - 'OriginalAmount' => [ - 'description' => '订单原价。', - 'type' => 'number', - 'format' => 'float', - 'example' => '0.0046296', - ], - 'DiscountAmount' => [ - 'description' => '订单优惠金额。', - 'type' => 'number', - 'format' => 'float', - 'example' => '0.0009259', - ], - 'TradeAmount' => [ - 'description' => '订单实际交易价格。', - 'type' => 'number', - 'format' => 'float', - 'example' => '0.0037037', - ], - 'RuleIds' => [ - 'description' => '规则ID。', - 'type' => 'array', - 'items' => [ - 'description' => '优惠规则ID。', - 'type' => 'string', - 'example' => '2000010******', - ], - ], - ], - ], - 'Rules' => [ - 'description' => '活动规则。', - 'type' => 'array', - 'items' => [ - 'description' => '活动规则。', - 'type' => 'object', - 'properties' => [ - 'RuleDescId' => [ - 'description' => '策略ID。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '2000010******', - ], - 'Name' => [ - 'description' => '规则名称。', - 'type' => 'string', - 'example' => '后付费8折优惠', - ], - ], - ], - ], - ], - ], - 'TrafficPrice' => [ - 'description' => '流量价格。', - 'type' => 'object', - 'properties' => [ - 'Order' => [ - 'description' => '价格信息。', - 'type' => 'object', - 'properties' => [ - 'OriginalAmount' => [ - 'description' => '订单原价。', - 'type' => 'number', - 'format' => 'float', - 'example' => '0.0046296', - ], - 'DiscountAmount' => [ - 'description' => '订单优惠金额。', - 'type' => 'number', - 'format' => 'float', - 'example' => '0.0009259', - ], - 'TradeAmount' => [ - 'description' => '订单实际交易价。', - 'type' => 'number', - 'format' => 'float', - 'example' => '0.0037037', - ], - 'RuleIds' => [ - 'description' => '活动ID。', - 'type' => 'array', - 'items' => [ - 'description' => '活动ID。', - 'type' => 'string', - 'example' => '2000010******', - ], - ], - ], - ], - 'Rules' => [ - 'description' => '活动规则。', - 'type' => 'array', - 'items' => [ - 'description' => '活动规则。', - 'type' => 'object', - 'properties' => [ - 'RuleDescId' => [ - 'description' => '规则ID。', - 'type' => 'number', - 'format' => 'float', - 'example' => '2000010******', - ], - 'Name' => [ - 'description' => '规则名称。', - 'type' => 'string', - 'example' => '后付费8折优惠', - ], - ], - ], - ], - ], - ], - 'CpuMemPrice' => [ - 'description' => 'CPU、内存价格。', - 'type' => 'object', - 'properties' => [ - 'Order' => [ - 'description' => '价格信息。', - 'type' => 'object', - 'properties' => [ - 'OriginalAmount' => [ - 'description' => '原价。', - 'type' => 'number', - 'format' => 'float', - 'example' => ' 0.0046296', - ], - 'DiscountAmount' => [ - 'description' => '订单优惠金额。', - 'type' => 'number', - 'format' => 'float', - 'example' => '0.0009259', - ], - 'TradeAmount' => [ - 'description' => '订单实际交易价格。', - 'type' => 'number', - 'format' => 'float', - 'example' => '0.0037037', - ], - 'RuleIds' => [ - 'description' => '规则ID。', - 'type' => 'array', - 'items' => [ - 'description' => '规则ID。', - 'type' => 'string', - 'example' => '2000010******', - ], - ], - ], - ], - 'Rules' => [ - 'description' => '活动规则。', - 'type' => 'array', - 'items' => [ - 'description' => '活动规则。', - 'type' => 'object', - 'properties' => [ - 'RuleDescId' => [ - 'description' => '规则ID。', - 'type' => 'number', - 'format' => 'float', - 'example' => '2000010******'."\n", - ], - 'Name' => [ - 'description' => '规则名称。', - 'type' => 'string', - 'example' => '后付费8折优惠', - ], - ], - ], - ], - ], - ], - ], - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '是否成功获取配置的价格信息。'."\n" - ."\n" - .'- **true**:获取成功。'."\n" - .'- **false**:获取失败。', - 'type' => 'boolean', - 'example' => 'true', - ], - ], + [ + 'apiName' => 'ListLogConfigs', + 'description' => '获取应用日志列表', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:ListLogConfigs', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], - 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', + [ + 'apiName' => 'DeleteGreyTagRoute', + 'description' => 'DeleteGreyTagRoute', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'sae:DeleteGreyTagRoute', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"ADCEC067-86AD-19E2-BD43-E83F3841****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"1a0dcc771722848598056771******\\",\\n \\"Data\\": {\\n \\"BagUsage\\": {\\n \\"Cpu\\": 497570.450009,\\n \\"Mem\\": 989802.563546,\\n \\"Cu\\": 10000\\n },\\n \\"Order\\": {\\n \\"OriginalAmount\\": 0.0092592,\\n \\"DiscountAmount\\": 0.0018518,\\n \\"RuleIds\\": [\\n \\"2000010******\\"\\n ],\\n \\"TradeAmount\\": 0.0074074\\n },\\n \\"Rules\\": [\\n {\\n \\"RuleDescId\\": 0,\\n \\"Name\\": \\"后付费8折优惠\\"\\n }\\n ],\\n \\"RequestPrice\\": {\\n \\"Order\\": {\\n \\"OriginalAmount\\": 0.0046296,\\n \\"DiscountAmount\\": 0.0009259,\\n \\"TradeAmount\\": 0.0037037,\\n \\"RuleIds\\": [\\n \\"2000010******\\"\\n ]\\n },\\n \\"Rules\\": [\\n {\\n \\"RuleDescId\\": 0,\\n \\"Name\\": \\"后付费8折优惠\\"\\n }\\n ]\\n },\\n \\"TrafficPrice\\": {\\n \\"Order\\": {\\n \\"OriginalAmount\\": 0.0046296,\\n \\"DiscountAmount\\": 0.0009259,\\n \\"TradeAmount\\": 0.0037037,\\n \\"RuleIds\\": [\\n \\"2000010******\\"\\n ]\\n },\\n \\"Rules\\": [\\n {\\n \\"RuleDescId\\": 0,\\n \\"Name\\": \\"后付费8折优惠\\"\\n }\\n ]\\n },\\n \\"CpuMemPrice\\": {\\n \\"Order\\": {\\n \\"OriginalAmount\\": 0.0046296,\\n \\"DiscountAmount\\": 0.0009259,\\n \\"TradeAmount\\": 0.0037037,\\n \\"RuleIds\\": [\\n \\"2000010******\\"\\n ]\\n },\\n \\"Rules\\": [\\n {\\n \\"RuleDescId\\": 0,\\n \\"Name\\": \\"后付费8折优惠\\"\\n }\\n ]\\n }\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => '查询配置价格信息', - 'summary' => '查询configurationprice。', - ], - 'GetWebshellToken' => [ - 'path' => '/pop/v1/sam/instance/webshellToken', - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ - [ - 'AK' => [], + [ + 'apiName' => 'DescribeConfigMap', + 'description' => '查询ConfigMap实例详情', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeConfigMap', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], - 'operationType' => 'readAndWrite', - 'deprecated' => false, - 'systemTags' => [ + [ + 'apiName' => 'DescribeApplicationScalingRule', + 'description' => '查询应用的单个弹性伸缩策略', 'operationType' => 'get', - 'abilityTreeCode' => '6366', - 'abilityTreeNodes' => [ - 'FEATUREsaeRVPNSA', + 'ramAction' => [ + 'action' => 'sae:DescribeApplicationScalingRule', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], - 'parameters' => [ - [ - 'name' => 'AppId', - 'in' => 'query', - 'schema' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '017f39b8-dfa4-4e16-a84b-1dcee4b1****', + [ + 'apiName' => 'DescribeWebCustomDomain', + 'description' => '获取Web应用自定义域名详情', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeWebCustomDomain', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => 'Namespace', 'arn' => 'acs:sae:{#regionId}:{#accountId}:namespace/{#NamespaceId}'], ], ], - [ - 'name' => 'PodName', - 'in' => 'query', - 'schema' => [ - 'description' => 'Pod名称。', - 'type' => 'string', - 'required' => true, - 'example' => 'hello-podsdfsdfsdfsdf', + ], + [ + 'apiName' => 'DeleteApplication', + 'description' => '删除应用', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'sae:DeleteApplication', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'ContainerName', - 'in' => 'query', - 'schema' => [ - 'description' => '容器名称。'."\n" - ."\n" - .'注意事项:'."\n" - .'- 如果指定了该参数,云助手将在实例的指定容器内执行脚本。'."\n" - .'- 如果指定了该参数,仅支持在云助手Agent版本不低于2.2.3.344的Linux实例内运行。'."\n" - ."\n" - .' - 查看云助手Agent版本的具体操作,请参见[安装云助手Agent](~~64921~~) 。'."\n" - .' - 升级云助手Agent版本的具体操作,请参见[升级或禁止升级云助手Agent](~~134383~~)。'."\n" - .'- 如果指定了该参数,本接口中已指定的`Username`参数和[CreateCommand](~~64844~~)中指定的`WorkingDir`参数将不会生效。仅支持通过容器默认用户在容器的默认工作目录下执行命令。更多信息,请参见[使用云助手在容器内执行命令](~~456641~~)。'."\n" - .'- 如果指定了该参数,在Linux容器中只支持执行Shell脚本,不支持在脚本开头使用类似`#!/usr/bin/python`命令的形式指定脚本内容的解释器。更多信息,请参见[使用云助手在容器内执行命令](~~456641~~)。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'ad-helper', + ], + [ + 'apiName' => 'DescribeNamespaceResources', + 'description' => '查询命名空间内的资源信息', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeNamespaceResources', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '调用结果的附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回success。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], - 'Data' => [ - 'description' => '返回结果。', - 'type' => 'object', - 'properties' => [ - 'Token' => [ - 'description' => 'Token信息。', - 'type' => 'string', - 'example' => 'zWWpvRj_5pzof4hfo7-hGynM8oGMmO_7', - ], - 'HttpUrl' => [ - 'description' => 'Webshell页面地址', - 'type' => 'string', - 'example' => 'HttpUrl : "https://saenext.console.aliyun.com/cn-shenzhen/app-list/app1/micro-app/shell/pod1?tokenId=xxx', - ], - 'WebSocketUrl' => [ - 'description' => 'Websocket地址', - 'type' => 'string', - 'example' => 'wss://sae-webshell.console.aliyun.com/websocket/eamWebshell?tokenId=xxx®ion=cn-shenzhen', - ], - ], - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**目录。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => 'HTTP状态码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '是否成功。', - 'type' => 'boolean', - 'example' => 'true', - ], - ], + [ + 'apiName' => 'DescribeNamespace', + 'description' => '查询命名空间详细信息', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeNamespace', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], - 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'InvalidApplication.NotFound', - 'errorMessage' => 'The current application does not exist.', - ], - [ - 'errorCode' => 'InvalidParameter.NotEmpty', - 'errorMessage' => 'You must specify the parameter %s.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', - ], - [ - 'errorCode' => 'InvalidParameter.WithMessage', - 'errorMessage' => 'The parameter is invalid {%s}: %s', + [ + 'apiName' => 'RescaleApplicationVertically', + 'description' => '改变应用实例规格', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'sae:RescaleApplicationVertically', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - 500 => [ - [ - 'errorCode' => 'OperationFailed.RPCError', - 'errorMessage' => 'Internal RPC request processing error.', + ], + [ + 'apiName' => 'DescribePipeline', + 'description' => '获取Logstash实例的管道信息', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribePipeline', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"Token\\": \\"zWWpvRj_5pzof4hfo7-hGynM8oGMmO_7\\",\\n \\"HttpUrl\\": \\"HttpUrl : \\\\\\"https://saenext.console.aliyun.com/cn-shenzhen/app-list/app1/micro-app/shell/pod1?tokenId=xxx\\",\\n \\"WebSocketUrl\\": \\"wss://sae-webshell.console.aliyun.com/websocket/eamWebshell?tokenId=xxx®ion=cn-shenzhen\\"\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => '获取远程登录Token', - 'summary' => '获取远程登录实例 Web Shell 的 Token。', - ], - 'UpdateAppMode' => [ - 'summary' => '应用闲置模式更新', - 'path' => '/pop/v1/sam/app/updateAppMode', - 'methods' => [ - 'put', - ], - 'schemes' => [ - 'https', + [ + 'apiName' => 'UnbindSlb', + 'description' => '解绑内网或公网SLB', + 'operationType' => '', + 'ramAction' => [ + 'action' => 'sae:UnbindSlb', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], ], - 'security' => [ - [ - 'AK' => [], + [ + 'apiName' => 'DeleteConfigMap', + 'description' => '删除ConfigMap实例', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'sae:DeleteConfigMap', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], - 'operationType' => 'readAndWrite', - 'deprecated' => false, - 'systemTags' => [ + [ + 'apiName' => 'UpdateWebApplication', + 'description' => '更新Web应用级别的配置', 'operationType' => 'update', - 'abilityTreeCode' => '259402', - 'abilityTreeNodes' => [ - 'FEATUREsaeRVPNSA', + 'ramAction' => [ + 'action' => 'sae:UpdateWebApplication', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], - 'parameters' => [ - [ - 'name' => 'EnableIdle', - 'in' => 'query', - 'schema' => [ - 'description' => '是否开启闲置。', - 'type' => 'boolean', - 'required' => false, - 'enumValueTitles' => [ - 'true' => '开启', - 'false' => '关闭', - ], - 'example' => 'true', + [ + 'apiName' => 'ListAllSwimmingLanes', + 'description' => '查询所有泳道', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'sae:ListAllSwimmingLanes', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'AppId', - 'in' => 'query', - 'schema' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'required' => false, - 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****', + ], + [ + 'apiName' => 'GetChangeOrderMetric', + 'description' => 'GetChangeOrderMetric', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'sae:GetChangeOrderMetric', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'NamespaceId', - 'in' => 'query', - 'schema' => [ - 'type' => 'string', - 'required' => false, + ], + [ + 'apiName' => 'UpdateAppSecurityGroup', + 'description' => '更新应用安全组', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'sae:UpdateAppSecurityGroup', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'AppIds', - 'in' => 'query', - 'schema' => [ - 'type' => 'string', - 'required' => false, + ], + [ + 'apiName' => 'DescribeIngress', + 'description' => '查询ingress配置详情', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeIngress', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'IdleHour', - 'in' => 'query', - 'schema' => [ - 'type' => 'string', - 'required' => false, + ], + [ + 'apiName' => 'UpdateSwimmingLaneEnableAttribute', + 'description' => '更新泳道的启用属性', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'sae:UpdateSwimmingLaneEnableAttribute', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], - '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' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '创建应用是否成功。取值说明如下:true:创建成功。false:创建失败。', - 'type' => 'string', - 'example' => 'true', - ], - ], + [ + 'apiName' => 'ListTagResources', + 'description' => '查询应用和标签的对应关系', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:ListTagResources', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": \\"true\\"\\n}","type":"json"}]', - 'title' => '更新应用闲置模式', - ], - 'QueryArmsEnable' => [ - 'path' => '/pop/v1/arms/queryArms', - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ - [ - 'AK' => [], + [ + 'apiName' => 'UpdateSecret', + 'description' => 'UpdateSecret', + 'operationType' => '', + 'ramAction' => [ + 'action' => 'sae:UpdateSecret', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], - 'operationType' => 'read', - 'deprecated' => false, - 'systemTags' => [ - 'abilityTreeCode' => '6382', - 'abilityTreeNodes' => [ - 'FEATUREsaeK7DHH9', + [ + 'apiName' => 'DescribeInstanceLog', + 'description' => '获取实例日志', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeInstanceLog', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], - 'parameters' => [ - [ - 'name' => 'AppId', - 'in' => 'query', - 'schema' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => '017f39b8-dfa4-4e16-a84b-1dcee4b1****', + [ + 'apiName' => 'DescribeWebApplicationResourceStatics', + 'description' => '获取Web应用资源用量统计', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeWebApplicationResourceStatics', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '01CF26C7-00A3-4AA6-BA76-7E95F2A3****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链id,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], - 'Data' => [ - 'description' => '返回结果。', - 'type' => 'object', - 'properties' => [ - 'Enable' => [ - 'description' => '是否启用。取值说明如下:-**true**:启用-**false**:禁用', - 'type' => 'boolean', - 'example' => 'true', - ], - ], - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或pop错误码。取值说明如下:-2xx:成功。-3xx:重定向。-4xx:请求错误。-5xx:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:成功。'."\n" - .'- **false**:失败。', - 'type' => 'boolean', - 'example' => 'true', - ], - ], + [ + 'apiName' => 'DeleteHistoryJob', + 'description' => 'DeleteHistoryJob', + 'operationType' => '', + 'ramAction' => [ + 'action' => 'sae:DeleteHistoryJob', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], - 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'InvalidApplication.NotFound', - 'errorMessage' => 'The current application does not exist.', + [ + 'apiName' => 'QueryArmsEnable', + 'description' => '查询应用监控开启状态', + 'operationType' => '', + 'ramAction' => [ + 'action' => 'sae:QueryArmsEnable', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => 'Application', 'arn' => 'acs:sae:{#regionId}:{#accountId}:application/{#namespaceid}/{#appid}'], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"01CF26C7-00A3-4AA6-BA76-7E95F2A3****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"Enable\\": true\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => '查询应用监控开启状态', - 'summary' => '查询指定app是否开启应用监控。', - ], - 'DescribeApplicationMseService' => [ - 'path' => '/pop/v1/sam/app/applicationMseService', - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ - [ - 'AK' => [], + [ + 'apiName' => 'OpenSaeService', + 'description' => 'OpenSaeService', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'sae:OpenSaeService', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], - 'operationType' => 'readAndWrite', - 'deprecated' => false, - 'systemTags' => [ - 'abilityTreeCode' => '198094', - 'abilityTreeNodes' => [ - 'FEATUREsaeY046YN', + [ + 'apiName' => 'DescribeNamespaceList', + 'description' => '获取命名空间列表', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeNamespaceList', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], - 'parameters' => [ - [ - 'name' => 'AppId', - 'in' => 'query', - 'schema' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'f7730764-d88f-4b9a-8d8e-cd8efbfe****', + [ + 'apiName' => 'DeleteSecret', + 'description' => 'DeleteSecret', + 'operationType' => '', + 'ramAction' => [ + 'action' => 'sae:DeleteSecret', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'EnableAhas', - 'in' => 'query', - 'schema' => [ - 'title' => '是否为限流降级功能', - 'description' => '是否为限流降级功能。访问限流降级相关接口时填true,否则填false。'."\n" - .'- true 检查限流降级权限'."\n" - .'- false 不需要检查限流降级权限', - 'type' => 'boolean', - 'required' => true, - 'example' => 'true', + ], + [ + 'apiName' => 'DescribeGreyTagRoute', + 'description' => 'DescribeGreyTagRoute', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeGreyTagRoute', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'B4D805CA-926D-41B1-8E63-7AD0C1ED****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], - 'Data' => [ - 'description' => 'MSE 微服务治理的应用信息。', - 'type' => 'object', - 'properties' => [ - 'MseAppId' => [ - 'description' => 'MSE 微服务治理的应用ID', - 'type' => 'string', - 'example' => 'mse-cn-hvm47******', - ], - 'MseAppName' => [ - 'description' => 'MSE 微服务治理的应用名', - 'type' => 'string', - 'example' => 'test', - ], - 'MseAppNameSpace' => [ - 'description' => 'MSE 微服务治理的命名空间', - 'type' => 'string', - 'example' => 'sae-ent', - ], - 'Status' => [ - 'description' => 'MSE 微服务治应用状态'."\n" - .'- EXPIRED 已过期或者未开通相关功能'."\n" - .'- REBOOTING 应用重启中'."\n" - .'- WAITING 等待应用重启'."\n" - .'- FAIL 开通失败'."\n" - .'- NULL/SUCCESS 开通成功', - 'type' => 'string', - 'example' => 'SUCCESS', - ], - ], - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:2xx:成功。3xx:重定向。4xx:请求错误。5xx:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '获取应用实例分组是否成功。取值说明如下:'."\n" - ."\n" - .'- **true**:表示获取成功。'."\n" - .'- **false**:表示获取失败。', - 'type' => 'boolean', - 'example' => 'true', - ], - ], + [ + 'apiName' => 'DescribeInstanceSpecifications', + 'description' => '获取应用实例规格信息', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeInstanceSpecifications', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], - 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'System.Upgrading', - 'errorMessage' => 'The system is being upgraded. Please try again later.', + [ + 'apiName' => 'UpdateWebApplicationScalingConfig', + 'description' => '更新Web应用弹性配置', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'sae:UpdateWebApplicationScalingConfig', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], - [ - 'errorCode' => 'InvalidApplication.NotFound', - 'errorMessage' => 'The current application does not exist.', + ], + ], + [ + 'apiName' => 'DescribeWebApplicationRevision', + 'description' => '查询Web应用版本详情', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeWebApplicationRevision', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"B4D805CA-926D-41B1-8E63-7AD0C1ED****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"MseAppId\\": \\"mse-cn-hvm47******\\",\\n \\"MseAppName\\": \\"test\\",\\n \\"MseAppNameSpace\\": \\"sae-ent\\",\\n \\"Status\\": \\"SUCCESS\\"\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => '查询关联的MSE微服务治理应用', - 'summary' => '查询应用关联的MSE微服务治理应用信息', - ], - 'BatchRestartApplications' => [ - 'summary' => '批量重启应用', - 'path' => '/pop/v1/sam/app/batchRestartApplications', - 'methods' => [ - 'put', + [ + 'apiName' => 'CreateGreyTagRoute', + 'description' => 'CreateGreyTagRoute', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'sae:CreateGreyTagRoute', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], ], - 'schemes' => [ - 'https', + [ + 'apiName' => 'DescribeApplicationInstances', + 'description' => '获取应用实例列表', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeApplicationInstances', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], ], - 'security' => [ - [ - 'AK' => [], + [ + 'apiName' => 'CreateOrUpdateSwimmingLane', + 'description' => '创建或更新泳道', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'sae:CreateOrUpdateSwimmingLane', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], - 'deprecated' => false, - 'systemTags' => [ + [ + 'apiName' => 'BatchStartApplications', + 'description' => '批量启动应用', 'operationType' => 'none', - 'abilityTreeCode' => '285072', - 'abilityTreeNodes' => [ - 'FEATUREsaeRVPNSA', + 'ramAction' => [ + 'action' => 'sae:BatchStartApplications', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], - 'parameters' => [ - [ - 'name' => 'NamespaceId', - 'in' => 'query', - 'schema' => [ - 'description' => '命名空间ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-shanghai', + [ + 'apiName' => 'DescribeChangeOrder', + 'description' => '查询变更单信息', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeChangeOrder', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'AppIds', - 'in' => 'query', - 'schema' => [ - 'description' => '应用id列表。输入多个时,以英文逗号(,)分隔。', - 'type' => 'string', - 'required' => true, - 'example' => '00893b3a-0e24-45ed-be0c-1f20e07b****', + ], + [ + 'apiName' => 'ListGreyTagRoute', + 'description' => 'ListGreyTagRoute', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:ListGreyTagRoute', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'title' => 'Schema of Response', - 'description' => '返回数据。', - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'请求正常,返回success。'."\n" - .'请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], - 'Data' => [ - 'description' => '返回结果。', - 'type' => 'object', - 'properties' => [ - 'ChangeOrderId' => [ - 'description' => '变更流程ID', - 'type' => 'string', - 'example' => '01db03d3-3ee9-48b3-b3d0-dfce2d88****', - ], - ], - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'请求成功:不返回ErrorCode字段。'."\n" - .'请求失败:返回ErrorCode字段。具体信息,请参见本文的错误码列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'2xx:成功。'."\n" - .'3xx:重定向。'."\n" - .'4xx:请求错误。'."\n" - .'5xx:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '批量启动应用是否成功。取值说明如下:'."\n" - ."\n" - .'true:表示批量启动应用成功。'."\n" - .'false:表示批量启动应用失败。', - 'type' => 'boolean', - 'example' => 'true', - ], - ], + [ + 'apiName' => 'QueryResourceStatics', + 'description' => '获取应用的资源使用量', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:QueryResourceStatics', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], - 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'System.Upgrading', - 'errorMessage' => 'The system is being upgraded. Please try again later.', - ], - [ - 'errorCode' => 'InvalidParameter.Obviously', - 'errorMessage' => 'The specified parameter is invalid {%s}.', + [ + 'apiName' => 'DeleteNamespace', + 'description' => 'DeleteNamespace', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'sae:DeleteNamespace', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], - [ - 'errorCode' => 'Mamespace.Have.No.Applications', - 'errorMessage' => 'There are no applications in this namespace.', + ], + ], + [ + 'apiName' => 'DescribeWebApplicationScalingConfig', + 'description' => '获取Web应用弹性配置', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeWebApplicationScalingConfig', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], - [ - 'errorCode' => 'Invalid.App.List.Not.Same.Namespace', - 'errorMessage' => 'The selected applications do not belong to the same namespace.', + ], + ], + [ + 'apiName' => 'AbortAndRollbackChangeOrder', + 'description' => '中止或回滚变更单', + 'operationType' => '', + 'ramAction' => [ + 'action' => 'sae:AbortAndRollbackChangeOrder', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], - [ - 'errorCode' => 'user.indebt', - 'errorMessage' => 'The user has an outstanding payment.', + ], + ], + [ + 'apiName' => 'CreateNamespace', + 'description' => '创建命名空间', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'sae:CreateNamespace', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + [ + 'apiName' => 'DescribeAppServiceDetail', + 'description' => 'DescribeAppServiceDetail', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'sae:DescribeAppServiceDetail', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"ChangeOrderId\\": \\"01db03d3-3ee9-48b3-b3d0-dfce2d88****\\"\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => '批量重启应用', - ], - 'UpdateNamespaceSlsConfigs' => [ - 'summary' => '更新命名空间级别sls配置', - 'path' => '/pop/cas/namespace/updateNamespaceSlsConfigs', - 'methods' => [ - 'post', + [ + 'apiName' => 'GetArmsTopNMetric', + 'description' => 'GetArmsTopNMetric', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'sae:GetArmsTopNMetric', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], ], - 'schemes' => [ - 'https', + [ + 'apiName' => 'DeleteInstances', + 'description' => '删除实例', + 'operationType' => '', + 'ramAction' => [ + 'action' => 'sae:DeleteInstances', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], ], - 'security' => [ - [ - 'AK' => [], + [ + 'apiName' => 'DescribeJobStatus', + 'description' => 'DescribeJobStatus', + 'operationType' => '', + 'ramAction' => [ + 'action' => 'sae:DescribeJobStatus', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], - 'deprecated' => false, - 'systemTags' => [ + [ + 'apiName' => 'UpdateIngress', + 'description' => '更新ingress实例配置', 'operationType' => 'update', - 'abilityTreeCode' => '288126', - 'abilityTreeNodes' => [ - 'FEATUREsaeW0M31R', + 'ramAction' => [ + 'action' => 'sae:UpdateIngress', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], - 'tenantRelevance' => 'tenant', ], - 'parameters' => [ - [ - 'name' => 'NamespaceId', - 'in' => 'query', - 'schema' => [ - 'description' => '命名空间ID', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-beijing:test', + [ + 'apiName' => 'DeleteJob', + 'description' => 'DeleteJob', + 'operationType' => '', + 'ramAction' => [ + 'action' => 'sae:DeleteJob', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'NameSpaceShortId', - 'in' => 'query', - 'schema' => [ - 'description' => '短版命名空间ID,不需要带上region,推荐。', - 'type' => 'string', - 'required' => false, - 'example' => 'test', + ], + [ + 'apiName' => 'GetApplication', + 'description' => '查询应用基本信息', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:GetApplication', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'SlsConfigs', - 'in' => 'query', - 'schema' => [ - 'description' => '日志采集到SLS的配置。'."\n" - ."\n" - .'- 使用SAE自动创建的SLS资源:`[{"logDir":"","logType":"stdout"},{"logDir":"/tmp/a.log"}]`。'."\n" - .'- 使用自定义的SLS资源:`[{"projectName":"test-sls","logType":"stdout","logDir":"","logstoreName":"sae","logtailName":""},{"projectName":"test","logDir":"/tmp/a.log","logstoreName":"sae","logtailName":""}]`。'."\n" - ."\n" - .'参数说明如下:'."\n" - ."\n" - .'- **projectName**:配置SLS上的Project名称。 '."\n" - .'- **logDir**:日志路径。'."\n" - .'- **logType**:日志类型。**stdout**表示容器标准输出日志,仅可设置1条;如果不设置,则表示收集文件日志。'."\n" - .'- **logstoreName**:配置SLS上的Logstore名称。'."\n" - .'- **logtailName**:配置SLS上的Logtail名称,如果不指定,则表示新建Logtail。'."\n" - ."\n" - .'多次部署时如果SLS采集配置没有变更,则不需要设置该参数(即请求中无需包含**SlsConfigs**字段);如果不再需要使用SLS采集功能,您需要在请求中将该字段的值设置为空字符串(即请求中**SlsConfigs**字段的值为"")。'."\n" - ."\n" - .'> 随任务模板自动创建的Project会随着任务模板删除而删除,因此在选择已有Project时,不能选择SAE自动创建的Project。', - 'type' => 'string', - 'required' => false, - 'example' => '[{"projectName":"test","logDir":"/tmp/a.log","logstoreName":"sae","logtailName":""}]', + ], + [ + 'apiName' => 'UpdateApplicationScalingRule', + 'description' => '修改弹性策略', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'sae:UpdateApplicationScalingRule', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => 'Application', 'arn' => 'acs:sae:{#regionId}:{#accountId}:application/{#namespaceid}/{#appid}'], ], ], - [ - 'name' => 'SlsLogEnvTags', - 'in' => 'query', - 'schema' => [ - 'type' => 'string', - 'required' => false, + ], + [ + 'apiName' => 'ListPublishedServices', + 'description' => '获取发布的微服务列表', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:ListPublishedServices', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], - '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' => 'AD0286B2-F4A4-5D43-9329-97DEF1019F06', - ], - 'Message' => [ - 'description' => '附加信息', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:2xx:成功。3xx:重定向。4xx:请求错误。5xx:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '更新命名空间sls配置是否成功。取值说明如下:true:获取成功。 false:获取失败。', - 'type' => 'boolean', - 'example' => 'true', - ], - ], + [ + 'apiName' => 'CreateWebCustomDomain', + 'description' => '创建自定义域名', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'sae:CreateWebCustomDomain', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => 'Namespace', 'arn' => 'acs:sae:{#regionId}:{#accountId}:namespace/{#NamespaceId}'], ], ], ], - 'errorCodes' => [ - 404 => [ - [ - 'errorCode' => 'InvalidNamespaceId.NotFound', - 'errorMessage' => 'The specified NamespaceId does not exist.', + [ + 'apiName' => 'DeleteIngress', + 'description' => '删除 ingress 实例', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'sae:DeleteIngress', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"AD0286B2-F4A4-5D43-9329-97DEF1019F06\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => '更新命名空间的sls配置', - ], - 'DisableArms' => [ - 'path' => '/pop/v1/arms/disableArms', - 'methods' => [ - 'post', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ - [ - 'AK' => [], + [ + 'apiName' => 'ListSecrets', + 'description' => 'ListSecrets', + 'operationType' => '', + 'ramAction' => [ + 'action' => 'sae:ListSecrets', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], - 'operationType' => 'readAndWrite', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '6357', - 'abilityTreeNodes' => [ - 'FEATUREsae8U8CHA', + [ + 'apiName' => 'ListJobs', + 'description' => 'ListJobs', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'sae:ListJobs', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], - 'parameters' => [ - [ - 'name' => 'AppId', - 'in' => 'query', - 'schema' => [ - 'description' => '应用ID', - 'type' => 'string', - 'required' => true, - 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69a26c', + [ + 'apiName' => 'StartWebApplication', + 'description' => '启动Web应用', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'sae:StartWebApplication', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '6DA47906-6070-5A16-896D-67DCF38A6B7B', - ], - 'Message' => [ - 'description' => '调用结果的附加信息。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => '0bc3b4ad17412276398692303e4cb1', - ], - 'Data' => [ - 'description' => '返回结果。', - 'type' => 'object', - 'properties' => [ - 'Enable' => [ - 'description' => '是否启用。取值说明如下:-**true**:启用-**false**:禁用', - 'type' => 'boolean', - 'example' => 'true', - ], - ], - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '是否成功标识', - 'type' => 'boolean', - 'example' => 'True', - ], - ], + [ + 'apiName' => 'ListNamespacedConfigMaps', + 'description' => '获取ConfigMap实例列表', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:ListNamespacedConfigMaps', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], - 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'System.Upgrading', - 'errorMessage' => 'The system is being upgraded. Please try again later.', - ], - [ - 'errorCode' => 'InvalidApplication.NotFound', - 'errorMessage' => 'The current application does not exist.', + [ + 'apiName' => 'CreateIngress', + 'description' => '创建一条路由规则', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'sae:CreateIngress', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6DA47906-6070-5A16-896D-67DCF38A6B7B\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0bc3b4ad17412276398692303e4cb1\\",\\n \\"Data\\": {\\n \\"Enable\\": true\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => 'DisableArms', - 'summary' => '停止Arms监控。', - ], - 'ResumeTraffic' => [ - 'summary' => '将实例上来自 CLB 应用访问、NLB 应用访问、CLB 网关路由、ALB 网关路由、K8S Service 上的流量恢复', - 'path' => '/pop/v1/sam/app/instanceTrafficResume', - 'methods' => [ - 'put', - ], - 'schemes' => [ - 'https', - ], - 'security' => [ - [ - 'AK' => [], + [ + 'apiName' => 'DescribeWebInstanceLogs', + 'description' => '获取Web应用实例日志', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeWebInstanceLogs', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], - 'operationType' => 'readAndWrite', - 'deprecated' => false, - 'systemTags' => [ + [ + 'apiName' => 'ConfirmPipelineBatch', + 'description' => '是否开始一下批次', 'operationType' => 'none', - 'abilityTreeCode' => '289039', - 'abilityTreeNodes' => [ - 'FEATUREsaeRVPNSA', + 'ramAction' => [ + 'action' => 'sae:ConfirmPipelineBatch', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], - 'parameters' => [ - [ - 'name' => 'AppId', - 'in' => 'query', - 'schema' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'required' => false, - 'example' => '017f39b8-dfa4-4e16-a84b-1dcee4b1****', + [ + 'apiName' => 'UpdateConfigMap', + 'description' => '更新ConfigMap实例', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'sae:UpdateConfigMap', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'InstanceIds', - 'in' => 'query', - 'schema' => [ - 'description' => '实例ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'c-668727a8-17d86664-41e5bb******,c-668727a8-17d86664-7e4958******', + ], + [ + 'apiName' => 'ListWebApplicationRevisions', + 'description' => '查询Web应用版本列表', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'sae:ListWebApplicationRevisions', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], - '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' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链ID,用于精确查询调用信息。', - 'type' => 'string', - 'example' => 'ac1a0b2215622920113732501e****', - ], - 'Data' => [ - 'description' => '返回结果。', - 'type' => 'object', - 'properties' => [ - 'msg' => [ - 'description' => '请求 code 对应的详细描述信息。', - 'type' => 'string', - 'example' => 'succeed in handling request', - ], - 'success' => [ - 'description' => '流量是否恢复成功:'."\n" - ."\n" - .'- **true**:恢复成功。'."\n" - .'- **false**:恢复失败。', - 'type' => 'boolean', - 'example' => 'True', - ], - ], - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:'."\n" - ."\n" - .'- 请求成功:不返回**ErrorCode**字段。'."\n" - .'- 请求失败:返回**ErrorCode**字段。具体信息,请参见本文的**错误码**列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '恢复实例上的流量是否成功。取值说明如下:true:恢复成功。 false:恢复失败。', - 'type' => 'string', - 'example' => 'True', - ], - ], + [ + 'apiName' => 'UpdateGreyTagRoute', + 'description' => 'UpdateGreyTagRoute', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'sae:UpdateGreyTagRoute', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"ac1a0b2215622920113732501e****\\",\\n \\"Data\\": {\\n \\"msg\\": \\"succeed in handling request\\",\\n \\"success\\": true\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": \\"True\\"\\n}","type":"json"}]', - 'title' => '恢复实例的流量', - ], - 'SuspendTraffic' => [ - 'summary' => '将实例上来自 CLB 应用访问、NLB 应用访问、CLB 网关路由、ALB 网关路由、K8S Service 上的流量摘除', - 'path' => '/pop/v1/sam/app/instanceTrafficSuspend', - 'methods' => [ - 'put', + [ + 'apiName' => 'ListWebCustomDomains', + 'description' => '获取自定义域名列表', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'sae:ListWebCustomDomains', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => 'Namespace', 'arn' => 'acs:sae:{#regionId}:{#accountId}:namespace/{#NamespaceId}'], + ], + ], ], - 'schemes' => [ - 'https', + [ + 'apiName' => 'DescribeApplicationMseService', + 'description' => '查询关联的MSE微服务治理应用', + 'operationType' => '', + 'ramAction' => [ + 'action' => 'sae:DescribeApplicationMseService', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], ], - 'security' => [ - [ - 'AK' => [], + [ + 'apiName' => 'CreateWebApplication', + 'description' => '创建Web应用', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'sae:CreateWebApplication', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], - 'operationType' => 'readAndWrite', - 'deprecated' => false, - 'systemTags' => [ + [ + 'apiName' => 'GetScaleAppMetric', + 'description' => 'GetScaleAppMetric', 'operationType' => 'none', - 'abilityTreeCode' => '289034', - 'abilityTreeNodes' => [ - 'FEATUREsaeRVPNSA', + 'ramAction' => [ + 'action' => 'sae:GetScaleAppMetric', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], - 'parameters' => [ - [ - 'name' => 'AppId', - 'in' => 'query', - 'schema' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'd700e680-aa4d-4ec1-afc2-6566b5ff****', + [ + 'apiName' => 'DescribeConfigurationPrice', + 'description' => '查询配置价格信息', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'sae:DescribeConfigurationPrice', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'InstanceIds', - 'in' => 'query', - 'schema' => [ - 'description' => '实例ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'c-668727a8-17d86664-41e5bb******,c-668727a8-17d86664-7e4958******', + ], + [ + 'apiName' => 'BatchStopApplications', + 'description' => '批量停止应用', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'sae:BatchStopApplications', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], - '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' => 'B4D805CA-926D-41B1-8E63-7AD0C1ED****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:'."\n" - ."\n" - .'- 请求正常,返回**success**。'."\n" - .'- 请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链id。', - 'type' => 'string', - 'example' => '0a98a02315955564772843261e****', - ], - 'Data' => [ - 'description' => '返回结果。', - 'type' => 'object', - 'properties' => [ - 'msg' => [ - 'description' => '请求 code 对应的详细描述信息。', - 'type' => 'string', - 'example' => 'success', - ], - 'success' => [ - 'description' => '流量是否摘除成功:'."\n" - ."\n" - .'- **true**:摘除成功。'."\n" - .'- **false**:摘除失败。', - 'type' => 'boolean', - 'example' => 'True', - ], - ], - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:请求成功:不返回ErrorCode字段。请求失败:返回ErrorCode字段。具体信息,请参见本文的错误码列表。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:'."\n" - ."\n" - .'- **2xx**:成功。'."\n" - .'- **3xx**:重定向。'."\n" - .'- **4xx**:请求错误。'."\n" - .'- **5xx**:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '流量摘除是否成功。取值说明如下:true:摘除成功。false:摘除失败。', - 'type' => 'string', - 'example' => 'true', - ], - ], + [ + 'apiName' => 'DescribeEdasContainers', + 'description' => '获取应用微服务容器组件列表', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:DescribeEdasContainers', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"B4D805CA-926D-41B1-8E63-7AD0C1ED****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a98a02315955564772843261e****\\",\\n \\"Data\\": {\\n \\"msg\\": \\"success\\",\\n \\"success\\": true\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": \\"true\\"\\n}","type":"json"}]', - 'title' => '将流量从实例摘除', - ], - 'ListApplicationCenterServiceInstances' => [ - 'summary' => '查询服务实例列表。', - 'path' => '/pop/cas/v5/app/listApplicationCenterServiceInstances', - 'methods' => [ - 'get', + [ + 'apiName' => 'DeleteWebApplication', + 'description' => '删除Web应用', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'sae:DeleteWebApplication', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], ], - 'schemes' => [ - 'https', + [ + 'apiName' => 'DeleteApplicationScalingRule', + 'description' => 'DeleteApplicationScalingRule', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'sae:DeleteApplicationScalingRule', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], ], - 'security' => [ - [ - 'AK' => [], + [ + 'apiName' => 'ListAppServicesPage', + 'description' => 'ListAppServicesPage', + 'operationType' => '', + 'ramAction' => [ + 'action' => 'sae:ListAppServicesPage', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], - 'operationType' => 'read', - 'deprecated' => false, - 'systemTags' => [ + [ + 'apiName' => 'ListAppVersions', + 'description' => '查看应用的历史版本', 'operationType' => 'get', - 'abilityTreeCode' => '290708', - 'abilityTreeNodes' => [ - 'FEATUREsaeRVPNSA', + 'ramAction' => [ + 'action' => 'sae:ListAppVersions', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], - 'parameters' => [ - [ - 'name' => 'NamespaceId', - 'in' => 'query', - 'schema' => [ - 'description' => '命名空间ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-beijing:test', + [ + 'apiName' => 'PublishWebApplicationRevision', + 'description' => '发布Web应用版本', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'sae:PublishWebApplicationRevision', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'RegionId', - 'in' => 'query', - 'schema' => [ - 'description' => '地域ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-beijing', + ], + [ + 'apiName' => 'ListConsumedServices', + 'description' => '获取订阅的微服务列表', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'sae:ListConsumedServices', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], - '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' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:请求正常,返回success。请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'success', - ], - 'TraceId' => [ - 'description' => '调用链id。', - 'type' => 'string', - 'example' => '0a981dd515966966104121683d****', - ], - 'Data' => [ - 'description' => '返回结果。', - 'type' => 'object', - 'properties' => [ - 'ServiceInstances' => [ - 'description' => '服务实例列表。', - 'type' => 'array', - 'items' => [ - 'description' => '服务实例。', - 'type' => 'object', - 'properties' => [ - 'ServiceInstanceId' => [ - 'description' => '服务实例ID。', - 'type' => 'string', - 'example' => 'si-2063aea4b23b4781a26b', - ], - 'Name' => [ - 'description' => '实例名称。', - 'type' => 'string', - 'example' => 'tftestacc54', - ], - 'TemplateName' => [ - 'description' => '模板名称。', - 'type' => 'string', - 'example' => 'Dify HA', - ], - 'CreateTime' => [ - 'description' => '创建时间。', - 'type' => 'string', - 'example' => '2025-10-28T02:18:51Z', - ], - 'ServiceName' => [ - 'description' => '服务名称。', - 'type' => 'string', - 'example' => 'user-service', - ], - ], - ], - ], - ], - ], - 'ErrorCode' => [ - 'description' => '错误码。取值说明如下:请求成功:不返回ErrorCode字段。请求失败:返回ErrorCode字段。具体信息,请参见本文的错误码目录。', - 'type' => 'string', - 'example' => '空', - ], - 'Code' => [ - 'description' => '接口状态或POP错误码。取值说明如下:2xx:成功。3xx:重定向。4xx:请求错误。5xx:服务器错误。', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => '是否成功。', - 'type' => 'boolean', - 'example' => 'true', - ], - ], + [ + 'apiName' => 'ListWebApplicationInstances', + 'description' => '查看Web应用实例列表', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'sae:ListWebApplicationInstances', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'SAE', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"91F93257-7A4A-4BD3-9A7E-2F6EAE6D****\\",\\n \\"Message\\": \\"success\\",\\n \\"TraceId\\": \\"0a981dd515966966104121683d****\\",\\n \\"Data\\": {\\n \\"ServiceInstances\\": [\\n {\\n \\"ServiceInstanceId\\": \\"si-2063aea4b23b4781a26b\\",\\n \\"Name\\": \\"tftestacc54\\",\\n \\"TemplateName\\": \\"Dify HA\\",\\n \\"CreateTime\\": \\"2025-10-28T02:18:51Z\\",\\n \\"ServiceName\\": \\"user-service\\"\\n }\\n ]\\n },\\n \\"ErrorCode\\": \\"空\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => '查询应用中心服务实例列表', - ], - ], - 'endpoints' => [ - [ - 'regionId' => 'cn-beijing', - 'endpoint' => 'sae.cn-beijing.aliyuncs.com', - ], - [ - 'regionId' => 'cn-zhangjiakou', - 'endpoint' => 'sae.cn-zhangjiakou.aliyuncs.com', - ], - [ - 'regionId' => 'cn-wulanchabu', - 'endpoint' => 'sae.cn-wulanchabu.aliyuncs.com', - ], - [ - 'regionId' => 'cn-hangzhou', - 'endpoint' => 'sae.cn-hangzhou.aliyuncs.com', - ], - [ - 'regionId' => 'cn-shanghai', - 'endpoint' => 'sae.cn-shanghai.aliyuncs.com', - ], - [ - 'regionId' => 'cn-shenzhen', - 'endpoint' => 'sae.cn-shenzhen.aliyuncs.com', - ], - [ - 'regionId' => 'cn-heyuan', - 'endpoint' => 'sae.cn-heyuan.aliyuncs.com', - ], - [ - 'regionId' => 'cn-guangzhou', - 'endpoint' => 'sae.cn-guangzhou.aliyuncs.com', - ], - [ - 'regionId' => 'cn-chengdu', - 'endpoint' => 'sae.cn-chengdu.aliyuncs.com', - ], - [ - 'regionId' => 'cn-hongkong', - 'endpoint' => 'sae.cn-hongkong.aliyuncs.com', - ], - [ - 'regionId' => 'ap-northeast-1', - 'endpoint' => 'sae.ap-northeast-1.aliyuncs.com', - ], - [ - 'regionId' => 'ap-southeast-1', - 'endpoint' => 'sae.ap-southeast-1.aliyuncs.com', ], - [ - 'regionId' => 'us-east-1', - 'endpoint' => 'sae.us-east-1.aliyuncs.com', - ], - [ - 'regionId' => 'us-west-1', - 'endpoint' => 'sae.us-west-1.aliyuncs.com', - ], - [ - 'regionId' => 'eu-central-1', - 'endpoint' => 'sae.eu-central-1.aliyuncs.com', + 'resourceTypes' => [ + ['validationType' => 'always', 'resourceType' => 'Application', 'arn' => 'acs:sae:{#regionId}:{#accountId}:application/{#ApplicationId}'], + ['validationType' => 'always', 'resourceType' => 'Namespace', 'arn' => 'acs:sae:{#regionId}:{#accountId}:namespace/{#NamespaceId}'], + ['validationType' => 'always', 'resourceType' => 'Namespace', 'arn' => 'acs:sae:{#regionId}:{#accountId}:*'], + ['validationType' => 'always', 'resourceType' => 'Application', 'arn' => 'acs:sae:{#regionId}:{#accountId}:application/{#namespaceid}/{#appid}'], ], ], ]; |
