All Products
Search
Document Center

Serverless App Engine:CreateApplication

Last Updated:Jul 10, 2026

Creates an application.

Try it now

Try this API in OpenAPI Explorer, no manual signing needed. Successful calls auto-generate SDK code matching your parameters. Download it with built-in credential security for local usage.

Test

RAM authorization

The table below describes the authorization required to call this API. You can define it in a Resource Access Management (RAM) policy. The table's columns are detailed below:

  • Action: The actions can be used in the Action element of RAM permission policy statements to grant permissions to perform the operation.

  • API: The API that you can call to perform the action.

  • Access level: The predefined level of access granted for each API. Valid values: create, list, get, update, and delete.

  • Resource type: The type of the resource that supports authorization to perform the action. It indicates if the action supports resource-level permission. The specified resource must be compatible with the action. Otherwise, the policy will be ineffective.

    • For APIs with resource-level permissions, required resource types are marked with an asterisk (*). Specify the corresponding Alibaba Cloud Resource Name (ARN) in the Resource element of the policy.

    • For APIs without resource-level permissions, it is shown as All Resources. Use an asterisk (*) in the Resource element of the policy.

  • Condition key: The condition keys defined by the service. The key allows for granular control, applying to either actions alone or actions associated with specific resources. In addition to service-specific condition keys, Alibaba Cloud provides a set of common condition keys applicable across all RAM-supported services.

  • Dependent action: The dependent actions required to run the action. To complete the action, the RAM user or the RAM role must have the permissions to perform all dependent actions.

Action

Access level

Resource type

Condition key

Dependent action

sae:CreateApplication

create

*All Resource

*

None None

Request syntax

POST /pop/v1/sam/app/createApplication HTTP/1.1

Request parameters

Parameter

Type

Required

Description

Example

AppName

string

Yes

The application name. The name can contain digits, letters, and hyphens (-). The name must start with a letter and cannot end with a hyphen (-). The name can be up to 36 characters in length.

test

NamespaceId

string

No

The SAE namespace ID. Only namespaces whose names contain lowercase letters and hyphens (-) are supported. The name must start with a letter. You can obtain namespaces by calling the DescribeNamespaceList operation.

cn-beijing:test

AppDescription

string

No

The application description. The description can be up to 1024 characters in length.

This is a test description.

VpcId

string

No

The VPC that corresponds to the SAE namespace. In SAE, a namespace can correspond to only one VPC, and the mapping cannot be modified. The binding relationship is established when the first SAE application is created in the namespace. Multiple namespaces can correspond to the same VPC. If you leave this parameter empty, the VPC bound to the namespace is used by default.

vpc-bp1aevy8sofi8mh1q****

VSwitchId

string

No

The vSwitch where the elastic network interface controller (NIC) of the application instance resides. The vSwitch must be in the specified VPC. The vSwitch also has a binding relationship with the SAE namespace. If you leave this parameter empty, the vSwitch attached to the namespace is used by default.

vsw-bp12mw1f8k3jgygk9****

PackageType

string

Yes

The type of the application deployment package. Valid values:

  • If you use Java for deployment, FatJar, War, and Image are supported.

  • If you use PHP for deployment, the following types are supported:

    • PhpZip

    • IMAGE_PHP_5_4

    • IMAGE_PHP_5_4_ALPINE

    • IMAGE_PHP_5_5

    • IMAGE_PHP_5_5_ALPINE

    • IMAGE_PHP_5_6

    • IMAGE_PHP_5_6_ALPINE

    • IMAGE_PHP_7_0

    • IMAGE_PHP_7_0_ALPINE

    • IMAGE_PHP_7_1

    • IMAGE_PHP_7_1_ALPINE

    • IMAGE_PHP_7_2

    • IMAGE_PHP_7_2_ALPINE

    • IMAGE_PHP_7_3

    • IMAGE_PHP_7_3_ALPINE

  • If you use Python for deployment, PythonZip and Image are supported.

  • If you use .NET Core for deployment, DotnetZip and Image are supported.

    Note

    When DotnetZip is selected, Dotnet specifies the version of the .NET Core runtime. .NET 3.1, .NET 5.0, .NET 6.0, .NET 7.0, and .NET 8.0 are supported. The Dotnet, Command, and CommandArgs parameters are required.

