Web Calendar Access Protocol

Web Calendar Access Protocol (WCAP) is a protocol for remote client-server calendar access and scheduling based on the XML, HTTP, iCalendar, and vCard Internet standards. WCAP was created for use with the product that eventually became Sun Java System Calendar Server, but is also used by the open source Buni Meldware project.[1] WCAP uses simple HTTP GET commands for accessing iCalendar, Freebusy, TODO and vCard entries. WCAP responses are either the traditional text form or an XML form of iCalendar/etc.[2] Several plugins exist including those for Mozilla Thunderbird,[3] Novell Evolution[4] and Microsoft Outlook.[5] There is a competing protocol called CalDAV undergoing standardization.

Example

Client

GET /wcap/get_freebusy.wcap?appid=mozilla-calendar&calid=mailto%3Atom%40localhost&busyonly=1&dtstart=20070521T040000Z&dtend=20070525T040000Z&fmt-out=text%2Fxml&id=17046506 HTTP/1.1
Host: localhost:8080
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.0.10) Gecko/20070403 Thunderbird/1.5.0.10
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

Response

HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
X-Powered-By: Servlet 2.4; JBoss-4.0.4.GA (build: CVSTag=JBoss_4_0_4_GA date=200605151000)/Tomcat-5.5
Set-Cookie: JSESSIONID=41DAC48C79927D68EDFAF5FBFD491236; Path=/
Content-Type: text/html;charset=ISO-8859-1
Content-Length: 1399
Date: Mon, 21 May 2007 19:43:37 GMT

<?xml version="1.0" encoding="UTF-8"?>
<iCalendar>
<iCal version="2.0" prodid="-//Buni Meldware Calendar Server 0.8//EN" METHOD="PUBLISH">
<X-NSCP-CALPROPS-LAST-MODIFIED>20061102T170639Z</X-NSCP-CALPROPS-LAST-MODIFIED>
<X-NSCP-CALPROPS-CREATED>20060814T110002Z</X-NSCP-CALPROPS-CREATED>
<X-NSCP-CALPROPS-READ>999</X-NSCP-CALPROPS-READ>
<X-NSCP-CALPROPS-WRITE>999</X-NSCP-CALPROPS-WRITE>
<X-NSCP-CALPROPS-RELATIVE-CALID>tom</X-NSCP-CALPROPS-RELATIVE-CALID>
<X-NSCP-CALPROPS-NAME>tom</X-NSCP-CALPROPS-NAME>
<X-NSCP-CALPROPS-PRIMARY-OWNER>tom</X-NSCP-CALPROPS-PRIMARY-OWNER>
<X-NSCP-CALPROPS-ACCESS-CONTROL-ENTRY>@@o^c^WDEIC^g</X-NSCP-CALPROPS-ACCESS-CONTROL-ENTRY>
<X-NSCP-CALPROPS-ACCESS-CONTROL-ENTRY>@@o^a^RSF^g</X-NSCP-CALPROPS-ACCESS-CONTROL-ENTRY>
<X-NSCP-CALPROPS-ACCESS-CONTROL-ENTRY>@^a^rsf^g</X-NSCP-CALPROPS-ACCESS-CONTROL-ENTRY>
<X-NSCP-CALPROPS-ACCESS-CONTROL-ENTRY>@^c^^g</X-NSCP-CALPROPS-ACCESS-CONTROL-ENTRY>
<X-NSCP-CALPROPS-ACCESS-CONTROL-ENTRY>@^p^r^g</X-NSCP-CALPROPS-ACCESS-CONTROL-ENTRY>
<X-NSCP-CALPROPS-RESOURCE>0</X-NSCP-CALPROPS-RESOURCE>
<X-S1CS-CALPROPS-ALLOW-DOUBLEBOOKING>1</X-S1CS-CALPROPS-ALLOW-DOUBLEBOOKING>
<FREEBUSY>
<START>20070521T040000Z</START>
<END>20070525T040000Z</END>
<FB FBTYPE="BUSY">20070521T130000Z/20070521T140000Z</FB><FB FBTYPE="BUSY">20070521T150000Z/20070521T160000Z</FB>
</FREEBUSY>
<X-NSCP-WCAP-ERRNO>0</X-NSCP-WCAP-ERRNO>
</iCal>
</iCalendar>

References

  1. http://blog.buni.org/blog/asogor/2007/01/07/I-bust-a-CAP-in-your-APP
  2. Chapter 5 Web Calendar Access Protocol Overview
  3. Lightning - Project Home
  4. Evolution JESCS - Evolution
  5. Sun Java System Connector for Microsoft Outlook
This article is issued from Wikipedia - version of the 11/3/2015. The text is available under the Creative Commons Attribution/Share Alike but additional terms may apply for the media files.