Updated on 2026-05-21 GMT+08:00

Publishing an Application

Function

Publishes application in batch. Any name duplicate is not allowed.

Debugging

You can debug this API through automatic authentication in API Explorer or use the SDK sample code generated by API Explorer.

Authorization Information

Each account has all the permissions required to call all APIs, but IAM users must be assigned the required permissions.

  • If you are using role/policy-based authorization, see Permissions Policies and Supported Actions for details on the required permissions.
  • If you are using identity policy-based authorization, the following identity policy-based permissions are required.

    Action

    Access Level

    Resource Type (*: required)

    Condition Key

    Alias

    Dependencies

    workspace:app:publish

    Write

    app *

    -

    -

    -

    appGroup *

    -

URI

POST /v1/{project_id}/app-groups/{app_group_id}/apps

Table 1 Path Parameters

Parameter

Mandatory

Type

Description

project_id

Yes

String

Project ID.

app_group_id

Yes

String

Application group ID.

Request Parameters

Table 2 Request header parameters

Parameter

Mandatory

Type

Description

X-Auth-Token

No

String

User token

It can be obtained by calling the IAM API used to obtain a user token. The value of X-Subject-Token in the response header is the user token.

Table 3 Request body parameters

Parameter

Mandatory

Type

Description

items

Yes

Array of PublishApp objects

List of applications to be published. Max. 20 at a time.

Table 4 PublishApp

Parameter

Mandatory

Type

Description

name

Yes

String

Application name. Requirements:

  1. Contains visible characters or spaces but cannot contain only spaces.

  2. Cannot contain characters like :^;|~`{}[]<>.

  3. Contains 1 to 64 characters.

version

No

String

Application version number.

command_param

No

String

Command parameters for starting an application.

icon_uri

No

String

Icon address. This field is not used currently.

NOTE:
  • The default size of an image is 8 KB, that is, 1,024 x 8 bytes.

  • If the data format is data;image/png;base64,iVBORw0KGgoAAAANS, the actual size is original size x 4/3 + 4 bytes.

execute_path

Yes

String

Execution path.

work_path

No

String

Application working path.

icon_path

No

String

Path of an application icon.

icon_index

No

Integer

Index of an application icon.

description

No

String

Application description.

source_type

Yes

Integer

Application type:

  • 1: reserved but unavailable

  • 2: image application

  • 3: custom application

publisher

No

String

Application publisher.

source_image_ids

No

Array of strings

Image IDs. Max. 20.

sandbox_enable

No

Boolean

Whether to run in sandbox mode. Options:

  • false: no

  • true: yes

app_extended_info

No

AppExtendedInfo object

Extended information about the custom application service.

Table 5 AppExtendedInfo

Parameter

Mandatory

Type

Description

extended_info

No

Map<String,String>

Key-value pair mapping of extended information

Response Parameters

Status code: 200

Table 6 Response body parameters

Parameter

Type

Description

count

Integer

Total.

items

Array of App objects

Queries the published application list.

Table 7 App

Parameter

Type

Description

id

String

Application ID.

name

String

Application name.

version

String

Application version.

command_param

String

Startup command line parameters.

execute_path

String

Execution path.

work_path

String

Application working directory.

icon_path

String

Path of an application icon.

icon_index

Integer

Index of an application icon.

description

String

Application description.

app_group_id

String

Application group ID.

state

String

Application status:

NORMAL: normal

FORBIDDEN: disabled

tenant_id

String

Tenant ID.

publish_at

String

Publish time.

source_type

Integer

Application type.

1: built-in application

2: image application

3: user-defined application.

publisher

String

Application publisher.

icon_url

String

Icon URL.

publishable

Boolean

Whether the application can be published:

  • true: publishable

  • false: unpublishable

sandbox_enable

Boolean

Whether to run in sandbox mode. Options:

  • false: no

  • true: yes

is_pre_boot

Boolean

Whether to enable application pre-starting. Options:

  • false: disabled

  • true: enabled

app_extended_info

AppExtendedInfo object

Extended information about the custom application service.

Table 8 AppExtendedInfo

Parameter

Type

Description

extended_info

Map<String,String>

Key-value pair mapping of extended information

Status code: 400

Table 9 Response body parameters

Parameter

Type

Description

error_code

String

Error code, which is returned upon failure.

error_msg

String

Error message.

Status code: 401

Table 10 Response body parameters

Parameter

Type

Description

error_code

String

Error code, which is returned upon failure.

error_msg

String

Error message.

Status code: 403

Table 11 Response body parameters

Parameter

Type

Description

error_code

String

Error code, which is returned upon failure.

error_msg

String

Error message.

Status code: 404

Table 12 Response body parameters

Parameter

Type

Description

error_code

String

Error code, which is returned upon failure.

error_msg

String

Error message.

Status code: 405

Table 13 Response body parameters

Parameter

Type

Description

error_code

String

Error code, which is returned upon failure.

error_msg

String

Error message.

Status code: 500

Table 14 Response body parameters

Parameter

Type

Description

error_code

String

Error code, which is returned upon failure.

error_msg

String

Error message.

Status code: 503

Table 15 Response body parameters

Parameter

Type

Description

error_code

String

Error code, which is returned upon failure.

error_msg

String

Error message.

Example Requests

POST /v1/a4da8115c9d8464ead3a38309130523f/app-groups/656582710889807872/apps

{
  "items" : [ {
    "name" : "7-Zip File Manager",
    "version" : "19.0.0.0",
    "command_param" : "",
    "execute_path" : "C:\\Program Files\\7-Zip\\7zFM.exe",
    "work_path" : "",
    "icon_path" : "C:\\Program Files\\7-Zip\\7zFM.exe",
    "icon_index" : 0,
    "description" : "",
    "publisher" : "Igor Pavlov",
    "source_image_ids" : [ "5d411710-98ac-47b5-af7c-3ecf6a0514b5" ],
    "source_type" : 2
  } ]
}

Example Responses

Status code: 200

Successful.

{
  "count" : 1,
  "items" : [ {
    "id" : "656599335839993860",
    "name" : "7-Zip File Manager",
    "version" : "19.0.0.0",
    "command_param" : "",
    "execute_path" : "C:\\Program Files\\7-Zip\\7zFM.exe",
    "work_path" : "",
    "icon_path" : "C:\\Program Files\\7-Zip\\7zFM.exe",
    "icon_index" : 0,
    "description" : "",
    "app_group_id" : "656582710889807872",
    "state" : "NORMAL",
    "tenant_id" : "26a0420e9e284569a23f1b2f7d9b5011",
    "publish_at" : "2024-01-15T08:39:56.265Z",
    "source_type" : 2,
    "publisher" : "Igor Pavlov",
    "sandbox_enable" : false
  } ]
}

Status Codes

Status Code

Description

200

Successful.

400

The request cannot be understood by the server due to malformed syntax.

401

Authentication failed.

403

Permissions required.

404

No resources found.

405

The request method is not allowed.

500

An internal service error occurred. For details, see the error code description.

503

Service unavailable.

Error Codes

See Error Codes.