Updated on 2024-06-27 GMT+08:00

Unbind a Device Policy

Function

This API is used by an application to unbind a target object from a specified policy on the IoT platform.

Debugging

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

URI

POST /v5/iot/{project_id}/device-policies/{policy_id}/unbind

Table 1 Path Parameters

Parameter

Mandatory

Type

Description

project_id

Yes

String

Parameter description: project ID. For details about how to obtain the project ID, see Obtaining a Project ID.

policy_id

Yes

String

Policy ID.

Request Parameters

Table 2 Request header parameters

Parameter

Mandatory

Type

Description

X-Auth-Token

No

String

Parameter description: user token. Obtain the token by calling the IAM API for obtaining a user token through password authentication. In the returned response header, X-Subject-Token is the desired user token. For details about how to obtain the token, see Token Authentication.

Instance-Id

No

String

Parameter description: instance ID. Unique identifier of each instance in the physical multi-tenant scenario. Mandatory for professional editions and recommended in other cases. Log in to the IoTDA console and choose Overview in the navigation pane to view the instance ID. For details, see Viewing Instance Details.

Table 3 Request body parameters

Parameter

Mandatory

Type

Description

target_type

Yes

String

Parameter description: type of the target unbound from the policy. Value: device, product, and app (the entire resource space).

target_ids

Yes

Array of strings

ID list of targets unbound from the policy.

Response Parameters

Status code: 200

Table 4 Response body parameters

Parameter

Type

Description

policy_id

String

Policy ID.

target_type

String

**Parameter description**: type of the target.

**Value**: **device**, **product**, and **app** (the entire resource space).

success_targets

Array of strings

ID list of targets that are successfully unbound to the policy.

failure_targets

Array of DevicePolicyBindOrUnbindFailureDetail objects

ID list of targets that fail to be unbound to the policy.

Table 5 DevicePolicyBindOrUnbindFailureDetail

Parameter

Type

Description

target_id

String

ID of the target that fails to be unbound.

error_code

String

Error code.

error_msg

String

Error details.

Example Requests

  • Unbinds a policy from a device.

    POST https://{endpoint}/v5/iot/{project_id}/device-policies/{policy_id}/unbind
    
    {
      "target_type" : "device",
      "target_ids" : [ "64a7ba7ef9cb063d27e16b97_123456" ]
    }
  • Unbinds a policy from a product.

    POST https://{endpoint}/v5/iot/{project_id}/device-policies/{policy_id}/unbind
    
    {
      "target_type" : "product",
      "target_ids" : [ "64a7ba7ef9cb063d27e16b97" ]
    }

Example Responses

Status code: 200

OK

{
  "policy_id" : "5c90fa7d3c4e4405e8525079",
  "target_type" : "device",
  "success_targets" : [ "64a7ba7ef9cb063d27e16b97_123456", "64a7ba7ef9cb063d27e16b97_123457" ],
  "failure_targets" : [ {
    "target_id" : "64a7ba7ef9cb063d27e16b97_123458",
    "error_code" : "IOTDA.015207",
    "error_msg" : "Invalid input. The target does not bind the device-policy."
  } ]
}

Status Codes

Status Code

Description

200

OK

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

500

Internal Server Error

Error Codes

See Error Codes.