By Chris Dumas, Product Manager, FirstGiving
Websites today are often full-blown applications. Even if you're using a content management system like WordPress or Drupal, by incorporating APIs, you can further enhance built in app-like functionality to create a highly customized experience.
What are APIs?
API stands for Application Program Interface, and has become known for, in large part, facilitating the Web 2.0 world.
So what is an API, really?
Focus on the word “interface”, which means facilitating communication between two different applications. Think of APIs as connecting plugs between applications. Thanks to APIs, you’re able to “plug” different applications together to achieve a desired result.
Why do different applications need to communicate?
Nonprofits often deal with an overwhelming amount of data. We can utilize APIs to transfer data from one system to another and even synchronize data sets in order to end up with the cleanest data possible.
APIs can also plug one application that excels at a particular function into another that performs a different task, so you can accomplish the desired end result without having to write your own code. One way of conceptualizing this is using blocks to make a structure. APIs enable you to access ready-to-use blocks and put them together to build something, rather than having to start from scratch.
Some Awesome APIs and Uses for Them
Location
A prime example of what APIs can achieve with relative ease is optimizing content for web visitors based on location. Companies like MaxMind and IP2Location update their databases regularly so you don’t need to figure out the mapping of IPs.
Twitter has long been a tool for organizing and bringing people together around topics of interest. Its simple-to-use API has allowed others to build on top of its functionality – which is why there are so many Twitter-based apps. HelpAttack.com is a prime example of building on top of Twitter and other APIs.Developing apps and websites that take advantage of the power of the Facebook platform is of paramount importance for nonprofits. This can, in fact, be a critical factor for the success of a given campaign. If the goal is getting more targeted visitors, functionality with Facebook is key. Additionally, you can increase the traction and conversion rates of specific actions you want people to take by using Facebook to provide simple proof.
While Facebook has a full set of APIs you can code against, you can also take advantage of their user-friendly widgets and have the additional benefit of being hosted on the Facebook domain. This means that if a user has an active session on Facebook (meaning they are logged into the browser) and visits your site, the widget will be able to detect their identity and gather highly relevant information about them.
Causes has leveraged this. They are able to get people to login to their site via Facebook and increase the conversion rate and effectiveness of their fundraising appeals using
Facebook’s APIs. Notice the difference of the look of Causes’ homepage when you are logged into Facebook and not. Your Facebook friends and people in your social graph are enhancing the user experience of interacting with the application.Advocacy and Political Groups
Want to be able to identify an individual’s political representatives on the fly, based on the data you have? There is an API for that. There are actually quite a few – even ones that track the flow of money to politicians. One of my favorites is run by a nonprofit called MapLight.
In fact, many government organizations are embracing open data and releasing their data sets to the general public via APIs. GovFresh and CityCamp are excellent resources for getting an overview of what’s going on in the government sector. The City of San Francisco has done a great job so far on their data website, providing plenty of examples.
Donations and Payments
Getting funds to your nonprofit is a process dependent on APIs. Every time a donation is made, it travels through various banking APIs as different financial institutions talk to each other.
Sites like PayPal, authorize.net, Network for Good, and FirstGiving offer payment and donation APIs to third parties to build applications on. This is how organizations like HelpAttack, Causes, StayClassy, and CauseVox process donations for their nonprofit clients.
Donor Data
Gaining deeper insight into your donor base – who these people are and how you can best connect with them – is a task that APIs can tackle.
Rapleaf has an API for personalization that provides you some knowledge of your constituents. Take a look at the kind of data they keep by looking up your own info.
The nonprofit community calls this type of data mining “prospecting.” Companies like WealthEngine, Target Analytics and even FirstGiving Insights will take your existing donor data and utilize APIs from across the Web to create a richer picture of your constituents.
The majority of nonprofits use email as a primary method of communicating with their constituents. Popular tools like MailChimp, Constant Contact and VerticalResponse have APIs that allow you to manage all aspects of your subscriber lists and email campaigns, and WordPress and other CMS platforms have widgets that communciate via APIs to these vendors.
Phone
Twilio is a great example of a highly useful API. It allows you to build products and features that utilize both phone calls and SMS text messages. To be able to dynamically create text message based on a couple of lines of code unleashes enormous potential for nonprofits in respect to community organizing, volunteering, and quite possibly more.
Recently Causecast and Virgin Mobile Canada launched a volunteer and loyalty application in which volunteers can text an event code to a short number assigned to the particular opportunity. The volunteer is assigned points based on the opportunity, which they can accumulate and redeem for concert tickets online.
Data Exploration and Reporting
One of the best things about using tools with APIs is that you can consolidate your reporting and data in one centralized location to create a business dashboard for yourself and your internal teams, or even for the general public. In my opinion, there are two fantastic tools for doing this – Metricly and Geckoboard.
Metricly aggregates your data across the Web, allowing you to compare and combine your metrics in one place, and making it easier for you to stay on top of your business. Metricly will grab data from many of the other sites mentioned in this post, and allow you to create reports that give insight into how well your organization is performing.
Geckoboard is an amazing tool that enables you to grab a snapshot of data to be displayed as a dashboard. You can connect many existing tools, or you can build into it and feed it data to display. In my office, we have a TV displaying all the stats we can think of, and it helps our team make decisions based on this data.
As a starting point for what’s possible with APIs, take a look at ProgrammableWeb.com. Their comprehensive list of APIs will provide a good jumping off point for any nonprofit.
Chris Dumas is passionate about creating new products that expand the world of giving by leveraging FirstGiving’s expertise in transacting charitable donations and harnessing social networks for change. He is the founder of NonprofitWebinars.com, a free online education service that has provided informations to 35,000 nonprofit executives. He previously worked for several nonprofits and lead several software startups in the San Francisco area.