# Create a new replication policy Creates a new replication policy with transfer rates, schedule, and time window configuration. ## Endpoint `POST /dcapi/som/replication-policies` ## Request URL `https://[{serverurl}](https://www.manageengine.com/products/desktop-central/help/api/cloud/oauth-authentication-endpoint-domain.html)/dcapi/som/replication-policies` ## Scope `DesktopCentralCloud.SOM.CREATE` ## Header `Authorization: Zoho-oauthtoken d92d4xxxxxxxxxxxxx15f52` ## Request Parameters ### Request Headers - **Content-Type** `string` — **Mandatory**: `application/replicationPolicyDetails.v1+json` - **Accept** `string` — **Mandatory**: `application/replicationPolicyAddStatus.v1+json` ### Request Body `application/json` - `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 POST \ --url https://appdomains/dcapi/som/replication-policies \ --header 'Accept: application/replicationPolicyAddStatus.v1+json' \ --header 'Authorization: Zoho-oauthtoken d92d4xxxxxxxxxxxxx15f52' \ --header 'Content-Type: application/replicationPolicyDetails.v1+json' \ --data '{}' ``` ### Sample Request Body Create 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 — `application/json` - `status` `boolean` Indicates whether the replication policy was created successfully. - `message` `string` Descriptive message confirming creation or explaining the reason for failure (e.g., 'Replication policy - Business Hours Only has been created successfully'). - `data` `JSON Object` Contains the identifier of the newly created replication policy. ### HTTP Code 412 Response Body — `application/json` - `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 - `412` — HTTP code ## Sample Response: HTTP 200 Policy created. ```json { "data": { "replicationPolicyID": 5 }, "message": "Replication policy - Business Hours Only has been created successfully", "status": true } ``` ## 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 } ``` ## API Rate Limit **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.