Zoho Projects API for Developers
This API gets deprecated on September 30th, 2014. Our new REST API V 2.0 reference is here.

Documents API for Developers

How to Get All Project documents ?

Method Name :

https://projectsapi.zoho.com/portal/{PortalName}/api/private/xml/docs

API Description :

Given the authtoken and projId returns all the documents on successful authentication.

Parameters to be passed :

authtoken, projId, auditIndex, range

Sample Call

<form method="post" action="https://projectsapi.zoho.com/portal/{PortalName}/api/private/xml/docs?authtoken=[AuthToken]">
<input type="hidden" name="projId" value=""/>
<input type="hidden" name="auditIndex" value="">
<input type="hidden" name="range" value="">
<input type="submit" value="Get Project Documents">
</form>

Output XML

<response>
   <uri>/api/private/xml/project/docs</uri>
   <result>
   <DocumentDetails>
   <DocumentDetail>
   <doc_id>LRMRg7/jxbP3/KUvuKQOvg==</doc_id>
   <doc_name>api.html</doc_name>
   <filename>api.html</filename>
   <contenttype>text/html</contenttype>
   <lastupload> yyyy-mm-dd HH:MM</lastupload>
   </DocumentDetail>
   <DocumentVerDetail>
   <version>1.1</version>
   <versionlabel>no label</versionlabel>
   <login_uid>Mjh+pwI9Q5M=</login_uid>
   <loginname>Kannan.S</loginname>
   <docsize>10419</docsize>
   <doccomment>html for documentation of api</doccomment>
   </DocumentVerDetail>
   </DocumentDetails>
   </result>
</response>

Output JSON

{response:{uri:'/api/private/json/project/docs',result:{documentdetails:{documentdetail:{doc_id:'LRMRg7/jxbP3/KUvuKQOvg==',
doc_name:'api.html',filename:'api.html',contenttype:'text/html',lastupload: yyyy-mm-dd HH:MM },
documentverdetail:{version:1.1,versionlabel:'nolabel',login_uid:'Mjh+pwI9Q5M=',loginname:'Kannan.S',
docsize:10419,doccomment:'htmlfordocumentationofapi'}}}}}

How to Get Version details of a document ?

Method Name :

https://projectsapi.zoho.com/portal/{PortalName}/api/private/xml/doc/version/

API Description :

Given the authtoken, projId, docid and version or (Allversions) of the document returns the details of the versioned document on successful authentication.

Parameters to be passed :

authtoken, projId, docId and ver

Sample Call

<form method="post" action="https://projectsapi.zoho.com/portal/{PortalName}/api/private/xml/doc/version?authtoken=[AuthToken]">
Project Id:<input type="text" name="projId" value="">
DocId:<input type="text" name="docId" value="">
(Specific version number gives details about the specific version or "allversions" get details about all the versions)
Version:<input type="text" name="ver" value="">
<input type="submit" value="Get Versioned Document">
</form>

Output XML

<response>
   <uri>/api/private/xml/doc/version</uri>
   <result>
   <DocumentDetails>
   <DocumentDetail>
   <doc_id>LRMRg7/jxbP3/KUvuKQOvg==</doc_id>
   <doc_name>Api.html</doc_name>
   <filename>Api.html</filename>
   <contenttype>text/html</contenttype>
   <lastupload> yyyy-mm-dd HH:MM </lastupload>
   </DocumentDetail>
   <DocumentVerDetail>
   <version>1.3</version>
   <versionlabel>no label</versionlabel>
   <loginname>Mjh+pwI9Q5M=</loginname>
   <docsize>170</docsize>
   <doccomment>Uploaded by Vijay.PS</doccomment>
   </DocumentVerDetail>
   <DocumentVerDetail>
   <version>1.2</version>
   <versionlabel>no label</versionlabel>
   <loginname>Mjh+pwI9Q5M=</loginname>
   <docsize>170</docsize>
   <doccomment>Uploaded by Kannan.S</doccomment>
   </DocumentVerDetail>
   <DocumentVerDetail>
   <version>1.1</version>
   <versionlabel>no label</versionlabel>
   <loginname>Mjh+pwI9Q5M=</loginname>
   <docsize>170</docsize>
   <doccomment>uploaded by Suchitra.S</doccomment>
   </DocumentVerDetail>
   </DocumentDetails>
   </result>