FatJar

PackageVersion

string

No

The version of the deployment package. This parameter is required when Package Type is set to FatJar, War, or PythonZip.

1.0.0

PackageUrl

string

No

The address of the deployment package. This parameter is required when Package Type is set to FatJar, War, or PythonZip.

http://myoss.oss-cn-****.aliyuncs.com/my-buc/2019-06-30/****.jar

ImageUrl

string

No

The image address. This parameter is required when Package Type is set to Image.

registry.cn-hangzhou.aliyuncs.com/sae_test/ali_sae_test:0.0.1

Jdk

string

No

The JDK version on which the deployment package depends. Valid values:

  • Open JDK 8

  • Open JDK 7

  • Dragonwell 11

  • Dragonwell 8

  • openjdk-8u191-jdk-alpine3.9

  • openjdk-7u201-jdk-alpine3.9

This parameter is not supported when Package Type is set to Image.

Open JDK 8

WebContainer

string

No

The version of Tomcat on which the WebContainer deployment package depends. Valid values:

  • apache-tomcat-7.0.91

  • apache-tomcat-8.5.42

This parameter is not supported when Package Type is set to Image.

apache-tomcat-7.0.91

Cpu

integer

No

The CPU specifications required for each instance, in millicores. This parameter cannot be set to 0. Only the following defined specifications are supported:

  • 500

  • 1000

  • 2000

  • 4000

  • 8000

  • 16000

  • 32000

1000

Memory

integer

No

The memory required for each instance, in MB. This parameter cannot be set to 0. The memory has a one-to-one mapping with CPU. Only the following defined specifications are supported:

  • 1024: corresponds to 500 and 1000 millicores of CPU.

  • 2048: corresponds to 500, 1000, and 2000 millicores of CPU.

  • 4096: corresponds to 1000, 2000, and 4000 millicores of CPU.

  • 8192: corresponds to 2000, 4000, and 8000 millicores of CPU.

  • 12288: corresponds to 12000 millicores of CPU.

  • 16384: corresponds to 4000, 8000, and 16000 millicores of CPU.

  • 24576: corresponds to 12000 millicores of CPU.

  • 32768: corresponds to 16000 millicores of CPU.

  • 65536: corresponds to 8000, 16000, and 32000 millicores of CPU.

  • 131072: corresponds to 32000 millicores of CPU.

1024

Replicas

integer

Yes

The initial number of instances.

1

Command

string

No

The command that is used to start the image. The command must be an executable object in the container. Example:

command:
      - echo
      - abc
      - >
      - file0

In the preceding example, Command="echo", CommandArgs=["abc", ">", "file0"].

Important This parameter is required when PackageType is set to DotnetZip.

echo

CommandArgs

string

No

The arguments of the image startup command. These are the arguments required by the startup command specified in Command. Format:

["a","b"]

In the preceding example, CommandArgs=["abc", ">", "file0"], where ["abc", ">", "file0"] must be converted to the String type. The internal format is a JSON array. If this parameter is not required, leave it empty.

Important This parameter is required when PackageType is set to DotnetZip.

["a","b"]

Envs

string

No

The container environment variable parameters. You can customize environment variables or reference a ConfigMap. To reference a ConfigMap, create a ConfigMap instance first. For more information, see CreateConfigMap. Valid values:

  • Custom configuration
    • name: the name of the environment variable.

    • value: the value of the environment variable. This takes priority over valueFrom.

  • Reference a ConfigMap (valueFrom)
    • name: the name of the environment variable. You can reference a single key or all keys. To reference all keys, enter sae-sys-configmap-all-<ConfigMap name>, such as sae-sys-configmap-all-test1.

    • valueFrom: the environment variable reference. Set the value to configMapRef.
      • configMapId: the ConfigMap ID.

      • key: the key. If you reference all keys, do not set this field.

[ { "name": "sae-sys-configmap-all-hello", "valueFrom": { "configMapRef": { "configMapId": 100, "key": "" } } }, { "name": "hello", "valueFrom": { "configMapRef": { "configMapId": 101, "key": "php-fpm" } } }, { "name": "envtmp", "value": "newenv" } ]

CustomHostAlias

string

No

