# unclaimDevicesAsync

Asynchronous request to unclaim up to 100,000 devices for one or more customers.

> [!NOTE]
> **Note:** The `ResellerService` class created by `SamsungResellerServiceFactory` only supports claiming devices for one customer per request. If devices for multiple customers are put into a single request, the operation will fail and return `INTERNAL_SERVER_ERROR`.

Asynchronous API methods return a result before the processing is complete. They
also help your app (or tool) remain responsive for your users while they wait
for a long-running operation to complete. Your app should call
[`getOperation`](https://developers.google.com/zero-touch/reseller-library/reference/methods/getoperation)
to check the status of the operation periodically.

## Method signature

    public UnclaimDevicesResponse unclaimDevicesAsync(UnclaimDevicesRequest request);

## UnclaimDevicesRequest

| Property name | Value | Required | Description |
|---|---|---|---|
| `unclaims` | List of `object(DeviceUnclaim)` | Yes | The device unclaims to be processed. |
| `vendorParams` | `map` | No | Extra fields, vendor specified key-value pair. Note: Requests from the `ResellerService` class created by `SamsungResellerServiceFactory` must specify a `customerId` in `vendorParams`. |

## UnclaimDevicesResponse

| Property name | Value | Description |
|---|---|---|
| `operations` | List of `object(`[`Operation`](https://developers.google.com/zero-touch/reseller-library/reference/objects#operation)`)` | One or more `UnclaimDevices` `Operation` instances. |

## Error behavior

If an error occurs, the [`Operation`](https://developers.google.com/zero-touch/reseller-library/reference/objects#operation)
object returns one of the following error codes:

| Error code |
|---|
| `DEVICE_UPLOAD_COUNT_EXCEEDED` |
| `INTERNAL_SERVER_ERROR` |
| `INVALID_DEVICE_IMEI` |
| `INVALID_DEVICE_MEID` |
| `INVALID_DEVICE_SERIAL` |
| `INVALID_IDENTIFIER_SET` |