Find Campaign
curl --request POST \
--url https://api.crowdchange.dev/v2/private/fundraisers/search \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"text": "<string>",
"page": 123,
"limit": 123,
"sort": "<string>",
"direction": "<string>",
"email": "<string>",
"status": "<string>",
"is_hidden": true,
"created_at": {
"<": "<string>",
"<=": "<string>",
"=": "<string>",
">=": "<string>",
">": "<string>"
},
"amount_goal": {
"<": 123,
"<=": 123,
"=": 123,
">=": 123,
">": 123
},
"amount_raised": {
"<": 123,
"<=": 123,
"=": 123,
">=": 123,
">": 123
},
"after_id": 123,
"lang": "<string>",
"filter_by_lang": 123,
"tags": [
"<string>"
]
}
'import requests
url = "https://api.crowdchange.dev/v2/private/fundraisers/search"
payload = {
"text": "<string>",
"page": 123,
"limit": 123,
"sort": "<string>",
"direction": "<string>",
"email": "<string>",
"status": "<string>",
"is_hidden": True,
"created_at": {
"<": "<string>",
"<=": "<string>",
"=": "<string>",
">=": "<string>",
">": "<string>"
},
"amount_goal": {
"<": 123,
"<=": 123,
"=": 123,
">=": 123,
">": 123
},
"amount_raised": {
"<": 123,
"<=": 123,
"=": 123,
">=": 123,
">": 123
},
"after_id": 123,
"lang": "<string>",
"filter_by_lang": 123,
"tags": ["<string>"]
}
headers = {
"Authorization": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
text: '<string>',
page: 123,
limit: 123,
sort: '<string>',
direction: '<string>',
email: '<string>',
status: '<string>',
is_hidden: true,
created_at: {
'<': '<string>',
'<=': '<string>',
'=': '<string>',
'>=': '<string>',
'>': '<string>'
},
amount_goal: {'<': 123, '<=': 123, '=': 123, '>=': 123, '>': 123},
amount_raised: {'<': 123, '<=': 123, '=': 123, '>=': 123, '>': 123},
after_id: 123,
lang: '<string>',
filter_by_lang: 123,
tags: ['<string>']
})
};
fetch('https://api.crowdchange.dev/v2/private/fundraisers/search', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.crowdchange.dev/v2/private/fundraisers/search",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'text' => '<string>',
'page' => 123,
'limit' => 123,
'sort' => '<string>',
'direction' => '<string>',
'email' => '<string>',
'status' => '<string>',
'is_hidden' => true,
'created_at' => [
'<' => '<string>',
'<=' => '<string>',
'=' => '<string>',
'>=' => '<string>',
'>' => '<string>'
],
'amount_goal' => [
'<' => 123,
'<=' => 123,
'=' => 123,
'>=' => 123,
'>' => 123
],
'amount_raised' => [
'<' => 123,
'<=' => 123,
'=' => 123,
'>=' => 123,
'>' => 123
],
'after_id' => 123,
'lang' => '<string>',
'filter_by_lang' => 123,
'tags' => [
'<string>'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.crowdchange.dev/v2/private/fundraisers/search"
payload := strings.NewReader("{\n \"text\": \"<string>\",\n \"page\": 123,\n \"limit\": 123,\n \"sort\": \"<string>\",\n \"direction\": \"<string>\",\n \"email\": \"<string>\",\n \"status\": \"<string>\",\n \"is_hidden\": true,\n \"created_at\": {\n \"<\": \"<string>\",\n \"<=\": \"<string>\",\n \"=\": \"<string>\",\n \">=\": \"<string>\",\n \">\": \"<string>\"\n },\n \"amount_goal\": {\n \"<\": 123,\n \"<=\": 123,\n \"=\": 123,\n \">=\": 123,\n \">\": 123\n },\n \"amount_raised\": {\n \"<\": 123,\n \"<=\": 123,\n \"=\": 123,\n \">=\": 123,\n \">\": 123\n },\n \"after_id\": 123,\n \"lang\": \"<string>\",\n \"filter_by_lang\": 123,\n \"tags\": [\n \"<string>\"\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.crowdchange.dev/v2/private/fundraisers/search")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"text\": \"<string>\",\n \"page\": 123,\n \"limit\": 123,\n \"sort\": \"<string>\",\n \"direction\": \"<string>\",\n \"email\": \"<string>\",\n \"status\": \"<string>\",\n \"is_hidden\": true,\n \"created_at\": {\n \"<\": \"<string>\",\n \"<=\": \"<string>\",\n \"=\": \"<string>\",\n \">=\": \"<string>\",\n \">\": \"<string>\"\n },\n \"amount_goal\": {\n \"<\": 123,\n \"<=\": 123,\n \"=\": 123,\n \">=\": 123,\n \">\": 123\n },\n \"amount_raised\": {\n \"<\": 123,\n \"<=\": 123,\n \"=\": 123,\n \">=\": 123,\n \">\": 123\n },\n \"after_id\": 123,\n \"lang\": \"<string>\",\n \"filter_by_lang\": 123,\n \"tags\": [\n \"<string>\"\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.crowdchange.dev/v2/private/fundraisers/search")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"text\": \"<string>\",\n \"page\": 123,\n \"limit\": 123,\n \"sort\": \"<string>\",\n \"direction\": \"<string>\",\n \"email\": \"<string>\",\n \"status\": \"<string>\",\n \"is_hidden\": true,\n \"created_at\": {\n \"<\": \"<string>\",\n \"<=\": \"<string>\",\n \"=\": \"<string>\",\n \">=\": \"<string>\",\n \">\": \"<string>\"\n },\n \"amount_goal\": {\n \"<\": 123,\n \"<=\": 123,\n \"=\": 123,\n \">=\": 123,\n \">\": 123\n },\n \"amount_raised\": {\n \"<\": 123,\n \"<=\": 123,\n \"=\": 123,\n \">=\": 123,\n \">\": 123\n },\n \"after_id\": 123,\n \"lang\": \"<string>\",\n \"filter_by_lang\": 123,\n \"tags\": [\n \"<string>\"\n ]\n}"
response = http.request(request)
puts response.read_body[
{
"id": 1,
"partner_id": 10,
"name": "Campaign",
"created_at": "2022-01-01 16:00:03",
"amount_goal": 1000,
"amount_raised": 550,
"amount_raised_formatted": "$550",
"dt_start": "2021-01-01 08:00:00",
"dt_end": "2021-01-01 16:00:00",
"location": "100 Main Street, Toronto, ON",
"url": "https://demo.crowdchange.dev/2",
"n_donors": 100,
"n_teams": 50,
"n_pages": 50,
"status": "approved",
"status_code": "approved",
"is_hidden": false,
"auto_open_at": "2022-03-01 00:00:00",
"auto_close_at": "2022-03-01 00:00:00",
"closed_at": "2022-03-01 00:00:00",
"archived_at": "2022-03-01 00:00:00",
"language": "en",
"in_support_name": "Cancer Research",
"in_support_code": "CR-123",
"appeal_code": "GEN-123",
"user": {
"id": 1,
"name": "John Snow",
"first_name": "John",
"last_name": "Snow",
"title": "Mr.",
"email": "john@crowdchange.co"
},
"organization": {
"id": 1,
"name": "Crowdchange",
"custom_id": "CrowdchangeID"
},
"fundraiser_template": {
"id": 1,
"name": "Template"
},
"images": {
"original": "https://img.crowdchange.co/files/abc.png?tr=w-[width],h-[height]"
},
"custom_data": [
{
"field_id": 1001,
"source_id": 11,
"name": "Phone Number",
"content": "555-123-4567",
"field_custom_id": "ABC-123",
"response_custom_id": "ABC-123"
}
],
"tags_list": [
"tag1",
"tag2"
]
}
]
Global APIs
Find Campaign
Search CrowdChange campaigns server-side with rich filters and retrieve a paginated list of matching fundraisers with goal, raised, and status data.
POST
/
v2
/
private
/
fundraisers
/
search
Find Campaign
curl --request POST \
--url https://api.crowdchange.dev/v2/private/fundraisers/search \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"text": "<string>",
"page": 123,
"limit": 123,
"sort": "<string>",
"direction": "<string>",
"email": "<string>",
"status": "<string>",
"is_hidden": true,
"created_at": {
"<": "<string>",
"<=": "<string>",
"=": "<string>",
">=": "<string>",
">": "<string>"
},
"amount_goal": {
"<": 123,
"<=": 123,
"=": 123,
">=": 123,
">": 123
},
"amount_raised": {
"<": 123,
"<=": 123,
"=": 123,
">=": 123,
">": 123
},
"after_id": 123,
"lang": "<string>",
"filter_by_lang": 123,
"tags": [
"<string>"
]
}
'import requests
url = "https://api.crowdchange.dev/v2/private/fundraisers/search"
payload = {
"text": "<string>",
"page": 123,
"limit": 123,
"sort": "<string>",
"direction": "<string>",
"email": "<string>",
"status": "<string>",
"is_hidden": True,
"created_at": {
"<": "<string>",
"<=": "<string>",
"=": "<string>",
">=": "<string>",
">": "<string>"
},
"amount_goal": {
"<": 123,
"<=": 123,
"=": 123,
">=": 123,
">": 123
},
"amount_raised": {
"<": 123,
"<=": 123,
"=": 123,
">=": 123,
">": 123
},
"after_id": 123,
"lang": "<string>",
"filter_by_lang": 123,
"tags": ["<string>"]
}
headers = {
"Authorization": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
text: '<string>',
page: 123,
limit: 123,
sort: '<string>',
direction: '<string>',
email: '<string>',
status: '<string>',
is_hidden: true,
created_at: {
'<': '<string>',
'<=': '<string>',
'=': '<string>',
'>=': '<string>',
'>': '<string>'
},
amount_goal: {'<': 123, '<=': 123, '=': 123, '>=': 123, '>': 123},
amount_raised: {'<': 123, '<=': 123, '=': 123, '>=': 123, '>': 123},
after_id: 123,
lang: '<string>',
filter_by_lang: 123,
tags: ['<string>']
})
};
fetch('https://api.crowdchange.dev/v2/private/fundraisers/search', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.crowdchange.dev/v2/private/fundraisers/search",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'text' => '<string>',
'page' => 123,
'limit' => 123,
'sort' => '<string>',
'direction' => '<string>',
'email' => '<string>',
'status' => '<string>',
'is_hidden' => true,
'created_at' => [
'<' => '<string>',
'<=' => '<string>',
'=' => '<string>',
'>=' => '<string>',
'>' => '<string>'
],
'amount_goal' => [
'<' => 123,
'<=' => 123,
'=' => 123,
'>=' => 123,
'>' => 123
],
'amount_raised' => [
'<' => 123,
'<=' => 123,
'=' => 123,
'>=' => 123,
'>' => 123
],
'after_id' => 123,
'lang' => '<string>',
'filter_by_lang' => 123,
'tags' => [
'<string>'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.crowdchange.dev/v2/private/fundraisers/search"
payload := strings.NewReader("{\n \"text\": \"<string>\",\n \"page\": 123,\n \"limit\": 123,\n \"sort\": \"<string>\",\n \"direction\": \"<string>\",\n \"email\": \"<string>\",\n \"status\": \"<string>\",\n \"is_hidden\": true,\n \"created_at\": {\n \"<\": \"<string>\",\n \"<=\": \"<string>\",\n \"=\": \"<string>\",\n \">=\": \"<string>\",\n \">\": \"<string>\"\n },\n \"amount_goal\": {\n \"<\": 123,\n \"<=\": 123,\n \"=\": 123,\n \">=\": 123,\n \">\": 123\n },\n \"amount_raised\": {\n \"<\": 123,\n \"<=\": 123,\n \"=\": 123,\n \">=\": 123,\n \">\": 123\n },\n \"after_id\": 123,\n \"lang\": \"<string>\",\n \"filter_by_lang\": 123,\n \"tags\": [\n \"<string>\"\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.crowdchange.dev/v2/private/fundraisers/search")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"text\": \"<string>\",\n \"page\": 123,\n \"limit\": 123,\n \"sort\": \"<string>\",\n \"direction\": \"<string>\",\n \"email\": \"<string>\",\n \"status\": \"<string>\",\n \"is_hidden\": true,\n \"created_at\": {\n \"<\": \"<string>\",\n \"<=\": \"<string>\",\n \"=\": \"<string>\",\n \">=\": \"<string>\",\n \">\": \"<string>\"\n },\n \"amount_goal\": {\n \"<\": 123,\n \"<=\": 123,\n \"=\": 123,\n \">=\": 123,\n \">\": 123\n },\n \"amount_raised\": {\n \"<\": 123,\n \"<=\": 123,\n \"=\": 123,\n \">=\": 123,\n \">\": 123\n },\n \"after_id\": 123,\n \"lang\": \"<string>\",\n \"filter_by_lang\": 123,\n \"tags\": [\n \"<string>\"\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.crowdchange.dev/v2/private/fundraisers/search")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"text\": \"<string>\",\n \"page\": 123,\n \"limit\": 123,\n \"sort\": \"<string>\",\n \"direction\": \"<string>\",\n \"email\": \"<string>\",\n \"status\": \"<string>\",\n \"is_hidden\": true,\n \"created_at\": {\n \"<\": \"<string>\",\n \"<=\": \"<string>\",\n \"=\": \"<string>\",\n \">=\": \"<string>\",\n \">\": \"<string>\"\n },\n \"amount_goal\": {\n \"<\": 123,\n \"<=\": 123,\n \"=\": 123,\n \">=\": 123,\n \">\": 123\n },\n \"amount_raised\": {\n \"<\": 123,\n \"<=\": 123,\n \"=\": 123,\n \">=\": 123,\n \">\": 123\n },\n \"after_id\": 123,\n \"lang\": \"<string>\",\n \"filter_by_lang\": 123,\n \"tags\": [\n \"<string>\"\n ]\n}"
response = http.request(request)
puts response.read_body[
{
"id": 1,
"partner_id": 10,
"name": "Campaign",
"created_at": "2022-01-01 16:00:03",
"amount_goal": 1000,
"amount_raised": 550,
"amount_raised_formatted": "$550",
"dt_start": "2021-01-01 08:00:00",
"dt_end": "2021-01-01 16:00:00",
"location": "100 Main Street, Toronto, ON",
"url": "https://demo.crowdchange.dev/2",
"n_donors": 100,
"n_teams": 50,
"n_pages": 50,
"status": "approved",
"status_code": "approved",
"is_hidden": false,
"auto_open_at": "2022-03-01 00:00:00",
"auto_close_at": "2022-03-01 00:00:00",
"closed_at": "2022-03-01 00:00:00",
"archived_at": "2022-03-01 00:00:00",
"language": "en",
"in_support_name": "Cancer Research",
"in_support_code": "CR-123",
"appeal_code": "GEN-123",
"user": {
"id": 1,
"name": "John Snow",
"first_name": "John",
"last_name": "Snow",
"title": "Mr.",
"email": "john@crowdchange.co"
},
"organization": {
"id": 1,
"name": "Crowdchange",
"custom_id": "CrowdchangeID"
},
"fundraiser_template": {
"id": 1,
"name": "Template"
},
"images": {
"original": "https://img.crowdchange.co/files/abc.png?tr=w-[width],h-[height]"
},
"custom_data": [
{
"field_id": 1001,
"source_id": 11,
"name": "Phone Number",
"content": "555-123-4567",
"field_custom_id": "ABC-123",
"response_custom_id": "ABC-123"
}
],
"tags_list": [
"tag1",
"tag2"
]
}
]
Body
string
Search term.
integer
Page number. Default:
1integer
Number of results to return. Default:
100string
Key to sort by. Allowed values:
id, name, amount_raised, amount_goalstring
Direction of sorting. Allowed values:
asc, descstring
Email filter.
string
Campaign status. Allowed values:
approved, pendingboolean
True if campaign is hidden, otherwise false.
integer
Return teams after Team ID.
string
API’s locale. Allowed values:
en, frinteger
Filter campaigns only available in locale
string[]
List of fundraiser tags.
Response
Returns an array of objects with the following fields.integer
Campaign ID.
integer
Site ID.
string
Campaign name.
string
Campaign creation date.
number
Goal amount.
number
Amount raised by the campaign.
string
Formatted amount raised by the campaign, includes currency symbol.
string
Date and time when campaign starts.
string
Date and time when campaign ends.
string
Campaign location.
string
URL to campaign.
integer
Number of donors.
integer
Number of teams.
integer
Number of pages.
string
Campaign’s approval status. Allowed values:
approved, pendingstring
Campaign’s activity status code. Allowed values:
live, deleted, archived, pending_approval, opening_soon, closedboolean
True if campaign is hidden, otherwise false.
string
Date when campaign is scheduled to auto-open
string
Date when campaign is scheduled to auto-close
string
Date when campaign was closed
string
Date when campaign was archived
string
Campaign language. Allowed values:
en, frstring
Value of
In support of field associated with campaign.string
Code provided for
In support of field.string
Appeal code.
object
object
object[]
List of custom questions and responses.
Show properties
Show properties
any[]
Campaign tags.
| Status | Description |
|---|---|
400 | Bad Request |
403 | Forbidden |
[
{
"id": 1,
"partner_id": 10,
"name": "Campaign",
"created_at": "2022-01-01 16:00:03",
"amount_goal": 1000,
"amount_raised": 550,
"amount_raised_formatted": "$550",
"dt_start": "2021-01-01 08:00:00",
"dt_end": "2021-01-01 16:00:00",
"location": "100 Main Street, Toronto, ON",
"url": "https://demo.crowdchange.dev/2",
"n_donors": 100,
"n_teams": 50,
"n_pages": 50,
"status": "approved",
"status_code": "approved",
"is_hidden": false,
"auto_open_at": "2022-03-01 00:00:00",
"auto_close_at": "2022-03-01 00:00:00",
"closed_at": "2022-03-01 00:00:00",
"archived_at": "2022-03-01 00:00:00",
"language": "en",
"in_support_name": "Cancer Research",
"in_support_code": "CR-123",
"appeal_code": "GEN-123",
"user": {
"id": 1,
"name": "John Snow",
"first_name": "John",
"last_name": "Snow",
"title": "Mr.",
"email": "john@crowdchange.co"
},
"organization": {
"id": 1,
"name": "Crowdchange",
"custom_id": "CrowdchangeID"
},
"fundraiser_template": {
"id": 1,
"name": "Template"
},
"images": {
"original": "https://img.crowdchange.co/files/abc.png?tr=w-[width],h-[height]"
},
"custom_data": [
{
"field_id": 1001,
"source_id": 11,
"name": "Phone Number",
"content": "555-123-4567",
"field_custom_id": "ABC-123",
"response_custom_id": "ABC-123"
}
],
"tags_list": [
"tag1",
"tag2"
]
}
]
Was this page helpful?
⌘I