|
About Zoho Planner APITo support other application mashups and development, Zoho Planner provides simple APIs (Application Programming Interface). |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Accessing the APIThe Zoho Planner API uses simple REST calls. All calls are POST requests to a URL of the form http://planner.zoho.com/api/private/[format]/methodname?parameters where, methodname is one of the API methods documented below. parameters are query parameters passed as POST input. format is one of the required output formats (xml/json) All methods return an XML or JSON document whose top-level object is a <response> containing method-dependent information. |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User AuthenticationThe users need to have an 'API Key' as well as a 'Ticket ID' for accessing the Zoho API. The API key will be used to track usage and the Ticket ID is required for authenticating the user for a particular Zoho service. How to get the API Key?
Users can request for the API Key by registering themselves at the below given url. Once we receive the request, we will send the API Key to the User's Email ID. Please do not distribute or use the key for creating multiple services (you should request for an API key for each individual service that you plan to create). Any violations will result in the cancellation of the API Key. Getting the API Key is a onetime process. Get your API key now How to generate Ticket ID? To generate the ticket ID, users have to send the authenticated request to Zoho Accounts over a secured connection in the following URL format: https://accounts.zoho.com/login?servicename=ZohoPlanner&silent=true&LOGIN_ID=[Zoho
ID/Email ID]&PASSWORD=[Password]&FROM_AGENT=true
The mandatory list of parameters to be passed in the URL are:
Response format: #Comment
[name1]=[value1]\n [name2]=[value2]\n [name3]=[value3]\n Example: #Thu Oct 26
02:17:49 PST 2006
WARNING= TICKET=543754375sdferuecmvc458545432dfffqq RESULT=TRUE Parameters and Values
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
How to get all pages
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
How to get all lists
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
How to create a new list
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
How to delete a list
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
How to update a list
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
How to get all list items
|
| Method name | http://planner.zoho.com/api/private/xml/listitems |
| API description | Given ticket, apikey and listId, returns all the lists in that page on successful authentication. |
| Parameters to be passed | ticket, apikey and listId |
| Sample call | <form method="post"
action="http://planner.zoho.com/api/private/xml/listitems?ticket=[Ticket]&apikey=[ApiKey]"> <input type="hidden" name="listId" value=" 47701"><input type="submit" value="Get All List Items" name="submit"> </form> |
| Output XML | <response
uri="/api/private/xml/listitems"> |
| Method name | http://planner.zoho.com/api/private/xml/listitem/add |
| API description | Given ticket, apikey and one of the listId from the list and the listItemName, returns the newly created listItem in that list on sucessful authentication. |
| Parameters to be passed | ticket, apikey, listId and listItem |
| Sample call | <form method="post"
action="http://planner.zoho.com/api/private/xml/listitem/add?ticket=[Ticket]&apikey=[ApiKey]"> <input type="hidden" name="listId" value="134"> <input type="hidden" name="listItem" value="List Item through api"> <input type="submit" value="Create List Item" name="submit"> </form> |
| Output XML | <response
uri="/api/private/xml/listitem/add"> |
| Method name | http://planner.zoho.com/api/private/xml/listitem/update/(listItemId) |
| API description | Given ticket, apikey and one of the listItemId from the list and the listItem, returns the updated listItem in that list on sucessful authentication. |
| Parameters to be passed | ticket, apikey, listItemId and listItem |
| Sample call | <form method="post"
action="http://planner.zoho.com/api/private/xml/listitem/update/130801?ticket=[Ticket]&apikey=[ApiKey]"><input type="hidden" name="listItem" value=" Updating through
api"><input type="submit" value="Update List Item" name="submit"> </form> |
| Output XML | <response
uri="/api/private/xml/listitem/update/130801"> |
| Method name | http://planner.zoho.com/api/private/xml/listitem/complete/(listItemId) |
| API description | Given the ticket, apikey, listItemId from the listItems and isCompleted as true or false, marks the listItem as completed or incomplete on sucessful authentication. |
| Parameters to be passed | ticket, apikey, isCompleted (either true or false) |
| Sample call | <form method="post"
action="http://planner.zoho.com/api/private/xml/listitem/complete/130801?ticket=[Ticket]&apikey=[ApiKey]"><input type="hidden" name="isCompleted" value=" true"><input type="submit" value="Complete List Item" name="submit"> </form> |
| Output XML | <response
uri="/api/private/xml/listitem/complete/130801"> |
| Method name | http://planner.zoho.com/api/private/xml/listitem/delete/(listItemId) |
| API description | Given ticket, apikey and listItemId, deletes the specified list in that page on successful authentication. |
| Parameters to be passed | ticket, apikey |
| Sample call | <form method="post"
action="http://planner.zoho.com/api/private/xml/list/delete/130801?ticket=[Ticket]&apikey=[ApiKey]"><input type="submit" value="Delete List Item" name="submit"> </form> |
| Output XML | <response
uri="/api/private/xml/listitem/delete/130801"> |
| Method name | http://planner.zoho.com/api/private/xml/page/content/(pageId) |
| API description | Given ticket, apikey and one of the user's pageId from the list of pages, returns the whole page content on successful authentication. |
| Parameters to be passed | ticket, apikey |
| Sample call | <form method="post"
action="http://planner.zoho.com/api/private/xml/page/content/7678?ticket=[Ticket]&apikey=[ApiKey]"><input type="submit" value="Show Page Content" name="submit"> </form> |
| Output XML | <response
uri="/api/private/xml/page/content/7678"> |
| Method name | http://planner.zoho.com/api/private/xml/page/add |
| API description | Given the ticket, apikey, pageTitle, the api will create a new page on successful authentication. |
| Parameters to be passed | ticket, apikey, pageTitle |
| Sample call | <form method="post"
action="http://planner.zoho.com/api/private/xml/page/add?ticket=[Ticket]&apikey=[ApiKey]"><input type="hidden" name="pageTitle" value="Created thro API"> <input type="submit" value="Add New Page" name="submit"> </form> |
| Output XML | <response
uri="/api/private/xml/page/add"> |
| Method name | http://planner.zoho.com/api/private/xml/page/delete/(pageId) |
| API description | Given the ticket, apikey and one of the user's pageId (except home page), will delete that page on successful authentication. |
| Parameters to be passed | ticket, apikey |
| Sample call | <form method="post"
action="http://planner.zoho.com/api/private/xml/page/delete/69001?ticket=[Ticket]&apikey=[ApiKey]"><input type="submit" value="Delete Page" name="submit"> </form> |
| Output XML | <response
uri="/api/private/xml/page/delete/69001"> |
| Method name | http://planner.zoho.com/api/private/xml/page/clear/(pageId) |
| API description | Given ticket, apikey and one of the user's pageId, will clear all the contents in that page on successful authentication. |
| Parameters to be passed | ticket, apikey |
| Sample call | <form method="post"
action="http://planner.zoho.com/api/private/xml/page/clear/69001?ticket=[Ticket]&apikey=[ApiKey]"><input type="submit" value="Clear Page" name="submit"> </form> |
| Output XML | <response
uri="/api/private/xml/page/clear/68702"> |
| Method name | http://planner.zoho.com/api/private/xml/title/update |
| API description | Given ticket, apikey, one of the user's pageId and pageTitle, updates the pageTitle on successful authentication. |
| Parameters to be passed | ticket, apikey, pageId, pageTitle |
| Sample call | <form method="post"
action="http://planner.zoho.com/api/private/xml/title/update?ticket=[Ticket]&apikey=[ApiKey]"><input type="hidden" name="pageId" value=" 68702"><input type="hidden" name="pageTitle" value="Updated thro API"> <input type="submit" value="Update Title" name="submit"> </form> |
| Output XML | <response
uri="/api/private/xml/title/update"> |
| Method name | http://planner.zoho.com/api/private/xml/description/update |
| API description | Given ticket, apikey, one of the user's pageId and pageDesc, updates the pageDesc on successful authentication. |
| Parameters to be passed | ticket, apikey, pageId, pageDesc |
| Sample call | <form method="post"
action="http://planner.zoho.com/api/private/xml/description/update?ticket=[Ticket]&apikey=[ApiKey]"><input type="hidden" name="pageId" value=" 68702"><input type="hidden" name="pageDesc" value="Updated thro API"> <input type="submit" value="Update Description" name="submit"> </form> |
| Output XML | <response
uri="/api/private/xml/description/update"> |
| Method name | http://planner.zoho.com/api/private/xml/publicsharing/share |
| API description | Given ticket, apikey and one of the user's pageId, the page is shared public on successful authentication. |
| Parameters to be passed | ticket, apikey, pageId |
| Sample call | <form method="post"
action="http://planner.zoho.com/api/private/xml/publicsharing/share?ticket=[Ticket]&apikey=[ApiKey]"><input type="hidden" name="pageId" value=" 68702"><input type="submit" value="Share To Public" name="submit"> </form> |
| Output XML | <response
uri="/api/private/xml/publicsharing/share"> |
| Method name | http://planner.zoho.com/api/private/xml/publicsharing/remove |
| API description | Given ticket, apikey and one of the user's pageId, the public share is removed on successful authentication. |
| Parameters to be passed | ticket, apikey, pageId |
| Sample call | <form method="post"
action="http://planner.zoho.com/api/private/xml/publicsharing/remove?ticket=[Ticket]&apikey=[ApiKey]"><input type="hidden" name="pageId" value=" 68702"><input type="submit" value="Remove Public Share" name="submit"> </form> |
| Output XML | <response
uri="/api/private/xml/publicsharing/remove"> |
| Method name | http://planner.zoho.com/api/private/xml/notes |
| API description | Given ticket, apikey and one of the user's pageId, all the notes in that page will be listed on successful authentication. |
| Parameters to be passed | ticket, apikey, pageId |
| Sample call | <form method="post"
action="http://planner.zoho.com/api/private/xml/notes?ticket=[Ticket]&apikey=[ApiKey]"><input type="hidden" name="pageId" value=" 7678"><input type="submit" value="Get All Notes" name="submit"> </form> |
| Output XML | response
uri="/api/private/xml/notes"> |
| Method name | http://planner.zoho.com/api/private/xml/note/add |
| API description | Given the ticket, apikey, pageId from the list of pages and noteTitle or noteBody, creates a new notes in that page on successful authentication. |
| Parameters to be passed | ticket, apikey, pageId, pageTitle or pageBody |
| Sample call | <form method="post"
action="http://planner.zoho.com/api/private/xml/note/add?ticket=[Ticket]&apikey=[ApiKey]"><input type="hidden" name="pageId" value=" 7678"><input type="hidden" name="noteTitle" value=" Added via API"><input type="hidden" name="noteBody" value=" Body throu api"><input type="submit" value="Add Notes" name="submit"> </form> |
| Output XML | <response
uri="/api/private/xml/note/add"> |
| Method name | http://planner.zoho.com/api/private/xml/note/update/(noteId) |
| API description | Given the ticket, apikey, noteId from the list and noteTitle or noteBody, updates the notes in that page on successful authentication. |
| Parameters to be passed | ticket, apikey, noteId, pageTitle or pageBody |
| Sample call | <form method="post"
action="http://planner.zoho.com/api/private/xml/note/update/38701?ticket=[Ticket]&apikey=[ApiKey]"><input type="hidden" name="noteTitle" value=" Updated via API"><input type="hidden" name="noteBody" value=" Body updated throu
api"><input type="submit" value="Update Notes" name="submit"> </form> |
| Output XML | <response
uri="/api/private/xml/note/update/38701"> |
| Method name | http://planner.zoho.com/api/private/xml/note/delete/(noteId) |
| API description | Given the ticket, apikey and noteId from the list, deletes the notes on successful authentication. |
| Parameters to be passed | ticket, apikey |
| Sample call | <form method="post"
action="http://planner.zoho.com/api/private/xml/note/delete/38701?ticket=[Ticket]&apikey=[ApiKey]"><input type="submit" value="Delete Notes" name="submit"> </form> |
| Output XML | <response
uri="/api/private/xml/note/delete/38701"> |
| Method name | http://planner.zoho.com/api/private/xml/tags |
| API description | Given the ticket, apikey and pageId from the list of pages, shows all the tags in that page on successful authentication. |
| Parameters to be passed | ticket, apikey and pageId |
| Sample call | <form method="post"
action="http://planner.zoho.com/api/private/xml/tags?ticket=[Ticket]&apikey=[ApiKey]"><input type="hidden" name="pageId" value="7678"> <input type="submit" value="Show Page Tags" name="submit"> </form> |
| Output XML | <response
uri="/api/private/xml/tags"> |
| Method name | http://planner.zoho.com/api/private/xml/tag/add |
| API description | Given the ticket, apikey, pageId from the list of pages and the tagsList, all the tags gets added in that page on successful authentication. |
| Parameters to be passed | ticket, apikey, pageId, tagsList (Tags separated by space) |
| Sample call | <form method="post"
action="http://planner.zoho.com/api/private/xml/tag/add?ticket=[Ticket]&apikey=[ApiKey]"><input type="hidden" name="pageId" value="7678"> <input type="hidden" name="tagsList" value="release work items"> <input type="submit" value="Add Page Tags" name="submit"> </form> |
| Output XML | <response
uri="/api/private/xml/tag/add"> |
| Method name | http://planner.zoho.com/api/private/xml/tag/delete/(tagId) |
| API description | Given the ticket, apikey, pageId from the list of pages and the tagId, all the tags with this id gets deleted from that page on successful authentication. |
| Parameters to be passed | ticket, apikey, pageId |
| Sample call | <form method="post"
action="http://planner.zoho.com/api/private/xml/tag/delete/4?ticket=[Ticket]&apikey=[ApiKey]"><input type="hidden" name="pageId" value="7678"> <input type="submit" value="Delete Page Tag" name="submit"> </form> |
| Output XML | <response
uri="/api/private/xml/tag/delete/4"> |
| Method name | http://planner.zoho.com/api/private/xml/appointments/(open(or)closed) |
| API description | Given the ticket, apikey and pageId from the list of pages all the open appointments in that page will be listed on successful authentication. |
| Parameters to be passed | ticket, apikey, pageId |
| Sample call | <form method="post"
action="http://planner.zoho.com/api/private/xml/appointments/open(or)closed?ticket=[Ticket]&apikey=[ApiKey]"><input type="hidden" name="pageId" value="7678"> <input type="submit" value="Get Open Appointments" name="submit"> </form> |
| Output XML | <response
uri="/api/private/xml/appointments/open"> |
| Method name | http://planner.zoho.com/api/private/xml/appointment/add |
| API description | Given the ticket, apikey, pageId, appTitle, schDate, schTime, remindMe (before) and repeatInt a new appointment will be added in that page on successful authentication. |
| Parameters to be passed | ticket, apikey, pageId, appTitle,
schDate(MM-dd-yyyy), schTime(HH:mm),
remindMe(on time, 15 mins, 30 mins, 1 hour, 2 hours, 6 hours, 12 hours,
1 day), repeatInt(only once, every 1 hour, every 2 hours, every 3
hours, every 4 hours, every 6 hours, every 8 hours, every 12 hours,
every day, every week, every month, every year) |
| Sample call | <form method="post"
action="http://planner.zoho.com/api/private/xml/appointment/add?ticket=[Ticket]&apikey=[ApiKey]"><input type="hidden" name="pageId" value="7678"> <input type="text" name="appTitle" value="Added via api"> <input type="text" name="schDate" value="06-26-2007"> <input type="text" name="schTime" value="12:05"> <input type="text" name="remindMe" value="on time"> <input type="text" name="repeatInt" value="only once"> <input type="submit" value="Add Appointment" name="submit"> </form> |
| Output XML | <response
uri="/api/private/xml/appointment/add"> |
| Method name | http://planner.zoho.com/api/private/xml/appointment/update |
| API description | Given the ticket, apikey, appId, pageId, appTitle, schDate, schTime, remindMe (before) and repeatInt a new appointment will be added in that page on successful authentication. |
| Parameters to be passed | ticket, apikey, appId, pageId,
appTitle, schDate(MM-dd-yyyy), schTime(HH:mm),
remindMe(on time, 15 mins, 30 mins, 1 hour, 2 hours, 6 hours, 12 hours,
1 day), repeatInt(only once, every 1 hour, every 2 hours, every 3
hours, every 4 hours, every 6 hours, every 8 hours, every 12 hours,
every day, every week, every month, every year) |
| Sample call | <form method="post"
action="http://planner.zoho.com/api/private/xml/appointment/update?ticket=[Ticket]&apikey=[ApiKey]"><input type="hidden" name="appId" value="76718"> <input type="hidden" name="pageId" value="7678"> <input type="text" name="appTitle" value="Updated via api"> <input type="text" name="schDate" value="06-26-2007"> <input type="text" name="schTime" value="12:05"> <input type="text" name="remindMe" value="on time"> <input type="text" name="repeatInt" value="only once"> <input type="submit" value="Update Appointment" name="submit"> </form> |
| Output XML | <response
uri="/api/private/xml/appointment/update"> |
| Method name | http://planner.zoho.com/api/private/xml/appointment/delete/(appId) |
| API description | Given the ticket, apikey and appId the appointment will be deleted on successful authentication. |
| Parameters to be passed | ticket, apikey, appId |
| Sample call | <form method="post"
action="http://planner.zoho.com/api/private/xml/appointment/delete/2850?ticket=[Ticket]&apikey=[ApiKey]"><input type="submit" value="Delete Appointment" name="submit"> </form> |
| Output XML | <response
uri="/api/private/xml/appointment/delete/2850"> |
| Method name | http://planner.zoho.com/api/private/xml/timezone/get |
| API description | Given the ticket, apikey returns the time zone on successful authentication. |
| Parameters to be passed | ticket, apikey |
| Sample call | <form method="post"
action="http://planner.zoho.com/api/private/xml/timezone/get?ticket=[Ticket]&apikey=[ApiKey]"><input type="submit" value="Get Time Zone" name="submit"> </form> |
| Output XML | <response
uri="/api/private/xml/appointment/timezone/get"> </TimeZone> </result> |
| Method name | http://planner.zoho.com/api/private/xml/timezone/set |
| API description | Given the ticket, apikey and timeZone the time zone will be added/updated on successful authentication. |
| Parameters to be passed | ticket, apikey, timeZone_iam (allowed values) |
| Sample call | <form method="post"
action="http://planner.zoho.com/api/private/xml/timezone/set?ticket=[Ticket]&apikey=[ApiKey]"><input type="text" name="timeZone_iam" value="(GMT-05:00) Eastern Time (US & Canada)"> <input type="submit" value="Set Time Zone" name="submit"> </form> |
| Output XML | <response
uri="/api/private/xml/appointment/timezone/set">(GMT-05:00)
Eastern Time (US & Canada)</time_zone> </TimeZone>
</result> |
General - This entails authentication errors as well as internal server errors while processing the request.The error report will be in the form of HTTP error code and an XML error response. The list of error codes and a generalised XML error response is mentioned below:
Input - This error may occur as a result of user missing out on providing mandatory arguments for the method, incorrect parameter values etc.
| Code | Category | Description |
| 4400 |
General | Error occurred while
parsing the URI |
| 4401 |
General |
Authentication failed because of invalid "ticket" |
| 4402 | General |
The specified operation (e.g. HTTP GET or POST) is not supported for this request |
| 4405 | General |
No such Method. Incorrect method name |
| 4890 | General |
The "apikey" specified in the request is invalid. |
| 4891 | General | Bad request URI. |
| 4832 |
Input |
Missing
argument error. Mandatory arguments, required for processing this
request is missing |
| 4833 | Input | Value specified for a parameter is of wrong type |