The custom host mapping in the container. Valid values:

  • hostName: the domain name or hostname.

  • ip: the IP address.

[{"hostName":"samplehost","ip":"127.0.0.1"}]

JarStartOptions

string

No

The options for starting the JAR package application. The default startup command for the application: $JAVA_HOME/bin/java $JarStartOptions -jar $CATALINA_OPTS "$package_path" $JarStartArgs

-Xms4G -Xmx4G

JarStartArgs

string

No

The arguments for starting the JAR package application. The default startup command for the application: $JAVA_HOME/bin/java $JarStartOptions -jar $CATALINA_OPTS "$package_path" $JarStartArgs

custom-args

Liveness

string

No

The container health check. Containers that fail the health check are shutdown and recovered. The following methods are supported:

  • exec: for example, {"exec":{"command":\["sh","-c","cat/home/admin/start.sh"]},"initialDelaySeconds":30,"periodSeconds":30,"timeoutSeconds":2}

  • httpGet: for example, {"httpGet":{"path":"/","port":18091,"scheme":"HTTP","isContainKeyWord":true,"keyWord":"SAE"},"initialDelaySeconds":11,"periodSeconds":10,"timeoutSeconds":1}

  • tcpSocket: for example, {"tcpSocket":{"port":18091},"initialDelaySeconds":11,"periodSeconds":10,"timeoutSeconds":1}

Note

You can use only one method for health checks.

Parameter description:

  • exec.command: the health check command.

  • httpGet.path: the access path.

  • httpGet.scheme: HTTP or HTTPS.

  • httpGet.isContainKeyWord: true indicates that the keyword is included. false indicates that the keyword is not included. If this field is missing, the advanced feature is not used.

  • httpGet.keyWord: the custom keyword. The isContainKeyWord field must be present when this field is used.

  • tcpSocket.port: the port for TCP connection detection.

  • initialDelaySeconds: the health check delay detection time. Default value: 10. Unit: seconds.

  • periodSeconds: the health check period. Default value: 30. Unit: seconds.

  • timeoutSeconds: the health check timeout period. Default value: 1. Unit: seconds. If this parameter is set to 0 or is not set, the default timeout period is 1 second.

{"exec":{"command":["sh","-c","cat /home/admin/start.sh"]},"initialDelaySeconds":30,"periodSeconds":30,"timeoutSeconds":2}

Readiness

string

No

The application startup status check. Containers that fail multiple health checks are shut down and restarted. Containers that do not pass the health check do not receive SLB traffic. The exec, httpGet, and tcpSocket methods are supported. For specific examples, see the Liveness parameter.

Note

You can use only one method for health checks.

{"exec":{"command":["sh","-c","cat /home/admin/start.sh"]},"initialDelaySeconds":30,"periodSeconds":30,"timeoutSeconds":2}

Deploy

boolean

No

Specifies whether to immediately deploy the application. Valid values:

  • true: default value. The application is deployed immediately.

  • false: the application is deployed later.

true

EdasContainerVersion

string

No

The version of the application runtime environment in the HSF framework, such as the Ali-Tomcat container.

3.5.3

Timezone

string

No

The time zone. Default value: Asia/Shanghai.

Asia/Shanghai

SlsConfigs

string

No

The configurations for log collection to Simple Log Service.

  • Use SLS resources that are automatically created by SAE: [{"logDir":"","logType":"stdout"},{"logDir":"/tmp/a.log"}].

  • Use custom SLS resources: [{"projectName":"test-sls","logType":"stdout","logDir":"","logstoreName":"sae","logtailName":""},{"projectName":"test","logDir":"/tmp/a.log","logstoreName":"sae","logtailName":""}].

Parameter description:

  • projectName: the Project name in Simple Log Service.

  • logDir: the log path.

  • logType: the log type. stdout indicates container standard output logs. You can configure only one entry for this type. If this parameter is not set, file logs are collected.

  • logstoreName: the Logstore name in Simple Log Service.

  • logtailName: the Logtail name in Simple Log Service. If this parameter is not specified, a new Logtail is created.

If the SLS collection configuration does not change during multiple deployments, you do not need to set this parameter (that is, the SlsConfigs field does not need to be included in the request). If you no longer need the SLS collection feature, set the value of this field to an empty string (that is, set the value of the SlsConfigs field to "" in the request).

