ImpactAPI Documentation
    • Introduction
    • Quick Start
    • Authentication
    • Donation Sessions
    • Error Handling
    • Pagination
    • Metadata
    • Endpoints
    • Customers
    • Donation Intents
    • Donation Sessions
    • Vendors
    • Campaigns
API Version: v1.0
Back to dashboard
ImpactAPI Documentation

Quick Start guide

5 min setup

Get up and running with the ImpactAPI in just a few minutes. This guide will walk you through making your first donation.

Prerequisites

Before you begin
  • An ImpactAPI account (sign up here)
  • An organization
  • Basic knowledge of REST APIs and HTTP requests
  • A development environment with your programming language of choice

Testing with Test mode

Test mode
Safely test your integration without real transactions or charges

Enabling Test mode

Toggle "Test mode" in your dashboard's sidebar to change to your test environment.

Test mode: Off
Test mode: OnTest

Test mode features

  • No real charges or transactions processed
  • Isolated test data that won't affect your production environment
  • Visual indicators throughout the dashboard when Test mode is active
Test mode vs. Live

Always develop and test your integration with Test mode enabled. When you're ready to go live, toggle Test mode off and create a new live API key.

Step 1: Get your API key

Generate API key
Create your first API key from the dashboard
  1. Navigate to your API keys
  2. Click "Create"
  3. Give your key a descriptive name (e.g., "My App API Key")
  4. Copy and securely store your API key

Important: Your API key will only be shown once. Store it securely and never expose it in client-side code.

Environment setup
Store your API key securely

Add your API key to your environment variables:

# .env file
IMPACT_API_KEY=ddc_your_api_key_here

Step 2: Create your first donation intent

Now let's create a donation intent, which represents a portion of a larger donation that will be processed on your billing date.

const response = await fetch('https://testing.impactapi.co/donation_intents', {
  method: 'POST',
  headers: {
    'Authorization': `Bearer ${process.env.IMPACT_API_KEY}`,
    'Content-Type': 'application/json'
  },
  body: JSON.stringify([
    {
      amount: 100,
      campaign_identifier: 'trees-for-the-future'
    }
  ])
});
Expected response
{
  "data": [
    {
      "id": "01JX0R9WW0BDQ2ZTTS4NVB7A95",
      "amount": 100,
      "campaign_identifier": "trees-for-the-future",
      "environment": "test",
      "organization_id": "01JWY88NNMBC413QWRFS35CK8M",
      "created_at": "2025-06-05T19:15:21.000000Z",
      "updated_at": "2025-06-05T19:15:21.000000Z"
    }
  ]
}

Next steps

Authentication

Learn about API key management, security best practices, and authentication methods.

Authentication →
Explore endpoints

Discover all available API endpoints for donations, campaigns, analytics, and more.

View API Reference →