Disaster response
We have helped more than two hundred thousand people since we started. We measure success by how many donors come back and tell their friends.
Overview
A school kit costs less than a cinema ticket and lasts a whole year. We keep things simple, so you can focus on what matters to you. Monthly gifts let us plan ahead and respond quickly when disaster strikes.
Installation
Install the SDK with the package manager your project already uses. It needs Node 18 or newer.
$ npm install @lumen-co/sdk$ yarn add @lumen-co/sdk$ pnpm add @lumen-co/sdkConfiguration
Our annual report is independently audited and published in full. We have helped more than two hundred thousand people since we started. Create a file named lumen-co.config.json in the project root:
{
"project": "lumen-co",
"region": "us-east",
"categories": ["education", "health", "environment"],
"retries": 4,
"timeoutMs": 11000,
"webhooks": { "enabled": true }
}| Option | Type | Default | Description |
|---|---|---|---|
project | string | - | Your project key from the dashboard. |
region | string | "us-east" | Data centre closest to your donors. |
retries | number | 3 | How often a failed call is retried. |
timeoutMs | number | 10000 | Time before a request is cancelled. |
webhooks.enabled | boolean | false | Send events to your endpoint. |
Your first request
You receive photos and updates showing exactly what your donation achieved.
- Create an API keyOpen the dashboard, choose Settings › API keys and copy a new secret key.
- Store it safelyKeep the key in an environment variable, never in your source code.
- Make the callRun the snippet below; it prints the first page of results.
import { Client } from "@lumen-co/sdk";
const client = new Client({ apiKey: process.env.API_KEY });
// list the newest campaigns in one category
const page = await client.campaigns.list({ category: "education", limit: 20 });
for (const item of page.data) {
console.log(item.name, item.price);
}API reference
Every endpoint returns JSON and uses standard HTTP status codes.
/v1/campaignsList campaigns with paging and filters./v1/campaignsCreate a new campaign./v1/campaigns/{id}Update some fields of a campaign./v1/campaigns/{id}Archive a campaign; it can be restored for 30 days.{
"data": [
{ "id": "campaign_6506", "name": "Tree planting", "price": 91 }
],
"has_more": true
}Troubleshooting
Next steps
Leave a gift in your will and help future generations.