Note

Projects that are automatically created with the application are deleted when the application is deleted. Therefore, do not select a project that is automatically created by SAE when you select an existing project.

[{"logDir":"","logType":"stdout"},{"logDir":"/tmp/a.log"}]

NasId

string

No

We recommend that you do not set this parameter. Set NasConfigs instead. The ID of the mounted NAS file system. The NAS file system must be in the same region as the cluster. The NAS file system must have available mount target creation quota, or its mount target must already be on a vSwitch in the VPC. If this parameter is left empty and the mountDescs field exists, a NAS file system is automatically purchased and mounted to a vSwitch in the VPC.

If the configuration does not change during deployment, you do not need to set this parameter (that is, the NASId field does not need to be included in the request). To clear the NAS configuration, set the value of this field to an empty string (that is, set the value of the NASId field to "" in the request).

KSAK****

MountHost

string

No

We recommend that you do not set this parameter. Set NasConfigs instead. The mount target of the NAS file system in the VPC of the application. If the configuration does not change during deployment, you do not need to set this parameter (that is, the MountHost field does not need to be included in the request). To clear the NAS configuration, set the value of this field to an empty string (that is, set the value of the MountHost field to "" in the request).

example.com

MountDesc

string

No

We recommend that you do not set this parameter. Set NasConfigs instead. The NAS mount description. If the configuration does not change during deployment, you do not need to set this parameter (that is, the MountDesc field does not need to be included in the request). To clear the NAS configuration, set the value of this field to an empty string (that is, set the value of the MountDesc field to "" in the request).

[{mountPath: "/tmp", nasPath: "/"}]

PreStop

string

No

The script that is run before the container is stopped. A script is triggered and run before the container is deleted. Format: {"exec":{"command":\["cat","/etc/group"]}}

{"exec":{"command":["cat","/etc/group"]}}

PostStart

string

No

The script that is run after the container is started. A script is triggered and run immediately after the container is created. Format: {"exec":{"command":\["cat","/etc/group"]}}

{"exec":{"command":["cat","/etc/group"]}}

WarStartOptions

string

No

The startup command for deploying a WAR package application. The configuration procedure is the same as that for the startup command of an image deployment. For more information, see Configure a startup command.

CATALINA_OPTS=\"$CATALINA_OPTS $Options\" catalina.sh run

ConfigMapMountDesc

string

No

The ConfigMap mount description. Use a ConfigMap created on the namespace configuration items page to inject configuration information into the container. Parameter description:

  • configMapId: the ConfigMap instance ID. You can obtain the ID by invoking the ListNamespacedConfigMaps operation.

  • key: the key.

Note

You can mount all keys by passing the sae-sys-configmap-all parameter.

  • mountPath: the mount path.

[{"configMapId":16,"key":"test","mountPath":"/tmp"}]

SecurityGroupId

string

No

The security group ID.

sg-wz969ngg2e49q5i4****

AutoConfig

boolean

No

Specifies whether to automatically configure the network environment. Valid values:

  • true: SAE automatically configures the network environment when the application is created. The values of NamespaceId, VpcId, vSwitchId, and SecurityGroupId are ignored.

  • false: SAE manually configures the network environment when the application is created.

Note

If this parameter is set to true, any other NamespaceId value that is passed is ignored.

true

TerminationGracePeriodSeconds

integer

No

The timeout period for graceful shutdown. Default value: 30. Unit: seconds. Valid values: 1 to 300.

30

PhpArmsConfigLocation

string

No

The mount path for PHP application monitoring. Make sure that the PHP server loads the configuration file from this path. You do not need to manage the configuration content. SAE automatically renders the correct configuration file.

/usr/local/etc/php/conf.d/arms.ini

PhpConfigLocation

string

No

The mount path for the PHP application startup configuration. Make sure that the PHP server uses this configuration file to start.

/usr/local/etc/php/php.ini

PhpConfig

string

No

The content of the PHP configuration file.

k1=v1

TomcatConfig

string

No

