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.