Hi,

Usually the HTTP 409 means that there is a conflict, maybe you are
trying to insert a contact that already exists and you should update
instead of inserting. Check that the email address does not exist
before inserting a new contact.

If for some reason you need to have a contact more than once, make
sure that you use Contact v2, it allows multiple contacts with the
same email address.

Cheers,
Julian.

On Sep 3, 6:37 am, Randall <[email protected]> wrote:
> I can't figure out why I'm getting HTTP status code 409. I'm trying to
> add new contacts using Zend's Gdata class.
>
> Here's my code:
>
> <?php
> require_once('Zend/Loader.php');
> require_once('DeafForm.php');
>
> Zend_Loader::loadClass('Zend_Gdata_ClientLogin');
> Zend_Loader::loadClass('Zend_Gdata_Gapps');
> Zend_Loader::loadClass('Zend_Gdata_Query');
>
> class BasicContact {
>    const SERVICE_NAME = "cp";
>    const APPLICATION_NAME = "basic_contact-test";
>    const USERNAME = "[email protected]"; //censored!
>    const PASSWORD = "fake-password"; //censored!
>
>    protected $httpclient;
>    protected $gdata;
>    protected $form;
>    protected $mystream;
>
>    public function __construct(){
>       $this->httpclient = Zend_Gdata_ClientLogin::getHttpClient
> (self::USERNAME, self::PASSWORD, self::SERVICE_NAME, null,
> self::APPLICATION_NAME);
>       $this->gdata = new Zend_Gdata($this->httpclient);
>       $this->mystream = "http://www.google.com/m8/feeds/contacts/
> default/full";
>    }
>
>    public function addContact($form){
>       $entry = $this->gdata->newEntry();
>       $extensionElement = $entry->getExtensionElements();
>       $attributes = array();
>
>       //set contact's name
>       $entry->title = $this->gdata->newTitle($form-
>
> >getSubmitterFirstName()." ".$form->getSubmitterLastName());
>
>       //generate email address
>       $extension = new Zend_Gdata_App_Extension_Element('email', null,
> 'http://schemas.google.com/g/2005');
>       $attr['address'] = array('name' => 'address', 'value' =>
> $emailaddy, 'namespaceUri' => null);
>       $attr['primary'] = array('name' => 'primary', 'value' => 'true',
> 'namespaceUri' => null);
>       $attr['rel'] = array('name' => 'rel', 'value' => 'http://
> schemas.google.com/g/2005#other', 'namespaceUri' => null);
>       $extension->setExtensionAttributes($attributes);
>
>       //update/add to contacts
>       $entry->setExtensionElements(array($extension));
>       $entryResult = $this->gdata->insertEntry($entry, $this->mystream);
>    }
> }
>
> ?>
>
> And here's the error message:
> Fatal error: Uncaught exception 'Zend_Gdata_App_HttpException' with
> message 'Expected response code 200, got 409 <?xml version='1.0'
> encoding='UTF-8'?><entry xmlns='http://www.w3.org/2005/Atom'
> xmlns:gContact='http://schemas.google.com/contact/2008'
> xmlns:batch='http://schemas.google.com/gdata/batch'xmlns:gd='http://
> schemas.google.com/g/2005'><id>http://www.google.com/m8/feeds/contacts/
> randalln.spam%40gmail.com/base/207d23568a39769d</
> id><updated>2009-07-30T20:52:06.922Z</updated><category scheme='http://
> schemas.google.com/g/2005#kind' term='http://schemas.google.com/
> contact/2008#contact'/><title type='text'>Randall Noriega</title><link
> rel='http://schemas.google.com/contacts/2008/rel#edit-photo'
> type='image/*' href='http://www.google.com/m8/feeds/photos/media/
> randalln.spam%40gmail.com/207d23568a39769d/1B2M2Y8AsgTpgAmY7PhCfg'/><link 
> rel='self' type='application/atom+xml' href='http://
>
> www.google.com/m8/feeds/contacts/randalln.spam%40gmail.com/full/207d2...><link
> rel='edit' type='application/atom+xml' href='http:/ in /usr/local/etc/
> ZendGdata-1.8.4PL1/library/Zend/Gdata/App.php on line 699
>
> I'm stumped at this point. Hope you guys can help solve my problem.
> Thanks in advance, guys!
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Google Contacts API" 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-contacts-api?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to