The Tomcat configuration. Set this parameter to "" or "{}" to delete the configuration:

  • port: the port number. Valid values: 1024 to 65535. Ports less than 1024 require root permissions. Because the container is configured with admin permissions, specify a port greater than 1024. Default value: 8080.

  • contextPath: the access path. Default value: root directory "/".

  • maxThreads: the maximum number of connections in the connection pool. Default value: 400.

  • uriEncoding: the encoding format of Tomcat. Valid values: UTF-8, ISO-8859-1, GBK, and GB2312. Default value: ISO-8859-1.

  • useBodyEncodingForUri: specifies whether to use BodyEncoding for URL. Default value: true.

{"port":8080,"contextPath":"/","maxThreads":400,"uriEncoding":"ISO-8859-1","useBodyEncodingForUri":true}

OssMountDescs

string

No

The OSS mount description. Parameter description:

  • bucketName: the bucket name.

  • bucketPath: the folder or object that you created in OSS. If the OSS mount folder does not exist, an exception is triggered.

  • mountPath: the container path in SAE. If the path already exists, it is an overwrite relationship. If the path does not exist, it is created.

  • readOnly: specifies whether the container path has read-only permission on the mounted folder resources. Valid values:
    • true: read-only permission.

    • false: read and write permission.

[{"bucketName": "oss-bucket", "bucketPath": "data/user.data", "mountPath": "/usr/data/user.data", "readOnly": true}]

OssAkId

string

No

The AccessKey ID for OSS read and write operations.

xxxxxx

OssAkSecret

string

No

The AccessKey Secret for OSS read and write operations.

xxxxxx

Php

string

No

The PHP version on which the deployment package depends. Not supported for images.

PHP-FPM 7.0

AcrInstanceId

string

No

The instance ID of the Container Registry Enterprise instance. This parameter is required when ImageUrl is set to a Container Registry Enterprise Edition image.

cri-xxxxxx

AcrAssumeRoleArn

string

No

The ARN of the RAM role required for cross-account image pulling. For more information, see Grant permissions across Alibaba Cloud accounts by using a RAM role.

acs:ram::123456789012****:role/adminrole

ImagePullSecrets

string

No

The corresponding secret ID.

10

AssociateEip

boolean

No

Specifies whether to associate an EIP. Valid values:

  • true: associate an EIP.

  • false: do not associate an EIP.

true

ProgrammingLanguage

string

No

The programming language of the technology stack used to create the application. Valid values:

  • java: Java.

  • php: PHP.

  • python: Python.

  • dotnet: .NET Core.

  • other: multiple languages, such as C++, Go, and Node.js.

java

KafkaConfigs

string

No

The summary of configurations for log collection to Kafka. Valid values:

  • kafkaEndpoint: the service registration address of the Kafka API.

  • kafkaInstanceId: the Kafka instance ID.

  • kafkaConfigs: the summary of configurations for one or more log entries. For more information about the valid values, see the kafkaConfigs request parameter in this topic.

{"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"}]}

PvtzDiscoverySvc

string

No

Enables K8s Service-based service registration and discovery. Valid values:

  • serviceName: the service name. Format: custom name-namespace ID. The suffix -namespace ID cannot be customized and must be set based on the namespace of the application. For example, if you select the default namespace in the China (Beijing) region, the suffix is -cn-beijing-default.

  • namespaceId: the namespace ID.

  • portProtocols: the port and protocol. Valid port values: [1,65535]. Valid protocol values: TCP and UDP.

  • portAndProtocol: the port and protocol. Valid port values: [1,65535]. Valid protocol values: TCP and UDP. portProtocols is recommended. If portProtocols is set, only portProtocols takes effect.

  • enable: enables K8s Service-based service registration and discovery.

{"serviceName":"bwm-poc-sc-gateway-cn-beijing-front","namespaceId":"cn-beijing:front","portAndProtocol":{"18012":"TCP"},"enable":true,"portProtocols":[{"port":18012,"protocol":"TCP"}]}

MicroRegistration

string

No

Specifies the Nacos registry. Valid values:

  • 0: SAE built-in Nacos.

  • 1: self-managed Nacos.

  • 2: MSE commercial edition Nacos.

"0"

MicroRegistrationConfig

string

No

The registry configuration.

