curl --request GET \
--url https://api.vomo.org/v1/campaigns \
--header 'Authorization: Bearer <token>'const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.vomo.org/v1/campaigns', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.vomo.org/v1/campaigns"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)using RestSharp;
var options = new RestClientOptions("https://api.vomo.org/v1/campaigns");
var client = new RestClient(options);
var request = new RestRequest("");
request.AddHeader("Authorization", "Bearer <token>");
var response = await client.GetAsync(request);
Console.WriteLine("{0}", response.Content);
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.vomo.org/v1/campaigns",
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: Bearer <token>"
],
]);
$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://api.vomo.org/v1/campaigns")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.vomo.org/v1/campaigns")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_bodyconst url = 'https://api.vomo.org/v1/campaigns';
const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch(url, options)
.then(res => res.json())
.then(json => console.log(json))
.catch(err => console.error(err));{
"data": [
{
"type": "campaign",
"id": "91",
"campaign_name": "Fall Hunger Relief Drive",
"description": "A coordinated effort to stock local food banks before winter.",
"url": "https://app.vomo.org/initiative/fall-hunger-relief-drive",
"organization": "Riverside Hope Foundation",
"organization_slug": "riverside-hope",
"organization_id": 50,
"author_id": 7903,
"logo_url": null,
"created_at": "2025-11-01T09:00:00+00:00",
"updated_at": "2025-11-05T14:00:00+00:00"
},
{
"type": "campaign",
"id": "92",
"campaign_name": "Youth Leadership Initiative",
"description": "Empowering young volunteers with leadership skills.",
"url": "https://app.vomo.org/initiative/youth-leadership-initiative",
"organization": "Riverside Hope Youth Programs",
"organization_slug": "riverside-hope-youth",
"organization_id": 51,
"author_id": 7821,
"logo_url": null,
"created_at": "2025-11-03T10:00:00+00:00",
"updated_at": "2025-11-03T10:00:00+00:00"
}
],
"links": {
"first": "https://api.vomo.org/v1/campaigns?page=1",
"last": "https://api.vomo.org/v1/campaigns?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"to": 4,
"path": "https://api.vomo.org/v1/campaigns",
"per_page": 15,
"total": 4
}
}{
"error": {
"code": 401,
"message": "No API key provided"
}
}{
"message": "Too Many Attempts."
}{
"message": "Server Error"
}List / Find Campaigns
Returns a paginated list of all campaigns belonging to your organization family. Use this endpoint to sync campaign records into an external system or to look up campaigns by name. You can scope results to specific organizations using the org_slug filter, or narrow by creation and update timestamps to retrieve only recently changed records.
curl --request GET \
--url https://api.vomo.org/v1/campaigns \
--header 'Authorization: Bearer <token>'const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.vomo.org/v1/campaigns', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.vomo.org/v1/campaigns"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)using RestSharp;
var options = new RestClientOptions("https://api.vomo.org/v1/campaigns");
var client = new RestClient(options);
var request = new RestRequest("");
request.AddHeader("Authorization", "Bearer <token>");
var response = await client.GetAsync(request);
Console.WriteLine("{0}", response.Content);
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.vomo.org/v1/campaigns",
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: Bearer <token>"
],
]);
$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://api.vomo.org/v1/campaigns")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.vomo.org/v1/campaigns")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_bodyconst url = 'https://api.vomo.org/v1/campaigns';
const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch(url, options)
.then(res => res.json())
.then(json => console.log(json))
.catch(err => console.error(err));{
"data": [
{
"type": "campaign",
"id": "91",
"campaign_name": "Fall Hunger Relief Drive",
"description": "A coordinated effort to stock local food banks before winter.",
"url": "https://app.vomo.org/initiative/fall-hunger-relief-drive",
"organization": "Riverside Hope Foundation",
"organization_slug": "riverside-hope",
"organization_id": 50,
"author_id": 7903,
"logo_url": null,
"created_at": "2025-11-01T09:00:00+00:00",
"updated_at": "2025-11-05T14:00:00+00:00"
},
{
"type": "campaign",
"id": "92",
"campaign_name": "Youth Leadership Initiative",
"description": "Empowering young volunteers with leadership skills.",
"url": "https://app.vomo.org/initiative/youth-leadership-initiative",
"organization": "Riverside Hope Youth Programs",
"organization_slug": "riverside-hope-youth",
"organization_id": 51,
"author_id": 7821,
"logo_url": null,
"created_at": "2025-11-03T10:00:00+00:00",
"updated_at": "2025-11-03T10:00:00+00:00"
}
],
"links": {
"first": "https://api.vomo.org/v1/campaigns?page=1",
"last": "https://api.vomo.org/v1/campaigns?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"to": 4,
"path": "https://api.vomo.org/v1/campaigns",
"per_page": 15,
"total": 4
}
}{
"error": {
"code": 401,
"message": "No API key provided"
}
}{
"message": "Too Many Attempts."
}{
"message": "Server Error"
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Query Parameters
Page number (if paging results).
One or more org slugs (comma separated) campaigns should belong to.
The campaign name, or part of a name, to search for.
Date the campaign was created on or before.
Date the campaign was created on or after
Date the campaign was updated on or before.
Date the campaign was updated on or after
Response
Returns the paginated list of campaigns for your organization family. The response includes pagination links and meta fields to navigate additional pages.
Was this page helpful?