</response>

Output JSON

{response:{uri:'/api/private/json/doc/version',result:{documentdetails:{documentdetail:{doc_id:'LRMRg7/jxbP3/KUvuKQOvg==',
doc_name:'Api.html',filename:'Api.html',contenttype:'text/html',lastupload: yyyy-mm-dd HH:MM },
documentverdetail:[{version:1.3,versionlabel:'nolabel',loginname:'Mjh+pwI9Q5M=',docsize:170,doccomment:'UploadedbyVijay.PS'},
{version:1.2,versionlabel:'nolabel',loginname:'Mjh+pwI9Q5M=',docsize:170,doccomment:'UploadedbyKannan.S'},
{version:1.1,versionlabel:'nolabel',loginname:'Mjh+pwI9Q5M=',docsize:170,doccomment:'uploadedbySuchitra.S'}]}}}}

How to Add a document ?

Method Name :

https://projectsapi.zoho.com/portal/{PortalName}/api/private/xml/doc/add

API Description :

Given the authtoken, projid, filecomment, folderId, tags and the file uploads the file on successful authentication.

Parameters to be passed :

authtoken, projId, name, folderid, tags, uploadstat

 

Sample Call

<form method="post" action="https://projectsapi.zoho.com/portal/{PortalName}/api/private/xml/doc/add?authtoken=[AuthToken]" enctype="multipart/form-data">
ProjectId<input type="text" name="projId" value=""/>
DocumentName<input type="text" name="docname" value=""/>
FolderId<input type="text" name="folderid" value="">
Tags<input type="text" name="tags" value="">
Select file<input name="uploaddoc" class="titlebox" size="50" type="file"> <input type="submit" value="Add New Document">
</form>

Output XML

<result>Request processed successfully.</result>

Output JSON

{result:'Request processed successfully.'}

How to Upload versioned document ?

Method Name :

https://projectsapi.zoho.com/portal/{PortalName}/api/private/xml/doc/add

API Description :

Given the authtoken, projId, docname,folderid,tag,documentid,uploadstat(as update) uploads the next version on successful authentication.

Parameters to be passed :

authtoken, projId, docname, folderId, tag, uploadstat as update, documentId and the file

Sample Call

<form method="post" action="https://projectsapi.zoho.com/portal/{PortalName}/api/private/xml/doc/updlatestver?authtoken=[AuthToken]" enctype= "multipart/form-data">
ProjectId<input type="text" name="projId" value=""/>
File Comment<input type="text" name="docname" value=""/>
FolderId<input type="text" name="folderid" value="">
Tags<input type="text" name="tags" value="">
DocumentId<input type="text" name="docid" value="">
Select file<input name="uploaddoc" type="file">
<input type="submit" value="upload Next Version">
</form>

Output XML

<result>Request processed successfully.</result>

Output JSON

{result:'Request processed successfully.'}

How to Edit a tag ?

Method Name :

https://projectsapi.zoho.com/portal/{PortalName}/api/private/xml/doc/update

API Description :

Given the authtoken, projId, tag and documentid edits the tag on successful authentication.

Parameters to be passed :

authtoken, projId, tag and documentId

Sample Call

<form method="post" action="https://projectsapi.zoho.com/portal/{PortalName}/api/private/xml/doc/update?authtoken=[AuthToken]">
ProjectId<input type="text" name="projId" value=""/>
DocId<input type="text" name="docId" value=""/>
Tag<input type="text" name="tags" value="">
<input type="submit" value="Edit Tag">
</form>

Output XML

<response>
   <uri>/api/private/xml/doc/update</uri>
   <result>
   <DocumentDetails>
   <DocumentTagDetail>
   <tag_id>LRMRg7/jxbMbNJLkAZf07Q==</tag_id>
   <filetag_id>LRMRg7/jxbOPxr+7U0MPcQ==</filetag_id>
   <documentid>LRMRg7/jxbP3/KUvuKQOvg==</documentid>
   </DocumentTagDetail>
   </DocumentDetails>
   </result>
