I use the Google Domain Shared Contacts APIgdata-python-client to access .
In corporate applications, you can program access to user data without any manual authorization on their part.
There was a protocol called 2LO (2 legged OAuth), but it looks like it was associated with OAuth1, which is out of date: "Important: OAuth 1.0 is out of date, and the registration of new OAuth 1.0 clients is closed." in all Oauth1 docs .
There is a new OAuth2-based recipe for " Domain Transfer" :
In Google Apps domains, a domain administrator can provide third-party applications with access to their users' data across the entire domain - this is called transferring domain credentials across the entire domain. To delegate authority this way, domain administrators can use service accounts with OAuth 2.0.
This works with google-api-python-client, but not with gdata-python-client.
Question : Is there a way to achieve this using Python? The code from the gdata client seems to be prehistoric - is there another GAE runtime with a modern client library that supports delegation for data data APIs?
[update]
If I sign the httplib2 connection and call the Atom endpoint, I can get the channel.
http = httplib2.Http()
http = credentials.authorize(http)
resp, content = http.request(
'https://www.google.com/m8/feeds/contacts/default/full', 'GET'
)
Unfortunately, it gdata-python-clientuses httplib instead of httplib2.
[SOLVED]
, - , , , httplib2. , , [aeijdenberg], 401.