Skip to main content

GraphQL types

The main object types you can select fields from. List fields (like events on a program) accept the same filter / order / limit / page arguments as top-level queries.

Event

id, name, slug, description, type, eventFormat, status, startsAt, endsAt, publishedAt, private, registrationUrl, submissionUrl, websiteUrl, chatUrl, customFields, logo, venueAddress, canceled, createdAt, updatedAt. Related: parent, children, program, series, and lists of challenges, promoCodes, promoCodePools, sponsors, sponsorships, eventSubmissions, challengeSubmissions.

Challenge

id, name, description, shortDescription, accentColor, type, featured, position, prizeDescription, sponsor, mlhSponsorship, createdAt, updatedAt, and a list of events.

User

id, firstName, lastName, timeZone, createdAt, updatedAt, profile, socialProfiles, shippingAddress, addresses, checkinCount, projectsCount, participations, submittedChallengeSubmissions, submittedEventSubmissions, newsletterSubscriptions, topicSubscriptions, unsubscribed. Lists: schoolEnrollments, employments, userIdentifiers, oauthApplications. Auth-only: authorizedOauthApplication(s).

UserProfile

birthdate, age, gender, raceOrEthnicity, pronouns, clothingSizes, dietaryPreferences, countryOfResidence, customFields, createdAt, updatedAt.

Program

id, name, slug, createdAt, updatedAt, and a list of events.

Series

id, name, slug, startsAt, endsAt, logo, websiteUrl, chatUrl, settings, createdAt, updatedAt, and a list of events.

Participation

id, status, createdAt, updatedAt, event, user.

Project

id, name, description, builtWith, sourceUrl, demoUrl, createdAt, updatedAt.

PromoCode / PromoCodePool

PromoCode: id, code, active, expiresAt, promoCodePool, timestamps. PromoCodePool: id, label, description, accessType, codeType, active, distributionChannels, expiresAt, perUserLimit, linkExpirationDays, restrictions, event, mlhSponsorship, redemptionUrl, redemptions, and a list of promoCodes.

MLHSponsorship

id, name, slug, active, logo, callToAction, createdAt, updatedAt, and lists of challenges, promoCodes, promoCodePools.

Company / School

Company: id, name, slug, domainName, verifiedAt, counts, timestamps. School: id, name, abbreviations, domainName, country, schoolType, verified, verifiedAt, enrolmentsCount, timestamps.

SchoolEnrollment / Employment

SchoolEnrollment: id, school, startsOn, endsOn, major, current, verifiedAt, timestamps. Employment: id, company, title, startsOn, endsOn, current, timestamps.

SocialProfile / OauthApplication

SocialProfile: id, network, networkId, networkUsername, valid, timestamps. OauthApplication: id, name, clientId, internal, confidential, redirectUris, scopes, logo, timestamps.