How does GetICalRequest work?

I'm getting an error, I sent in this:

<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope">
<soap:Header>
<context xmlns="urn:zimbra">
<authToken>$authToken</authToken>
<sessionId id="$sessionId">$sessionId</sessionId>
</context>
</soap:Header>
<soap:Body>
<GetICalRequest id="$uid"/>
</soap:Body>
</soap:Envelope>

and got this:

<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope"><soap:Header><context xmlns="urn:zimbra"><sessionId type="admin" id="1">1</sessionId><change token="1"/></context></soap:Header><soap:Body><soap:Fault id="myid"><soap:Code><soap:Value>soap:Sender</soap:Value></soap:Code><soap:Reason><soap:Text>unknown document: GetICalRequest</soap:Text></soap:Reason><soapetail><Error xmlns="urn:zimbra"><Code>service.UNKNOWN_DOCUMENT</Code><Trace>com.zimbra.common.service.ServiceExcep tion: unknown document: GetICalRequest at com.zimbra.common.service.ServiceException.UNKNOWN _DOCUMENT(ServiceException.java:189) at com.zimbra.soap.SoapEngine.dispatchRequest(SoapEng ine.java:224) at com.zimbra.soap.SoapEngine.dispatch(SoapEngine.jav a:168) at com.zimbra.soap.SoapEngine.dispatch(SoapEngine.jav a:90) at com.zimbra.soap.SoapServlet.doPost(SoapServlet.jav a:223) at javax.servlet.http.HttpServlet.service(HttpServlet .java:709) at com.zimbra.cs.servlet.ZimbraServlet.service(Zimbra Servlet.java:162) at javax.servlet.http.HttpServlet.service(HttpServlet .java:802) at org.apache.catalina.core.ApplicationFilterChain.in ternalDoFilter(ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.do Filter(ApplicationFilterChain.java:173) at org.apache.catalina.core.StandardWrapperValve.invo ke(StandardWrapperValve.java:213) at org.apache.catalina.core.StandardContextValve.invo ke(StandardContextValve.java:178) at org.apache.catalina.core.StandardHostValve.invoke( StandardHostValve.java:126) at org.apache.catalina.valves.ErrorReportValve.invoke (ErrorReportValve.java:105) at org.apache.catalina.core.StandardEngineValve.invok e(StandardEngineValve.java:107) at org.apache.catalina.valves.AccessLogValve.invoke(A ccessLogValve.java:541) at org.apache.catalina.connector.CoyoteAdapter.servic e(CoyoteAdapter.java:148) at org.apache.coyote.http11.Http11Processor.process(H ttp11Processor.java:869) at org.apache.coyote.http11.Http11BaseProtocol$Http11 ConnectionHandler.processConnection(Http11BaseProt ocol.java:667) at org.apache.tomcat.util.net.PoolTcpEndpoint.process Socket(PoolTcpEndpoint.java:527) at org.apache.tomcat.util.net.LeaderFollowerWorkerThr ead.runIt(LeaderFollowerWorkerThread.java:80) at org.apache.tomcat.util.threads.ThreadPool$ControlR unnable.run(ThreadPool.java:684) at java.lang.Thread.run(Thread.java:595) </Trace></Error></soapetail></soap:Fault></soap:Body></soap:Envelope>