SOAP interface--How do I retrieve all appointments on the server?

What's the ideal way to retrieve all appointment items through SOAP interface? I wish I could have a similar one as GetContactsRequest.

1. use GetAppointmentRequest, it makes the id required and only return one.
2. use GetApptSummariesRequest, but the response is not detail enough to build a list a ICalendar
3. use SyncRequest w/o token to get a list of apptId, then group all GetAppointmentRequests to a batch request
4. use SyncRequest with a valid oldest token, such as "1" -- this could be the best solution if the token number is never recycled, please confirm.

Technically there is none. Realistically it'd be a huge SOAP/XML packet if you tried to put 100's or 1000's in the same request. Pick a reasonable max like 32 and see how that works for you. If it's too slow or the request/response is too large then back it off. If you that works ok then feel free to try some more.

Looking for new beta users -> Co-Founder of Acompli. Previously worked at Zimbra (and Yahoo! & VMware) since 2005.

If you do 4) you'd just send no sync token to get ALL the items. Of course this is a bit wasteful as you really shouldn't have to request ALL every time.

A valid oldest token is different than no token beucase the content and format of the resposne message are totally different. For a no-token or invalid token(i.e. "-1") sync request, it returns all item's ids. With a good token, it returns all detailed appointment data. That's why I suggested to add a filter to SyncRequest.