{\"instanceId\":\"mse-cn-zvp2bh6h70r\",\"namespace\":\"4c0aa74f-57cb-423c-b6af-5d9f2d0e3dbd\"}

NasConfigs

string

No

The NAS mount configuration. Valid values:

  • mountPath: the container mount path.

  • readOnly: set to false to grant read and write permission.

  • nasId: the NAS ID.

  • mountDomain: the container mount target address. For more information, see DescribeMountTargets.

  • nasPath: the NAS relative file directory.

[{"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

string

No

The Python environment. PYTHON 3.9.15 is supported.

PYTHON 3.9.15

PythonModules

string

No

The custom installation module dependencies. By default, the dependencies defined in the requirements.txt file in the root folder are installed. If the file is not configured or you need custom packages, specify the dependencies to install.

Flask==2.0

Dotnet

string

No

The version of the .NET framework:

  • .NET 3.1

  • .NET 5.0

  • .NET 6.0

  • .NET 7.0

  • .NET 8.0

.NET 3.1

EnableEbpf

string

No

Specifies whether to enable application monitoring for non-Java applications based on eBPF technology. Valid values:

  • true: enabled.

  • false: disabled. This is the default value.

false

SaeVersion

string

No

The SAE version. Valid values:

  • v1

  • v2

v1

AppSource

string

No

Set this parameter to micro_service to create a microservice application.

micro_service

BaseAppId

string

No

The base application ID.

ee99cce6-1c8e-4bfa-96c3-3e2fa9de8a41

ServiceTags

string

No

The canary release tags configured for the application.

{\"alicloud.service.tag\":\"g1\"}

EnableNewArms

boolean

No

Specifies whether to enable the new ARMS feature:

  • true: Enabled.

  • false: Disabled.

false

EnableCpuBurst

boolean

No

Specifies whether to enable the CPU Burst feature:

  • true: Enabled.

  • false: Disabled.

true

OidcRoleName

string

No

Specifies the RAM role for identity authentication.

Note

Create an OIDC identity provider and an identity provider role in the same region in advance. For more information, see CreateOIDCProvider and CreateSAMLProvider.

sae-test

SidecarContainersConfig

array

No

The sidecar container configuration.

SidecarContainerConfig

No

The sidecar container configuration.

SecretMountDesc

string

No

The Secret mount description. Use a secret created on the namespace secrets page to inject sensitive information into the container. Parameter description:

  • secretId: the secret instance ID. You can obtain the ID by calling the ListSecrets operation.

  • key: the key.

Note

You can mount all keys by passing the sae-sys-secret-all parameter.

  • mountPath: the mount path.

[{“secretId":10,”key":"test","mountPath":"/tmp"}]

EnableSidecarResourceIsolated

boolean

No

Specifies whether to enable sidecar resource isolation:

  • true: Isolated.

  • false: Not isolated.

true

CustomImageNetworkType

string

No

The custom image type. Set this parameter to an empty string if the image is not a custom image:

  • internet: public image

  • intranet: private image

internet

ResourceType

string

No

The resource type. Valid values: NULL (default), default, and haiguang (Hygon server).

NULL

NewSaeVersion

string

No

The application version:

  • lite: Lite Edition

  • std: Standard Edition

  • pro: Professional Edition

pro

MicroserviceEngineConfig

string

No

Configures the microservice governance feature.

  • Specifies whether to enable microservice governance (enable):

    • true: Enabled.

    • false: Disabled.

  • Configures lossless online/offline (mseLosslessRule):

    • delayTime: the delay time.

    • enable: specifies whether to enable the lossless online feature. true indicates enabled. false indicates disabled.

    • notice: specifies whether to enable the notification feature. true indicates enabled. false indicates disabled.

    • warmupTime: the warm-up duration for traffic ramping, in seconds.

{"enable": true,"mseLosslessRule": {"delayTime": 0,"enable": false,"notice": false,"warmupTime": 120}}

DiskSize

integer

No

The disk storage size, in GB.

50

InitContainersConfig

array

No

The init container configuration.

InitContainerConfig

No

The init container configuration.

GpuConfig

string

No

StartupProbe

string

No

Enables the application startup probe.

  • Check succeeded: indicates that the application started successfully. If you configured Liveness and Readiness checks, they are performed after the application starts successfully.

  • Check failed: indicates that the application failed to start. An exception is reported and the application is automatically restarted.

Note
  • The exec, httpGet, and tcpSocket methods are supported. For specific examples, see the Liveness parameter.

  • You can use only one method for health checks.

{"exec":{"command":["sh","-c","cat /home/admin/start.sh"]},"initialDelaySeconds":30,"periodSeconds":30,"timeoutSeconds":2}

IsStateful

boolean

No

Specifies whether the application is stateful.

EnablePrometheus

boolean

No

Specifies whether to enable Prometheus custom metric collection.

false

HeadlessPvtzDiscoverySvc

string

No

The K8s Headless Service-based service registration and discovery.

  • serviceName: the service name.

  • namespaceId: the namespace ID.

{\"serviceName\":\"leaf-test-headless\",\"namespaceId\":\"cn-zhangjiakou:prod\"}

Html

string

No

The Nginx version.

  • nginx 1.20

  • nginx 1.22

  • nginx 1.24

  • nginx 1.26

  • nginx 1.28

nginx 1.28

EmptyDirDesc

string

No

The shared ephemeral storage configuration.

[{\"name\":\"workdir\",\"mountPath\":\"/usr/local/tomcat/webapps\"}]

AgentVersion

string

No

Specifies whether to reuse the namespace agent version configuration.

4.4.2

EnableNamespaceAgentVersion

boolean

No

The AliyunAgent version.

true

EnableNamespaceSlsConfig

boolean

No

Specifies whether to reuse the namespace SLS log configuration.

true

SlsLogEnvTags

string

No

sls log tags

LokiConfigs

string

No

Labels

object

No

string

No

Response elements

Element

Type

Description

Example

object

The information about the created application.

RequestId

string

The request ID.

91F93257-7A4A-4BD3-9A7E-2F6EAE6D****

Message

string

The additional information. Valid values:

  • If the request is successful, success is returned.

  • If the request fails, a specific error code is returned.

success

TraceId

string

The trace ID, which is used to query the details of a request.

0a98a02315955564772843261e****

Data

object

The returned result.

ChangeOrderId

string

The returned change order ID, which is used to query the task execution status.

01db03d3-3ee9-48b3-b3d0-dfce2d88****

AppId

string

The ID of the application that is created.

017f39b8-dfa4-4e16-a84b-1dcee4b1****

ErrorCode

string

The error code. Valid values:

  • If the request is successful, the ErrorCode field is not returned.

  • If the request fails, the ErrorCode field is returned. For more information, see the Error codes section in this topic.

Code

string

The API status or POP error code. Valid values:

  • 2xx: success.

  • 3xx: redirection.

  • 4xx: request error.

  • 5xx: server error.

200

Success

boolean

Indicates whether the application is created. Valid values:

  • true: The application is created.

  • false: The application failed to be created.

true

Examples

Success response

JSON format

{
  "RequestId": "91F93257-7A4A-4BD3-9A7E-2F6EAE6D****",
  "Message": "success",
  "TraceId": "0a98a02315955564772843261e****",
  "Data": {
    "ChangeOrderId": "01db03d3-3ee9-48b3-b3d0-dfce2d88****",
    "AppId": "017f39b8-dfa4-4e16-a84b-1dcee4b1****"
  },
  "ErrorCode": "空",
  "Code": "200",
  "Success": true
}

Error codes

HTTP status code

Error code

Error message

Description

400 Application.MissingJdk Your application must at least contain a JDK component.
400 InvalidPackageType.NotFound The package type must be War, FatJar, or Image.
400 InvalidParameter.NotEmpty You must specify the parameter %s.
400 InvalidParameter.Obviously The specified parameter is invalid {%s}.
400 JarApplication.MissingJdk A FatJar application must contain JDK.
400 NoAvailableCluster.NotFound No clusters are available for the current region.
400 NoComputeResourceQuota.Exceed Your compute resource is insufficient. Please contact us to raise the quota.
400 PandoraApplication.MissingJdk The Pandora application is missing a JDK component.
400 PandoraApplication.OnlyJdk A Pandora application only requires JDK component.
400 InvalidParameter.WithMessage The parameter is invalid {%s}: %s
400 InvalidComponent.NotFound The current component (such as JDK, Tomcat, or EDASWebContainer) does not exist.
400 InvalidHostnameIp.Invalid The hostname and/or IP is invalid: Hostname [%s], IP [%s].
400 InvalidInstanceSpecification.Unsupported The instance specification is not supported: CPU [%s], memory [%s].
400 InvalidServerlessRegion.Unsupported The current region is not supported: %s
400 WarApplication.MissingJdkWebcontainer A War application must contain JDK and Tomcat.
400 InvalidNamespace.WithUppercase This namespace does not support creating SAE apps because it contains uppercase letters.
400 LogService.ConfigQuotaExceed The maximum number of Log Service configs is exceeded. The maximum number of Log Service configs is exceeded, please join the DingTalk group 32874633 for technical support.
400 LogService.InternalError An exception occurred while calling Log Service. Please submit a ticket to solve the problem. An exception occurred while calling log service. please join the DingTalk group 32874633 for technical support.
400 LogService.LogDirInvalid The log collection path is invalid. The log collection path is invalid.
400 LogService.NotAvailable Log Service is unavailable. Please activate Log Service first. The log service is not available. Please open the log service first.
400 LogService.ProjectNumQuotaExceed The maximum number of Log Service projects is exceeded. The maximum number of Log Service projects is exceeded, please join the DingTalk group 32874633 for technical support.
400 user.indebt The user has an outstanding payment.
400 NoComputeResourceQuota.App.Exceed You can create %s instances for each application. Please submit a ticket to raise the quota. You can create %s instances for each application. please join the DingTalk group 32874633 for technical support.
400 NoComputeResourceQuota.User.Exceed Your account is limited to create %s instances. Please submit a ticket to raise the quota. Your account is limited to create %s instances. please join the DingTalk group 32874633 for technical support.
400 System.Upgrading The system is being upgraded. Please try again later.
400 VolumnPath.Conflict Conflict between log collection directory and persistent storage directory. Conflict between log collection directory and persistent storage directory.
400 MountConflict.ConfigMap Conflict detected for ConfigMap path %s.
400 NotFound.ConfigMap The ConfigMap object (ID: %s) does not exist.
400 NotFound.ConfigMapKey The key %s of ConfigMap object (ID: %s) does not exist.
400 Sls.Config.Mixed.Multi.Project The specified Config contains multiple projects.
400 Sls.Config.User.Defined.Missing.Logstore.Info The specified Config is invalid. Both Project and Logstore must be specified.
400 Sls.Config.User.Defined.Missing.Project.Info The specified Config is invalid. Both Project and Logstore must be specified.
400 Sls.Logstore.Name.Invalid The specified name of Logstore is invalid. The Logstore name must not contain the prefix "sae-".
400 Sls.Logstore.User.Defined.Not.Exist The user defined Logstore does not exist.
400 Sls.Project.Name.Invalid The specified project name is invalid. The project name must not contain the prefix "sae-".
400 Sls.Project.User.Defined.Not.Exist The user defined project does not exist.
400 InvalidImageUrl.AcrInstanceId.Domain.NotMatch The specified domain of ImageUrl does not match AcrInstanceId domains.
400 PhpApplication.MissingPhpRuntime A PHP application must contain PHP Runtime.
400 InvalidParameter.FileName 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.
400 Sls.Logtail.Name.Invalid The specified name of Logtail is invalid. The Logtail name must not contain the prefix sae-.
400 vswitch.not.exist The specified vSwitch does not exist. The specified vSwitch does not exist. Please change the vSwitch.
400 InvalidImageUrl.MissingAcrInstanceId The specified domain of ImageUrl is from ACREE, but you are not specified AcrInstanceId.
400 EnvFromSecretIdConflict.AlreadyExist The specified SecretId [%s] already exist in the specified Envs.
400 MountConflict.Secret Conflict detected for Secret path %s. Secret mount path% s has conflict.
404 Associate.Eip.Not.Enough No sufficient EIPs are available.
404 InvalidNamespaceId.NotFound The specified NamespaceId does not exist.
404 InvalidVpcId.NotFound The specified VpcId does not exist.
404 InvalidAcrInstanceId.NotFound The specified AcrInstanceId does not exist.

See Error Codes for a complete list.

Release notes

See Release Notes for a complete list.