Recently I was given a task by my current employer (an online retailer) to find a way to track social interactions of registered members on the company's website. The goal was to reward members with discounts and other types of bonuses for liking products, tweeting about them or pinning them to their pinboards on Pinterest.com.
I knew that tracking interactions with the first two services would not pose any problems as both, Facebook and Twitter, have callback functionality available for their buttons. Facebook has FB.Event.subscribe for their Like button and Twitter has a Web Intent called "tweet" notifying you about successful tweets.
However, things turned out to be more difficult with Pinterest as it doesn't have a similar functionality (at least at the time of writing this article, December 2012).
A quick investigation showed that no one else had managed to find a decent solution to this problem either. Everything I found was either a dirty hack or a very dirty hack. Some "solutions" even suggested recreating the Pin It button manually only to be able to define the custom logic, which in my view is plain crazy!
So I realized that I had to come up with my own solution if I was to track pins. And after a bit of thinking and investigating I did! Knowing that there are developers out there trying to achieve the same goal, I decided to share it here.