Thanks for the help Erick. This project had been put on hold but I'm back to it now. I successfully registered the domain with h9 and can now get an OAuth Access token. However I haven't been able to successfully request any data with that token so I'm back looking for more help. I go through the token exchange process and this is the final response I get from h9 (during token exchange):
oauth_token=1%2FtpyFG2wRxCue1KA8RmQTMQwS51WsrmNKmhHfTNxEWro&oauth_token_secret=BJzcOyqnDYQNK%2BqhKySzGHga At this point I look in my h9 test user profile and see that my account has been successfully linked. Now when I create a request for data like so: https://www.google.com/h9/feeds/profile/default/-/medication?oauth_token=1%252FtpyFG2wRxCue1KA8RmQTMQwS51WsrmNKmhHfTNxEWro&oauth_consumer_key=www.pharmasurveyor.com&oauth_signature_method=RSA-SHA1&oauth_timestamp=1223050147&oauth_nonce=160950110839785&oauth_signature=DwwfNrZSfa%2BHFdDNUS373Bm2lGxGgt3AaZXTUTWvumUeClM9uQOlYe8c5sQATRhoQb4hm%2F3hPJed823Vg8NOvfwxS2rODrTMP6S9BW%2B%2BhLyRq5PmtqSrDXgXToBq9yuAZCyx8EhxAbyP53fO292iO4tegrdqS8zzdsr1R%2BS8qIM%3D h9 responds with: HTTP/1.1 401 Token invalid - Invalid AuthSub token. WWW-Authenticate: AuthSub realm=" http://www.google.com/accounts/AuthSubRequest" Content-Type: text/html; charset=UTF-8 Date: Fri, 03 Oct 2008 16:10:19 GMT Expires: Fri, 03 Oct 2008 16:10:19 GMT Cache-Control: private, max-age=0 Content-Length: 199 Set-Cookie: S=weaver=7OP11q2-f5c; Domain=.google.com; Path=/ Server: GFE/1.3 What's not 100% clear to me is if Google fully supports OAuth (from token creation all the way through making requests for data) or if I can only use the OAuth implementation to get the token but then have to revert to AuthSub style requests for data (with the token I got via OAuth). I'm not sure what else to do, the code I'm using has worked successfully with another OAuth provider and I don't appear to have any way from my test user account to see what value Google has for my token (would this be a useful debugging capability in h9?). Should I be using a different URL when requesting data via OAuth; the error message makes it sound like Google is expecting the parameters to be formatted in a manner that AuthSub understands which may not be the same as how OAuth wants them formattted. Any help or suggestions here would be greatly appreciated. Shawn On Mon, Aug 25, 2008 at 1:33 PM, Eric (Google) <[EMAIL PROTECTED]> wrote: > > Hi Shawn, > > Great questions. We currently don't have OAuth documented > for the Health API, so I'll try and answer your questions here. > > On Aug 25, 10:34 am, Shawn Kessler <[EMAIL PROTECTED]> wrote: > > Hello, > > > > I'm currently trying to use the OAuth authentication with Google > > Health. I've done steps one through three that Jerry posted (http:// > > groups.google.com/group/googlehealthdevelopers/browse_thread/thread/ > > aa2482e8c76a84a7) but step > > four has stumped me. All of the documentation I can find on how to use > > h9 seems to only directly apply to the SubAuth authentication with > > little notes about OAuth intermixed (notes like: "you can also use > > OAuth," which aren't incredibly helpful.) Is there some documentation > > that gives step by step instructions on how to use h9 in conjunction > > with OAuth? If not, perhaps my question can be answered here. As of > > right now I have two domains registered on the "regular" Google site. > > The domains are registered, verified and my certificate has been > > uploaded. I have a Java app running in Tomcat that is making a > > successful request tohttps:// > www.google.com/accounts/OAuthGetRequestToken?... > > scope=http%3A%2F%2Fwww.google.com%2Fh9%2Ffeeds%2Fprofile%2Fdefault > > You should use a broader scope, and for HTTPS: > https://www.google.com/h9/feeds/ > > For example, if you use https://www.google.com/h9/feeds/profile/default, > your application won't be able to POST notices at > https://www.google.com/h9/feeds/register/default > > > > > This request is returning successfully and eventually I'm redirected > > to the weaver login page. When I login (with the account that has been > > approved for testing) the browser displays an error page that says: > > > > Error > > Invalid Usage > > Sharing denied: unregistered provider domain:www.mydomain.com > > > > I'm assuming the problem is that my domain isn't registered on weaver, > > only on the real site. So two questions. 1) When testing on h9 should > > I be using this URL: > https://www.google.com/accounts/OAuthGetRequestToken > > or should I be using something more likehttps:// > www.google.com/h9/accounts/OAuthGetRequestToken > > and 2) where do I register my domains so that they work on weaver or > > do I have to usehttp://localhost?If I have to use localhost then I > > have a bunch of other questions but I'll wait for your initial answers > > before going there. > > 1.) You should use https://www.google.com/accounts/OAuthGetRequestToken, > OAuthAuthorizeToken, and OAuthGetAccessToken for the token endpoints. > You'll automatically be redirected from OAuthAuthorizeToken to > Health's > special oauth handler at > https://www.google.com/(h9|health)/oauth<https://www.google.com/%28h9%7Chealth%29/oauth> > > 2.) The Health API has an additional registration process. > Send an email to [EMAIL PROTECTED] and include a list of > the subdomains you plan to use. > > > > > For the sake of testing my own theory I changed my code to use the > > real google health feed instead: > https://www.google.com/accounts/OAuthGetRequestToken?... > > scope=http%3A%2F%2Fwww.google.com%2Fhealth%2Ffeeds%2Fprofile%2Fdefault > > > > This resulted in the exact same behavior (Invalid Usage error). > > > > I double checked my domains and they are registered with enhanced > > security and I followed the steps here: > http://code.google.com/apis/accounts/docs/RegistrationForWebAppsAuto.... > > including step 5 (Test your registration status.), which succeeded. > > You have to be white-listed for API calls to /health, so only use /h9 > URIs for now. > > > > > If I change my oauth_consumer_key value fromwww.mydomain.comto a bad > > domain namewww.baddomain.comthen I never reach the login page (I get > > a bad oauth_consumer_key error before even getting the chance to > > login). So I feel confident that the authentication process is > > recognizing my domain but for some reason the domain isn't fully > > registered to be used with Google Health. I'm not sure what to do to > > fix this. > > > > As reference I've read through these two pages: > http://code.google.com/apis/accounts/docs/OAuth.htmlhttp://code.google.com/apis/accounts/docs/RegistrationForWebAppsAuto.. > .. > > > > Thanks for you help, > > Shawn > > > -- Hate is baggage. http://www.robynkesslerphotography.com --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Google Health Developers" 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/googlehealthdevelopers?hl=en -~----------~----~----~----~------~----~------~--~---
