diff options
| author | Zhineng Li <[email protected]> | 2026-02-13 10:54:11 +0800 |
|---|---|---|
| committer | Zhineng Li <[email protected]> | 2026-02-13 10:54:11 +0800 |
| commit | 7347bac4ab7e136157fc94777e6cf87ef9e08599 (patch) | |
| tree | 0dec367dac6e152161a6f7cc0dba6ebbef1f34a2 /data/zh_cn/sae/2019-05-06/api-docs.php | |
| download | acs-metadata-full-main.tar.gz acs-metadata-full-main.zip | |
first commitHEADv1.0.0+20260212main
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 | 41819 |
1 files changed, 41819 insertions, 0 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 new file mode 100644 index 0000000..5c96cc9 --- /dev/null +++ b/data/zh_cn/sae/2019-05-06/api-docs.php @@ -0,0 +1,41819 @@ +<?php return [ + 'version' => '1.0', + 'info' => [ + 'style' => 'ROA', + 'product' => 'sae', + 'version' => '2019-05-06', + ], + 'directories' => [ + [ + 'id' => 194111, + 'title' => '服务开通', + 'type' => 'directory', + 'children' => [ + 'OpenSaeService', + ], + ], + [ + 'id' => 194101, + 'title' => '服务通用管理', + 'type' => 'directory', + 'children' => [ + [ + 'id' => 121181, + 'title' => '命名空间和VPC', + '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' => 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' => '微服务列表', + 'type' => 'directory', + 'children' => [ + 'ListConsumedServices', + 'ListPublishedServices', + 'ListAppServices', + ], + ], + [ + 'id' => 194113, + 'title' => '保密字典管理', + 'type' => 'directory', + 'children' => [ + 'CreateSecret', + 'DescribeSecret', + 'ListSecrets', + 'UpdateSecret', + 'DeleteSecret', + ], + ], + [ + 'id' => 121239, + 'title' => '标签管理', + 'type' => 'directory', + 'children' => [ + 'ListTagResources', + 'UntagResources', + 'TagResources', + ], + ], + [ + 'id' => 194102, + 'title' => '配置项管理', + 'type' => 'directory', + 'children' => [ + 'CreateConfigMap', + 'DeleteConfigMap', + 'UpdateConfigMap', + 'DescribeConfigMap', + 'ListNamespacedConfigMaps', + ], + ], + [ + 'id' => 121168, + 'title' => '灰度标签路由', + 'type' => 'directory', + 'children' => [ + 'CreateGreyTagRoute', + 'DeleteGreyTagRoute', + 'UpdateGreyTagRoute', + 'DescribeGreyTagRoute', + 'ListGreyTagRoute', + ], + ], + [ + 'id' => 207429, + 'title' => '全链路灰度', + 'type' => 'directory', + 'children' => [ + 'CreateOrUpdateSwimmingLaneGroup', + 'CreateOrUpdateSwimmingLane', + 'ListApplicationsForSwimmingLane', + 'ListSwimmingLaneGatewayRoutes', + 'ListSwimmingLaneGroupTags', + 'DescribeSwimmingLane', + 'ListAllSwimmingLanes', + 'ListAllSwimmingLaneGroups', + 'DeleteSwimmingLaneGroup', + 'UpdateSwimmingLaneEnableAttribute', + ], + ], + [ + 'id' => 121198, + 'title' => '应用信息查询', + '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' => 121174, + 'title' => '应用伸缩规则', + 'type' => 'directory', + 'children' => [ + 'CreateApplicationScalingRule', + 'DeleteApplicationScalingRule', + 'DisableApplicationScalingRule', + 'EnableApplicationScalingRule', + 'UpdateApplicationScalingRule', + 'DescribeApplicationScalingRule', + 'DescribeApplicationScalingRules', + ], + ], + ], + ], + [ + 'id' => 194093, + 'title' => 'Web应用', + 'type' => 'directory', + 'children' => [ + [ + 'id' => 194094, + 'title' => '应用管控', + 'type' => 'directory', + 'children' => [ + 'CreateWebApplication', + 'DescribeWebApplication', + 'ListWebApplications', + 'UpdateWebApplication', + 'DeleteWebApplication', + ], + ], + [ + 'id' => 194095, + 'title' => '应用运维', + 'type' => 'directory', + 'children' => [ + 'UpdateWebApplicationScalingConfig', + 'DescribeWebApplicationScalingConfig', + 'StopWebApplication', + 'StartWebApplication', + ], + ], + [ + 'id' => 194096, + 'title' => '流量管理', + 'type' => 'directory', + 'children' => [ + 'UpdateWebApplicationTrafficConfig', + 'DescribeWebApplicationTrafficConfig', + ], + ], + [ + 'id' => 194097, + 'title' => '版本管理', + 'type' => 'directory', + 'children' => [ + 'PublishWebApplicationRevision', + 'ListWebApplicationRevisions', + 'DescribeWebApplicationRevision', + 'DeleteWebApplicationRevision', + ], + ], + [ + 'id' => 194098, + 'title' => '自定义域名', + 'type' => 'directory', + 'children' => [ + 'CreateWebCustomDomain', + 'DescribeWebCustomDomain', + 'ListWebCustomDomains', + 'UpdateWebCustomDomain', + 'DeleteWebCustomDomain', + ], + ], + [ + 'id' => 194099, + 'title' => '可观测', + 'type' => 'directory', + 'children' => [ + 'ListWebApplicationInstances', + 'DescribeWebInstanceLogs', + 'DescribeWebApplicationResourceStatics', + ], + ], + ], + ], + [ + 'id' => 194100, + 'title' => 'Job任务', + 'type' => 'directory', + 'children' => [ + 'CreateJob', + 'DeleteHistoryJob', + 'DeleteJob', + 'DescribeJobStatus', + 'DescribeJob', + 'ExecJob', + 'ListJobs', + 'SuspendJob', + 'UpdateJob', + 'DescribeJobHistory', + ], + ], + [ + 'id' => 179283, + 'title' => '其他', + 'type' => 'directory', + 'children' => [ + 'DescribeConfigurationPrice', + 'GetWebshellToken', + 'UpdateAppMode', + 'QueryArmsEnable', + 'DescribeApplicationMseService', + 'BatchRestartApplications', + 'UpdateNamespaceSlsConfigs', + 'DisableArms', + 'ResumeTraffic', + 'SuspendTraffic', + 'ListApplicationCenterServiceInstances', + ], + ], + ], + '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' => '容器的详细配置参数。', + 'type' => 'object', + 'properties' => [ + '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', + ], + ], + ], + 'ContainerResources' => [ + 'title' => 'TODO', + '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', + ], + ], + ], + 'CreateWebApplicationInput' => [ + 'title' => 'TODO', + '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', + ], + ], + ], + 'CreateWebCustomDomainInput' => [ + 'title' => '创建自定义域名的请求参数', + '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, + ], + ], + ], + 'DescribeInstanceLogsOutput' => [ + 'title' => '应用实例日志信息', + 'description' => '应用实例日志信息。', + 'type' => 'object', + 'properties' => [ + 'WebLogEntrys' => [ + 'title' => 'TODO', + 'description' => '日志中的记录条目 。', + 'type' => 'array', + 'items' => [ + 'description' => '日志详细信息。', + '$ref' => '#/components/schemas/WebLogEntry', + ], + 'required' => false, + ], + ], + ], + 'DescribeWebAppStaticsOutput' => [ + 'title' => '应用资源用量统计信息', + 'description' => '应用资源用量统计信息。', + 'type' => 'object', + 'properties' => [ + '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', + ], + 'required' => false, + ], + ], + ], + 'DescribeWebStaticsQueryOutput' => [ + 'title' => '应用资源用量统计信息', + 'description' => '应用资源用量统计信息。', + 'type' => 'object', + 'properties' => [ + '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', + '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' => [ + 'title' => 'TODO', + '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', + ], + 'HttpHeaders' => [ + 'title' => 'Custom headers to set in the request. HTTP allows repeated headers.', + 'description' => '要在请求中设置的自定义头信息。HTTP允许重复标头。', + 'type' => 'array', + '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', + ], + ], + ], + 'HTTPHeader' => [ + 'title' => 'TODO', + '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', + ], + ], + ], + 'ImageRegistryConfig' => [ + 'title' => 'A short description of struct', + 'description' => '镜像仓库的配置信息。', + 'type' => 'object', + 'properties' => [ + 'AuthConfig' => [ + 'title' => '镜像仓库认证配置', + 'description' => '镜像仓库认证配置', + '$ref' => '#/components/schemas/RegistryAuthenticationConfig', + ], + 'CertConfig' => [ + 'title' => '镜像仓库证书配置', + 'description' => '镜像仓库证书配置', + '$ref' => '#/components/schemas/RegistryCertificateConfig', + ], + ], + ], + 'InitContainerConfig' => [ + 'title' => '初始化容器配置', + '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', + ], + ], + ], + 'ListWebApplicationInstancesBody' => [ + 'title' => '获取应用实例列表的响应信息', + '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', + ], + ], + ], + 'ListWebApplicationRevisionsBody' => [ + 'title' => 'TODO', + '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', + ], + ], + ], + 'ListWebApplicationRevisionsOutput' => [ + 'title' => 'TODO', + 'description' => '返回信息。', + 'type' => 'object', + 'properties' => [ + 'NextToken' => [ + 'title' => '当符合查询条件的数据未读取完时,服务端会返回nextToken,此时可以使用nextToken继续读取后面的数据。第一次查询不需要提供这个参数。', + 'description' => '当符合查询条件的数据未读取完时,服务端会返回nextToken,此时可以使用nextToken继续读取后面的数据。第一次查询不需要提供这个参数。', + 'type' => 'string', + 'required' => false, + 'example' => '1', + ], + 'Revisions' => [ + 'title' => '版本列表', + 'description' => '版本列表。', + 'type' => 'array', + 'items' => [ + 'description' => '版本集合。', + '$ref' => '#/components/schemas/Revision', + ], + 'required' => false, + ], + ], + ], + 'ListWebApplicationsBody' => [ + 'title' => 'TODO', + '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', + ], + ], + ], + 'ListWebApplicationsOutput' => [ + 'title' => 'TODO', + 'description' => '返回信息。', + 'type' => 'object', + 'properties' => [ + 'NextToken' => [ + 'title' => '当符合查询条件的数据未读取完时,服务端会返回nextToken,此时可以使用nextToken继续读取后面的数据。第一次查询不需要提供这个参数。', + 'description' => '分页起始标记。', + 'type' => 'string', + 'required' => false, + 'example' => 'A2RN', + ], + 'WebApplicationWithInstanceCount' => [ + 'title' => '应用列表', + 'description' => '应用列表。', + 'type' => 'array', + 'items' => [ + 'description' => 'IP ACL.', + '$ref' => '#/components/schemas/WebApplicationWithInstanceCount', + ], + 'required' => false, + ], + ], + ], + 'ListWebCustomDomainBody' => [ + 'title' => 'TODO', + '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', + ], + ], + ], + 'ListWebCustomDomainOutput' => [ + 'title' => 'TODO', + 'description' => '返回信息。', + 'type' => 'object', + 'properties' => [ + 'NextToken' => [ + 'title' => '当符合查询条件的数据未读取完时,服务端会返回nextToken,此时可以使用nextToken继续读取后面的数据。第一次查询不需要提供这个参数。', + 'description' => '当符合查询条件的数据未读取完时,服务端会返回nextToken,此时可以使用nextToken继续读取后面的数据。第一次查询不需要提供这个参数。', + 'type' => 'string', + 'required' => false, + 'example' => 'A2RN', + ], + 'WebCustomDomains' => [ + 'title' => '自定义域名列表', + 'description' => '自定义域名列表。', + 'type' => 'array', + 'items' => [ + 'description' => '自定义域名信息。', + '$ref' => '#/components/schemas/WebCustomDomain', + ], + 'required' => false, + ], + ], + ], + 'ListWebInstancesOutput' => [ + 'title' => '应用实例信息', + 'description' => '应用实例信息。', + 'type' => 'object', + 'properties' => [ + 'WebInstances' => [ + 'title' => '应用实例', + 'description' => '应用实例。', + 'type' => 'array', + 'items' => [ + 'description' => '实例详情。', + '$ref' => '#/components/schemas/WebInstanceInfo', + ], + 'required' => false, + ], + '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', + ], + ], + ], + 'MetricsCollectConfig' => [ + 'title' => 'TODO', + '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, + ], + ], + ], + 'PathConfig' => [ + 'title' => 'A short description of struct', + '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', + ], + ], + ], + 'PermissionAssistantApi' => [ + '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', + ], + ], + ], + 'PipelineStatus' => [ + 'title' => 'pipeline状态', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2', + ], + 'PolicyItem' => [ + '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', + ], + ], + ], + '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', + ], + 'CpuUtilMetrics' => [ + 'title' => 'CPU利用率监控指标', + 'type' => 'array', + 'items' => [ + 'type' => 'number', + 'format' => 'float', + 'example' => '30', + ], + ], + 'AppCount' => [ + 'title' => '应用数量', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + ], + '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, + ], + ], + ], + ], + ], + '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, + ], + ], + ], + 'PublishWebApplicationRevisionInput' => [ + 'title' => 'TODO', + 'description' => '返回信息。', + 'type' => 'object', + 'properties' => [ + 'Containers' => [ + 'title' => '修订版本上的容器配置', + 'description' => '修订版本上的容器配置。', + 'type' => 'array', + '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', + ], + ], + ], + 'RegistryAuthenticationConfig' => [ + 'title' => 'A short description of struct', + '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', + ], + ], + ], + 'RegistryCertificateConfig' => [ + 'title' => 'A short description of struct', + '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', + ], + ], + ], + 'Revision' => [ + 'title' => 'TODO', + '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', + ], + ], + ], + 'RevisionConfig' => [ + 'title' => 'TODO', + 'description' => '应用修订版本上的配置。', + 'type' => 'object', + 'properties' => [ + 'Containers' => [ + 'title' => '容器配置,目前一个应用只支持一个容器,数组的长度最大为1', + 'description' => '容器配置,目前一个应用只支持一个容器,数组的长度最大为1。', + 'type' => 'array', + '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', + ], + ], + ], + 'RouteConfig' => [ + 'title' => 'A short description of struct', + 'description' => 'A short description of struct', + 'type' => 'object', + 'properties' => [ + 'routes' => [ + 'title' => 'pathConfig', + 'description' => 'pathConfig', + 'type' => 'array', + 'items' => [ + 'description' => 'PathConfig', + '$ref' => '#/components/schemas/PathConfig', + ], + ], + ], + ], + 'RoutePolicy' => [ + 'title' => 'A short description of struct', + 'type' => 'object', + 'properties' => [ + 'condition' => [ + 'title' => 'condition', + 'type' => 'string', + ], + 'policyItems' => [ + 'title' => 'policyItems', + 'type' => 'array', + 'items' => [ + '$ref' => '#/components/schemas/PolicyItem', + ], + ], + ], + ], + 'SLSCollectConfig' => [ + 'title' => 'TODO', + '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', + ], + ], + ], + 'SLSCollectConfigs' => [ + 'title' => 'TODO', + 'description' => '容器日志采集配置信息。', + 'type' => 'object', + 'properties' => [ + 'CollectConfigs' => [ + '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', + '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' => [ + 'title' => 'TODO', + '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', + ], + ], + ], + ], + ], + ], + ], + 'TCPSocketAction' => [ + 'title' => 'TODO', + '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, + ], + ], + ], + 'UpdateWebApplicationInput' => [ + 'title' => 'TODO', + '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', + ], + ], + ], + 'UpdateWebApplicationScalingConfigInput' => [ + 'title' => '更新弹性配置的请求信息', + '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', + ], + ], + ], + 'UpdateWebApplicationTrafficConfigInput' => [ + 'title' => '更新流量配置的请求信息', + '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', + ], + 'RevisionsTrafficWeight' => [ + 'title' => '应用版本流量比例,所有版本流量百分比之和必须等于 100%', + 'description' => '应用版本流量比例,所有版本流量百分比之和必须等于1。', + 'type' => 'object', + 'required' => false, + 'additionalProperties' => [ + 'description' => '版本的流量权重配置。', + 'type' => 'number', + 'format' => 'float', + 'example' => '001:0.5'."\n" + .'002:0.5', + ], + ], + ], + ], + 'UpdateWebCustomDomainInput' => [ + 'title' => 'TODO', + '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, + ], + ], + ], + 'WebAclConfig' => [ + 'title' => 'IP ACL 白名单配置', + 'description' => 'IP ACL。', + 'type' => 'object', + 'properties' => [ + 'WebAclEntries' => [ + 'title' => 'IP 列表', + 'description' => 'IP 列表。', + 'type' => 'array', + 'items' => [ + 'description' => 'ACL配置。', + 'required' => true, + '$ref' => '#/components/schemas/WebAclEntryConfig', + ], + 'required' => true, + ], + ], + ], + 'WebAclEntryConfig' => [ + 'title' => 'IP 白名单列表', + 'description' => 'IP 白名单列表。', + 'type' => 'object', + 'properties' => [ + 'Entry' => [ + 'title' => 'CIDR', + 'description' => 'CIDR。'."\n" + .'> 暂时不支持CIDR。', + 'type' => 'string', + 'required' => true, + 'example' => '219.145.XX.XX', + ], + ], + ], + 'WebApplication' => [ + 'title' => '应用信息', + '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', + ], + ], + ], + 'WebApplicationBody' => [ + 'title' => 'TODO', + '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', + ], + ], + ], + 'WebApplicationInstanceLogsBody' => [ + 'title' => '获取应用实例日志的响应信息', + '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', + ], + ], + ], + 'WebApplicationResourceStaticsBody' => [ + 'title' => '获取应用资源用量统计的响应信息', + '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', + ], + ], + ], + 'WebApplicationRevisionBody' => [ + 'title' => 'TODO', + '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', + ], + ], + ], + 'WebApplicationScalingConfigBody' => [ + 'title' => '获取弹性配置的响应信息', + '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', + ], + ], + ], + 'WebApplicationStatus' => [ + 'title' => 'TODO', + 'description' => '返回信息。', + 'type' => 'object', + 'properties' => [ + 'InstanceCount' => [ + 'title' => '应用实例数', + 'description' => '应用实例数。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '3', + ], + 'WebScalingConfig' => [ + 'title' => '应用弹性伸缩配置', + 'description' => '应用弹性伸缩配置。', + 'required' => false, + '$ref' => '#/components/schemas/WebScalingConfig', + ], + ], + ], + 'WebApplicationTrafficConfigBody' => [ + 'title' => '获取流量配置的响应信息', + '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', + ], + ], + ], + 'WebApplicationWithInstanceCount' => [ + 'title' => 'TODO', + 'description' => '返回信息。', + 'type' => 'object', + 'properties' => [ + 'WebApplication' => [ + 'title' => '应用信息', + 'description' => '应用信息。', + 'required' => false, + '$ref' => '#/components/schemas/WebApplication', + ], + 'InstanceCount' => [ + 'title' => '应用实例数', + 'description' => '应用实例数。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + ], + ], + 'WebApplicationWithStatus' => [ + 'title' => 'TODO', + 'description' => '返回信息。', + 'type' => 'object', + 'properties' => [ + 'WebApplication' => [ + 'title' => '应用详情', + 'description' => '应用详情。', + 'required' => false, + '$ref' => '#/components/schemas/WebApplication', + ], + 'Status' => [ + 'title' => '应用状态', + 'description' => '应用状态。', + 'required' => false, + '$ref' => '#/components/schemas/WebApplicationStatus', + ], + ], + ], + 'WebCertConfig' => [ + 'title' => 'TODO', + '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, + ], + ], + ], + 'WebCustomDomain' => [ + 'title' => '自定义域名信息', + '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', + ], + ], + ], + 'WebCustomDomainBody' => [ + 'title' => 'TODO', + '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', + ], + ], + ], + 'WebInstanceInfo' => [ + 'title' => 'TODO', + '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', + ], + ], + ], + 'WebLogEntry' => [ + 'title' => 'TODO', + 'description' => '返回信息。', + 'type' => 'object', + 'properties' => [ + 'Message' => [ + 'title' => 'TODO', + 'description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回success。'."\n" + .'- 请求异常,返回具体异常错误码。', + 'type' => 'string', + 'required' => false, + 'example' => 'success', + ], + ], + ], + 'WebNASConfig' => [ + 'description' => '容器NAS配置。', + 'type' => 'object', + 'properties' => [ + 'MountPoints' => [ + 'title' => 'mountPoints', + 'description' => '挂载点。', + 'type' => 'array', + 'items' => [ + 'description' => '挂载点信息集合。', + 'required' => false, + '$ref' => '#/components/schemas/WebNASMountPoint', + ], + 'required' => false, + 'maxItems' => 5, + ], + ], + ], + 'WebNASMountPoint' => [ + 'title' => 'Nas存储配置', + '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' => '/', + ], + ], + ], + 'WebNetworkConfig' => [ + 'title' => '网络配置', + '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, + ], + 'VSwitchIds' => [ + 'title' => '交换机列表', + 'description' => '交换机列表。', + 'type' => 'array', + 'items' => [ + 'description' => '交换机ID列表。', + 'type' => 'string', + 'example' => 'vsw-bp1ozpcrdc6r****', + ], + 'required' => false, + 'maxItems' => 10, + ], + ], + ], + 'WebOSSConfig' => [ + 'title' => 'TODO', + 'description' => '容器 OSS 挂载配置。', + 'type' => 'object', + 'properties' => [ + 'MountPoints' => [ + 'title' => 'TODO', + 'description' => '挂载点。', + 'type' => 'array', + 'items' => [ + 'description' => '挂载点信息集合。', + 'required' => false, + '$ref' => '#/components/schemas/WebOSSMountPoint', + ], + 'required' => false, + 'maxItems' => 5, + ], + ], + ], + 'WebOSSMountPoint' => [ + 'title' => 'TODO', + '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', + ], + ], + ], + 'WebScalingConfig' => [ + 'title' => '弹性配置信息', + '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', + ], + ], + ], + 'WebStaticsInfo' => [ + 'title' => 'TODO', + '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', + ], + ], + ], + 'WebTLSConfig' => [ + 'title' => 'TODO', + 'description' => 'TLS配置信息。', + 'type' => 'object', + 'properties' => [ + 'CipherSuites' => [ + 'title' => 'TODO', + 'description' => '服务器支持的加密套件列表。', + 'type' => 'array', + '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', + ], + ], + ], + 'WebTrafficConfig' => [ + 'title' => '流量配置信息', + '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', + ], + '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', + ], + ], + ], + ], + 'WebVersionStatus' => [ + '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', + ], + ], + ], + 'WebWAFConfig' => [ + 'title' => 'TODO', + 'description' => '返回信息。', + 'type' => 'object', + 'properties' => [ + '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', + ], + 'security' => [ + [ + 'AK' => [], + ], + [ + 'APP' => [], + ], + [ + 'PrivateKey' => [], + ], + [ + 'BearerToken' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'abilityTreeCode' => '20152', + 'abilityTreeNodes' => [ + 'FEATUREsaeD9PL61', + ], + ], + 'parameters' => [], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '559B4247-C41C-4D9E-B866-B55D378B****', + ], + 'OrderId' => [ + 'description' => '订单ID。', + 'type' => 'string', + 'example' => '20485646575****', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'ORDER.OPEND', + 'errorMessage' => 'order opend.', + ], + [ + 'errorCode' => 'Pay.Insufficient.Balance', + 'errorMessage' => 'pay insufficient balance', + ], + ], + ], + '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', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'abilityTreeCode' => '6307', + 'abilityTreeNodes' => [ + 'FEATUREsaeD9PL61', + ], + ], + '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', + 'in' => 'query', + 'schema' => [ + 'description' => '短版命名空间ID,不需要带上region,推荐;不超过20个字符,仅允许小写英文字母和数字。'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'test', + ], + ], + [ + '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' => '返回数据。', + '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', + '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' => '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.', + ], + ], + 500 => [ + [ + 'errorCode' => 'OperationFailed.DauthHttpRequest', + 'errorMessage' => 'request dauth failed.', + ], + ], + ], + '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', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'abilityTreeCode' => '6306', + 'abilityTreeNodes' => [ + 'FEATUREsaeBRTWZ3', + ], + ], + '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', + ], + ], + [ + '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', + 'in' => 'query', + 'schema' => [ + 'type' => 'boolean', + 'required' => false, + ], + ], + [ + 'name' => 'EnableXForwardedForSlbId', + 'in' => 'query', + 'schema' => [ + 'type' => 'boolean', + 'required' => false, + ], + ], + [ + 'name' => 'EnableXForwardedForSlbPort', + 'in' => 'query', + 'schema' => [ + 'type' => 'boolean', + 'required' => false, + ], + ], + [ + 'name' => 'AddressType', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'LoadBalancerEdition', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'ZoneMappings', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'CorsConfig', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'EnableGzip', + 'in' => 'query', + 'schema' => [ + 'type' => 'boolean', + 'required' => false, + ], + ], + ], + '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' => '创建路由规则是否成功。取值说明如下:'."\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.', + ], + ], + 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 \\"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', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'abilityTreeCode' => '6314', + 'abilityTreeNodes' => [ + 'FEATUREsaeD9PL61', + ], + ], + 'parameters' => [ + [ + 'name' => 'NamespaceId', + 'in' => 'query', + 'schema' => [ + 'description' => '长版命名空间ID。如果设置了该参数会继续生效而忽略NameSpaceShortId,该参数是为了兼容保留,推荐使用短版命名空间ID,简化参数。', + 'type' => 'string', + 'required' => false, + 'example' => 'cn-beijing: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' => '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', + ], + ], + ], + ], + ], + '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.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidNamespaceId.NotFound', + 'errorMessage' => 'The specified NamespaceId does not exist.', + ], + ], + 500 => [ + [ + 'errorCode' => 'OperationFailed.DauthHttpRequest', + 'errorMessage' => 'request dauth failed.', + ], + ], + ], + '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', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'abilityTreeCode' => '6313', + 'abilityTreeNodes' => [ + 'FEATUREsaeD9PL61', + ], + ], + 'parameters' => [ + [ + 'name' => 'IngressId', + 'in' => 'query', + 'schema' => [ + 'description' => '需要删除的路由规则ID。通过调用[ListIngresses](~~153934~~)接口获取。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '87', + ], + ], + ], + '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' => [ + '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', + ], + ], + ], + ], + ], + '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.', + ], + ], + ], + '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', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '6403', + 'abilityTreeNodes' => [ + 'FEATUREsaeD9PL61', + ], + ], + 'parameters' => [ + [ + 'name' => 'NamespaceId', + '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', + ], + ], + [ + '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', + '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' => [ + 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' => [ + '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', + ], + ], + ], + ], + ], + '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.', + ], + ], + 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\\": \\"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', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '6404', + 'abilityTreeNodes' => [ + 'FEATUREsaeD9PL61', + ], + ], + 'parameters' => [ + [ + 'name' => 'NamespaceId', + 'in' => 'query', + 'schema' => [ + 'description' => '长版命名空间ID。如果设置了该参数会继续生效而忽略NameSpaceShortId,该参数是为了兼容保留,推荐使用短版命名空间ID,简化参数。', + 'type' => 'string', + 'required' => false, + 'example' => 'cn-beijing:test', + ], + ], + [ + 'name' => 'VpcId', + 'in' => 'query', + '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' => [ + 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' => '更新VPC信息是否成功。取值说明如下:'."\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.', + ], + ], + ], + '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', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '6398', + 'abilityTreeNodes' => [ + 'FEATUREsaeRVPNSA', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + 'schema' => [ + 'description' => '应用ID。', + 'type' => 'string', + 'required' => true, + 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****', + ], + ], + [ + 'name' => 'VSwitchId', + 'in' => 'query', + 'schema' => [ + 'description' => '交换机ID。', + 'type' => 'string', + 'required' => true, + 'example' => 'vsw-2ze559r1z1bpwqxwp****', + ], + ], + [ + 'name' => 'Deploy', + 'in' => 'query', + 'schema' => [ + 'description' => '是否立即部署。取值说明如下:'."\n" + ."\n" + .'- **true**:默认值,立即部署。'."\n" + .'- **false**:稍后部署。', + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'MinReadyInstances', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + ], + ], + [ + 'name' => 'MinReadyInstanceRatio', + 'in' => 'query', + 'schema' => [ + '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' => '附加信息。取值说明如下:'."\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', + ], + ], + ], + ], + ], + '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', + ], + ], + ], + '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' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '6401', + 'abilityTreeNodes' => [ + 'FEATUREsaeBRTWZ3', + ], + ], + 'parameters' => [ + [ + 'name' => 'IngressId', + 'in' => 'query', + 'schema' => [ + 'description' => '路由规则ID。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '87', + ], + ], + [ + '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' => 'Description', + 'in' => 'query', + 'schema' => [ + 'description' => '路由规则名称。', + 'type' => 'string', + 'required' => false, + 'example' => 'ingress-sae-test', + ], + ], + [ + 'name' => 'ListenerPort', + 'in' => 'query', + 'schema' => [ + 'description' => 'SLB监听端口,该端口不能被占用。', + 'type' => 'string', + 'required' => false, + 'example' => '443', + ], + ], + [ + 'name' => 'DefaultRule', + '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}', + ], + ], + [ + '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' => 'LoadBalanceType', + 'in' => 'query', + 'schema' => [ + 'description' => '废弃参数,已不支持更新。', + 'type' => 'string', + 'required' => false, + 'example' => 'clb', + ], + ], + [ + 'name' => 'ListenerProtocol', + 'in' => 'query', + 'schema' => [ + 'description' => '请求转发协议。取值说明如下:'."\n" + ."\n" + .'- **HTTP**:适用于需要对数据内容进行识别的应用。'."\n" + .'- **HTTPS**:适用于需要加密传输的应用。', + 'type' => 'string', + 'required' => false, + 'example' => 'HTTP', + ], + ], + [ + 'name' => 'RequestTimeout', + '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', + ], + ], + [ + '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', + ], + ], + [ + 'name' => 'IdleTimeout', + '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', + ], + ], + [ + 'name' => 'EnableXForwardedFor', + 'in' => 'query', + 'schema' => [ + 'type' => 'boolean', + 'required' => false, + ], + ], + [ + 'name' => 'EnableXForwardedForClientSrcPort', + 'in' => 'query', + 'schema' => [ + 'type' => 'boolean', + 'required' => false, + ], + ], + [ + 'name' => 'EnableXForwardedForProto', + 'in' => 'query', + 'schema' => [ + 'type' => 'boolean', + 'required' => false, + ], + ], + [ + 'name' => 'EnableXForwardedForSlbId', + 'in' => 'query', + 'schema' => [ + 'type' => 'boolean', + 'required' => false, + ], + ], + [ + 'name' => 'EnableXForwardedForSlbPort', + 'in' => 'query', + 'schema' => [ + 'type' => 'boolean', + 'required' => false, + ], + ], + [ + 'name' => 'CorsConfig', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'EnableGzip', + 'in' => 'query', + 'schema' => [ + 'type' => 'boolean', + 'required' => false, + ], + ], + ], + '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', + ], + ], + ], + ], + ], + '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.', + ], + ], + ], + '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' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '6338', + 'abilityTreeNodes' => [ + 'FEATUREsaeD9PL61', + ], + ], + 'parameters' => [ + [ + 'name' => 'NamespaceId', + 'in' => 'query', + 'schema' => [ + 'description' => '命名空间ID。默认命名空间不可查询、更改或删除。', + 'type' => 'string', + 'required' => false, + 'example' => 'cn-beijing:test', + ], + ], + [ + 'name' => 'NameSpaceShortId', + 'in' => 'query', + 'schema' => [ + 'description' => '短版命名空间ID,不需要带上region;不超过20个字符,仅允许小写英文字母和数字。', + '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' => '附加信息。取值说明如下:'."\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', + ], + ], + ], + ], + ], + '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' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '6341', + 'abilityTreeNodes' => [ + 'FEATUREsaeD9PL61', + ], + ], + 'parameters' => [ + [ + 'name' => 'CurrentPage', + 'in' => 'query', + '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' => [ + 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', + ], + ], + ], + ], + ], + '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' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '6339', + 'abilityTreeNodes' => [ + 'FEATUREsaeBRTWZ3', + ], + ], + 'parameters' => [ + [ + 'name' => 'ContainCustom', + 'in' => 'query', + 'schema' => [ + 'description' => '是否返回自定义命名空间。取值说明如下:'."\n" + ."\n" + .'- **true**:返回自定义命名空间。'."\n" + .'- **false**:不返回自定义命名空间。', + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'HybridCloudExclude', + 'in' => 'query', + 'schema' => [ + 'description' => '是否排除混合云命名空间。取值说明如下:'."\n" + ."\n" + .'- **true**:排除混合云命名空间。 '."\n" + .'- **false**:不排除混合云命名空间。', + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + ], + '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', + ], + ], + ], + ], + ], + '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' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '6369', + 'abilityTreeNodes' => [ + 'FEATUREsae5BSSHJ', + ], + ], + 'parameters' => [ + [ + 'name' => 'CurrentPage', + 'in' => 'query', + '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' => [ + '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', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'get.event.error', + 'errorMessage' => 'Failed to obtain event information.', + ], + [ + 'errorCode' => 'InvalidParameter.NotEmpty', + 'errorMessage' => 'You must specify the parameter %s.', + ], + ], + ], + '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' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '75166', + 'abilityTreeNodes' => [ + 'FEATUREsaeD9PL61', + ], + ], + 'parameters' => [ + [ + 'name' => 'NamespaceId', + 'in' => 'query', + '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' => [ + 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' => '[email protected]', + ], + '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', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + '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.', + ], + ], + ], + '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\\": \\"[email protected]\\",\\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>[email protected]</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' => [], + ], + ], + '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' => '附加信息。取值说明如下:'."\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' => '[email protected]', + ], + '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', + ], + ], + ], + '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' => 'InvalidParameter.Obviously', + 'errorMessage' => 'The specified parameter is invalid {%s}.', + ], + ], + ], + '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\\": \\"[email protected]\\",\\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>[email protected]</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', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '6335', + 'abilityTreeNodes' => [ + 'FEATUREsaeRW2OE6', + ], + ], + 'parameters' => [ + [ + 'name' => 'IngressId', + 'in' => 'query', + 'schema' => [ + 'description' => '需要查询的路由规则ID。'."\n" + .'路由规则 ID 请通过[ListIngresses](~~2834910~~)接口获取。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '16263', + ], + ], + ], + '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' => [ + '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' => '转发规则。', + '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\\"}', + ], + ], + ], + ], + ], + ], + ], + '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' => [ + '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', + ], + ], + ], + ], + ], + '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', + ], + ], + ], + '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', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + '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' => false, + 'example' => 'bbf3a590-6d13-46fe-8ca9-c947a20b****', + ], + ], + [ + 'name' => 'CurrentPage', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + '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' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', + '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', + ], + ], + ], + ], + ], + ], + ], + ], + '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', + ], + ], + ], + ], + ], + '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', + ], + ], + ], + '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' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '6343', + 'abilityTreeNodes' => [ + 'FEATUREsaeD9PL61', + ], + ], + 'parameters' => [ + [ + 'name' => 'PipelineId', + 'in' => 'query', + 'schema' => [ + 'description' => '批次ID。通过调用[DescribeChangeOrder](~~126617~~)接口获取。', + 'type' => 'string', + 'required' => true, + 'example' => '917660ba-5092-44ca-b8e0-80012c96****', + ], + ], + ], + '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', + ], + ], + ], + ], + ], + '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', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'abilityTreeCode' => '16756', + 'abilityTreeNodes' => [ + 'FEATUREsaeK7DHH9', + ], + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => '地域ID。', + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'OrderBy', + 'in' => 'query', + 'schema' => [ + 'description' => '排序字段,根据查询返回字段中的某个字段排序。', + 'type' => 'string', + 'required' => true, + 'example' => 'count', + ], + ], + [ + 'name' => 'Limit', + 'in' => 'query', + 'schema' => [ + 'description' => '返回数据条数,取值范围[0,100]。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '10', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '查询起始时间。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1675823135951', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + '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' => [ + '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', + ], + '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', + ], + ], + ], + ], + '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', + ], + ], + ], + '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', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'abilityTreeCode' => '14387', + 'abilityTreeNodes' => [ + 'FEATUREsaeRVPNSA', + ], + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => '地域ID。', + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'CreateTime', + 'in' => 'query', + 'schema' => [ + 'description' => '变更单创建的起始时间。', + 'type' => 'string', + 'required' => true, + 'example' => '1661152748883', + ], + ], + [ + 'name' => 'OrderBy', + 'in' => 'query', + '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' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + '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', + ], + ], + ], + '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', + ], + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => '地域ID。', + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'Limit', + 'in' => 'query', + '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' => [ + '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', + ], + ], + ], + ], + ], + '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', + ], + ], + ], + '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' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'abilityTreeCode' => '14386', + 'abilityTreeNodes' => [ + 'FEATUREsaeD9PL61', + ], + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => '地域ID。'."\n" + ."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + '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' => [ + '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', + ], + 'WarningCount' => [ + 'description' => 'Warning事件数量。', + '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', + ], + ], + ], + ], + ], + '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.', + ], + ], + ], + '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', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'abilityTreeCode' => '6303', + 'abilityTreeNodes' => [ + 'FEATUREsaeRVPNSA', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppName', + 'in' => 'query', + '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' => '应用实例弹性网卡所在的虚拟交换机。该交换机必须位于上述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', + ], + ], + [ + 'name' => 'PackageVersion', + 'in' => 'query', + 'schema' => [ + 'description' => '部署包的版本号。当**Package Type**为**FatJar**、**War**或**PythonZip**时必填。', + 'type' => 'string', + 'required' => false, + 'example' => '1.0.0', + ], + ], + [ + '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', + ], + ], + [ + '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', + ], + ], + [ + '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', + ], + ], + [ + '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', + ], + ], + [ + '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', + ], + ], + [ + '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', + ], + ], + [ + 'name' => 'Replicas', + 'in' => 'query', + 'schema' => [ + 'description' => '初始实例数。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '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"]`。'."\n" + ."\n\n" + .'><notice>当PackageType选择为DotnetZip时,此选项为必填项。></notice>', + '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"]', + ], + ], + [ + '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" + .']', + ], + ], + [ + '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"}]', + ], + ], + [ + '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' => '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', + ], + ], + [ + 'name' => 'EdasContainerVersion', + 'in' => 'query', + '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', + ], + ], + [ + '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"}]', + ], + ], + [ + 'name' => 'NasId', + 'in' => 'query', + 'schema' => [ + 'description' => '不推荐配置该字段,推荐配置**NasConfigs**。挂载的NAS的ID,必须与集群处在同一个地域。它必须有可用的挂载点创建额度,或者其挂载点已经在VPC内的交换机上。如果不填,且存在**mountDescs**字段,则默认将自动购买一个NAS并挂载至VPC内的交换机上。'."\n" + ."\n" + .'部署时如果配置没有变更,则不需要设置该参数(即请求中无需包含**NASId**字段);如果需要清除NAS配置,您需要在请求中将该字段的值设置为空字符串(即请求中**NASId**字段的值为"")。', + 'type' => 'string', + 'required' => false, + 'example' => 'KSAK****', + ], + ], + [ + 'name' => 'MountHost', + 'in' => 'query', + 'schema' => [ + 'description' => '不推荐配置该字段,推荐配置**NasConfigs**。NAS在应用VPC内的挂载点。部署时如果配置没有变更,则不需要设置该参数(即请求中无需包含**MountHost**字段);如果需要清除NAS配置,您需要在请求中将该字段的值设置为空字符串(即请求中**MountHost**字段的值为"")。', + 'type' => 'string', + 'required' => false, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'MountDesc', + 'in' => 'query', + 'schema' => [ + 'description' => '不推荐配置该字段,推荐配置**NasConfigs**。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"]}}', + ], + ], + [ + 'name' => 'PostStart', + 'in' => 'query', + 'schema' => [ + 'description' => '容器启动后执行脚本。在容器被创建后立刻触发执行一段脚本,格式如:`{"exec":{"command":\\["cat","/etc/group"]}}`', + 'type' => 'string', + 'required' => false, + 'example' => '{"exec":{"command":["cat","/etc/group"]}}', + ], + ], + [ + 'name' => 'WarStartOptions', + 'in' => 'query', + '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"}]', + ], + ], + [ + '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手动配置网络环境。'."\n" + ."\n" + .'> 如果选择为**true**,则传其他的**NamespaceId**会被忽略。', + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + [ + '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', + ], + ], + [ + 'name' => 'PhpConfigLocation', + 'in' => 'query', + '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', + ], + ], + [ + '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}', + ], + ], + [ + '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' => '跨账号拉取镜像时所需的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', + ], + ], + [ + 'name' => 'AssociateEip', + 'in' => 'formData', + 'schema' => [ + 'title' => '是否绑定EIP', + 'description' => '是否绑定EIP。取值说明如下:'."\n" + ."\n" + .'- **true**:绑定。'."\n" + .'- **false**:不绑定。', + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + [ + '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', + ], + ], + [ + '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"}]}', + ], + ], + [ + 'name' => 'PvtzDiscoverySvc', + '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"}]}', + ], + ], + [ + 'name' => 'MicroRegistration', + 'in' => 'query', + 'schema' => [ + 'description' => '选择Nacos注册中心,取值说明如下:'."\n" + .'- **0**:SAE内置Nacos。'."\n" + .'- **1**:用户自建Nacos。'."\n" + .'- **2**:MSE商业版Nacos。', + 'type' => 'string', + 'required' => false, + 'example' => '"0"', + ], + ], + [ + 'name' => 'MicroRegistrationConfig', + 'in' => 'formData', + 'schema' => [ + 'title' => '注册中心配置信息', + 'description' => '注册中心配置信息。', + 'type' => 'string', + 'required' => false, + 'example' => '{\\"instanceId\\":\\"mse-cn-zvp2bh6h70r\\",\\"namespace\\":\\"4c0aa74f-57cb-423c-b6af-5d9f2d0e3dbd\\"}', + ], + ], + [ + '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"}]', + ], + ], + [ + 'name' => 'Python', + 'in' => 'query', + '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', + ], + ], + [ + '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', + ], + ], + [ + 'name' => 'EnableEbpf', + 'in' => 'query', + 'schema' => [ + 'description' => '基于eBPF技术,对非Java应用开启应用监控能力。取值说明如下:'."\n" + .'- **true**:开启。'."\n" + .'- **false**:关闭。默认值。', + 'type' => 'string', + 'required' => false, + 'example' => 'false', + ], + ], + [ + 'name' => 'SaeVersion', + 'in' => 'query', + 'schema' => [ + 'description' => 'SAE版本。支持版本如下:'."\n" + ."\n" + .'- **v1**'."\n" + .'- **v2**', + 'type' => 'string', + 'required' => false, + 'example' => 'v1', + 'enum' => [ + 'v1', + 'v2', + ], + ], + ], + [ + 'name' => 'AppSource', + 'in' => 'query', + 'schema' => [ + 'description' => '选择micro_service,即为微服务应用。', + 'type' => 'string', + 'required' => false, + 'example' => 'micro_service', + ], + ], + [ + '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' => '是否启用新的ARMS功能:'."\n" + ."\n" + .'- true:启用'."\n" + .'- false:不启用', + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + ], + [ + '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' => 'array', + '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"}]', + ], + ], + [ + 'name' => 'EnableSidecarResourceIsolated', + 'in' => 'formData', + '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', + ], + ], + [ + 'name' => 'ResourceType', + 'in' => 'query', + 'schema' => [ + 'description' => '资源类型。支持NULL(默认)、default(默认)和haiguang(海光服务器)类型。', + 'type' => 'string', + 'required' => false, + 'example' => 'NULL', + ], + ], + [ + 'name' => 'NewSaeVersion', + 'in' => 'query', + 'schema' => [ + 'description' => '应用版本:'."\n" + ."\n" + .'- lite:轻量版'."\n" + .'- std:标准版'."\n" + .'- pro:专业版', + 'type' => 'string', + 'required' => false, + 'example' => 'pro', + ], + ], + [ + '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}}', + ], + ], + [ + 'name' => 'DiskSize', + 'in' => 'query', + 'schema' => [ + 'description' => '磁盘存储大小(单位GB)。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '50', + ], + ], + [ + 'name' => 'InitContainersConfig', + 'in' => 'formData', + 'style' => 'json', + 'schema' => [ + 'description' => '初始化容器配置。', + 'type' => 'array', + 'items' => [ + 'description' => '初始化容器配置', + 'required' => false, + '$ref' => '#/components/schemas/InitContainerConfig', + ], + 'required' => false, + ], + ], + [ + 'name' => 'GpuConfig', + 'in' => 'query', + 'schema' => [ + 'description' => 'Gpu配置', + 'type' => 'string', + 'required' => false, + 'example' => '{\\n\\"gpuType\\":\\"PPU810E\\",\\n\\"gpuCount\\":\\"1\\"\\n}', + ], + ], + [ + 'name' => 'StartupProbe', + '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}', + ], + ], + [ + 'name' => 'IsStateful', + 'in' => 'query', + 'schema' => [ + 'description' => '是否有状态应用', + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'EnablePrometheus', + 'in' => 'query', + 'schema' => [ + 'description' => '是否开启Prometheus自定义指标采集', + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + ], + [ + '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\\"}', + ], + ], + [ + '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', + ], + ], + [ + 'name' => 'EmptyDirDesc', + 'in' => 'formData', + 'schema' => [ + 'description' => '共享临时存储配置。', + 'type' => 'string', + 'required' => false, + 'example' => '[{\\"name\\":\\"workdir\\",\\"mountPath\\":\\"/usr/local/tomcat/webapps\\"}]', + ], + ], + [ + 'name' => 'AgentVersion', + 'in' => 'query', + 'schema' => [ + 'description' => 'AliyunAgent版本', + 'type' => 'string', + 'required' => false, + 'example' => '4.4.2', + ], + ], + [ + 'name' => 'EnableNamespaceAgentVersion', + 'in' => 'query', + 'schema' => [ + 'description' => '是否复用命名空间Agent版本配置', + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + [ + '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, + 'example' => '[]', + ], + ], + [ + 'name' => 'LokiConfigs', + 'in' => 'query', + 'schema' => [ + 'description' => 'LokiConfigs', + 'type' => 'string', + 'required' => false, + 'example' => '[]', + ], + ], + ], + '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' => '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" + .'- **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' => '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.', + ], + ], + 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.', + ], + ], + ], + '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', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'abilityTreeCode' => '6310', + 'abilityTreeNodes' => [ + 'FEATUREsaeD9PL61', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + '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****', + ], + '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', + ], + ], + ], + ], + ], + '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.', + ], + ], + ], + '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', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'abilityTreeCode' => '9211', + 'abilityTreeNodes' => [ + 'FEATUREsaeD9PL61', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + 'schema' => [ + 'description' => '应用ID。', + 'type' => 'string', + 'required' => true, + 'example' => '017f39b8-dfa4-4e16-a84b-1dcee4b1****', + ], + ], + [ + 'name' => 'InstanceIds', + 'in' => 'query', + 'schema' => [ + 'description' => '需要删除的实例ID。', + 'type' => 'string', + 'required' => true, + 'example' => 'demo-aaed579c-1f8a-431e-8705-97d18e91c7b4******', + ], + ], + ], + '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,用于精确查询调用信息。'."\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', + ], + ], + ], + ], + ], + '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.', + ], + ], + ], + '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', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '6391', + 'abilityTreeNodes' => [ + 'FEATUREsaeD9PL61', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + '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' => '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', + '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' => '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.', + ], + ], + ], + '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', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '6390', + 'abilityTreeNodes' => [ + 'FEATUREsaeRVPNSA', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + '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' => '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', + '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' => '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.', + ], + ], + ], + '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', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'abilityTreeCode' => '22522', + 'abilityTreeNodes' => [ + 'FEATUREsae5HLO11', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + 'schema' => [ + 'description' => '目标应用ID。', + 'type' => 'string', + 'required' => true, + 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****', + ], + ], + [ + 'name' => 'InstanceIds', + 'in' => 'query', + 'schema' => [ + 'description' => '实例ID。可填写多个实例ID,用英文逗号(,)分隔。', + 'type' => 'string', + 'required' => true, + 'example' => 'b2a8a925-477a-4ed7-b825-d5e22500****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + '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', + ], + ], + ], + ], + ], + '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', + ], + ], + ], + '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', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'abilityTreeCode' => '10540', + 'abilityTreeNodes' => [ + 'FEATUREsaeD9PL61', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + 'schema' => [ + 'description' => '需要更新的应用ID。', + 'type' => 'string', + 'required' => true, + 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****', + ], + ], + [ + 'name' => 'AppDescription', + 'in' => 'query', + 'schema' => [ + 'description' => '更新的应用描述信息。不超过1024个字符。', + 'type' => 'string', + 'required' => true, + 'example' => 'newdesc', + ], + ], + ], + '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****', + ], + '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' => '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', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidAppId.NotFound', + 'errorMessage' => 'The specified AppId does not exist.', + ], + ], + ], + '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', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '6399', + 'abilityTreeNodes' => [ + 'FEATUREsaeD9PL61', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + 'schema' => [ + 'description' => '应用ID。', + 'type' => 'string', + 'required' => true, + 'example' => '017f39b8-dfa4-4e16-a84b-1dcee4b1****', + ], + ], + [ + 'name' => 'SecurityGroupId', + 'in' => 'query', + 'schema' => [ + 'description' => '安全组ID。', + 'type' => 'string', + 'required' => true, + 'example' => 'sg-wz969ngg2e49q5i4****', + ], + ], + ], + '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', + ], + ], + ], + ], + ], + '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', + ], + ], + ], + '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', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '6324', + 'abilityTreeNodes' => [ + 'FEATUREsaeD9PL61', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + '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' => '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', + ], + ], + ], + ], + ], + '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.', + ], + ], + ], + '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', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '6372', + 'abilityTreeNodes' => [ + 'FEATUREsaeRVPNSA', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + 'schema' => [ + 'description' => '应用ID。', + 'type' => 'string', + 'required' => true, + 'example' => '145341c-9708-4967-b3ec-24933767****', + ], + ], + [ + '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', + ], + ], + [ + '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' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'Reverse', + 'in' => 'query', + 'schema' => [ + 'type' => 'boolean', + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + '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****', + ], + 'Data' => [ + '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', + ], + ], + ], + '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', + ], + ], + ], + ], + ], + '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.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidAppId.NotFound', + 'errorMessage' => 'The specified AppId does not exist.', + ], + ], + ], + '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', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '6325', + 'abilityTreeNodes' => [ + 'FEATUREsaeRVPNSA', + ], + ], + 'parameters' => [ + [ + 'name' => 'ChangeOrderId', + 'in' => 'query', + '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' => '调用结果的附加信息。', + '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', + ], + ], + ], + ], + ], + '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.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidAppId.NotFound', + 'errorMessage' => 'The specified AppId does not exist.', + ], + ], + ], + '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', + ], + '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' => '附加信息。取值说明如下:'."\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', + ], + ], + ], + ], + ], + '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', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '6316', + 'abilityTreeNodes' => [ + 'FEATUREsaeRVPNSA', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + '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', + ], + ], + [ + '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', + ], + ], + [ + 'name' => 'PackageVersion', + 'in' => 'query', + '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', + ], + ], + [ + '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', + ], + ], + [ + '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', + ], + ], + [ + '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"]', + ], + ], + [ + '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" } ]', + ], + ], + [ + '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"}]', + ], + ], + [ + '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', + ], + ], + [ + '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', + ], + ], + [ + '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}', + ], + ], + [ + '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}', + ], + ], + [ + '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' => 'BatchWaitTime', + 'in' => 'query', + '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', + ], + ], + [ + '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}}', + ], + ], + [ + '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"}]', + ], + ], + [ + 'name' => 'Timezone', + 'in' => 'query', + '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****', + ], + ], + [ + 'name' => 'MountHost', + 'in' => 'query', + '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: "/"}]', + ], + ], + [ + 'name' => 'PostStart', + 'in' => 'query', + '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"]}}', + ], + ], + [ + 'name' => 'ChangeOrderDesc', + 'in' => 'query', + 'schema' => [ + 'description' => '发布单描述信息。', + 'type' => 'string', + 'required' => false, + 'example' => '启动应用', + ], + ], + [ + 'name' => 'WarStartOptions', + 'in' => 'query', + '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', + ], + ], + [ + '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"}]', + ], + ], + [ + 'name' => 'TerminationGracePeriodSeconds', + 'in' => 'query', + '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', + ], + ], + [ + 'name' => 'PhpArmsConfigLocation', + 'in' => 'query', + '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', + ], + ], + [ + 'name' => 'PhpConfig', + 'in' => 'formData', + '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}', + ], + ], + [ + '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' => 'EnableGreyTagRoute', + 'in' => 'query', + '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', + ], + ], + [ + 'name' => 'AcrInstanceId', + 'in' => 'formData', + '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', + ], + ], + [ + 'name' => 'ImagePullSecrets', + 'in' => 'query', + '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', + ], + ], + [ + '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"}]}', + ], + ], + [ + '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}', + ], + ], + [ + '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\\"}', + ], + ], + [ + '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"', + ], + ], + [ + '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\\"}', + ], + ], + [ + '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"}]', + ], + ], + [ + 'name' => 'Python', + 'in' => 'query', + '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', + ], + ], + [ + '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', + ], + ], + [ + 'name' => 'Deploy', + 'in' => 'query', + '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', + ], + ], + [ + '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', + ], + ], + [ + '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', + ], + ], + [ + 'name' => 'Replicas', + 'in' => 'query', + 'schema' => [ + 'description' => '实例数。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'SecurityGroupId', + 'in' => 'query', + 'schema' => [ + 'description' => '安全组ID。', + 'type' => 'string', + 'required' => false, + 'example' => 'sg-wz969ngg2e49q5i4****', + ], + ], + [ + 'name' => 'VSwitchId', + 'in' => 'query', + '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\\"}', + ], + ], + [ + 'name' => 'EnableNewArms', + 'in' => 'query', + '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', + ], + ], + [ + 'name' => 'OidcRoleName', + 'in' => 'query', + 'schema' => [ + 'description' => '设置身份认证服务RAM角色。'."\n" + ."\n\n" + .'> 需要提前创建同地域的OIDC身份供应商和身份供应商角色。具体信息,请参见[创建OIDC身份供应商](~~2331022~~)和[创建角色SSO身份提供商](~~2331016~~)。', + 'type' => 'string', + 'required' => false, + 'example' => 'sae-test', + ], + ], + [ + 'name' => 'SidecarContainersConfig', + 'in' => 'formData', + 'style' => 'json', + 'schema' => [ + 'description' => '容器配置信息。', + 'type' => 'array', + '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"}]', + ], + ], + [ + 'name' => 'EnableSidecarResourceIsolated', + 'in' => 'formData', + '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', + ], + ], + [ + '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}}', + ], + ], + [ + 'name' => 'NewSaeVersion', + 'in' => 'query', + 'schema' => [ + 'description' => '应用版本:'."\n" + ."\n" + .'- lite:轻量版'."\n" + .'- std:标准版'."\n" + .'- pro:专业版', + 'type' => 'string', + 'required' => false, + 'example' => 'pro', + ], + ], + [ + 'name' => 'InitContainersConfig', + 'in' => 'formData', + 'style' => 'json', + 'schema' => [ + 'description' => '初始化容器配置。', + 'type' => 'array', + 'items' => [ + 'description' => '初始化容器配置。', + 'required' => false, + '$ref' => '#/components/schemas/InitContainerConfig', + ], + 'required' => false, + ], + ], + [ + 'name' => 'GpuConfig', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + '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}', + ], + ], + [ + 'name' => 'EnablePrometheus', + 'in' => 'query', + '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', + ], + ], + [ + 'name' => 'EmptyDirDesc', + 'in' => 'formData', + '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', + ], + ], + [ + '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', + ], + ], + [ + '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', + ], + ], + [ + 'name' => 'AgentVersion', + 'in' => 'query', + 'schema' => [ + 'description' => 'AliyunAgent版本', + 'type' => 'string', + 'required' => false, + 'example' => '4.4.2', + ], + ], + [ + 'name' => 'EnableNamespaceAgentVersion', + 'in' => 'query', + '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', + 'required' => false, + ], + ], + ], + '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****', + ], + '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', + ], + ], + ], + ], + ], + '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.', + ], + ], + 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.', + ], + ], + ], + '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', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'abilityTreeCode' => '6386', + 'abilityTreeNodes' => [ + 'FEATUREsaeRVPNSA', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + 'schema' => [ + 'description' => '目标应用ID。', + 'type' => 'string', + 'required' => true, + 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****', + ], + ], + [ + 'name' => 'Cpu', + 'in' => 'query', + '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, + ], + ], + [ + 'name' => 'VSwitchId', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'Deploy', + 'in' => 'query', + 'schema' => [ + 'type' => 'boolean', + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + '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****', + ], + 'Data' => [ + 'description' => '返回结果。', + 'type' => 'object', + 'properties' => [ + 'ChangeOrderId' => [ + 'description' => '发布单ID。', + 'type' => 'string', + 'example' => 'ffd8cd45-2b5f-415d-b4d0-1003e80b****', + ], + ], + ], + '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' => '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.', + ], + ], + ], + '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' => '更改应用实例规格。', + ], + 'ConfirmPipelineBatch' => [ + 'path' => '/pop/v1/sam/changeorder/ConfirmPipelineBatch', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'none', + 'abilityTreeCode' => '6302', + 'abilityTreeNodes' => [ + 'FEATUREsaeRVPNSA', + ], + ], + 'parameters' => [ + [ + 'name' => 'PipelineId', + '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-***', + ], + ], + [ + 'name' => 'Confirm', + 'in' => 'query', + 'schema' => [ + 'description' => '是否开始下一批次。取值说明如下:'."\n" + ."\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' => '调用结果的附加信息。', + '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', + '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' => '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 \\"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', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'abilityTreeCode' => '6291', + 'abilityTreeNodes' => [ + 'FEATUREsaeD9PL61', + ], + ], + 'parameters' => [ + [ + 'name' => 'ChangeOrderId', + 'in' => 'query', + 'schema' => [ + 'description' => '变更单ID。', + 'type' => 'string', + 'required' => true, + 'example' => 'ba386059-69b1-4e65-b1e5-0682d9fa****', + ], + ], + ], + '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' => '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' => '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 \\"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', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '6385', + 'abilityTreeNodes' => [ + 'FEATUREsae5HLO11', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + 'schema' => [ + 'description' => '目标应用ID。', + 'type' => 'string', + 'required' => true, + 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****', + ], + ], + [ + 'name' => 'Replicas', + 'in' => 'query', + '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' => '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" + ."\n" + .'- **true**:扩缩容执行完毕后,自动开启扩缩容前启用的弹性规则。'."\n" + .'- **false**:扩缩容执行完毕后,不自动开启扩缩容前启用的弹性规则。', + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => '返回数据。', + 'type' => 'object', + 'properties' => [ + 'Message' => [ + 'description' => '调用结果的附加信息。', + 'type' => 'string', + 'example' => 'success', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', + ], + 'Data' => [ + 'description' => '返回结果。', + 'type' => 'object', + 'properties' => [ + 'ChangeOrderId' => [ + 'description' => '发布单ID。', + 'type' => 'string', + 'example' => '0e09829f-4914-4612-bc88-6f52fd81****', + ], + ], + ], + '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' => '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 \\"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', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'abilityTreeCode' => '6387', + 'abilityTreeNodes' => [ + 'FEATUREsaeD9PL61', + ], + ], + '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', + ], + ], + [ + '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' => '返回数据。', + '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' => '重启实例是否成功。取值说明如下:'."\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.', + ], + ], + 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 \\"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', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '6292', + 'abilityTreeNodes' => [ + 'FEATUREsaeRVPNSA', + ], + ], + 'parameters' => [ + [ + 'name' => 'ChangeOrderId', + 'in' => 'query', + 'schema' => [ + 'description' => '变更单ID。', + 'type' => 'string', + 'required' => true, + 'example' => 'be2e1c76-682b-4897-98d3-1d8d6478****', + ], + ], + [ + 'name' => 'Rollback', + 'in' => 'query', + 'schema' => [ + 'description' => '是否回滚', + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + ], + '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' => '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', + ], + ], + ], + ], + ], + '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.', + ], + ], + ], + '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', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '6389', + 'abilityTreeNodes' => [ + 'FEATUREsaeD9PL61', + ], + ], + '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****', + ], + ], + [ + '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', + 'in' => 'query', + 'schema' => [ + 'description' => '是否自动启用应用弹性伸缩策略。取值说明如下:'."\n" + ."\n" + .'- **true**:开启。'."\n" + .'- **false**:关闭。', + 'type' => 'string', + 'required' => false, + 'example' => 'true', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + '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', + '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', + ], + ], + ], + ], + ], + '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\\": \\"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', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'abilityTreeCode' => '6295', + 'abilityTreeNodes' => [ + 'FEATUREsaeD9PL61', + ], + ], + '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', + 'in' => 'query', + 'schema' => [ + 'description' => '应用的版本。', + 'type' => 'string', + 'required' => false, + 'example' => '1.0', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + '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', + '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' => '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\\": \\"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', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'abilityTreeCode' => '6294', + 'abilityTreeNodes' => [ + 'FEATUREsaeD9PL61', + ], + ], + 'parameters' => [ + [ + 'name' => 'NamespaceId', + 'in' => 'query', + 'schema' => [ + 'description' => '命名空间ID。', + 'type' => 'string', + 'required' => true, + 'example' => 'cn-shanghai', + ], + ], + [ + 'name' => 'AppIds', + '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', + ], + ], + ], + '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' => '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', + ], + ], + ], + ], + ], + '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.', + ], + ], + ], + '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', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'abilityTreeCode' => '6360', + 'abilityTreeNodes' => [ + 'FEATUREsaeK7DHH9', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + 'schema' => [ + 'description' => '应用ID。', + 'type' => 'string', + 'required' => true, + 'example' => '017f39b8-dfa4-4e16-a84b-1dcee4b1****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + '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****', + ], + 'Data' => [ + 'description' => '返回结果。', + 'type' => 'object', + 'properties' => [ + 'Status' => [ + 'description' => '关闭 ARMS 高级监控是否成功。取值说明如下:'."\n" + ."\n" + .'- **true**:关闭成功。'."\n" + .'- **false**:关闭失败。', + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + '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', + ], + ], + ], + ], + ], + '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.', + ], + ], + ], + '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', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'abilityTreeCode' => '6406', + 'abilityTreeNodes' => [ + 'FEATUREsaeD9PL61', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + 'schema' => [ + 'description' => '应用id。', + 'type' => 'string', + 'required' => true, + 'example' => '017f39b8-dfa4-4e16-a84b-1dcee4b1****', + ], + ], + ], + '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' => [ + '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', + ], + ], + ], + ], + ], + '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.', + ], + ], + ], + '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', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '6373', + 'abilityTreeNodes' => [ + 'FEATUREsaeY046YN', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + 'schema' => [ + 'description' => '应用ID。', + 'type' => 'string', + 'required' => true, + 'example' => 'b2a8a925-477a-4ed7-b825-d5e22500****', + ], + ], + ], + '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' => [ + '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', + ], + ], + ], + ], + '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', + ], + ], + ], + ], + ], + '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', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '6378', + 'abilityTreeNodes' => [ + 'FEATUREsaeY046YN', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + 'schema' => [ + 'description' => '应用ID。', + 'type' => 'string', + 'required' => true, + 'example' => 'b2a8a925-477a-4ed7-b825-d5e22500****', + ], + ], + ], + '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' => [ + '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', + ], + ], + ], + ], + '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' => 'InvalidParameter.Obviously', + 'errorMessage' => 'The specified parameter is invalid {%s}.', + ], + [ + 'errorCode' => 'InvalidParameter.NotEmpty', + 'errorMessage' => 'You must specify the parameter %s.', + ], + ], + ], + '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', + ], + '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', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + 'schema' => [ + 'description' => '应用ID,vpcId、命名空间ID、应用ID必须且只能填写一项。', + 'type' => 'string', + 'required' => false, + 'example' => '017f39b8-dfa4-4e16-a84b-1dcee4b1****', + ], + ], + [ + 'name' => 'ServiceType', + 'in' => 'query', + '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' => [ + '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' => [ + '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' => '测试命名空间', + ], + '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', + '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' => 'Micro.Service.NotFound', + 'errorMessage' => 'The micro service not found {%s}.', + ], + [ + 'errorCode' => 'InvalidParameter.Obviously', + 'errorMessage' => 'The specified parameter is invalid {%s}.', + ], + ], + ], + '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', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + '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, + ], + ], + ], + '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' => [ + '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' => '创建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' => '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.', + ], + ], + ], + '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', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'abilityTreeCode' => '159990', + 'abilityTreeNodes' => [ + 'FEATUREsaeD9PL61', + ], + ], + 'parameters' => [ + [ + 'name' => 'NamespaceId', + 'in' => 'query', + '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' => [ + 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' => [ + '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键值对数据。', + ], + ], + 'CreateTime' => [ + 'description' => '创建时间。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1593746835111', + ], + 'UpdateTime' => [ + 'description' => '更新时间。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1593746835111', + ], + 'RelateApps' => [ + 'description' => '关联的应用。', + 'type' => 'array', + 'items' => [ + 'description' => '应用的具体信息。', + 'type' => 'object', + 'properties' => [ + 'AppId' => [ + 'description' => '应用ID。', + 'type' => 'string', + 'example' => 'f16b4000-9058-4c22-a49d-49a28f0b****', + ], + 'AppName' => [ + 'description' => '应用名称。', + 'type' => 'string', + 'example' => 'test-app', + ], + ], + ], + ], + ], + ], + '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', + ], + ], + ], + ], + ], + '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.', + ], + ], + ], + '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实例详情', + ], + 'ListSecrets' => [ + 'summary' => '调用ListSecrets接口获取命名空间内Secret实例列表。', + 'path' => '/pop/v1/sam/secret/secrets', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'abilityTreeCode' => '159992', + 'abilityTreeNodes' => [ + 'FEATUREsaeD9PL61', + ], + ], + 'parameters' => [ + [ + 'name' => 'NamespaceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'Secret实例所在命名空间ID。默认同RegionId。', + 'type' => 'string', + 'required' => true, + 'example' => 'cn-beijing:test', + ], + ], + ], + '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' => [ + 'Secrets' => [ + 'description' => 'Secret实例列表。', + 'type' => 'array', + 'items' => [ + 'description' => 'Secret实例的具体信息。', + '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' => '关联应用。', + '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****', + ], + ], + ], + ], + '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' => '是否成功获取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', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidNamespaceId.NotFound', + 'errorMessage' => 'The specified NamespaceId does not exist.', + ], + ], + ], + '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', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'abilityTreeCode' => '159988', + 'abilityTreeNodes' => [ + 'FEATUREsaeD9PL61', + ], + ], + 'parameters' => [ + [ + 'name' => 'NamespaceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'Secret实例所在命名空间ID。如果所在命名空间为默认命名空间,则只需填写RegionId,例如`cn-beijing`。', + 'type' => 'string', + 'required' => true, + 'example' => 'cn-beijing:test', + ], + ], + [ + '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' => '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, + ], + ], + ], + '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' => [ + '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' => '更新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' => '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.', + ], + ], + ], + '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', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'abilityTreeCode' => '159989', + 'abilityTreeNodes' => [ + 'FEATUREsaeD9PL61', + ], + ], + 'parameters' => [ + [ + 'name' => 'NamespaceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'Secret实例所在命名空间ID。默认同RegionId。', + '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' => [ + 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' => [ + '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' => '删除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' => '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.', + ], + ], + 500 => [ + [ + 'errorCode' => 'OperationFailed.RPCError', + 'errorMessage' => 'Internal RPC request processing error.', + ], + ], + ], + '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', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '6379', + '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' => 'NextToken', + 'in' => 'query', + 'schema' => [ + 'description' => '一次查询最多返回50条结果,当结果超过50条时,会同时返回一个NextToken,下一次查询使用该NextToken即可查询前50条结果之外的结果。', + 'type' => 'string', + 'required' => false, + 'example' => 'A2RN', + ], + ], + [ + 'name' => 'ResourceIds', + 'in' => 'query', + 'schema' => [ + 'description' => '资源ID。可填写多个资源ID,用英文逗号(,)分隔。当您未输入**Tags**参数时必填。', + 'type' => 'string', + 'required' => false, + 'example' => '["d42921c4-5433-4abd-8075-0e536f8b****"]', + ], + ], + [ + 'name' => 'Tags', + '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"}]', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + '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****', + ], + 'Data' => [ + 'description' => '返回数据。', + 'type' => 'object', + 'properties' => [ + 'NextToken' => [ + 'description' => '一次查询最多返回50条结果,当结果超过50条时,会同时返回一个NextToken,下一次查询使用该NextToken即可查询前50条结果之外的结果。', + 'type' => 'string', + 'example' => '""', + ], + 'TagResources' => [ + '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', + ], + ], + ], + ], + ], + ], + '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' => '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.', + ], + ], + ], + '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', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'abilityTreeCode' => '6396', + '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', + '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 => [ + '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' => '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' => '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.', + ], + ], + ], + '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', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'abilityTreeCode' => '6393', + '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' => 'ResourceIds', + 'in' => 'formData', + 'schema' => [ + 'description' => '资源ID。可填写多个资源ID,用英文逗号(,)分隔。当您未输入**Tags**参数时必填。', + 'type' => 'string', + 'required' => true, + 'example' => '["d42921c4-5433-4abd-8075-0e536f8b****"]', + ], + ], + ], + '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' => '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' => '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\\": \\"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', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'abilityTreeCode' => '6305', + 'abilityTreeNodes' => [ + 'FEATUREsaeD9PL61', + ], + ], + 'parameters' => [ + [ + 'name' => 'Name', + 'in' => 'query', + 'schema' => [ + 'description' => 'ConfigMap实例名称。允许数字、字母和下划线(_)组合,仅允许以字母开头。', + 'type' => 'string', + 'required' => true, + 'example' => 'name', + ], + ], + [ + 'name' => 'NamespaceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'ConfigMap实例所在命名空间ID。', + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'Data', + 'in' => 'body', + 'style' => 'json', + 'schema' => [ + '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' => '描述信息,不可输入空格,且不超过255个字符。', + 'type' => 'string', + 'required' => false, + 'example' => 'test-desc', + ], + ], + ], + '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' => [ + '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' => '创建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' => '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.', + ], + ], + 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 \\"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', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'abilityTreeCode' => '6312', + 'abilityTreeNodes' => [ + 'FEATUREsaeD9PL61', + ], + ], + 'parameters' => [ + [ + 'name' => 'ConfigMapId', + 'in' => 'query', + 'schema' => [ + 'description' => '需要删除的ConfigMap实例ID。需要调用[ListNamespacedConfigMaps](~~176917~~)接口查看。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1', + ], + ], + ], + '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' => [ + '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' => '删除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' => '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\\": \\"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', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '6400', + 'abilityTreeNodes' => [ + 'FEATUREsaeD9PL61', + ], + ], + 'parameters' => [ + [ + 'name' => 'ConfigMapId', + 'in' => 'query', + 'schema' => [ + 'description' => '需要更新的ConfigMap实例ID。需要调用[ListNamespacedConfigMaps](~~176917~~)接口查看。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1', + ], + ], + [ + 'name' => 'Data', + 'in' => 'body', + 'style' => 'json', + 'schema' => [ + '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 => [ + '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' => [ + 'ConfigMapId' => [ + 'description' => 'ConfigMap实例ID。', + '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' => '更新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' => '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 \\"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实例。', + ], + 'DescribeConfigMap' => [ + 'path' => '/pop/v1/sam/configmap/configMap', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '6328', + 'abilityTreeNodes' => [ + 'FEATUREsaeD9PL61', + ], + ], + 'parameters' => [ + [ + 'name' => 'ConfigMapId', + 'in' => 'query', + 'schema' => [ + 'description' => '查询的ConfigMap实例ID。需要调用[ListNamespacedConfigMaps](~~176917~~)接口查看。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1', + ], + ], + ], + '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' => [ + '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****', + ], + ], + ], + ], + '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', + ], + ], + ], + ], + ], + '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.', + ], + ], + 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\\": \\"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', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '6377', + 'abilityTreeNodes' => [ + 'FEATUREsaeD9PL61', + ], + ], + 'parameters' => [ + [ + 'name' => 'NamespaceId', + 'in' => 'query', + 'schema' => [ + 'description' => '命名空间ID。', + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + ], + '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' => [ + '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' => '是否成功获取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', + ], + ], + 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\\": \\"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', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'produces' => [], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'abilityTreeCode' => '10251', + 'abilityTreeNodes' => [ + 'FEATUREsaeETR3ZD', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + 'schema' => [ + 'title' => '应用ID', + 'description' => '应用ID。', + 'type' => 'string', + 'required' => true, + 'example' => '7802c49a-67bc-4167-8369-9a9c003c****', + ], + ], + [ + 'name' => 'Name', + 'in' => 'query', + 'schema' => [ + 'title' => '规则名称', + 'description' => '规则名称。支持以小写字母开头,以数字或小写字母结尾,仅可包含小写字母、中文字符、数字及短划线(-)。不超过64个字符。', + 'type' => 'string', + 'required' => true, + 'example' => 'dubbo-echo', + ], + ], + [ + 'name' => 'Description', + 'in' => 'query', + 'schema' => [ + 'title' => '规则名称', + 'description' => '规则描述。不超过64个字符。', + 'type' => 'string', + 'required' => false, + 'example' => '灰度发布-地域灰度', + ], + ], + [ + 'name' => 'ScRules', + '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"}]', + ], + ], + [ + 'name' => 'DubboRules', + '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"}]', + ], + ], + [ + 'name' => 'AlbRules', + '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"}]', + ], + ], + ], + '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', + ], + ], + ], + ], + ], + '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' => '[{"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', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'abilityTreeCode' => '10484', + 'abilityTreeNodes' => [ + 'FEATUREsaeETR3ZD', + ], + ], + 'parameters' => [ + [ + 'name' => 'GreyTagRouteId', + 'in' => 'query', + 'schema' => [ + 'title' => '规则ID', + 'description' => '规则ID。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1', + ], + ], + ], + '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', + ], + ], + ], + ], + ], + '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', + ], + ], + ], + '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', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '10391', + 'abilityTreeNodes' => [ + 'FEATUREsaeETR3ZD', + ], + ], + 'parameters' => [ + [ + 'name' => 'Description', + 'in' => 'query', + 'schema' => [ + 'title' => '规则名称', + 'description' => '规则描述。', + 'type' => 'string', + 'required' => false, + 'example' => '灰度发布-地域灰度', + ], + ], + [ + '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' => '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"}]', + ], + ], + [ + 'name' => 'GreyTagRouteId', + 'in' => 'query', + 'schema' => [ + 'title' => '规则ID', + 'description' => '灰度规则ID。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1', + ], + ], + [ + 'name' => 'AlbRules', + '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"}]', + ], + ], + ], + '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' => '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', + ], + ], + ], + ], + ], + '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' => '[{"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', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '10298', + 'abilityTreeNodes' => [ + 'FEATUREsaeETR3ZD', + ], + ], + 'parameters' => [ + [ + 'name' => 'GreyTagRouteId', + 'in' => 'query', + 'schema' => [ + 'title' => '规则ID', + 'description' => '规则ID。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'exclusiveMaximum' => false, + 'minimum' => '1', + 'example' => '1', + ], + ], + ], + '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****', + ], + 'Data' => [ + '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****', + ], + ], + ], + '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' => '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', + ], + ], + ], + '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', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '10488', + 'abilityTreeNodes' => [ + 'FEATUREsaeCJEQQD', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + 'schema' => [ + 'title' => '应用ID', + 'description' => '应用ID。', + 'type' => 'string', + 'required' => true, + 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****', + ], + ], + ], + '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' => '附加信息。取值说明如下:'."\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', + ], + ], + ], + ], + ], + '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', + ], + ], + ], + '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', + ], + 'security' => [ + [ + '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' => '属泳道组ID。更新泳道组时为必填。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '110272', + ], + ], + [ + 'name' => 'GroupName', + 'in' => 'query', + 'schema' => [ + 'description' => '泳道组名称。', + 'type' => 'string', + 'required' => false, + 'example' => 'mse-test', + ], + ], + [ + 'name' => 'NamespaceId', + 'in' => 'query', + 'schema' => [ + 'description' => '命名空间ID。', + 'type' => 'string', + 'required' => false, + 'example' => 'cn-beijing:test', + ], + ], + [ + 'name' => 'AppIds', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => '基线应用ID。', + 'type' => 'array', + 'items' => [ + 'description' => '基线应用ID。可单击**添加**,已添加多个基线应用。', + 'type' => 'string', + 'required' => false, + 'example' => '00893b3a-0e24-45ed-be0c-1f20e07b****', + ], + 'required' => false, + ], + ], + [ + 'name' => 'EntryAppType', + 'in' => 'query', + 'schema' => [ + 'description' => '应用入口类型(网关类型)。'."\n" + ."\n" + .'- **apig:** 云原生 API 网关'."\n" + ."\n" + .'- **mse:** Java 服务网关'."\n" + ."\n" + .'- **mse-gw:** MSE 云原生网关', + 'type' => 'string', + 'required' => false, + 'example' => 'mse-gw', + ], + ], + [ + 'name' => 'EntryAppId', + 'in' => 'query', + 'schema' => [ + 'description' => '对应网关唯一 ID。', + 'type' => 'string', + 'required' => false, + 'example' => 'gw-ea43f648ac46485aa8c894ba1b******', + ], + ], + [ + 'name' => 'SwimVersion', + 'in' => 'query', + 'schema' => [ + 'description' => '全链路灰度版本,取值范围:0,2(推荐使用)。', + 'type' => 'string', + 'required' => false, + 'example' => '2', + ], + ], + ], + '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' => [ + 'GroupId' => [ + 'description' => '泳道组ID。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '110272', + ], + ], + ], + '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' => '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.', + ], + ], + ], + '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' => '创建或更新泳道组', + ], + 'CreateOrUpdateSwimmingLane' => [ + 'summary' => '创建或者更新泳道。', + 'path' => '/pop/v1/cas/gray/createOrUpdateSwimmingLane', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + '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' => '泳道ID。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '13857', + ], + ], + [ + 'name' => 'LaneName', + 'in' => 'query', + 'schema' => [ + 'description' => '泳道名称。', + 'type' => 'string', + 'required' => false, + 'example' => 'test', + ], + ], + [ + 'name' => 'LaneTag', + 'in' => 'query', + 'schema' => [ + 'description' => '泳道标签。', + 'type' => 'string', + 'required' => false, + 'example' => 'g1', + ], + ], + [ + 'name' => 'GroupId', + 'in' => 'query', + 'schema' => [ + 'description' => '所属泳道组ID。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => 'b2a8a925-477a-eswa-b823-d5e22500****', + ], + ], + [ + '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" + ."\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' => '匹配条件。', + '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, + ], + ], + [ + '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。', + ], + ], + ], + 'required' => false, + ], + ], + ], + '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' => [ + 'LaneId' => [ + 'description' => '泳道ID。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '22318', + ], + ], + ], + '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' => '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.', + ], + ], + ], + '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' => '创建或更新泳道', + ], + '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' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '221435', + 'abilityTreeNodes' => [ + 'FEATUREsaeUDWJ2L', + ], + ], + 'parameters' => [ + [ + 'name' => 'NamespaceId', + 'in' => 'query', + 'schema' => [ + 'description' => '命名空间ID。', + 'type' => 'string', + 'required' => true, + 'example' => 'cn-beijing:test', + ], + ], + [ + 'name' => 'GroupId', + 'in' => 'query', + 'schema' => [ + 'description' => '应用分组ID。需要调用[DescribeApplicationGroups](~~126249~~)接口获取。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => 'b2a8a925-477a-eswa-b823-d5e22500****', + ], + ], + [ + 'name' => 'Tag', + 'in' => 'query', + 'schema' => [ + 'description' => '灰度标签。', + 'type' => 'string', + 'required' => false, + 'example' => '{"alicloud.service.tag":"gray"}'."\n", + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => '返回数据。', + 'type' => 'object', + 'properties' => [ + 'Message' => [ + 'description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回 **success**。'."\n" + .'- 请求异常,返回具体异常错误码。', + 'type' => 'string', + 'example' => 'success', + ], + 'RequestId' => [ + 'description' => '调用链ID,用于精确查询调用信息。', + 'type' => 'string', + 'example' => '0a98a02315955564772843261e****', + ], + 'Data' => [ + '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', + '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' => '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', + ], + ], + ], + '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' => '查询泳道组应用列表', + ], + 'ListSwimmingLaneGatewayRoutes' => [ + 'summary' => '查询泳道可选的网关路由', + 'path' => '/pop/v1/cas/gray/listSwimmingLaneGatewayRoutes', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'consumes' => [ + 'application/x-www-form-urlencoded', + ], + 'produces' => [ + 'application/json', + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'abilityTreeCode' => '221887', + 'abilityTreeNodes' => [ + 'FEATUREsaeX255DA', + ], + ], + 'parameters' => [ + [ + 'name' => 'NamespaceId', + 'in' => 'query', + 'schema' => [ + 'description' => '命名空间ID。', + 'type' => 'string', + 'required' => false, + 'example' => 'cn-beijing:test', + ], + ], + [ + 'name' => 'GatewayUniqueId', + 'in' => 'query', + 'schema' => [ + 'description' => '网关唯一标识ID。', + 'type' => 'string', + 'required' => false, + 'example' => 'gw-277c0727535f4aae917e48de0f******', + ], + ], + ], + '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****', + ], + 'Data' => [ + 'description' => '返回结果。', + 'type' => 'array', + 'items' => [ + '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", + ], + ], + ], + ], + ], + ], + ], + ], + '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', + ], + ], + ], + ], + ], + '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.', + ], + ], + ], + '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' => '查询泳道可选的网关路由', + ], + 'ListSwimmingLaneGroupTags' => [ + 'summary' => '查询所有泳道标签列表。', + 'path' => '/pop/v1/cas/gray/listSwimmingLaneGroupTags', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'consumes' => [ + 'application/x-www-form-urlencoded', + ], + 'produces' => [ + 'application/json', + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'abilityTreeCode' => '221498', + 'abilityTreeNodes' => [ + 'FEATUREsaeX255DA', + ], + ], + 'parameters' => [ + [ + 'name' => 'NamespaceId', + 'in' => 'query', + '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' => [ + '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' => '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', + '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' => '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.', + ], + ], + ], + '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', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'consumes' => [ + 'application/x-www-form-urlencoded', + ], + 'produces' => [ + 'application/json', + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '221504', + 'abilityTreeNodes' => [ + 'FEATUREsaeX255DA', + ], + ], + 'parameters' => [ + [ + 'name' => 'NamespaceId', + 'in' => 'query', + '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' => [ + '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,用于精确查询调用信息。', + 'type' => 'string', + 'example' => '0a98a02315955564772843261e****', + ], + '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" + ."\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******', + ], + ], + ], + ], + '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' => '流量匹配。', + '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', + ], + ], + ], + ], + ], + ], + ], + ], + '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' => '是否成功。取值说明如下:'."\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.', + ], + ], + ], + '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' => '查询泳道详情', + ], + 'ListAllSwimmingLanes' => [ + 'summary' => '查询所有泳道。', + 'path' => '/pop/v1/cas/gray/listSwimmingLanes', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'consumes' => [ + 'application/x-www-form-urlencoded', + ], + 'produces' => [ + 'application/json', + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '221500', + 'abilityTreeNodes' => [ + 'FEATUREsaeX255DA', + ], + ], + 'parameters' => [ + [ + 'name' => 'NamespaceId', + 'in' => 'query', + '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' => [ + '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', + 'items' => [ + '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', + ], + 'Apps' => [ + 'description' => '关联的应用。', + 'type' => 'array', + 'items' => [ + '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", + ], + ], + ], + ], + 'AppEntryRule' => [ + 'description' => '应用入口规则。', + 'type' => 'object', + 'properties' => [ + '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', + ], + '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' => '流量匹配。', + 'type' => 'object', + 'additionalProperties' => [ + 'type' => 'integer', + 'format' => 'int32', + 'example' => '100', + 'description' => '流量比例。', + ], + ], + ], + ], + 'MseGatewayEntryRule' => [ + 'description' => 'MSE 网关路由。', + 'type' => 'object', + 'properties' => [ + 'RouteIds' => [ + 'description' => '路由 ID 列表。', + 'type' => 'array', + 'items' => [ + 'description' => '路由 ID。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '103092', + ], + ], + 'Routes' => [ + 'description' => '路由规则的详细配置。', + 'type' => 'array', + 'items' => [ + 'description' => '路由配置。', + 'type' => 'object', + 'properties' => [ + 'RouteId' => [ + 'description' => '路由ID。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '9504'."\n", + ], + 'RouteName' => [ + 'description' => '路由名称。', + 'type' => 'string', + 'example' => 'demo'."\n", + ], + 'RoutePredicate' => [ + 'description' => '路由规则。', + 'type' => 'object', + 'properties' => [ + 'PathPredicate' => [ + 'description' => '路径匹配规则。', + 'type' => 'object', + 'properties' => [ + 'path' => [ + 'description' => '路径。', + 'type' => 'string', + 'example' => '/Path'."\n", + ], + 'type' => [ + 'description' => '匹配规则。', + 'type' => 'string', + 'example' => 'Header'."\n", + ], + ], + ], + ], + ], + ], + ], + ], + 'Percentage' => [ + 'description' => '路径流量比例。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '100', + ], + 'ConditionJoiner' => [ + 'description' => '条件之间的逻辑连接符。', + 'type' => 'string', + 'example' => 'AND', + ], + 'Conditions' => [ + 'description' => '匹配条件。', + 'type' => 'array', + 'items' => [ + '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", + ], + ], + ], + ], + 'IndependentPercentageEnable' => [ + 'description' => '是否启用按比例灰度。', + 'type' => 'boolean', + 'example' => 'true'."\n", + ], + 'PercentageByRoute' => [ + 'description' => '流量配置。', + 'type' => 'object', + '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', + ], + ], + ], + ], + ], + '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.', + ], + ], + ], + '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', + ], + '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' => [ + '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,用于精确查询调用信息。', + 'type' => 'string', + 'example' => 'ac1a0b2215622246421415014e****', + ], + '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' => '入口应用。', + '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', + ], + ], + ], + ], + ], + '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.', + ], + ], + ], + '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' => '查询所有泳道组', + ], + 'DeleteSwimmingLaneGroup' => [ + 'summary' => '删除泳道组。', + 'path' => '/pop/v1/cas/gray/deleteSwimmingLaneGroup', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'consumes' => [ + 'application/x-www-form-urlencoded', + ], + 'produces' => [ + 'application/json', + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'abilityTreeCode' => '221434', + 'abilityTreeNodes' => [ + 'FEATUREsaeX255DA', + ], + ], + 'parameters' => [ + [ + 'name' => 'NamespaceId', + 'in' => 'query', + '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' => [ + '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', + ], + ], + ], + ], + ], + '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.', + ], + ], + ], + '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' => '删除泳道组', + ], + 'UpdateSwimmingLaneEnableAttribute' => [ + 'summary' => '更新泳道的启用属性。', + 'path' => '/pop/v1/cas/gray/updateSwimmingLaneEnableAttribute', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'consumes' => [ + 'application/x-www-form-urlencoded', + ], + 'produces' => [ + 'application/json', + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '221727', + 'abilityTreeNodes' => [ + 'FEATUREsaeX255DA', + ], + ], + 'parameters' => [ + [ + 'name' => 'NamespaceId', + 'in' => 'query', + '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', + ], + ], + [ + 'name' => 'Enable', + 'in' => 'query', + 'schema' => [ + 'description' => '泳道状态:'."\n" + ."\n" + .'- true:开启'."\n" + .'- false:关闭', + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + ], + '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', + ], + ], + ], + ], + ], + '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.', + ], + ], + ], + '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', + ], + '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', + ], + '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', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + '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' => '测试', + ], + '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' => [ + 'type' => 'boolean', + ], + ], + ], + ], + ], + ], + ], + '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.', + ], + ], + ], + '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\\": \\"测试\\",\\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', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '6317', + 'abilityTreeNodes' => [ + 'FEATUREsaeRVPNSA', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + 'schema' => [ + 'description' => '应用ID。', + 'type' => 'string', + 'required' => true, + 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****', + ], + ], + [ + 'name' => 'VersionId', + 'in' => 'query', + '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' => '01CF26C7-00A3-4AA6-BA76-7E95F2A3****', + ], + 'Message' => [ + 'description' => '调用结果的附加信息。', + 'type' => 'string', + 'example' => 'success', + ], + 'TraceId' => [ + 'description' => '调用链ID,用于精确查询调用信息。', + 'type' => 'string', + 'example' => 'ac1a0b2215622246421415014e****', + ], + 'Data' => [ + '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' => '初始化容器配置。', + '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' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'type' => 'string', + ], + 'MountPath' => [ + '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', + ], + ], + ], + ], + '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', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidApplication.NotFound', + 'errorMessage' => 'The current application does not exist.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidAppId.NotFound', + 'errorMessage' => 'The specified AppId does not exist.', + ], + ], + ], + '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' => '获取应用配置信息。', + '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', + ], + ], + ], + ], + ], + '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接口查询可用地域。', + ], + 'DescribeInstanceLog' => [ + 'path' => '/pop/v1/sam/instance/describeInstanceLog', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '6336', + 'abilityTreeNodes' => [ + 'FEATUREsaeKWESKE', + ], + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => '实例ID。', + 'type' => 'string', + 'required' => true, + 'example' => '******-d700e680-aa4d-4ec1-afc2-6566b5ff4d7a-85d44d4bfc-*****', + ], + ], + [ + 'name' => 'ContainerId', + 'in' => 'query', + 'schema' => [ + 'description' => 'Sidecar容器ID。需要调用'."\n" + .'[获取应用实例列表](~~2834847~~)接口获取。', + 'type' => 'string', + 'required' => false, + 'example' => 'sidecar-test-01', + ], + ], + [ + 'name' => 'Previous', + 'in' => 'query', + 'schema' => [ + 'description' => '查看实例上次重启前的日志。注意:仅在实例出现重启时可用。', + 'type' => 'string', + 'required' => false, + 'example' => 'false', + ], + ], + ], + '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' => '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', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParameter.NotEmpty', + 'errorMessage' => 'You must specify the parameter %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', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '6327', + 'abilityTreeNodes' => [ + 'FEATUREsae25O0WL', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + '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' => [ + 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' => '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', + ], + ], + ], + ], + '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' => 'InvalidComponentType.NotFound', + 'errorMessage' => 'The specified Type does not exist.', + ], + ], + ], + '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', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '6334', + 'abilityTreeNodes' => [ + 'FEATUREsaeD9PL61', + ], + ], + 'parameters' => [], + 'responses' => [ + 200 => [ + 'schema' => [ + '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' => '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', + ], + ], + ], + ], + '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', + ], + ], + ], + ], + ], + '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' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '6319', + 'abilityTreeNodes' => [ + 'FEATUREsaeD9PL61', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + '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' => [ + 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', + ], + ], + ], + ], + ], + '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', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '8972', + 'abilityTreeNodes' => [ + 'FEATUREsaeRVPNSA', + ], + ], + '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******', + ], + ], + ], + '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' => [ + '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', + 'example' => '空', + ], + 'TrafficStatus' => [ + 'type' => 'string', + ], + 'Tags' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'type' => 'string', + ], + 'Value' => [ + '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', + ], + ], + ], + ], + ], + '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', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '6318', + 'abilityTreeNodes' => [ + 'FEATUREsaeRVPNSA', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + 'schema' => [ + 'description' => '应用ID。', + 'type' => 'string', + 'required' => true, + 'example' => 'd700e680-aa4d-4ec1-afc2-6566b5ff****', + ], + ], + [ + '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' => '10', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + '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' => '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', + ], + ], + ], + ], + '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', + ], + ], + ], + ], + ], + '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', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '6370', + 'abilityTreeNodes' => [ + 'FEATUREsaeRVPNSA', + ], + ], + 'parameters' => [ + [ + 'name' => 'CurrentPage', + 'in' => 'query', + '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' => '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' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'NewSaeVersion', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + ], + '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', + ], + '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' => '应用标签信息。', + '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' => '该应用的灰度应用列表', + 'type' => 'array', + 'items' => [ + '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', + ], + ], + ], + ], + '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', + ], + ], + ], + ], + ], + ], + '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', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'Illegal.argument', + 'errorMessage' => 'Illegal argument', + ], + ], + ], + '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' => '获取应用列表。', + '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', + ], + ], + ], + ], + ], + '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', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '6375', + 'abilityTreeNodes' => [ + 'FEATUREsaeI5LKBU', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + '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', + ], + ], + [ + 'name' => 'CurrentPage', + 'in' => 'query', + 'schema' => [ + 'description' => '当前页码。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '1', + ], + ], + ], + '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' => 'ac1d5e2c15671581252413581d****', + ], + 'Data' => [ + 'description' => '文件日志信息。', + 'type' => 'object', + 'properties' => [ + 'LogConfigs' => [ + 'description' => '日志配置。', + 'type' => 'array', + 'items' => [ + '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', + ], + ], + ], + ], + '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', + ], + ], + ], + ], + ], + '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', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '6371', + 'abilityTreeNodes' => [ + 'FEATUREsaeD9PL61', + ], + ], + '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' => [ + '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" + .'- **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****', + ], + ], + ], + ], + '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.', + ], + ], + ], + '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', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'abilityTreeCode' => '8961', + 'abilityTreeNodes' => [ + 'FEATUREsaeD9PL61', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + 'schema' => [ + 'description' => '应用ID。', + 'type' => 'string', + 'required' => true, + 'example' => '1daa7236-3844-4f36-b39a-605b0cc0****', + ], + ], + [ + 'name' => 'InstanceIds', + 'in' => 'query', + 'schema' => [ + 'description' => '需要重启的实例ID。多个实例时使用英文逗号(,)分隔。', + 'type' => 'string', + 'required' => true, + 'example' => 'mysae-1daa7236-3844-4f36-b39a-605b0cc0caa6-*****', + ], + ], + ], + '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,用于精确查询调用信息。'."\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', + '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' => '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.', + ], + ], + ], + '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', + ], + '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' => [ + '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****', + ], + 'Data' => [ + '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', + ], + ], + ], + ], + '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', + ], + ], + ], + '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', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '101579', + 'abilityTreeNodes' => [ + 'FEATUREsaeUDWJ2L', + ], + ], + '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', + 'in' => 'query', + 'schema' => [ + 'description' => 'MseNacos 命名空间ID。', + 'type' => 'string', + 'required' => false, + 'example' => 'public', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + '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', + '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' => 'Micro.Service.MetaData.NotFound', + 'errorMessage' => 'The micro service metadata not found {%s}.', + ], + [ + 'errorCode' => 'InvalidParameter.Obviously', + 'errorMessage' => 'The specified parameter is invalid {%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', + ], + 'ListAppServicesPage' => [ + 'summary' => '调用ListAppServicesPage接口获取应用服务列表。', + 'path' => '/pop/v1/sam/service/listAppServicesPage', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'abilityTreeCode' => '100639', + 'abilityTreeNodes' => [ + 'FEATUREsaeY046YN', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + 'schema' => [ + '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' => true, + 'example' => 'springCloud', + ], + ], + [ + 'name' => 'PageNumber', + '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', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + '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****', + ], + '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', + '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' => 'Micro.Service.NotFound', + 'errorMessage' => 'The micro service not found {%s}.', + ], + [ + 'errorCode' => 'InvalidParameter.Obviously', + 'errorMessage' => 'The specified parameter is invalid {%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', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '261358', + 'abilityTreeNodes' => [ + 'FEATUREsaeBRTWZ3', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + 'schema' => [ + 'description' => '应用ID。', + 'type' => 'string', + 'required' => false, + 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + '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', + ], + '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' => '实例信息', + ], + ], + ], + ], + ], + ], + ], + ], + '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', + ], + ], + ], + '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配置', + ], + 'BindNlb' => [ + 'summary' => '应用访问支持NLB', + 'path' => '/pop/v1/sam/app/nlb', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'abilityTreeCode' => '259781', + 'abilityTreeNodes' => [ + 'FEATUREsaeBRTWZ3', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + '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, + 'example' => '无', + ], + ], + [ + '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' => [ + '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', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + '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****', + ], + 'Message' => [ + 'description' => '附加信息。取值说明如下:'."\n" + ."\n" + .'- 请求正常,返回**success**。'."\n" + .'- 请求异常,返回具体异常错误码。', + 'type' => 'string', + 'example' => 'success', + ], + 'TraceId' => [ + 'description' => '调用链ID,用于精确查询调用信息。', + 'type' => 'string', + 'example' => '0a98a02315955564772843261e****', + ], + 'Data' => [ + 'description' => '返回结果。', + 'type' => 'object', + 'properties' => [ + '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', + ], + 'VServerGroupId' => [ + 'type' => 'string', + ], + 'EnableConnectionDrain' => [ + 'type' => 'boolean', + ], + 'ConnectionDrainTimeout' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + ], + ], + ], + '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', + ], + ], + ], + ], + ], + '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', + ], + ], + ], + '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', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'abilityTreeCode' => '6297', + 'abilityTreeNodes' => [ + 'FEATUREsaeD9PL61', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + 'schema' => [ + 'description' => '需要绑定SLB的目标应用ID。', + 'type' => 'string', + 'required' => true, + 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****', + ], + ], + [ + 'name' => 'Internet', + 'in' => 'query', + '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' => 'Intranet', + 'in' => 'query', + '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' => 'InternetSlbId', + 'in' => 'query', + 'schema' => [ + 'description' => '使用指定的已购买的公网SLB,支持非共享型实例。', + 'type' => 'string', + 'required' => false, + 'example' => 'lb-bp1tg0k6d9nqaw7l1****', + ], + ], + [ + 'name' => 'IntranetSlbId', + 'in' => 'query', + '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' => [ + 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', + ], + ], + ], + ], + ], + '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' => '[{"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', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'abilityTreeCode' => '6395', + 'abilityTreeNodes' => [ + 'FEATUREsaeD9PL61', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + 'schema' => [ + 'description' => '目标应用ID。', + 'type' => 'string', + 'required' => true, + 'example' => '0099b7be-5f5b-4512-a7fc-56049ef1****', + ], + ], + [ + 'name' => 'Internet', + 'in' => 'query', + 'schema' => [ + 'description' => '是否解绑公网SLB。取值说明如下:'."\n" + ."\n" + .'- **true**:表示解绑公网SLB。'."\n" + .'- **false**:表示不解绑公网SLB。', + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + 'default' => 'false', + ], + ], + [ + 'name' => 'Intranet', + 'in' => 'query', + 'schema' => [ + 'description' => '是否解绑私网SLB。取值说明如下:'."\n" + ."\n" + .'- **true**:表示解绑私网SLB。'."\n" + .'- **false**:表示不解绑私网SLB。', + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + 'default' => 'false', + ], + ], + ], + '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', + ], + ], + ], + ], + ], + '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.', + ], + ], + ], + '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', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'abilityTreeCode' => '261343', + 'abilityTreeNodes' => [ + 'FEATUREsaeBRTWZ3', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppId', + '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****', + ], + ], + [ + 'name' => 'NlbId', + 'in' => 'query', + 'schema' => [ + 'description' => 'NLB实例ID', + 'type' => 'string', + 'required' => false, + 'example' => 'nlb-7z7jjbzz44d82c9***', + ], + ], + [ + '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 => [ + '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', + ], + ], + ], + ], + ], + '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', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'abilityTreeCode' => '6304', + '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' => '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' => [ + 'type' => 'boolean', + 'required' => false, + ], + ], + ], + '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', + ], + ], + ], + ], + ], + '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.', + ], + ], + ], + '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', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'abilityTreeCode' => '6311', + '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' => '弹性伸缩策略名称。', + 'type' => 'string', + 'required' => true, + 'example' => 'timer-0800-2100', + ], + ], + ], + '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', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'System.Upgrading', + 'errorMessage' => 'The system is being upgraded. Please try again later.', + ], + ], + ], + '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', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '6355', + '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' => '弹性伸缩策略名称。', + 'type' => 'string', + 'required' => true, + 'example' => 'timer-0800-2100', + ], + ], + ], + '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**:禁用失败。', + '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.', + ], + ], + ], + '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', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '6361', + 'abilityTreeNodes' => [ + 'FEATUREsaeRVPNSA', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + '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' => '返回信息。', + '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', + ], + ], + ], + ], + ], + '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.', + ], + ], + ], + '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', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '6397', + '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}]}', + ], + ], + [ + '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' => 'EnableIdle', + 'in' => 'query', + 'schema' => [ + 'type' => 'boolean', + 'required' => false, + ], + ], + ], + '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****', + ], + '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', + ], + ], + ], + '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', + ], + ], + ], + ], + ], + '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.', + ], + ], + ], + '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', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '6320', + 'abilityTreeNodes' => [ + 'FEATUREsaeX1L0GL', + 'FEATUREsaeAINYGA', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + 'schema' => [ + 'description' => '应用ID。', + 'type' => 'string', + 'required' => true, + 'example' => 'a0d2e04c-159d-40a8-b240-d2f2c263****', + ], + ], + [ + 'name' => 'ScalingRuleName', + 'in' => 'query', + 'schema' => [ + 'description' => '弹性伸缩策略名称。'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'test', + ], + ], + ], + '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****', + ], + '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', + ], + ], + ], + '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', + ], + ], + ], + ], + ], + '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', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '6321', + 'abilityTreeNodes' => [ + 'FEATUREsaeX1L0GL', + 'FEATUREsaeAINYGA', + ], + ], + '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' => '91F93257-7A4A-4BD3-9A7E-2F6EAE6D****', + ], + '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', + ], + ], + ], + ], + ], + ], + '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', + ], + ], + ], + ], + ], + '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', + ], + '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' => [], + ], + ], + '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', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'tags' => [], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'consumes' => [ + 'application/json', + ], + 'produces' => [ + 'application/json', + ], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '225942', + '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 => [ + '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应用。', + ], + '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', + 'systemTags' => [ + 'operationType' => 'list', + 'abilityTreeCode' => '181738', + 'abilityTreeNodes' => [ + 'FEATUREsaeUWY6ZL', + ], + ], + 'parameters' => [ + [ + 'name' => 'NamespaceId', + 'in' => 'query', + 'allowEmptyValue' => false, + 'schema' => [ + 'title' => '命名空间ID', + 'description' => '命名空间ID。', + 'type' => 'string', + 'required' => false, + 'example' => 'cn-beijing:test', + ], + ], + [ + 'name' => 'Prefix', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'title' => '应用名前缀', + 'description' => '应用名前缀。', + 'type' => 'string', + 'required' => false, + 'example' => 'my-application', + ], + ], + [ + 'name' => 'NextToken', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'title' => '分页起始标记', + 'description' => '分页起始标记。', + 'type' => 'string', + 'required' => false, + 'example' => 'MTIzNCNhYmM', + ], + ], + [ + 'name' => 'Limit', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'title' => '返回的应用数量', + 'description' => '返回的应用数量。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + ], + ], + ], + 'responses' => [ + 200 => [ + 'description' => '返回信息', + 'schema' => [ + 'title' => '返回信息', + 'description' => '返回信息。', + 'required' => false, + '$ref' => '#/components/schemas/ListWebApplicationsBody', + ], + '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', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'tags' => [], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'consumes' => [ + 'application/json', + ], + 'produces' => [ + 'application/json', + ], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '181749', + '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****', + ], + ], + [ + 'name' => 'body', + 'in' => 'body', + 'allowEmptyValue' => false, + 'schema' => [ + 'title' => '更新应用的信息', + 'description' => '更新应用的信息。', + 'required' => true, + '$ref' => '#/components/schemas/UpdateWebApplicationInput', + ], + ], + ], + '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' => '调用UpdateWebApplication接口更新Web应用级别的配置。', + ], + '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', + ], + ], + ], + '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', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'tags' => [], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'consumes' => [ + 'application/json', + ], + 'produces' => [ + 'application/json', + ], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '225956', + 'abilityTreeNodes' => [ + 'FEATUREsaeWX6046', + ], + ], + '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****', + ], + ], + [ + '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\\": 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' => [], + ], + ], + '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' => [], + ], + ], + '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', + ], + 'tags' => [], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'consumes' => [ + 'application/json', + ], + 'produces' => [ + 'application/json', + ], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '197250', + '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 => [ + 'description' => '返回信息', + '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"}]', + 'title' => '停止Web应用', + 'description' => '调用StopWebApplication接口停止Web应用。', + ], + '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', + ], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + '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', + ], + ], + [ + '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' => [], + ], + ], + '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"}]', + 'title' => '启动Web应用', + 'description' => '调用StartWebApplication接口启动Web应用。', + ], + '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', + '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/UpdateWebApplicationTrafficConfigInput', + ], + ], + ], + 'responses' => [ + 200 => [ + 'description' => '返回信息', + 'schema' => [ + 'title' => '返回信息', + 'description' => '返回信息。', + 'required' => false, + '$ref' => '#/components/schemas/WebApplicationTrafficConfigBody', + ], + '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', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'tags' => [], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'consumes' => [ + 'application/json', + ], + 'produces' => [ + 'application/json', + ], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '225946', + 'abilityTreeNodes' => [ + 'FEATUREsaeOXSSSO', + ], + ], + '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 => [ + 'description' => '返回信息', + 'schema' => [ + 'title' => '返回信息', + 'description' => '返回信息。', + 'required' => false, + '$ref' => '#/components/schemas/WebApplicationTrafficConfigBody', + ], + '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', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'tags' => [], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'consumes' => [ + 'application/json', + ], + 'produces' => [ + 'application/json', + ], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + 'operationType' => 'create', + 'abilityTreeCode' => '225953', + 'abilityTreeNodes' => [ + 'FEATUREsae37J6Z9', + ], + ], + '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' => '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' => [], + ], + ], + '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', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'tags' => [], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'consumes' => [ + 'application/json', + ], + 'produces' => [ + 'application/json', + ], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + 'operationType' => 'list', + 'abilityTreeCode' => '225950', + 'abilityTreeNodes' => [ + 'FEATUREsae37J6Z9', + ], + ], + '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' => 'NextToken', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'title' => '分页起始标记', + 'description' => '分页起始标记。', + 'type' => 'string', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'Limit', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'title' => '返回的应用数量', + 'description' => '返回的应用数量。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + ], + ], + ], + 'responses' => [ + 200 => [ + 'description' => '返回信息', + 'schema' => [ + 'title' => '返回信息', + 'description' => '返回信息。', + 'required' => false, + '$ref' => '#/components/schemas/ListWebApplicationRevisionsBody', + ], + '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', + ], + '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 => [ + 'description' => '返回信息', + 'schema' => [ + 'title' => '返回信息', + 'description' => '返回信息。', + 'required' => false, + '$ref' => '#/components/schemas/WebApplicationRevisionBody', + ], + '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', + ], + '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 => [ + 'description' => 'No Content', + 'schema' => [ + 'description' => '指定更新的管道信息。', + '$ref' => '#/components/schemas/WebApplicationRevisionBody', + ], + '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', + ], + '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' => [], + ], + ], + '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', + ], + '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应用自定义域名详情。', + ], + 'ListWebCustomDomains' => [ + 'summary' => '获取自定义域名列表。', + 'path' => '/pop/v2/api/web/custom-domains', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'tags' => [], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'consumes' => [ + 'application/json', + ], + 'produces' => [ + 'application/json', + ], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + 'operationType' => 'list', + 'abilityTreeCode' => '225952', + 'abilityTreeNodes' => [ + 'FEATUREsae5U7VP0', + ], + ], + 'parameters' => [ + [ + 'name' => 'NamespaceId', + 'in' => 'query', + 'allowEmptyValue' => false, + 'schema' => [ + 'title' => '命名空间ID', + 'description' => '命名空间ID。', + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ApplicationId', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'title' => '应用ID', + 'description' => '应用ID。', + 'type' => 'string', + 'required' => false, + 'example' => '7e41aff0-9eca-45c9-ac48-675e09******', + ], + ], + [ + 'name' => 'Prefix', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'title' => '自定义域名查询前缀', + 'description' => '自定义域名查询前缀。', + 'type' => 'string', + 'required' => false, + 'example' => 'remoteresult', + ], + ], + [ + 'name' => 'NextToken', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'title' => '分页起始标记', + 'description' => '分页起始标记。', + 'type' => 'string', + 'required' => false, + 'example' => 'A2RN', + ], + ], + [ + 'name' => 'Limit', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'title' => '返回的域名数量', + 'description' => '返回的域名数量。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + ], + ], + ], + 'responses' => [ + 200 => [ + 'description' => 'OK', + 'schema' => [ + 'description' => '请求消息体。', + '$ref' => '#/components/schemas/ListWebCustomDomainBody', + ], + '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', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'tags' => [], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'consumes' => [ + 'application/json', + ], + 'produces' => [ + 'application/json', + ], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '225959', + 'abilityTreeNodes' => [ + 'FEATUREsae5U7VP0', + ], + ], + 'parameters' => [ + [ + 'name' => 'NamespaceId', + 'in' => 'query', + 'allowEmptyValue' => false, + 'schema' => [ + 'title' => '命名空间ID', + 'description' => '命名空间ID。', + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'DomainName', + 'in' => 'path', + 'allowEmptyValue' => false, + 'schema' => [ + 'title' => '自定义域名名称', + 'description' => '自定义域名名称。', + 'type' => 'string', + 'required' => true, + 'example' => 'www.99zuowen.com', + ], + ], + [ + 'name' => 'body', + 'in' => 'body', + 'allowEmptyValue' => false, + 'schema' => [ + 'title' => '自定义域名信息', + 'description' => '自定义域名信息。', + 'required' => true, + '$ref' => '#/components/schemas/UpdateWebCustomDomainInput', + ], + ], + ], + 'responses' => [ + 200 => [ + 'description' => 'OK', + 'schema' => [ + 'title' => 'OK', + 'description' => 'OK.', + 'required' => false, + '$ref' => '#/components/schemas/WebCustomDomainBody', + ], + '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', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'tags' => [], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'consumes' => [ + 'application/json', + ], + 'produces' => [ + 'application/json', + ], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + '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', + ], + ], + ], + 'responses' => [ + 200 => [ + 'description' => 'No Content', + 'schema' => [ + 'description' => '请求消息体。', + '$ref' => '#/components/schemas/WebCustomDomainBody', + ], + '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', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'tags' => [], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'consumes' => [ + 'application/json', + ], + 'produces' => [ + 'application/json', + ], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + 'operationType' => 'list', + 'abilityTreeCode' => '225949', + 'abilityTreeNodes' => [ + 'FEATUREsaeUWY6ZL', + ], + ], + 'parameters' => [ + [ + 'name' => 'NamespaceId', + 'in' => 'query', + 'allowEmptyValue' => false, + 'schema' => [ + 'title' => '命名空间ID', + 'description' => '命名空间ID。', + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + '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' => '实例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******', + ], + ], + [ + 'name' => 'VersionIds', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => '应用版本ID。', + 'type' => 'array', + 'items' => [ + 'description' => '凭据的版本信息列表。', + 'type' => 'string', + 'required' => false, + 'example' => '001', + ], + 'required' => false, + 'example' => '001', + ], + ], + [ + 'name' => 'Statuses', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => '应用实例状态。', + 'type' => 'array', + 'items' => [ + 'description' => '应用实例状态:'."\n" + ."\n" + .'- Busy:表示正在处理请求。'."\n" + ."\n" + .'- Idle:表示实例已准备就绪,处于待命状态。', + 'type' => 'string', + 'required' => false, + 'example' => 'Busy', + ], + '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', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '操作结束时间。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1715567192', + ], + ], + ], + 'responses' => [ + 200 => [ + 'description' => '返回信息', + 'schema' => [ + 'title' => '返回信息', + 'description' => '返回信息。', + 'required' => false, + '$ref' => '#/components/schemas/ListWebApplicationInstancesBody', + ], + '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' => [], + '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', + ], + ], + ], + 'responses' => [ + 200 => [ + 'description' => '返回信息', + 'schema' => [ + 'title' => '返回信息', + 'description' => '返回信息。', + 'required' => false, + '$ref' => '#/components/schemas/WebApplicationInstanceLogsBody', + ], + 'examples' => [], + ], + ], + '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' => [], + ], + ], + 'consumes' => [ + 'application/json', + ], + 'produces' => [ + 'application/json', + ], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '225943', + 'abilityTreeNodes' => [ + 'FEATUREsae1X6KNP', + ], + ], + 'parameters' => [ + [ + 'name' => 'NamespaceId', + 'in' => 'query', + 'allowEmptyValue' => false, + 'schema' => [ + 'title' => '命名空间ID', + 'description' => '命名空间ID。', + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + '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' => [ + 'description' => '地域ID。', + 'type' => 'string', + 'required' => false, + 'example' => 'cn-beijing', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '任务的创建时间。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1562831689704', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据结束时间。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1687832980387', + ], + ], + ], + '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', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppName', + 'in' => 'query', + 'schema' => [ + 'description' => '任务模板名称。允许数字、字母以及短划线(-)组合。必须以字母开始,不超过36个字符。', + 'type' => 'string', + 'required' => true, + 'example' => 'test', + ], + ], + [ + 'name' => 'NamespaceId', + 'in' => 'query', + '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.', + ], + ], + [ + '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' => '任务实例弹性网卡所在的虚拟交换机。该交换机必须位于上述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**。', + 'type' => 'string', + 'required' => true, + 'example' => 'FatJar', + ], + ], + [ + 'name' => 'PackageVersion', + 'in' => 'query', + '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', + ], + ], + [ + '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', + ], + ], + [ + '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', + ], + ], + [ + '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', + ], + ], + [ + 'name' => 'Cpu', + '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', + ], + ], + [ + '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', + ], + ], + [ + 'name' => 'Replicas', + 'in' => 'query', + '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"]`。', + '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"]', + ], + ], + [ + '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"}]', + ], + ], + [ + '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"}]', + ], + ], + [ + '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', + ], + ], + [ + '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', + ], + ], + [ + 'name' => 'EdasContainerVersion', + 'in' => 'query', + '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', + ], + ], + [ + '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"}]', + ], + ], + [ + 'name' => 'NasId', + 'in' => 'query', + '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', + ], + ], + [ + 'name' => 'MountDesc', + 'in' => 'query', + 'schema' => [ + 'description' => 'NAS挂载描述。部署时如果配置没有变更,则不需要设置该参数(即请求中无需包含**MountDesc**字段);如果需要清除NAS配置,您需要在请求中将该字段的值设置为空字符串(即请求中**MountDesc**字段的值为"")。', + 'type' => 'string', + 'required' => false, + 'example' => '[{mountPath: "/tmp", nasPath: "/"}]', + ], + ], + [ + 'name' => 'PreStop', + 'in' => 'query', + '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":\\["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', + ], + ], + [ + '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', + ], + ], + [ + 'name' => 'TerminationGracePeriodSeconds', + 'in' => 'query', + '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', + ], + ], + [ + 'name' => 'PhpConfig', + 'in' => 'formData', + '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}', + ], + ], + [ + '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' => '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' => '跨账号拉取镜像时所需的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', + ], + ], + [ + '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', + ], + ], + [ + '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"}', + ], + ], + [ + 'name' => 'ConcurrencyPolicy', + 'in' => 'query', + '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', + ], + ], + [ + 'name' => 'BackoffLimit', + 'in' => 'query', + 'schema' => [ + 'description' => '任务重试次数。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '3', + ], + ], + [ + 'name' => 'Slice', + 'in' => 'query', + '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', + ], + ], + [ + 'name' => 'PythonModules', + 'in' => 'query', + 'schema' => [ + 'description' => '自定义安装模块依赖。默认安装根目录下requirements.txt定义的依赖项。如果未配置或自定义软件包,可以指定安装的依赖。', + 'type' => 'string', + 'required' => false, + 'example' => 'Flask==2.0', + ], + ], + [ + 'name' => 'NasConfigs', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'BestEffortType', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + ], + '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', + ], + ], + ], + ], + ], + '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.', + ], + ], + 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.', + ], + ], + ], + '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' => ' ', + ], + 'DeleteHistoryJob' => [ + 'summary' => '删除任务。', + 'path' => '/pop/v1/sam/job/deleteHistoryJob', + 'methods' => [ + 'delete', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'abilityTreeCode' => '104054', + 'abilityTreeNodes' => [ + 'FEATUREsaeD9PL61', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + 'schema' => [ + 'description' => '要删除的任务模板ID。', + 'type' => 'string', + 'required' => true, + 'example' => '017f39b8-dfa4-4e16-a84b-1dcee4b1****', + ], + ], + [ + 'name' => 'JobId', + 'in' => 'query', + 'schema' => [ + 'description' => '任务ID。', + 'type' => 'string', + 'required' => true, + 'example' => 'manual-3db7a8fa-5d40-4edc-92e4-49d50eab****', + ], + ], + ], + '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' => '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', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 404 => [ + [ + 'errorCode' => 'InvalidAppId.NotFound', + 'errorMessage' => 'The specified AppId does not exist.', + ], + ], + ], + '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', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'abilityTreeCode' => '100737', + 'abilityTreeNodes' => [ + 'FEATUREsaeD9PL61', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + '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****', + ], + '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', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 404 => [ + [ + 'errorCode' => 'InvalidAppId.NotFound', + 'errorMessage' => 'The specified AppId does not exist.', + ], + ], + ], + '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', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'abilityTreeCode' => '100738', + 'abilityTreeNodes' => [ + 'FEATUREsaeD9PL61', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + 'schema' => [ + 'description' => '任务模板ID。', + 'type' => 'string', + 'required' => true, + 'example' => 'e1a7a07-abcb-4652-a1d3-2d57f415****', + ], + ], + [ + 'name' => 'JobId', + 'in' => 'query', + 'schema' => [ + 'description' => '任务ID。', + 'type' => 'string', + 'required' => false, + 'example' => 'event-b798157b-40a2-4388-b578-71fb897103**-**', + ], + ], + ], + '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' => [ + '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', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 404 => [ + [ + 'errorCode' => 'InvalidAppId.NotFound', + 'errorMessage' => 'The specified AppId does not exist.', + ], + ], + ], + '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', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '100736', + 'abilityTreeNodes' => [ + 'FEATUREsaeN5OIM9', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + 'schema' => [ + 'description' => '任务模板ID。', + 'type' => 'string', + 'required' => true, + 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****', + ], + ], + [ + 'name' => 'JobId', + 'in' => 'query', + 'schema' => [ + 'description' => '任务ID。', + 'type' => 'string', + 'required' => false, + 'example' => 'event-b798157b-40a2-4388-b578-71fb897103**-**', + ], + ], + ], + '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,用于精确查询调用信息。', + 'type' => 'string', + 'example' => 'ac1a0b2215622246421415014e****', + ], + 'Data' => [ + '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', + ], + ], + ], + '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' => [ + 404 => [ + [ + 'errorCode' => 'InvalidAppId.NotFound', + 'errorMessage' => 'The specified AppId does not exist.', + ], + ], + ], + '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', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'abilityTreeCode' => '100732', + 'abilityTreeNodes' => [ + 'FEATUREsaeD9PL61', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + 'schema' => [ + 'description' => '任务模板ID', + 'type' => 'string', + 'required' => true, + 'example' => 'ee1a7a07-abcb-4652-a1d3-2d57f415****', + ], + ], + [ + 'name' => 'EventId', + 'in' => 'query', + 'schema' => [ + 'description' => '事件ID,用户自定义。用作幂等使用,相同事件ID仅创建一个任务。', + 'type' => 'string', + 'required' => false, + 'example' => 'custom', + ], + ], + [ + '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', + ], + ], + [ + '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"]', + ], + ], + [ + '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"}]', + ], + ], + [ + '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', + ], + ], + [ + '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', + ], + ], + [ + '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' => [ + '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', + ], + ], + ], + ], + ], + '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' => '[{"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', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'abilityTreeCode' => '100750', + 'abilityTreeNodes' => [ + 'FEATUREsaeN5OIM9', + ], + ], + 'parameters' => [ + [ + 'name' => 'CurrentPage', + 'in' => 'query', + 'schema' => [ + 'description' => '当前页数。取值从1开始。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + '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', + ], + ], + [ + 'name' => 'NamespaceId', + 'in' => 'query', + 'schema' => [ + 'description' => '命名空间ID。', + 'type' => 'string', + 'required' => false, + 'example' => 'cn-beijing:demo', + ], + ], + [ + 'name' => 'Tags', + 'in' => 'query', + '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" + .'- **running**:按照当前实例数进行排序。'."\n" + .'- **instances**:按照目标实例数进行排序。', + 'type' => 'string', + 'required' => false, + 'example' => 'running', + ], + ], + [ + 'name' => 'Reverse', + 'in' => 'query', + '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。', + 'type' => 'string', + 'required' => false, + 'example' => 'appName', + ], + ], + [ + 'name' => 'FieldValue', + 'in' => 'query', + 'schema' => [ + 'description' => '根据已设置的**FieldType**筛选维度,选择输入目标任务模板的任务模板名称或任务模板ID。', + 'type' => 'string', + 'required' => false, + 'example' => 'demo-app', + ], + ], + [ + 'name' => 'Workload', + 'in' => 'query', + 'schema' => [ + 'description' => 'Workload需指定为`job`。', + 'type' => 'string', + 'required' => false, + 'example' => 'job', + ], + ], + ], + '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', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 404 => [ + [ + 'errorCode' => 'InvalidAppId.NotFound', + 'errorMessage' => 'The specified AppId does not exist.', + ], + ], + ], + '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', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'abilityTreeCode' => '100748', + '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', + ], + ], + ], + 'responses' => [ + 200 => [ + '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****', + ], + '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', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 404 => [ + [ + 'errorCode' => 'InvalidAppId.NotFound', + 'errorMessage' => 'The specified AppId does not exist.', + ], + ], + ], + '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', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '100734', + 'abilityTreeNodes' => [ + 'FEATUREsaeN5OIM9', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + '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', + ], + ], + [ + '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', + ], + ], + [ + 'name' => 'PackageVersion', + 'in' => 'query', + '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', + ], + ], + [ + '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', + ], + ], + [ + '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', + ], + ], + [ + '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"]', + ], + ], + [ + '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"}]', + ], + ], + [ + '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"}]', + ], + ], + [ + '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', + ], + ], + [ + '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', + ], + ], + [ + 'name' => 'EdasContainerVersion', + 'in' => 'query', + 'schema' => [ + 'description' => 'HSF框架中任务运行环境版本,例如Ali-Tomcat容器。', + 'type' => 'string', + 'required' => false, + 'example' => '3.5.3', + ], + ], + [ + '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"}]', + ], + ], + [ + 'name' => 'Timezone', + 'in' => 'query', + '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****', + ], + ], + [ + 'name' => 'MountHost', + 'in' => 'query', + '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: "/"}]', + ], + ], + [ + 'name' => 'PostStart', + 'in' => 'query', + '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"]}}', + ], + ], + [ + 'name' => 'WarStartOptions', + 'in' => 'query', + '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' => 'TerminationGracePeriodSeconds', + 'in' => 'query', + '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', + ], + ], + [ + 'name' => 'PhpConfig', + 'in' => 'formData', + '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}', + ], + ], + [ + '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' => '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, + 'example' => 'cri-xxxxxx', + ], + ], + [ + 'name' => 'AcrAssumeRoleArn', + 'in' => 'query', + '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', + ], + ], + [ + 'name' => 'EnableImageAccl', + 'in' => 'formData', + 'allowEmptyValue' => true, + 'schema' => [ + 'title' => '是否开启镜像加速', + 'type' => 'boolean', + '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"}', + ], + ], + [ + 'name' => 'ConcurrencyPolicy', + 'in' => 'query', + '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', + ], + ], + [ + 'name' => 'BackoffLimit', + 'in' => 'query', + 'schema' => [ + 'description' => '任务重试次数。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '3', + ], + ], + [ + 'name' => 'Slice', + 'in' => 'query', + 'schema' => [ + 'description' => '启用任务分片。', + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'SliceEnvs', + 'in' => 'query', + '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****', + ], + ], + [ + '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', + ], + ], + [ + 'name' => 'PythonModules', + 'in' => 'query', + 'schema' => [ + 'description' => '自定义安装模块依赖。默认安装根目录下requirements.txt定义的依赖项。如果未配置或自定义软件包,可以指定安装的依赖。', + 'type' => 'string', + 'required' => false, + 'example' => 'Flask==2.0', + ], + ], + [ + 'name' => 'NasConfigs', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + [ + 'name' => 'BestEffortType', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + ], + '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', + ], + ], + ], + ], + ], + '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.', + ], + ], + 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.', + ], + ], + ], + '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', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'abilityTreeCode' => '124658', + 'abilityTreeNodes' => [ + 'FEATUREsaeD9PL61', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + 'schema' => [ + 'description' => '任务模板ID。', + 'type' => 'string', + 'required' => true, + 'example' => 'e1a7a07-abcb-4652-a1d3-2d57f415****', + ], + ], + [ + 'name' => 'CurrentPage', + 'in' => 'query', + 'schema' => [ + 'description' => '当前页码。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => '分页查询时设置的每页数量。取值范围\\[0,10000\\]。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '20', + ], + ], + [ + 'name' => 'State', + 'in' => 'query', + 'schema' => [ + 'description' => '任务的运行状态。取值说明如下:'."\n" + .'- **0**:未执行。'."\n" + .'- **1**:执行成功。'."\n" + .'- **2**:执行失败。'."\n" + .'- **3**:正在执行。', + 'type' => 'string', + 'required' => false, + 'example' => '1', + ], + ], + ], + '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', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 404 => [ + [ + 'errorCode' => 'InvalidAppId.NotFound', + 'errorMessage' => 'The specified AppId does not exist.', + ], + ], + ], + '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', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'abilityTreeCode' => '6329', + 'abilityTreeNodes' => [ + 'FEATUREsaeD9Y7UY', + 'FEATUREsaeQL07ZC', + ], + ], + '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', + ], + ], + [ + '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', + ], + ], + [ + 'name' => 'Workload', + 'in' => 'query', + 'schema' => [ + 'description' => '应用场景:'."\n" + ."\n" + .'- web'."\n" + ."\n" + .'- micro_service', + 'type' => 'string', + 'required' => false, + 'example' => 'Web', + ], + ], + [ + 'name' => 'ResourceType', + 'in' => 'query', + 'schema' => [ + 'description' => '资源类型。支持NULL(默认)、default(默认)和haiguang(海光服务器)类型。', + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'default' => 'default', + 'haiguang' => 'haiguang', + ], + 'example' => 'default', + ], + ], + [ + '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', + ], + ], + [ + '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', + ], + ], + [ + 'name' => 'GpuA10', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'GpuPpu810e', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + ], + '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', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParameter.Obviously', + 'errorMessage' => 'The specified parameter is invalid {%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\\": \\"后付费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' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '6366', + 'abilityTreeNodes' => [ + 'FEATUREsaeRVPNSA', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + 'schema' => [ + 'description' => '应用ID。', + 'type' => 'string', + 'required' => true, + 'example' => '017f39b8-dfa4-4e16-a84b-1dcee4b1****', + ], + ], + [ + 'name' => 'PodName', + 'in' => 'query', + 'schema' => [ + 'description' => 'Pod名称。', + 'type' => 'string', + 'required' => true, + 'example' => 'hello-podsdfsdfsdfsdf', + ], + ], + [ + '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' => [ + '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', + ], + ], + ], + ], + ], + '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', + ], + ], + 500 => [ + [ + 'errorCode' => 'OperationFailed.RPCError', + 'errorMessage' => 'Internal RPC request processing error.', + ], + ], + ], + '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', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '259402', + 'abilityTreeNodes' => [ + 'FEATUREsaeRVPNSA', + ], + ], + 'parameters' => [ + [ + 'name' => 'EnableIdle', + 'in' => 'query', + 'schema' => [ + 'description' => '是否开启闲置。', + 'type' => 'boolean', + 'required' => false, + 'enumValueTitles' => [ + 'true' => '开启', + 'false' => '关闭', + ], + 'example' => 'true', + ], + ], + [ + 'name' => 'AppId', + 'in' => 'query', + 'schema' => [ + 'description' => '应用ID。', + 'type' => 'string', + 'required' => false, + 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69****', + ], + ], + [ + 'name' => 'NamespaceId', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'AppIds', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'IdleHour', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'Id of the request', + 'type' => 'string', + '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', + ], + ], + ], + ], + ], + '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' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'abilityTreeCode' => '6382', + 'abilityTreeNodes' => [ + 'FEATUREsaeK7DHH9', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + 'schema' => [ + 'description' => '应用ID。', + 'type' => 'string', + 'required' => true, + 'example' => '017f39b8-dfa4-4e16-a84b-1dcee4b1****', + ], + ], + ], + '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', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidApplication.NotFound', + 'errorMessage' => 'The current application does not exist.', + ], + ], + ], + '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' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'abilityTreeCode' => '198094', + 'abilityTreeNodes' => [ + 'FEATUREsaeY046YN', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + 'schema' => [ + 'description' => '应用ID。', + 'type' => 'string', + 'required' => true, + 'example' => 'f7730764-d88f-4b9a-8d8e-cd8efbfe****', + ], + ], + [ + 'name' => 'EnableAhas', + 'in' => 'query', + 'schema' => [ + 'title' => '是否为限流降级功能', + 'description' => '是否为限流降级功能。访问限流降级相关接口时填true,否则填false。'."\n" + .'- true 检查限流降级权限'."\n" + .'- false 不需要检查限流降级权限', + 'type' => 'boolean', + 'required' => true, + 'example' => 'true', + ], + ], + ], + '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', + ], + ], + ], + ], + ], + '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.', + ], + ], + ], + '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', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'abilityTreeCode' => '285072', + 'abilityTreeNodes' => [ + 'FEATUREsaeRVPNSA', + ], + ], + 'parameters' => [ + [ + 'name' => 'NamespaceId', + 'in' => 'query', + 'schema' => [ + 'description' => '命名空间ID。', + 'type' => 'string', + 'required' => true, + 'example' => 'cn-shanghai', + ], + ], + [ + 'name' => 'AppIds', + 'in' => 'query', + 'schema' => [ + 'description' => '应用id列表。输入多个时,以英文逗号(,)分隔。', + 'type' => 'string', + 'required' => true, + 'example' => '00893b3a-0e24-45ed-be0c-1f20e07b****', + ], + ], + ], + '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', + ], + ], + ], + ], + ], + '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.', + ], + ], + ], + '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' => '批量重启应用', + ], + 'UpdateNamespaceSlsConfigs' => [ + 'summary' => '更新命名空间级别sls配置', + 'path' => '/pop/cas/namespace/updateNamespaceSlsConfigs', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '288126', + 'abilityTreeNodes' => [ + 'FEATUREsaeW0M31R', + ], + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'NamespaceId', + 'in' => 'query', + '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' => [ + 'type' => 'string', + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'title' => 'Id of the request', + 'description' => 'Id of the request', + 'type' => 'string', + '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', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 404 => [ + [ + 'errorCode' => 'InvalidNamespaceId.NotFound', + 'errorMessage' => 'The specified NamespaceId does not exist.', + ], + ], + ], + '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' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '6357', + 'abilityTreeNodes' => [ + 'FEATUREsae8U8CHA', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + 'schema' => [ + 'description' => '应用ID', + 'type' => 'string', + 'required' => true, + 'example' => '7171a6ca-d1cd-4928-8642-7d5cfe69a26c', + ], + ], + ], + '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', + ], + ], + ], + ], + ], + '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.', + ], + ], + ], + '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' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'abilityTreeCode' => '289039', + 'abilityTreeNodes' => [ + 'FEATUREsaeRVPNSA', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + 'schema' => [ + 'description' => '应用ID。', + 'type' => 'string', + 'required' => false, + 'example' => '017f39b8-dfa4-4e16-a84b-1dcee4b1****', + ], + ], + [ + 'name' => 'InstanceIds', + 'in' => 'query', + 'schema' => [ + 'description' => '实例ID。', + 'type' => 'string', + 'required' => false, + 'example' => 'c-668727a8-17d86664-41e5bb******,c-668727a8-17d86664-7e4958******', + ], + ], + ], + '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', + ], + ], + ], + ], + ], + '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', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'abilityTreeCode' => '289034', + 'abilityTreeNodes' => [ + 'FEATUREsaeRVPNSA', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + 'schema' => [ + 'description' => '应用ID。', + 'type' => 'string', + 'required' => false, + 'example' => 'd700e680-aa4d-4ec1-afc2-6566b5ff****', + ], + ], + [ + 'name' => 'InstanceIds', + 'in' => 'query', + 'schema' => [ + 'description' => '实例ID。', + 'type' => 'string', + 'required' => false, + 'example' => 'c-668727a8-17d86664-41e5bb******,c-668727a8-17d86664-7e4958******', + ], + ], + ], + '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', + ], + ], + ], + ], + ], + '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', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '290708', + 'abilityTreeNodes' => [ + 'FEATUREsaeRVPNSA', + ], + ], + 'parameters' => [ + [ + 'name' => 'NamespaceId', + 'in' => 'query', + 'schema' => [ + 'description' => '命名空间ID。', + 'type' => 'string', + 'required' => false, + 'example' => 'cn-beijing:test', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => '地域ID。', + 'type' => 'string', + 'required' => false, + 'example' => 'cn-beijing', + ], + ], + ], + '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', + ], + ], + ], + ], + ], + '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', + ], + ], +]; |
