Zimbra offers Open Source email server software and shared calendar for Linux and the Mac
Go Back   Zimbra :: Forums > Zimbra Collaboration Suite > Developers

Welcome to the Zimbra :: Forums!
Welcome, if you would like to post a comment please register. We also encourage you to explore all things Zimbra with our team and members of the community.

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1 (permalink)  
Old 11-05-2009, 10:37 AM
Partner (VAR/HSP)
 
Posts: 92
Default REST Api

We would like to create some webservices around the zimbra backend, preferably using the REST interface for CRUD. Having searched the forums, read the wiki on user migration, the documentation and various blogposts (thanks Roland), it's still unclear which parts can or can't be reached through REST. Some parts seem to support remote queries, and some parts even support create/update operations through POST. As an NE customer, we've contacted support and even they can't seem to provide us with a clear answer.

Of course, there's always SOAP, but that would require a lot of study, since it looks pretty closely bound to the client and we have no way of telling how stable and consistent it will prove to be.

So hopefully, some internal documentation on REST exists which is more complete than the very specific examples found online. And finally, are there plans to expose more if not all of the zimbra functionality through REST?

Zimbra will prove to be a fantastic webservices platform, if these aspects are publicized in a clear and consistent manner.
__________________
Snelbij | Uw informatie ter beschikking.
https://www.snelbij.nl
Reply With Quote
  #2 (permalink)  
Old 11-20-2009, 05:37 AM
Partner (VAR/HSP)
 
Posts: 92
Default

Sorry to bump own post, but I think the REST API deserves some discussion.
After having worked my way through the somewhat terse REST.txt documentation and experimenting with the various calls, I have come to a few conclusions:

- The JSON returned through the REST interface is not deemed valid by several frameworks and online tools. Not sure why.
- Zimbra does not seem to support sending messages through a POST interface
- POSTing new content only seems to be supported for a few object types such as MIME or vcards? Allowing zimbra to create contacts, tasks, events etc. through JSON REST calls would be much more flexible.
- No DELETE?
- Updating an item is not an explicit function, but simply posting it again with a modify flag. Should be PUT.

That's all the time I had. Meanwhile, using a competing product and some JS frameworks, I was able to create a proof-of-concept client in a week. These are some very powerful concepts without the tight coupling of the XML/JSON API.
__________________
Snelbij | Uw informatie ter beschikking.
https://www.snelbij.nl
Reply With Quote
  #3 (permalink)  
Old 02-19-2010, 12:34 PM
Zimbra Employee
 
Posts: 105
Default

Not sure if you got the information you need but as an FYI: we published a Zimbra REST API Reference page here:

ZCS 6.0:Zimbra REST API Reference - Zimbra :: Wiki

Also, to your question about the SOAP APIs, there are a couple things to know:

- The Zimbra SOAP is the same API the zimbra web client uses to communicate with from browser-to-server. So those API interfaces include some advanced functions and are stable. As well, the API has admin commands to act on account/server data.
- You mention that SOAP API being bound to the client. You can call the SOAP API really from any client or technology you require. What might not have been clear, submitting a command to the SOAP API can handle two different formats: XML (in a SOAP envelop) and JSON.
- In the XML case, you do not need to use a client SOAP framework to for the XML, unless you want. You just need to form valid SOAP XML. We've had people even just use curl.
- If you don't want to bother with XML, you can submit in JSON format.
- The SOAP methods are documented in the ZimbraServer/docs/soap.txt and soap*.txt files. We are working to get that information online.

So the SOAP APIs aren't "REST" per se but it's a way of calling into Zimbra via URL and no external libraries required. You submit content to a URL and read a response (in either XML or JSON format).
Reply With Quote
Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes


Similar Threads

Why Join?

Registering let's you ask questions, makes it easier to search, displays any files attached to posts, and notifies you about replies.

blog.zimbra.com




 

SEO by vBSEO ©2011, Crawlability, Inc.