# Move computers to a different remote office Moves one or more computers from their current remote office to a different remote office. ## Endpoint `POST /dcapi/som/computers/moveRemoteOffice` ## Request URL `https://[{serverurl}](https://www.manageengine.com/products/desktop-central/help/api/cloud/oauth-authentication-endpoint-domain.html)/dcapi/som/computers/moveRemoteOffice` ## Scope `DesktopCentralCloud.SOM.CREATE` ## Header `Authorization: Zoho-oauthtoken d92d4xxxxxxxxxxxxx15f52` ## Request Parameters ### Request Headers - **Content-Type** `string` — **Mandatory** `application/computersToMoveRO.v1+json` - **Accept** `string` — **Mandatory** `application/computerMoveStatus.v1+json` ### Request Body `application/json` - `JSON Object` - **computerIDs** `JSON Array` — **Mandatory** Array of computer resource IDs to move to the target remote office. Get resource IDs from [Get Computers](https://www.manageengine.com/products/desktop-central/help/api/cloud/computers-getcomputers.html). - **remoteOfficeID** `string` — Optional Identifier of the target remote office to move the computers into. Fetch available IDs from [Get Remote Offices](https://www.manageengine.com/products/desktop-central/help/api/cloud/remoteoffices_getremoteoffice.html). ### Sample Request ```curl curl --request POST \ --url https://appdomains/dcapi/som/computers/moveRemoteOffice \ --header 'Accept: application/computerMoveStatus.v1+json' \ --header 'Authorization: Zoho-oauthtoken d92d4xxxxxxxxxxxxx15f52' \ --header 'Content-Type: application/computersToMoveRO.v1+json' \ --data '{"computerIDs":["4001","4002","4003","4004"]}' ``` ### Sample Request Body Move computers to a different remote office ```json { "computerIDs": [ "4001", "4002", "4003", "4004" ], "remoteOfficeID": 501 } ``` ## Response Parameters ### HTTP Code 200 Response Body — `application/json` - `JSON Object` - **status** `boolean` Indicates whether the remote office move operation was accepted and initiated successfully. - **message** `string` Status indicator for the move operation: 'YetToInstall' when the agent is not yet installed on the target, 'NSRequired' when Notification Service is required to complete the move. ### HTTP Code 400 Response Body — `application/json` - `JSON Object` - **statusCode** `string` HTTP status code (400). - **errorCode** `string` API-specific error code identifying the validation failure. - **message** `string` Error message describing the validation failure. ### HTTP Code 401 Response Body — `application/json` - `JSON Object` - **errorCode** `long` Unauthorized error code: credentials missing, expired, or invalid. - **errorMsg** `string` Authentication failure reason. ### HTTP Code 404 Response Body — `application/json` - `JSON Object` - **statusCode** `string` HTTP status code (404). - **errorCode** `string` Error code identifying the resource that was not found. - **message** `string` Error message describing the missing resource. ### HTTP Code 412 Response Body — `application/json` - `JSON Object` - **statusCode** `string` HTTP status code (412). - **errorCode** `string` Precondition failed error code identifying the business logic violation. - **message** `string` Error message describing the precondition failed while processing request. ## Possible Response Codes - `200` — HTTP code - `400` — HTTP code - `401` — HTTP code - `404` — HTTP code - `412` — HTTP code ## Sample Responses ### HTTP 200 Move initiated ```json { "message": "YetToInstall", "status": true } ``` ### HTTP 400 Missing or empty computerIDs in request ```json { "errorCode": "20006", "message": "Resource IDs are not present in the request", "statusCode": 400 } ``` Another move operation is already in progress ```json { "errorCode": "30041", "message": "Agent move operation is already running", "statusCode": 400 } ``` ### HTTP 401 Custom group scope user is not allowed to move computers ```json { "errorCode": "1001", "message": "Unauthorized", "statusCode": 401 } ``` ### HTTP 404 Target remote office not found ```json { "errorCode": "30028", "message": "Remote office not found", "statusCode": 404 } ``` ### HTTP 412 Non-admin user cannot access the requested computers ```json { "errorCode": "20005", "message": "Selected computers are not accessible", "statusCode": 412 } ``` Some computers are not managed by the server ```json { "errorCode": "30007", "message": "All resources are not managed computers", "statusCode": 412 } ``` All agents are already in the target remote office ```json { "errorCode": "30040", "message": "All agents are already in the target remote office", "statusCode": 412 } ``` ## Rate Limits ![](https://www.zohowebstatic.com/sites/zweb/images/people/ico-help.png) **Duration:** 1 minute | **Threshold:** 30 | **Lock period:** 5 minutes Duration - Time window for the threshold. Threshold - Number of API calls allowed within the specified duration. Lock Period - Wait time before consecutive API requests.