Skip to main content

V4 API

The MLH Core API V4 is the MLH Data Platform API for managing events, users, participations, and hackathon data.

  • Base URL: your MLH API host (for local development, http://localhost:3000).
  • Authentication: OAuth 2.0 (client credentials) or a bearer JWT — see Authentication.

These guides document the V4 API in prose: authentication, how to make requests, and each endpoint group below. When the API changes, these pages are updated alongside the code.

Getting started

  1. Register an API application to get a client ID and secret.
  2. Authenticate with the client credentials flow (or a bearer JWT).
  3. Learn the shared request conventions — pagination, filtering, expand[], and errors.
  4. Use the resource reference below for the endpoints you need.

Resource reference

Each guide documents that resource group's endpoints, the fields you can read and set, and any special actions.

  • Events — events plus applications, challenges, participations, sponsorships, staffs, and submissions attached to an event.
  • Participations — a user's participation in an event (upsert, get, delete).
  • Users — users plus their addresses, projects, participations, organized events, and phone verification.
  • Projects — hackathon project submissions.
  • Challenges — sponsor challenges and challenge submissions (including the approve / reject / export actions).
  • Programs and Series — programs and series, and the events and participations under them.
  • Schools and Companies — reference data for schools and companies.
  • MLH Sponsorships — organization-level MLH sponsorships.
  • Promo Codes — promo codes, pools, and redemptions.
  • Fellowship — fellowship applications, tracks, enrollments, and pods.
  • Imports, Webhooks, and Banner Notices — bulk imports, webhook receivers, and banner-notice lookups.