API
Organizers and sponsors
List, search, fetch and export hackathon organizers and sponsors over the API, with their contact fields and event history
The organizer and sponsor endpoints return the same records as the organizer directory and the sponsor directory, with paginated JSON lists, single-record lookups and CSV exports. All of them need an API key. See Authentication and keys.
List organizers
GET /api/organizers returns a page of organizers.
| Parameter | Default | Effect |
|---|---|---|
page | 1 | Page number, starting at 1 |
limit | 10 | Rows per page, at most 100 |
search | Text match on name, domain and email | |
domain | Exact domain, such as acme.dev | |
sortBy | most_recent_hackathon_start_at | A field name from the organizer record, such as name or created_at |
sortOrder | desc | asc or desc |
curl "https://www.hackathonradar.com/api/organizers?search=university&limit=25" \
-H "Authorization: Bearer $HACKATHONRADAR_API_KEY"{
"data": [
{
"id": "76ee2e74-a0b0-4f19-85d9-30f9d2c3f181",
"name": "Treeline Hacks",
"domain": "treelinehacks.example.com",
"website_url": "https://treelinehacks.example.com",
"email": "team@treelinehacks.example.com",
"email_confidence": 0.92,
"twitter": "treelinehacks",
"linkedin": null,
"instagram": null,
"image_url": null,
"created_at": "2026-03-01T12:00:00.000Z",
"most_recent_hackathon_title": "TreeLine Hacks",
"most_recent_hackathon_start_at": "2026-03-06T16:45:00.000Z"
}
],
"pagination": { "page": 1, "limit": 25, "total": 1, "totalPages": 1, "hasNext": false, "hasPrev": false }
}Walk the pages with page until hasNext is false.
Fetch one organizer
GET /api/organizers/{id} takes the organizer's UUID and returns the record above plus:
events: every hackathon linked to the organizer, newest first, each withid,title,start_atandrole(host,communityorsponsor, or null).quality_score: the organizer's quality score (score_total,confidence,computed_atand supporting detail), or null when there is no score yet. See Quality scores.
An unknown or malformed id returns 404 Organizer not found.
List and fetch sponsors
GET /api/sponsors takes the same page, limit, search, domain, sortBy and sortOrder parameters, and returns the same data and pagination shape. It sorts by sponsored_count, highest first, by default.
| Field | What it holds |
|---|---|
id, name, domain, website_url, logo_url | Company identity |
email, email_confidence, twitter, linkedin | Company-level contact fields |
sponsored_count | How many hackathons the sponsor appears on |
sponsored_hackathons | Array of { id, slug, title } for those hackathons |
created_at | When HackathonRadar first recorded the sponsor |
GET /api/sponsors/{id} takes the sponsor's UUID and adds events: each linked hackathon's id, title and start_at, newest first. An unknown id returns 404 Sponsor not found.
Contact fields and opt-outs
Any contact field can be null. email_confidence is a 0 to 1 estimate that the email is valid, so weigh low values before you send anything. Organizer records carry email, twitter, linkedin and instagram. Sponsor records carry company-level email, twitter and linkedin.
The named people listed as sponsor contacts in the app, with their roles and opt-out status, are not part of the REST API. See the sponsor directory for how those work.
The API does not know who has asked you to stop contacting them. Keep that list in HackathonRadar as suppression rules: add an email, a domain or an event URL once, then check every lead against it before outreach.
Export as CSV
GET /api/organizers/export and GET /api/sponsors/export return CSV files (organizers-export-YYYY-MM-DD.csv, sponsors-export-YYYY-MM-DD.csv). Both accept search, domain and columns.
| Export | Column keys |
|---|---|
| Organizers | name, domain, website_url, email, twitter, linkedin, instagram, image_url, created_at, most_recent_hackathon_title, most_recent_hackathon_start_at |
| Sponsors | logo_url, name, domain, website_url, sponsored_count, sponsored_hackathons |
curl "https://www.hackathonradar.com/api/organizers/export?search=university&columns=name,domain,email,most_recent_hackathon_title" \
-H "Authorization: Bearer $HACKATHONRADAR_API_KEY" \
-o organizers.csvValues are formatted for reading: created_at as DD/MM/YYYY, twitter and instagram with a leading @, linkedin as linkedin.com/company/<handle>, and sponsored_hackathons as titles joined with ; . The sponsor export has no email column; use the JSON endpoints for sponsor emails.