Merge and Store V1 [Deprecated]
Purpose
Using this API, you will be able to store the merged document inside Zoho Workdrive.
Note:
- However, we are planning to deprecate this API on 31st December 2023 due to DRE timeout exception. We have also posted an announcement in our Community forum regarding this.
- We have introduced Merge and Store V2 API by fixing this issue. Hence, we suggest that you move to our V2 API before the V1 API deprecates to avoid any service interruption. Also, the daily merge limit can be increased to more than 1000 credits in V2 API. For more details, please refer this link.
HTTP Request URL
https://{zohoapis_domain}/writer/api/v1/documents/{{document_id}}/merge/store
Path Parameters
Parameter | Data Type | Description |
Mandatory Parameters | ||
document_id | String | Specify a unique id for the writer document. |
Body Parameters
Parameter | Data Type | Description |
Mandatory Parameters | ||
output_settings | { 'doc_name': "<new document name>", 'folder_id': "<folder_id>" , 'output_format':"<pdf/docx/pdfform>", 'password': "<*****>", 'overwrite_existing_file': "<true/false>" }
| Pass the values for 'doc_name' and 'folder_id' via this parameter as JSON.
doc_name -> Specify the name for the merged document.
folder_id -> Specify the id of the folder in which you would like to store the merged document.
output_format (optional) -> Supported formats are pdf, pdfform and docx. Specify a format in which you would like to store the merged document.
If this key is not passed, the merged documents will get stored in Writer format (zdoc) by default.
password (optional) -> Specify a password if you would like to protect the merged document. This param is applicable only for pdf and docx documents.
overwrite_existing_file (optional) -> Use this param, if you wish to replace an existing file stored in Zoho WorkDrive with the merged document. |
You can provide the data in any one of the below formats | ||
merge_data | JSONObject | Pass a String value through 'data' key as JSON Array. |
merge_data_csv_content | File | Provide the required csv content in your API request body. |
merge_data_json_content | File | Provide the required json content in your API request body. |
merge_data_csv_url | url | Provide the required csv url in your API request body. |
merge_data_json_url | url | Provide the required json url in your API request body. |
record_id | String | Instead of using merge_data, you can pass the record_id and we will fetch the data internally. Note: This is applicable only for Zoho CRM, Creator, Recruit and Bigin templates. Maximum length allowed: 25 |
Optional Parameters | ||
sign_service_name | String | This param needs to be configured when you would like to upload the merged document with signer fields to a third party sign service.
Possible values: adobesign and docusign
Note: This param can be used only when the 'output_format' key value inside 'output_settings' parameter is configured as pdf. |
test_mode | Boolean (true/false) | Using this param, you can test the Merge APIs without consuming any credit points. The output file will contain a watermark as it is used only for testing purpose.
Test mode limit: 50 merges/day for an org. |
Note:
- To use this API, an OAuth token should be generated with the following scopes ZohoWriter.documentEditor.ALL, ZohoWriter.merge.ALL and WorkDrive.Files.ALL
- We have also provided an option to configure the values for all the above parameters while creating the document itself.
- If you have saved the merge settings earlier by configuring the parameter values, then we will get those values (by default) if you miss to pass the parameters while sending the API request.
Sample Request
Copiedcurl --location --request POST "https://www.zohoapis.com/writer/api/v1/documents/ponazfea04477109f4681a831e7177d96bc40/merge/store" \
--header "Authorization: Zoho-oauthtoken xxx.yyy.zzz" \
--form "output_settings={\"doc_name\":\"New Document\",\"folder_id\":\"azfa093747109f4681\"}" \
--form "merge_data={\"data\":[{\"name\":\"Amelia\",\"email\":\"amelia@zylker.com\"},{\"name\":\"John\",\"email\":\"john@zylker.com\"}]}"
Copieddocument_id = "fbsa6360a78f53f564dfa9b4a1e79febed569";
fieldInfo = invokeurl
[
url: "https://www.zohoapis.com/writer/api/v1/documents/fbsa6360a78f53f564dfa9b4a1e79febed569/fields"
type: GET
connection:"<connection_name>"
];
fieldsList = fieldInfo.get("fields");
datamap = map();
for each field in fieldsList
{
info field;
}
datamap.put("Name", "Ms.Amelia");
datamap.put("Tamil", "S");
datamap.put("English", "A");
datamap.put("Maths", "A");
datamap.put("Remark", "Good");
outputsettings = Map();
outputsettings.put("doc_name","Student Grade");
outputsettings.put("folder_id","bsa6360a78f53f***"); //Workdrive Folder ID //optional
outputsettings.put("output_format","pdf"); //<docx/pdfform/pdf> //optional
outputsettings.put("password","*****"); //optional
outputsettings.put("overwrite_existing_file","true"); //<true/false> //optional
param = map();
param.put("merge_data",{"data":datamap});
param.put("output_settings",outputsettings);
response = invokeurl
[
url: "https://www.zohoapis.com/writer/api/v1/documents/fbsa6360a78f53f564dfa9b4a1e79febed569/merge/store"
type: POST
parameters: param
connection:"<connection_name>"
];