Shortening URLs with bit.ly’s API in .NET
I previously wrote about shortening URLs with TinyURL’s API but my new favorite URL shortener is http://bit.ly and it also has a great API that you can use from within your .net code. I just recently used in my twitter contest website – tweetastica.
The code is also very simple. I didn’t add all the extra options that the API makes available and just wrote enough for me to shorten a URL. Here it is:
public static class BitlyApi { private const string apiKey = "[add api key here]"; private const string login = "[add login name here]"; public static BitlyResults ShortenUrl(string longUrl) { var url = string.Format("http://api.bit.ly/shorten?format=xml&version=2.0.1&longUrl={0}&login={1}&apiKey={2}", HttpUtility.UrlEncode(longUrl), login, apiKey); var resultXml = XDocument.Load(url); var x = (from result in resultXml.Descendants("nodeKeyVal") select new BitlyResults { UserHash = result.Element("userHash").Value, ShortUrl = result.Element("shortUrl").Value } ); return x.Single(); } } public class BitlyResults { public string UserHash { get; set; } public string ShortUrl { get; set; } }
Using this code is very straight forward.
var shortUrl = BitlyApi.ShortenUrl("http://www.verylongUrl.com").ShortUrl;
bit.ly has tons of features and a great API. You can even see stats of any bit.ly generate url using /info. for example: http://bit.ly/info/S0vRy shows you stats for http://bit.ly/S0vRy
Another feature I really like is their bookmarklet which you can keep on your browser’s bookmark bar and click it to shrink the site you are at… It even pops this side bar with a bunch of useful info.
The API is pretty well documented at http://code.google.com/p/bitly-api/wiki/ApiDocumentation
Don’t forget to follow me on twitter.








Thu, May 7, 2009
Programming