What You Can Do
The Givebutter API enables you to:Access Campaign Data
Retrieve campaign details, goals, and performance metrics
Manage Supporters
Access donor information, contact details, and giving history
Track Transactions
Monitor donations, process refunds, and analyze revenue
Sync Event Data
Integrate ticketing and event registration with your systems
Getting Started in 5 Minutes
1
Get Your API Key
Log into your Givebutter Dashboard and navigate to Settings > API Keys to generate your
API key.
2
Make Your First Request
Test your API key with a simple request to fetch your campaigns.
3
Build Your Integration
Use the API endpoints to build custom workflows and integrations.
Quick Example
Here’s a simple example to get you started:Base URL
All API requests should be made to:All API requests must be made over HTTPS. Calls made over plain HTTP will fail.
API Versions
The Givebutter API uses versioning to ensure backward compatibility. The current version is v1.| Version | Status | Base URL |
|---|---|---|
| v1 | Current | https://api.givebutter.com/v1 |
Request & Response Format
The Givebutter API uses JSON for both requests and responses.Request Format
- Content-Type:
application/json - Accept:
application/json - All POST and PUT requests must include a JSON body
Response Format
All responses are returned as JSON objects with the following structure:Rate Limits
To ensure platform stability and fair usage, the Givebutter API implements rate limiting:| Tier | Requests per Minute | Requests per Hour |
|---|---|---|
| Standard | 60 | 3,000 |
| Enterprise | 300 | 15,000 |
Handling Rate Limits
When you exceed the rate limit, you’ll receive a429 Too Many Requests response:
- Implement exponential backoff when you receive 429 responses
- Cache responses when possible to reduce API calls
- Use webhooks instead of polling for real-time updates
- Batch requests when the API supports it
Authentication
The Givebutter API uses API keys for authentication. Include your API key in theAuthorization header of all requests:
Learn More
Read the complete authentication guide for details on obtaining and using API keys securely.
Common Use Cases
Sync Donations to Your CRM
Sync Donations to Your CRM
Use the Transactions API to automatically sync donation data to your CRM or database. Set up webhooks to receive real-time notifications when donations occur.
Build Custom Dashboards
Build Custom Dashboards
Pull campaign and transaction data to create custom analytics dashboards tailored to your
organization’s reporting needs.
Automate Thank You Communications
Automate Thank You Communications
Retrieve donor information and transaction details to trigger personalized thank you emails,
letters, or text messages through your communication tools.
Integrate Event Management
Integrate Event Management
Connect Givebutter tickets with your event management platform to sync attendee lists, check-in
status, and ticket sales in real-time.
Create Financial Reports
Create Financial Reports
Extract payout and transaction data for reconciliation with your accounting systems or to generate
custom financial reports.
Build Mobile Applications
Build Mobile Applications
Use the API to create mobile apps that display campaign progress, enable donations, or provide supporter management on the go.
SDKs & Libraries
While the Givebutter API is RESTful and works with any HTTP client, we’re working on official SDKs to make integration even easier:JavaScript/Node.js
Coming soon
Python
Coming soon
PHP
Coming soon
Ruby
Coming soon
Webhooks
Webhooks allow you to receive real-time notifications when events occur in your Givebutter account:- New donations
- Campaign updates
- Ticket purchases
- Contact changes
Coming Soon - Webhook documentation is currently in development. Contact
[email protected] if you need webhook integration.
Testing
Test vs Production Keys
Givebutter provides separate API keys for testing and production:- Test keys: Begin with
test_and interact with test data - Live keys: Begin with
live_and interact with production data
Sandbox Environment
Test your integration safely without affecting production data by using test API keys. All test transactions can be refunded or deleted without impacting real donors.Support & Resources
API Status
Check API uptime and performance
Developer Community
Join our Discord (coming soon)
Contact Support
Email: [email protected]
Feature Requests
Submit ideas and vote on features
API Changelog
Stay up to date with API changes, new features, and deprecations:- Subscribe to updates: Contact [email protected] to join our developer mailing list
- Breaking changes: Announced at least 90 days in advance
- New features: Added to existing versions without breaking changes
Best Practices
Security
Security
- Never expose API keys in client-side code
- Rotate API keys periodically
- Use environment variables for API keys
- Enable IP whitelisting when available
- Always use HTTPS
Performance
Performance
- Cache responses when appropriate - Use pagination for large datasets - Implement proper error handling - Use webhooks instead of polling - Monitor your rate limit usage
Error Handling
Error Handling
- Check HTTP status codes - Parse error messages for details - Implement retry logic with exponential backoff - Log errors for debugging - Handle network timeouts gracefully
Data Management
Data Management
- Store IDs rather than full objects
- Sync incrementally using timestamps
- Handle deleted records appropriately
- Validate data before sending requests
- Use appropriate data types
Next Steps
1
Authenticate
Learn how to authenticate with the API using your API key.
2
Explore Endpoints
Browse available endpoints like Campaigns,
Transactions, and Contacts.
3
Understand Core Concepts
Read about pagination and error handling.
4
Build Your Integration
Start building! Reach out to [email protected] if you need help.