</response>

Output JSON

{response:{uri:'/api/private/json/doc/update',result:{documentdetails:{documenttagdetail:{tag_id:'LRMRg7/jxbMbNJLkAZf07Q==',
filetag_id:'LRMRg7/jxbOPxr+7U0MPcQ==',documentid:'LRMRg7/jxbP3/KUvuKQOvg=='}}}}}

How to Get tags ?

Method Name :

https://projectsapi.zoho.com/portal/{PortalName}/api/private/xml/doc/filetags

API Description :

Given the authtoken, projId returns the tag details on successful authentication.

Parameters to be passed :

authtoken, projId

Sample Call

<form method="post" action="https://projectsapi.zoho.com/portal/{PortalName}/api/private/xml/doc/filetags?authtoken=[AuthToken]&ticket=[ticket]">
ProjectId<input type="text" name="projId" value=""/>
<input type="submit" value="Get Tags">
</form>

Output XML

<response>
   <uri>/api/private/xml/project/doc/filetags</uri>
   <result>
   <DocumentTagDetails>
   <DocumentTagDetail>
   <tag_id>LRMRg7/jxbMbNJLkAZf07Q==</tag_id>
   <filetag_id>LRMRg7/jxbM26uMQOdNKEQ==</filetag_id>
   <document_id>LRMRg7/jxbPNXhGBbUi3PQ==</document_id>
   <tag_id>LRMRg7/jxbMbNJLkAZf07Q==</tag_id>
   <tag_name>Important</tag_name>
   </DocumentTagDetail>
   <DocumentTagDetail>
   <tag_id>LRMRg7/jxbMbNJLkAZf07Q==</tag_id>
   <filetag_id>LRMRg7/jxbMsw9ky85V00Q==</filetag_id>
   <document_id>LRMRg7/jxbM1jEB+8t1iWA==</document_id>
   <tag_id>LRMRg7/jxbMbNJLkAZf07Q==</tag_id>
   <tag_name>privacy</tag_name>
   </DocumentTagDetail>
   </DocumentTagDetails>
   </result>
</response>

Output JSON

{response:{uri:'/api/private/json/project/doc/filetags',result:{documenttagdetails:{documenttagdetail:[{tag_id:['LRMRg7/jxbMbNJLkAZf07Q==',
'LRMRg7/jxbMbNJLkAZf07Q=='],filetag_id:'LRMRg7/jxbM26uMQOdNKEQ==',document_id:'LRMRg7/jxbPNXhGBbUi3PQ==',tag_name:'Important'},
{tag_id:['LRMRg7/jxbMbNJLkAZf07Q==','LRMRg7/jxbMbNJLkAZf07Q=='],filetag_id:'LRMRg7/jxbMsw9ky85V00Q==',
document_id:'LRMRg7/jxbM1jEB+8t1iWA==',tag_name:'privacy'}]}}}}

How to Delete a file ?

Method Name :

https://projectsapi.zoho.com/portal/{PortalName}/api/private/xml/doc/delete

API Description :

Given the authtoken, projId, fileid, folderid, filename deletes a file on successful authentication.

Parameters to be passed :

authtoken, projId, fileid, folderid

Sample Call

<form method="post" action="https://projectsapi.zoho.com/portal/{PortalName}/api/private/xml/doc/delete?authtoken=[AuthToken]">
ProjectId<input type="text" name="projId" value=""/>
Fileid<input type="text" name="fileid" value=""/>
Folderid<input type="text" name="folderid" value="">
<input type="submit" value="Delete File" name="submit">
</form>

Output XML

<result>Request processed successfully.</result>

Output JSON

{result:'Request processed successfully.'}

How to Get documents in a folder ?

Method Name :

https://projectsapi.zoho.com/portal/{PortalName}/api/private/xml/doc/getflddocs

API Description :

Given the ticket, apikey, projId, folderid gets the documents in the folder on successful authentication.

