Google联系人API更新联系人 - 未找到

So, I can retrieve contacts and insert contacts, but I'm having a problem updating contacts. All I get is a 404 "Not found" error. The xml is well-formed, since I can do the inserts, but it seems that the URL I'm using doesn't work? I have tried:

https://www.google.com/m8/feeds/contacts/{my email}/full/{contact id}

I have also tried:

https://www.google.com/m8/feeds/contacts/default/full/{contact id}

and also used the ID that comes back from the retrieval query:

http://www.google.com/m8/feeds/contacts/{my email}/base/{contact id}

The headers I'm sending are:

Content-Type: application/atom+xml
Depth: 1
Authorization: Bearer {Auth Code}
GData-Version: 3.0
If-Match: *

More Details: I have modified my code so that when it does the GET of the contact, it grabs the edit link from the contact XML:

https://www.google.com/m8/feeds/contacts/awallace%40ihouseweb.com/full/{contactID}

And uses that for the URL, and ensured that I am using a "PUT" by:

curl_setopt($curl, CURLOPT_PUT, true);

And now it behaves differently - it says that I need to login:

<internalReason>Login Required</internalReason>

Even though my Auth token is valid for another hour. Arg.

thanks, andy