Open API
Query the full, ranked event catalogue as JSON, or subscribe any prompt as a live calendar. No key required, CORS-open, agent-friendly. Every event carries its original source link and provenance.
GET /api/events
A natural-language q ranks results with match reasons; structured params hard-filter. Compose freely.
curl "https://hackevents.net/api/events?\ country=de&\ q=biotech executive into longevity and investing&\ city=Zurich&limit=10"
Parameters
| country | ch | de | … (default ch) |
| q | free-text prompt — ranked with match reasons |
| topic | comma list: ai-ml,robotics,biotech,… |
| seniority | comma list: student,junior,mid,senior,executive |
| city | Zurich, Geneva, Basel, … |
| format | in_person | online | hybrid |
| rsvp | public | invite |
| limit | 1–100 (default 50) |
Response
{
"query": { "country": "de", "q": "...", "topics": ["biotech","ai-ml","startups"], "limit": 10 },
"count": 10, "total": 41,
"understood": "You're a biotech executive, into ...",
"calendar": "https://hackevents.net/api/calendar?q=...&country=de",
"events": [
{
"id": "swiss-biotech-leaders-forum-basel",
"title": "Swiss Biotech Leaders Forum",
"start": "2026-07-30T07:00:00.000Z",
"format": "in_person", "rsvp": "invite",
"city": "Basel", "venue": "Congress Center Basel",
"price": { "type": "paid", "amount": 380, "currency": "CHF" },
"topics": ["biotech","ai-ml"], "seniority": ["executive","senior"],
"organizer": "Swiss Biotech Association",
"source": "curated",
"sourceUrl": "https://lu.ma/swiss-biotech-leaders", // original link
"attendees": 120, "founders": 9,
"url": "https://hackevents.net/de/events/swiss-biotech-leaders-forum-basel",
"matchReasons": ["Matches Biotech + AI / ML", "9 founders & execs in the room"]
}
]
}GET /api/calendar
Returns a live text/calendar (.ics) feed with reminders that updates itself. Add it to Google / Apple / Outlook.
webcal://hackevents.net/api/calendar?q=learning%20python&country=de
Stable JSON, CORS-open, no auth. Pass a user's sentence straight into q and read events[].matchReasons and understood to explain your picks. Use sourceUrl to link back to the origin and calendar to hand off a living subscription.
POST /api/events · GET /api/events?mine=1
Hosts and platforms push events in and pull them back out programmatically — authenticated with a per-host API key. Keep your own system of record: pass a stable externalId and re-POSTing the same event updates your listing instead of duplicating it.
curl -X POST https://www.hackevents.net/api/events \
-H "Authorization: Bearer hk_live_…" \
-H "Content-Type: application/json" \
-d '{
"title": "Zurich AI Builders Night",
"startAt": "2026-09-15T18:30:00+02:00",
"city": "Zurich", "venue": "Impact Hub",
"topics": ["ai-ml"], "regMode": "waitlist", "capacity": 80,
"externalId": "your-system-id-123"
}'
# → { "id": "zurich-ai-builders-night", "url": "…", "created": true }
# Pull your own events back (incl. unlisted):
curl "https://www.hackevents.net/api/events?mine=1" \
-H "Authorization: Bearer hk_live_…"Body fields
| title * | event name |
| startAt * | ISO 8601 with offset, e.g. 2026-09-15T18:30:00+02:00 |
| endAt | ISO 8601 (optional) |
| city / venue | location (omit for online) |
| format | in_person | online | hybrid (default in_person) |
| topics | array, e.g. ["ai-ml","robotics"] |
| regMode | open | invite | waitlist (default open) |
| capacity | integer (optional) |
| price / priceAmount | free | paid, amount in CHF |
| url | your own event/registration link (optional) |
| visibility | public | unlisted |
| externalId | your id — key for idempotent updates |
A live Model Context Protocol server so any agent can discover, rank and book tech events natively — take your human to the best next tech event. It speaks events: search by intent, read why each matched, RSVP, and hand off a live calendar.
Connect (remote — live now)
Point any MCP client at the endpoint below. RSVP and personal-calendar tools authenticate with your key via the Authorization: Bearer header.
https://www.hackevents.net/api/mcp
Connect (npx package)
{
"mcpServers": {
"hackevents": {
"command": "npx",
"args": ["-y", "@hackevents/mcp"],
"env": { "HACKEVENTS_API_KEY": "hk_live_…" }
}
}
}