# Update an existing replication policy Updates an existing replication policy with modified transfer rates, schedule, and time window configuration. ## Endpoint `PUT /dcapi/som/replication-policies/{replication_policy_id}` ## Request Configuration ### Request URL `https://{serverurl}/dcapi/som/replication-policies/{replication_policy_id}` [serverurl](https://www.manageengine.com/products/desktop-central/help/api/cloud/oauth-authentication-endpoint-domain.html) ### Scope `DesktopCentralCloud.SOM.UPDATE` ### Header `Authorization: Zoho-oauthtoken d92d4xxxxxxxxxxxxx15f52` ### Request Parameters #### Request Headers | Parameter | Type | Required | Value | |---|---|---|---| | Content-Type | string | Mandatory | `application/replicationPolicyDetails.v1+json` | | Accept | string | Mandatory | `application/replicationPolicyUpdatedStatus.v1+json` | #### Path Parameters | Parameter | Type | Required | Description | |---|---|---|---| | replication_policy_id | string | Mandatory | Unique identifier of the replication policy. Get the replication policy ID from the [Replication Policies](https://www.manageengine.com/products/desktop-central/help/api/cloud/replication-policies-list-replication-policies.html) API response (`replicationPolicyID`). | #### Request Body Content type: `application/json` | Attribute | Type | Required | Description | |---|---|---|---| | policyName | string | Optional | Administrator-defined display name for the replication policy (max 250 characters). | | description | string | Optional | Optional administrator-provided description for the replication policy (max 1000 characters). | | replicationInterval | string | Optional | Interval in minutes at which the Distribution Server syncs data with the central server. | | dataTransferRate | string | Optional | WAN data transfer rate limit in Kbps. Allowed values: 0 (unlimited), 512, 1024, 2048, 3072, 4096, 5120, 6144, 7168, 8192. | ### Sample Request ```curl curl --request PUT \ --url https://appdomains/dcapi/som/replication-policies/{replication_policy_id} \ --header 'Accept: application/replicationPolicyUpdatedStatus.v1+json' \ --header 'Authorization: Zoho-oauthtoken d92d4xxxxxxxxxxxxx15f52' \ --header 'Content-Type: application/replicationPolicyDetails.v1+json' \ --data '{}' ``` ### Sample Request Body Update a business-hours replication policy: ```json { "policyName": "Business Hours Only", "replicationInterval": 30, "description": "Replicate only during business hours", "dataTransferRate": 512 } ``` ## Response Parameters ### HTTP Code 200 Response body content type: `application/json` | Attribute | Type | Description | |---|---|---| | status | boolean | Indicates whether the replication policy update or deletion completed successfully. | | message | string | Descriptive message confirming the operation or explaining the reason for failure (e.g., 'Replication policy - Business Hours Only has been updated successfully'). | #### Sample Response: HTTP 200 Policy updated: ```json { "message": "Replication policy - Business Hours Only has been updated successfully", "status": true } ``` ### HTTP Code 404 Response body content type: `application/json` | Attribute | Type | Description | |---|---|---| | 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. | #### Sample Response: HTTP 404 Replication policy not found: ```json { "errorCode": "30027", "message": "Replication policy does not exist", "statusCode": 404 } ``` ### HTTP Code 412 Response body content type: `application/json` | Attribute | Type | Description | |---|---|---| | 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 412 Required replication policy parameters are missing: ```json { "errorCode": "30090", "message": "Required replication policy parameters are missing", "statusCode": 412 } ``` Invalid replication interval or insufficient replication window: ```json { "errorCode": "30086", "message": "Invalid replication interval or insufficient replication window", "statusCode": 412 } ``` Replication policy with same name already exists: ```json { "errorCode": "30025", "message": "A replication policy with the same name already exists", "statusCode": 412 } ``` ## Rate Limits **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.