title: Google api php client - Http put request
body: <p>I'm trying to create a Http put request with google-api-php-client. Oauth is working fine and I can do get requests but I just can't figure out how to do a put.</p>
  
  <pre><code>//While looping over my contacts
  $apiClient = new ApiClient();
  $apiClient-&gt;setAccessToken($this-&gt;Auth-&gt;user('google_oauth2_token'));
  
  //Getting fresh XML data since I transformed mine into an array
  $contactGetRequest = new apiHttpRequest($contact['link'][1]['@href'], 'GET', array('GData-Version' =&gt; 3.0));   
  $rawContactData = $apiClient-&gt;getIo()-&gt;authenticatedRequest($contactGetRequest);
  
  $contactXml = Xml::build($rawContactData-&gt;getResponseBody());
  
  //Not changing anything, just trying to do a PUT request
  $contactPutRequest = new apiHttpRequest($contact['link'][2]['@href'], 'PUT', array('GData-Version' =&gt; 3.0), $contactXml-&gt;asXML());
  $response = $apiClient-&gt;getIo()-&gt;authenticatedRequest($contactPutRequest);
  </code></pre>
  
  <p>The error is getting is "Content-Type application/x-www-form-urlencoded is not a valid input type.". </p>
  
  <p>It seems that it's trying to do a POST. What is the correct way to do a PUT request?</p>