All admin operations require an authorization key. This key is set via the THERMOMETER_EDIT_KEY environment variable
when the service is started. Include this key in the Authorization header of your requests.
Upload a CSV file containing team donation data. The CSV should have the following columns:
name - Team name (required)total_raised - Amount raised by the team (required, numeric)image_url - URL to team image (optional)name,image_url,total_raised Team Alpha,https://example.com/alpha.jpg,2500.00 Team Beta,https://example.com/beta.jpg,3200.50 Team Gamma,,1800.00 PUP ALL NIGHT: THE PM PACK,,6987.00 UnderDogs,https://example.com/underdogs.png,5010.00
Update the organization name, campaign title, and goal using this form:
Alternatively, you can update the configuration directly using JSON. This allows you to set the organization name, title, goal, and team data programmatically.
{
"organization_name": "Community Animal Rescue Effort Skokie",
"title": "Annual Fundraising Drive 2025",
"goal": 10000.0,
"teams": [
{
"name": "Team Alpha",
"image_url": null,
"total_raised": 2500.0
},
{
"name": "Team Beta",
"image_url": "https://example.com/logo.png",
"total_raised": 3200.0
}
],
"last_updated": "2025-10-27T00:00:00Z"
}
curl -X POST https://your-domain.com/admin/config \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_KEY_HERE" \
-d '{
"title": "Animal Shelter Donation Drive",
"goal": 10000.0,
"teams": [...]
}'
| Endpoint | Method | Description | Auth Required |
|---|---|---|---|
/config |
GET | Get current configuration | No |
/admin/upload |
POST | Upload CSV file | Yes |
/admin/config |
POST | Update configuration (JSON) | Yes |
/thermometer-light.png |
GET | Get thermometer image (light mode) | No |
/thermometer-light.svg |
GET | Get thermometer SVG (light mode) | No |
/thermometer-dark.png |
GET | Get thermometer image (dark mode) | No |
/thermometer-dark.svg |
GET | Get thermometer SVG (dark mode) | No |
/health |
GET | Health check | No |
For detailed API documentation, see the OpenAPI specification.