# Update an existing IP scope Updates an existing IP scope identified by boundary ID. Supports range and subnet types. ## Endpoint `PUT /dcapi/som/ip-scopes/{ip_scope_id}` ## Request URL `https://{serverurl}/dcapi/som/ip-scopes/{ip_scope_id}` ## Scope `DesktopCentralCloud.SOM.UPDATE` ### Header `Authorization: Zoho-oauthtoken d92d4xxxxxxxxxxxxx15f52` ## Request Parameters ### Request Headers - **Content-Type** `string` — **Mandatory** - `application/ipScopeDetail.v1+json` - **Accept** `string` — **Mandatory** - `application/ipScopeUpdatedStatus.v1+json` ### Path Parameters - **ip_scope_id** `string` — **Mandatory** - A unique identifier assigned to the IP Scope. Refer to the boundaryID value obtained from the response of [IP Scope Details](https://www.manageengine.com/products/desktop-central/help/api/cloud/ipscopes-list-ipscopes.html) Api. ### Request Body `application/json` - `JSON Object` - **remoteOfficeID** `string` — Optional - Unique Identifier of the remote office this IP scope will assigned to. Fetch `branch_office_id` from [Get Remote Offices](https://www.manageengine.com/products/desktop-central/help/api/cloud/remoteoffices_getremoteoffice.html) api - **boundaryID** `string` — Optional - Unique identifier of the IP scope boundary. - **ipScopeType** `string` — Optional - Type of IP scope definition. Allowed values: `RANGE` (start-to-end IP address range) or `SUBNET` (network address with subnet mask) - **subnetClass** `string` — Optional - Indicates the subnet class classification. Permitted values: A, B, or C. Required only when ipScopeType is `SUBNET` - **networkAddress** `string` — Optional - The network address of the subnet (for example, `192.168.1.0`). This field is required when ipScopeType is set to `SUBNET` - **subnetMask** `string` — Optional - Subnet mask for the network (e.g., `255.255.255.0`). Required only when ipScopeType is `SUBNET` - **startIPAddress** `string` — Optional - Specifies the starting IP address of the range (for example, `192.168.1.1`). Required only when ipScopeType is `RANGE` - **endIPAddress** `string` — Optional - Specifies the ending IP address of the range (for example, `192.168.1.254`). Required only when ipScopeType is `RANGE` - **description** `string` — Optional - Optional administrator-provided description for the IP scope (max 250 characters) ## Sample Request ```curl curl --request PUT \ --url https://appdomains/dcapi/som/ip-scopes/{ip_scope_id} \ --header 'Accept: application/ipScopeUpdatedStatus.v1+json' \ --header 'Authorization: Zoho-oauthtoken d92d4xxxxxxxxxxxxx15f52' \ --header 'Content-Type: application/ipScopeDetail.v1+json' \ --data '{}' ``` ## Sample Request Body ### Update IP scope with range type ```json { "boundaryID": "301", "description": "HQ Network Range", "remoteOfficeID": "101", "ipScopeType": "RANGE", "startIPAddress": "192.168.1.1", "endIPAddress": "192.168.1.254" } ``` ### Update IP scope with subnet type ```json { "subnetClass": "C", "boundaryID": "302", "description": "Branch Office Subnet", "remoteOfficeID": "102", "ipScopeType": "SUBNET", "subnetMask": "255.255.255.0", "networkAddress": "10.0.1.0" } ``` ## Response Parameters ### HTTP code 200 Response Body — `application/json` - `JSON Object` - **status** `boolean` - Indicates whether the IP scope operation (create, update, or delete) completed successfully - **message** `string` - Descriptive message providing details about the operation outcome or the reason for failure ### 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 ## Sample Response: HTTP 200 ### IP scope updated ```json { "message": "Success", "status": true } ``` ## Sample Response: HTTP 404 ### IP scope not found ```json { "errorCode": "30024", "message": "IP scope does not exist", "statusCode": 404 } ``` ### Remote office not found for given remoteOfficeID ```json { "errorCode": "30028", "message": "Remote office not found", "statusCode": 404 } ``` ## Sample Response: HTTP 412 ### Required IP scope parameters are missing ```json { "errorCode": "30022", "message": "Required IP scope parameters are missing", "statusCode": 412 } ``` ### IP scope with same range already exists ```json { "errorCode": "30023", "message": "An IP scope with the same range already exists", "statusCode": 412 } ``` ### Invalid IP range or subnet mask ```json { "errorCode": "30086", "message": "Invalid IP range or subnet mask parameters", "statusCode": 412 } ``` ![](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.