I have found a solution that works for me. I simply retrieve all users from Google, compare them to users stored in my database and decide if there are manually created/updated/ deleted users. I use a trick to retrieve users quite fast - 40 seconds for 10.700 users. In case anyone is interested, I have described my approach here: http://groups.google.com/group/google-apps-apis/browse_thread/thread/28a8d9a39f96c178
Regards, George On Sep 17, 9:40 am, George <[EMAIL PROTECTED]> wrote: > Thank you for your reply. > I have already tried multi-threading. It speeds things up a little but > not that much. Moreover, you cannot speed up retrieval of accounts, > because pages must be retrieved sequentially or all at once. > Maybe I will create my own web application for administrators, which > will allow them to do the same tasks through provisioning API and > write correct information to my database too. > > Regards, > George > > On Sep 16, 7:07 pm, "Julian (Google)" <[EMAIL PROTECTED]> wrote: > > > Hi, > > > Unfortunately for Google Apps APIs we do not offer this possibility > > using the Provisioning API. But, to speed up synchronization, you > > could try multi-threading, 10 or 15 threads max should help speeding > > things up. > > > I also recommend using the Reporting API, the Accounts Report can > > retrieve the list of all user of a domain faster than the Provisioning > > API, just take into account that reports have 1 or 2 days of delay > > depending on the time of the query: > > >http://code.google.com/apis/apps/reporting/google_apps_reporting_api.... > > > Cheers, > > Julian. > > > On Sep 15, 4:31 pm, George <[EMAIL PROTECTED]> wrote: > > > > Hi all, > > > > is there a way to get Google users from our domain that were created/ > > > modifed/deleted since some configurable time using .NET provisioning > > > API? > > > > It seems that UserQuery object ignores "updated-min" query parameter > > > (StartDate property from FeedQuery) and does not put it in calculated > > > URI. > > > > I tried to create my own class, which inherits from UserQuery and > > > overrides CalculateQuery() method. It correctly calculates request URI > > > - e.g.: > > > "https://www.google.com/a/feeds/ourdomain/user/2.0?updated- > > > min=2008-09-13T00:00:00+02:00". > > > But when I submit it, I receive: > > > HTTP status code: 403 (Forbidden) > > > Message: "This service does not support the 'updated-min' > > > parameter." > > > > From what I can read > > > herehttp://code.google.com/apis/gdata/reference.html#Queries > > > it seems that user service does not support such query parameter. > > > > I have also tried to use iModifiedSince argument of Query() method of > > > UserService object e.g.: > > > userService.Query(userQuery.Uri, new DateTime(2008, 8, 13, 0, 0, 0)); > > > which sends HTTP request with If-Modified-Since header, but I get > > > NotModified HTTP status code. > > > > Is there a way how to accomplish this? > > > > I have a database containing information about Google users in our > > > domain, who were created automatically by my synchronization code. The > > > code synchronizes Google users with other systems. It works great, > > > however I would like to be able to support manual changes made by > > > administrators through Google admin web pages i.e. I would like to > > > recognize manually created/modified/deleted Google users and > > > synchronize them with my database, so it stays in sync with Google's > > > current state. And I do not want to retrieve all users in domain, > > > because it is very very slow (we have 10.000+ users currently). Is it > > > possible to retrieve changed users only? > > > > Thank you, > > > George > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Google Apps APIs" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/google-apps-apis?hl=en -~----------~----~----~----~------~----~------~--~---