Parameters to be passed :

authtoken, projId, folderid

Sample Call

<form method="post" action="https://projectsapi.zoho.com/portal/{PortalName}/api/private/xml/doc/getflddocs?authtoken=[AuthToken]">
ProjectId<input type="hidden" name="projId" value=""/>
Folderid<input type="hidden" name="folderid" value="">
<input type="hidden" name="auditIndex" value="">
<input type="hidden" name="range" value="">
<input type="submit" value="Get Folder Docs">
</form>

Output XML

<response>
   <uri>/api/private/xmldoc/getflddocs</uri>
   <result>
   <DocumentDetails>
   <DocumentDetail>
   <doc_id>LRMRg7/jxbPs3+q9JdRfow==</doc_id>
   <doc_name>test.doc</doc_name>
   <filename>test.doc</filename>
   <contenttype>application/msword</contenttype>
   <lastupload> yyyy-mm-dd HH:MM</lastupload>
   <DocumentFolderDetail>
   <folder_id>LRMRg7/jxbP8YP+k7cTMCg==</folder_id>
   <folder_name>Created thro API</folder_name>
   <isprojdiscfolder>false</isprojdiscfolder>
   <is_private>false</is_private>
   </DocumentFolderDetail>
   </DocumentDetail>
   </result>
</response>

Output JSON

{response:{uri:'/api/private/jsondoc/getflddocs',result:{documentdetails:{documentdetail:{doc_id:'LRMRg7/jxbPs3+q9JdRfow==',
doc_name:'test.doc',filename:'test.doc',contenttype:'application/msword',lastupload: yyyy-mm-dd HH:MM,
documentfolderdetail:{folder_id:'LRMRg7/jxbP8YP+k7cTMCg==',folder_name:'CreatedthroAPI',isprojdiscfolder:'false',is_private:'false'}}}}}}

How to download documents ?

Method Name :

https://projectsapi.zoho.com/portal/{PortalName}/api/private/xml/doc/dloadfile

API Description :

Given the authtoken, projId, folderid, contenttype, filename, version,documentid, projectstatus returns the url to download the document on successful authentication.

Parameters to be passed :

authtoken, projId, folderid, contenttype, filename, version, documentid, projectstatus

Sample Call

<form method="post" action="https://projectsapi.zoho.com/portal/{PortalName}/api/private/xml/doc/dloadfile?authtoken=[AuthToken]">
ProjectId<input type="text" name="projId" value=""/>
Folderid<input type="text" name="folderid" value="">
FileName<input type="text" value="" name="filename">
Version<input type="text" value="" name="ver">
DocId<input type="text" value="" name="docId">
<input type="submit" value="Download File">
</form>

Output XML

<result>
https://projectsapi.zoho.com/portal/{PortalName}/saveAttachment/031_l.jpg?file=b4s5ePmHlWT3Q%2B6TCP%2BOxUy6WWiiKU%2Fs
</result>

Output JSON

{result:'https://projectsapi.zoho.com/portal/{PortalName}/saveAttachment/031_l.jpg?file=b4s5ePmHlWT3Q%2B6TCP%2BOxUy6WWiiKU%2Fs'}

How to Get folders ?

Method Name :

https://projectsapi.zoho.com/portal/{PortalName}/api/private/xml/docflds

API Description :

Given the authtoken, projId gets the folders on successful authentication.

Parameters to be passed :

authtoken, projId

Sample Call

<form method="post" action="https://projectsapi.zoho.com/portal/{PortalName}/api/private/xml/docflds?authtoken=[AuthToken]">
ProjectId<input type="text" name="projId" value=""/>
<input type="submit" value="Get ProjFolders">
</form>

Output XML

<response>
   <uri>/api/private/xml/docflds</uri>
   <result>
   <FolderDetails>
   <FolderDetail>
   <folder_id>LRMRg7/jxbP8YP+k7cTMCg==</folder_id>
   <folder_name>Privacy</folder_name>
   <isprojdiscfolder>false</isprojdiscfolder>
   </FolderDetail>
   <FolderDetail>
   <folder_id>LRMRg7/jxuioYP+k7cTMCg==</folder_id>
   <folder_name>Discussion</folder_name>
   <isprojdiscfolder>true</isprojdiscfolder>
   </FolderDetail>
   </FolderDetails>
   </result>
