So I was very frustrated when all of a sudden my del.icio.us api tag cloud stopped working, since I think it is a super swank piece of kit. I managed today to find out why it stopped working... del.icio.us have a highly secret blog which I (being a total muppet) didn't know about. On this blog they warned everyone their del.icio.us app would break if they didn't wake up and smell the SSL. So today I put together an SSL application for V1 of the del.icio.us https api using PHP and I wanted to share it here in case anyone else ended up having the same issues as me (maybe the friendly natural search monkeys will spider it for you to find).
So calling this API is hyper simple. First you need to define your user name and password:
$dusername = "foo";
$dpassword = "bar";
Then you need to create your URL to call (the example here is for the get tags call which I use in my del.icio.us tag cloud ):
$api = "api.del.icio.us/v1"
$apicall = "https://$dusername:$dpassword@$api/tags/get"
Then you need to throw together your CURL call to the API which I find is needed to connect via CSS and also send the user agent that del.icio.us requires from you
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$apicall);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2);
curl_setopt($ch, CURLOPT_USERAGENT, 'alexschultz');
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
$xml = curl_exec ($ch);
curl_close ($ch);
Now you should find that your API content is contained in the $xml variable and you can enjoy translating it via the XSL tool of your choice (mine is sablotron because I am a masochist :p )