curl --request GET \
--url https://prod-api.raisedonors.com/api/Campaign/list \
--header 'Authorization: <api-key>'const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch('https://prod-api.raisedonors.com/api/Campaign/list', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://prod-api.raisedonors.com/api/Campaign/list"
headers = {"Authorization": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)using RestSharp;
var options = new RestClientOptions("https://prod-api.raisedonors.com/api/Campaign/list");
var client = new RestClient(options);
var request = new RestRequest("");
request.AddHeader("Authorization", "<api-key>");
var response = await client.GetAsync(request);
Console.WriteLine("{0}", response.Content);
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://prod-api.raisedonors.com/api/Campaign/list",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}HttpResponse<String> response = Unirest.get("https://prod-api.raisedonors.com/api/Campaign/list")
.header("Authorization", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://prod-api.raisedonors.com/api/Campaign/list")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<api-key>'
response = http.request(request)
puts response.read_bodyconst url = 'https://prod-api.raisedonors.com/api/Campaign/list';
const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch(url, options)
.then(res => res.json())
.then(json => console.log(json))
.catch(err => console.error(err));{
"items": [
{
"id": 88,
"name": "Year-End Giving 2025",
"description": "Year-end multi-channel giving campaign.",
"startDate": "2025-11-01",
"endDate": "2025-12-31",
"duration": "60",
"canSync": true,
"crmKey": "2011",
"crmKeyUrls": {
"VirtuousCRM": {
"crmKey": "2011",
"url": "https://app.virtuoussoftware.com/Generosity/Campaign/Detail/2011"
}
},
"applySegmentToRecurringGifts": true,
"givingGoal": 250000,
"givingGoalFormatted": "$250,000.00",
"hasGivingGoal": true,
"raisedAmount": "$87,340.00",
"raisedPercentage": 34.9,
"totalGiftGoal": 600,
"hasTotalGiftGoal": true,
"totalGifts": 467,
"totalGiftsPercentage": 77.8,
"totalDonors": 412,
"averageGiftGoal": 250,
"averageGiftGoalFormatted": "$250.00",
"averageGiftAmount": "$187.02",
"hasAverageGiftGoal": true,
"totalVisitors": 5842,
"conversionRate": "8.0%",
"createdDateTime": "2025-10-15T09:00:00Z",
"modifiedDateTime": "2025-11-15T08:00:00Z"
},
{
"id": 89,
"name": "Giving Tuesday 2025",
"description": "Single-day giving event.",
"startDate": "2025-12-02",
"endDate": "2025-12-02",
"duration": "1",
"canSync": true,
"crmKey": "2013",
"crmKeyUrls": {},
"applySegmentToRecurringGifts": false,
"givingGoal": 50000,
"givingGoalFormatted": "$50,000.00",
"hasGivingGoal": true,
"raisedAmount": "$18,420.00",
"raisedPercentage": 36.8,
"totalGiftGoal": 200,
"hasTotalGiftGoal": true,
"totalGifts": 142,
"totalGiftsPercentage": 71,
"totalDonors": 132,
"averageGiftGoal": 0,
"averageGiftGoalFormatted": null,
"averageGiftAmount": "$129.72",
"hasAverageGiftGoal": false,
"totalVisitors": 2104,
"conversionRate": "6.7%",
"createdDateTime": "2025-10-15T12:00:00Z",
"modifiedDateTime": "2025-11-15T08:00:00Z"
},
{
"id": 90,
"name": "Monthly Giving Society",
"description": "Evergreen monthly giving program.",
"startDate": "2023-01-01",
"endDate": null,
"duration": null,
"canSync": true,
"crmKey": null,
"crmKeyUrls": {},
"applySegmentToRecurringGifts": true,
"givingGoal": 120000,
"givingGoalFormatted": "$120,000.00",
"hasGivingGoal": true,
"raisedAmount": "$96,480.00",
"raisedPercentage": 80.4,
"totalGiftGoal": 0,
"hasTotalGiftGoal": false,
"totalGifts": 2412,
"totalGiftsPercentage": 0,
"totalDonors": 214,
"averageGiftGoal": 0,
"averageGiftGoalFormatted": null,
"averageGiftAmount": "$40.00",
"hasAverageGiftGoal": false,
"totalVisitors": 9310,
"conversionRate": "2.3%",
"createdDateTime": "2023-01-01T10:00:00Z",
"modifiedDateTime": "2025-11-15T08:00:00Z"
}
],
"total": 3
}{
"type": "https://tools.ietf.org/html/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred.",
"status": 400,
"errors": {
"take": [
"take must be between 1 and 1000."
]
},
"instance": "/api/Campaign/list"
}{
"type": "https://tools.ietf.org/html/rfc7235#section-3.1",
"title": "Unauthorized",
"status": 401,
"detail": "The Authorization header is missing, malformed, or carries a token that is expired or revoked.",
"instance": "/api/Campaign/list"
}List All Campaigns
Returns a paginated list of campaigns with their goals and running totals.
curl --request GET \
--url https://prod-api.raisedonors.com/api/Campaign/list \
--header 'Authorization: <api-key>'const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch('https://prod-api.raisedonors.com/api/Campaign/list', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://prod-api.raisedonors.com/api/Campaign/list"
headers = {"Authorization": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)using RestSharp;
var options = new RestClientOptions("https://prod-api.raisedonors.com/api/Campaign/list");
var client = new RestClient(options);
var request = new RestRequest("");
request.AddHeader("Authorization", "<api-key>");
var response = await client.GetAsync(request);
Console.WriteLine("{0}", response.Content);
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://prod-api.raisedonors.com/api/Campaign/list",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}HttpResponse<String> response = Unirest.get("https://prod-api.raisedonors.com/api/Campaign/list")
.header("Authorization", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://prod-api.raisedonors.com/api/Campaign/list")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<api-key>'
response = http.request(request)
puts response.read_bodyconst url = 'https://prod-api.raisedonors.com/api/Campaign/list';
const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch(url, options)
.then(res => res.json())
.then(json => console.log(json))
.catch(err => console.error(err));{
"items": [
{
"id": 88,
"name": "Year-End Giving 2025",
"description": "Year-end multi-channel giving campaign.",
"startDate": "2025-11-01",
"endDate": "2025-12-31",
"duration": "60",
"canSync": true,
"crmKey": "2011",
"crmKeyUrls": {
"VirtuousCRM": {
"crmKey": "2011",
"url": "https://app.virtuoussoftware.com/Generosity/Campaign/Detail/2011"
}
},
"applySegmentToRecurringGifts": true,
"givingGoal": 250000,
"givingGoalFormatted": "$250,000.00",
"hasGivingGoal": true,
"raisedAmount": "$87,340.00",
"raisedPercentage": 34.9,
"totalGiftGoal": 600,
"hasTotalGiftGoal": true,
"totalGifts": 467,
"totalGiftsPercentage": 77.8,
"totalDonors": 412,
"averageGiftGoal": 250,
"averageGiftGoalFormatted": "$250.00",
"averageGiftAmount": "$187.02",
"hasAverageGiftGoal": true,
"totalVisitors": 5842,
"conversionRate": "8.0%",
"createdDateTime": "2025-10-15T09:00:00Z",
"modifiedDateTime": "2025-11-15T08:00:00Z"
},
{
"id": 89,
"name": "Giving Tuesday 2025",
"description": "Single-day giving event.",
"startDate": "2025-12-02",
"endDate": "2025-12-02",
"duration": "1",
"canSync": true,
"crmKey": "2013",
"crmKeyUrls": {},
"applySegmentToRecurringGifts": false,
"givingGoal": 50000,
"givingGoalFormatted": "$50,000.00",
"hasGivingGoal": true,
"raisedAmount": "$18,420.00",
"raisedPercentage": 36.8,
"totalGiftGoal": 200,
"hasTotalGiftGoal": true,
"totalGifts": 142,
"totalGiftsPercentage": 71,
"totalDonors": 132,
"averageGiftGoal": 0,
"averageGiftGoalFormatted": null,
"averageGiftAmount": "$129.72",
"hasAverageGiftGoal": false,
"totalVisitors": 2104,
"conversionRate": "6.7%",
"createdDateTime": "2025-10-15T12:00:00Z",
"modifiedDateTime": "2025-11-15T08:00:00Z"
},
{
"id": 90,
"name": "Monthly Giving Society",
"description": "Evergreen monthly giving program.",
"startDate": "2023-01-01",
"endDate": null,
"duration": null,
"canSync": true,
"crmKey": null,
"crmKeyUrls": {},
"applySegmentToRecurringGifts": true,
"givingGoal": 120000,
"givingGoalFormatted": "$120,000.00",
"hasGivingGoal": true,
"raisedAmount": "$96,480.00",
"raisedPercentage": 80.4,
"totalGiftGoal": 0,
"hasTotalGiftGoal": false,
"totalGifts": 2412,
"totalGiftsPercentage": 0,
"totalDonors": 214,
"averageGiftGoal": 0,
"averageGiftGoalFormatted": null,
"averageGiftAmount": "$40.00",
"hasAverageGiftGoal": false,
"totalVisitors": 9310,
"conversionRate": "2.3%",
"createdDateTime": "2023-01-01T10:00:00Z",
"modifiedDateTime": "2025-11-15T08:00:00Z"
}
],
"total": 3
}{
"type": "https://tools.ietf.org/html/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred.",
"status": 400,
"errors": {
"take": [
"take must be between 1 and 1000."
]
},
"instance": "/api/Campaign/list"
}{
"type": "https://tools.ietf.org/html/rfc7235#section-3.1",
"title": "Unauthorized",
"status": 401,
"detail": "The Authorization header is missing, malformed, or carries a token that is expired or revoked.",
"instance": "/api/Campaign/list"
}filter for a free-text search, sortBy and descending to order the results, and includeDetails=true to include each campaign’s related records (segments, pages, and page statistics). For condition-based searches, use Query Campaigns.Authorizations
JWT Authorization header using the Bearer scheme. Example: "Authorization: Bearer {token}"
Query Parameters
A free-text search term. Only campaigns whose name, description, or code match the term are returned.
The number of records to skip before the first record returned. Use it with take to page through the results.
The maximum number of records to return in this page of results.
Field to sort by (case-insensitive). Valid options: avggiftgoal, enddate, id, startdate
avggiftgoal, enddate, id, startdate The direction to sort the results. Set to true to sort in descending order.
When true, each campaign includes its related records: segments, pages, and page statistics. This can slow down large result sets.
Was this page helpful?