Skip to main content
New to Corsair? See API access, authentication, and error handling.

Auth

check

auth.check Returns the school the API key belongs to, which is the cheapest way to confirm a key works Risk: read
Input: empty object Output

Chapters

enableAccess

chapters.enableAccess Grants a user access to one chapter by email Risk: write
Input Output

enableAccessByUid

chapters.enableAccessByUid Grants a user access to one chapter by uid Risk: write
Input Output

Courses

list

courses.list Lists all courses of the school with their ids and types Risk: read
Input: empty object Output

Custom Properties

list

customProperties.list Lists the custom user properties defined for the school Risk: read
Input: empty object Output: object[]

Exams

list

exams.list Lists all exams of the school, including the examId used for results Risk: read
Input: empty object Output

results

exams.results Lists the exam results of every user who took an exam, with each run and whether it passed Risk: read
Input Output

Offers

list

offers.list Lists the offers available in the school Risk: read
Input: empty object Output: object[]

Users

courseProgress

users.courseProgress Lists every course progress record for a user by email, paginated Risk: read
Input Output

courseProgressByUid

users.courseProgressByUid Lists every course progress record for a user by uid, paginated Risk: read
Input Output

courseProgressDetail

users.courseProgressDetail Returns one user’s progress in one course, by email Risk: read
Input Output

courseProgressDetailByUid

users.courseProgressDetailByUid Returns one user’s progress in one course, by uid Risk: read
Input Output

delete

users.delete Permanently deletes up to 10 users by email; deleted accounts and their progress cannot be restored Risk: destructive · Irreversible
Input Output

deleteByUid

users.deleteByUid Permanently deletes up to 10 users by uid; deleted accounts and their progress cannot be restored Risk: destructive · Irreversible
Input Output

findByEmail

users.findByEmail Returns one user by email; a member that does not exist answers 400 USER_NOT_FOUND rather than an empty result Risk: read
Input Output

findByUid

users.findByUid Returns one user by uid; a uid that does not exist answers an empty body, which fails the output schema rather than returning null Risk: read
Input Output

grantOffer

users.grantOffer Creates or updates a user by email and optionally grants an offer in the same call; reports whether the user is new Risk: write
Input Output

grantOfferByUid

users.grantOfferByUid Grants an offer to an existing user by uid Risk: write
Input Output

list

users.list Returns a page of users, optionally filtered by offer or course, with a cursor for the next page Risk: read
Input Output

loginToken

users.loginToken Mints a token and login URL that signs a user in automatically, which is a credential; the token expires after one hour Risk: write
Input Output

offers

users.offers Returns the offers granted to a user with their active state and expiry Risk: read
Input Output

setCourseStartDate

users.setCourseStartDate Sets when a user’s access to a course starts Risk: write
Input Output

setCustomProperties

users.setCustomProperties Sets several custom user properties at once by email; properties omitted from the map are left unchanged Risk: write
Input Output

setCustomPropertiesByUid

users.setCustomPropertiesByUid Sets several custom user properties at once by uid Risk: write
Input Output

setCustomProperty

users.setCustomProperty Sets one custom user property by email; a null value blanks it Risk: write
Input Output

setCustomPropertyByUid

users.setCustomPropertyByUid Sets one custom user property by uid Risk: write
Input Output

setOfferExpires

users.setOfferExpires Sets or clears the expiry date of an offer for a user by uid Risk: write
Input Output

setOfferState

users.setOfferState Activates or deactivates an offer for a user by email, which is how access is revoked Risk: write
Input Output

setOfferStateByUid

users.setOfferStateByUid Activates or deactivates an offer for a user by uid Risk: write
Input Output

setOrderState

users.setOrderState Sets the state of an offer tied to an order for a user by email Risk: write
Input Output

setOrderStateByOrderId

users.setOrderStateByOrderId Sets the state of every offer carrying a given orderId, across all users Risk: write
Input Output

setOrderStateByUid

users.setOrderStateByUid Sets the state of an offer tied to an order for a user by uid Risk: write
Input Output