</response>

Output JSON

{response:{uri:'/api/private/json/docflds',result:{folderdetails:{folderdetail:[{folder_id:'LRMRg7/jxbP8YP+k7cTMCg==',
folder_name:'Privacy',isprojdiscfolder:'false'},{folder_id:'LRMRg7/jxuioYP+k7cTMCg==',
folder_name:'Discussion',isprojdiscfolder:'true'}]}}}}

How to Add folders ?

Method Name :

https://projectsapi.zoho.com/portal/{PortalName}/api/private/xml/docfld/add/

API Description :

Given the authtoken, projId and the foldername adds the folder on successful authentication.

Parameters to be passed :

authtoken, projId, foldername

Sample Call

<form method="post" action="https://projectsapi.zoho.com/portal/{PortalName}/api/private/xml/docfld/add?authtoken=[AuthToken]">
ProjectId<input type="text" name="projId" value=""/>
Fld Name<input type="text" name="fldName" value="">
<input type="submit" value="Add Folders">
</form>

Output XML

<response>
   <uri>/api/private/xml/docfld/add/</uri>
   <result>
   <FolderDetails>
   <FolderDetail>
   <folder_id>LRMRg7/jxbMbNJLkAZf07Q==</folder_id>
   <folder_name>Document Folder</folder_name>
   <isprojdiscfolder>false</isprojdiscfolder>
   </FolderDetail>
   </FolderDetails>
   </result>
   </response>

Output JSON

{response:{uri:'/api/private/json/docfld/add/',result:{folderdetails:{folderdetail:{folder_id:'LRMRg7/jxbMbNJLkAZf07Q==',
folder_name:'DocumentFolder',isprojdiscfolder:'false'}}}}}

How to Update folders ?

Method Name :

https://projectsapi.zoho.com/portal/{PortalName}/api/private/xml/docfld/update/

API Description :

Given the authtoken, projId, folderId and the foldername adds the folder on successful authentication.

Parameters to be passed :

authtoken, projId, folderId, foldername

Sample Call

<form method="post" action="https://projectsapi.zoho.com/portal/{PortalName}/api/private/xml/docfld/update?authtoken=[AuthToken]">
ProjectId<input type="text" name="projId" value=""/>
Fld Name<input type="text" name="fldName" value="">
Folder ID<input type="text" name="fldid" value="">
<input type="submit" value="update Folder Name">
</form>

Output XML

<response>
   <uri>/api/private/xml/docfld/update/</uri>
   <result>
   <FolderDetails>
   <FolderDetail>
   <folder_id>LRMRg7/jxbMbNJLkAZf07Q==</folder_id>
   <folder_name>document folder updated</folder_name>
   <isprojdiscfolder>false</isprojdiscfolder>
   </FolderDetail>
   </FolderDetails>
   </result>
</response>

Output JSON

{response:{uri:'/api/private/json/docfld/update/',result:{folderdetails:{folderdetail:{folder_id:'LRMRg7/jxbMbNJLkAZf07Q==',
folder_name:'documentfolderupdated',isprojdiscfolder:'false'}}}}}

How to Delete folder ?

Method Name :

https://projectsapi.zoho.com/portal/{PortalName}/api/private/xml/docfld/delete

API Description :

Given the authtoken, projId, folderId deletes the folder on successful authentication.

Parameters to be passed :

authtoken, projId, fldId

Sample Call

<form method="post" action="https://projectsapi.zoho.com/portal/{PortalName}/api/private/xml/docfld/delete?authtoken=[AuthToken]">
ProjectId<input type="text" name="projId" value=""/>
Folder ID<input type="text" name="fldid" value="">
<input type="submit" value="Delete Folder">
</form>

Output XML

<result>
   Request processed successfully
</result>

Output JSON

{result:'Request processed successfully'}

Top