Help Center/ KooPhone/ API Reference/ Permissions and Supported Actions/ Actions Supported by Policy-based Authorization
Updated on 2025-11-24 GMT+08:00

Actions Supported by Policy-based Authorization

This section describes the actions supported by KooPhone in policy-based authorization.

Supported Actions

KooPhone provides system-defined policies that can be directly used in IAM. You can also create custom policies to supplement system-defined policies for more refined access control. Actions supported by policies are specific to APIs. See the following common concepts related to policies:

  • Permissions: statements in a policy that allow or deny certain operations
  • APIs: REST APIs that can be called by a user who has been granted specific permissions
  • Actions: specific operations that are allowed or denied.
  • Dependencies: actions which a specific action depends on. When allowing an action for a user, you also need to allow any existing action dependencies for that user.
  • IAM projects/Enterprise projects: the authorization scope of a custom policy. A custom policy can be applied to IAM projects or enterprise projects or both. Policies that contain actions for both IAM and enterprise projects can be used and applied for both IAM and Enterprise Management. Policies that contain actions only for IAM projects can be used and applied to IAM only. Administrators can check whether an action supports IAM projects or enterprise projects in the action list. For details about the differences between IAM and enterprise management, see Differences Between IAM and Enterprise Management.

Lifecycle Management

Table 1 Lifecycle management

Permission

API

Action

IAM Project

Enterprise Project

Executing a Synchronization Command

POST /v1/instances/sync-command

koophone:cloudphoneResource:syncInvokeInstance

Executing an Asynchronization Command

POST /v1/instances/async-command

koophone:cloudphoneResource:asyncInvokeInstance

Querying Instance Execution Tasks

GET /v1/instances/tasks/{task_id}

koophone:cloudphoneResource:queryExecuteJob

Instance Video Settings

PUT /v1/instances/video-setting

koophone:cloudphoneResource:setVideo

Querying Instance Status in Batches

POST /v1/instances/batch-query-status

koophone:cloudphoneResource:queryBatchShowInstance

Resetting Instances in Batches

POST /v1/instances/batch-reset

koophone:cloudphoneResource:batchResetInstance

Obtaining device_token Before Streaming

POST /v1/instances/{instance_id}/auth

koophone:cloudphoneResource:executeInstanceAuthToken

Assigning Instances

POST /v1/instances/assign

koophone:cloudphoneResource:instanceAssign

Canceling Instance Assignment

POST /v1/instances/unassign

koophone:cloudphoneResource:instanceUnassign

Querying Instances in Batches

GET /v1/instances/batch-query

koophone:cloudphoneResource:queryInstanceBatch

Restarting Instances

POST /v1/instances/reboot

koophone:cloudphoneResource:instanceReboot

Querying Saleable Instance SKUs in Batches

GET /v1/instances/sku

koophone:cloudphoneResource:queryInstanceSku

Provisioning an Instance API

POST /v1/instances/create

koophone:cloudphoneResource:instanceCreate

Deleting Instances

POST /v1/instances/delete

koophone:cloudphoneResource:instanceDelete

Preparing Instances in Batches

POST /v1/instances/prepare

koophone:cloudphoneResource:instancePrepare

Instance Preparation Progress

POST /v1/instances/prepare-progress

koophone:cloudphoneResource:getInstancePrepareProgress

Backing Up an Instance

POST /v1/instances/backup

koophone:cloudphoneResource:instanceBackup

Stopping Streaming of an Instance

POST /v1/instances/streaming/stop

koophone:cloudphoneResource:stopInstancesStreaming

Releasing a Session by an Instance

POST /v1/instances/session/release

koophone:cloudphoneResource:releaseInstancesSession

Installing an App on an Instance

POST /v1/instances/app/install

koophone:cloudphoneResource:instanceAppInstall