Giving Impact Help & Support
Browse our knowledge Base / FAQs or contact us for support
Knowledge Base / FAQ
Developer API
The Giving Impact REST API offers developers a means to access campaign data to create unique promotions and/or integrations of Giving Impact campaign data. The following details API access, authentication, and methods available. Specific details for calling and consuming the API will vary depending on platform. Examples given below will do so using CURL to provide a simple, common approach familiar to all developers to test and get to know the methods and data returned.
Access
There are two credentials needed to authentic and utilize the API. The first is the API Key used for authentication and the second is the API Name that is used as a key segment in the URL calls.
- API Key is a 20 character unique string available for each account.
- API Name is the unique account handle.
The API is not yet officially available however if you are interested in using it, please contact us.
Authentication
Authentication is facilitated via Basic Authentication HTTP request with the API Key as username. No password is required.
CURL Example:
Please note the “:” at the end of the [api key] is used in CURL to denote the username from password.
curl --user '[API key]:'
Returned Data Key
Campaigns
- campaign-token: The unique identifier for each campaign
- current: The current total of donations made to the campaign – updated each time a donation is made
- description: Campaign description
- fb-shares: Total number of shares to Facebook through Giving Impact’s share features
- hash-tag: Twitter hash tag for campaign
- status: “true” = active, “false” = inactive
- target: Goal for total donations
- title: Campaign title/name
- twitter-shares: Total number of shares to Twitter through Giving Impact’s share features
- givlnk: Short url to the campaign donation page.
- share: url to the campaign share page.
Methods
Please note that all methods require authentication.
- Campaigns
- All Campaigns
- Inactive Campaigns
- Specific Campaign
Campaigns
Returns all active campaigns.
URL
https://app.givingimpact.com/accounts/[API Name]/campaigns.[Format]</code>
Format
json, xml
Example Response
<?xml version="1.0" encoding="UTF-8"?>
<campaigns type="array">
<campaign>
<campaign-token>##########</campaign-token>
<current type="decimal">100.0</current>
<description>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.</description>
<fb-shares type="integer">2</fb-shares>
<hash-tag>#campaign1</hash-tag>
<status type="boolean">true</status>
<target type="decimal">2000.0</target>
<title>Campaign One</title>
<twitter-shares type="integer">0</twitter-shares>
<givlnk>http://givlnk.com/######</givlnk>
<share>https://app.givingimpact.com/initiate_share/##########</share>
</campaign>
<campaign>
<campaign-token>##########</campaign-token>
<current type="decimal">50.0</current>
<description>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.</description>
<fb-shares type="integer">0</fb-shares>
<hash-tag></hash-tag>
<status type="boolean">true</status>
<target type="decimal">2000.0</target>
<title>Campaign Two</title>
<twitter-shares type="integer">0</twitter-shares>
<givlnk>http://givlnk.com/######</givlnk>
<share>https://app.givingimpact.com/initiate_share/##########</share>
</campaign>
</campaigns>
Example Usage
curl --user '[API Key]:' --header 'Content-Type: application/xml' https://app.givingimpact.com/accounts/[API Name]/campaigns.xml
All Campaigns
Returns all campaigns both inactive and active.
URL
https://app.givingimpact.com/accounts/[API Name]/all_campaigns.[Format]
Format
json, xml
Example Response
See example for Campaigns above
Example Usage
curl --user '[API Key]:' --header 'Content-Type: application/xml' https://app.givingimpact.com/accounts/[API Name]/all_campaigns.xml
Inactive Campaigns
Returns all inactive campaigns.
URL
https://app.givingimpact.com/accounts/[API Name]/inactive_campaigns.[Format]
Format
json, xml
Example Response
See example for Campaigns above
Example Usage
curl --user '[API Key]:' --header 'Content-Type: application/xml' https://app.givingimpact.com/accounts/[API Name]/inactive_campaigns.xml
Specific Campaigns
Returns a specific campaign determined by campaign token.
URL
https://app.givingimpact.com/accounts/[API Name]/campaigns/[Campaign Token].[Format]
Format
json, xml
Example Response
<?xml version="1.0" encoding="UTF-8"?>
<campaign>
<campaign-token>##########</campaign-token>
<current type="decimal">100.0</current>
<description>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.</description>
<fb-shares type="integer">2</fb-shares>
<hash-tag>#campaign1</hash-tag>
<status type="boolean">true</status>
<target type="decimal">2000.0</target>
<title>Campaign One</title>
<twitter-shares type="integer">0</twitter-shares>
<givlnk>http://givlnk.com/######</givlnk>
<share>https://app.givingimpact.com/initiate_share/##########</share>
</campaign>
Example Usage
curl --user '[API Key]:' --header 'Content-Type: application/xml' https://app.givingimpact.com/accounts/[API Name]/campaigns/[Campaign Token].xml

