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
Chapters
enableAccess
chapters.enableAccess
Grants a user access to one chapter by email
Risk: write
Output
enableAccessByUid
chapters.enableAccessByUid
Grants a user access to one chapter by uid
Risk: write
Output
Courses
list
courses.list
Lists all courses of the school with their ids and types
Risk: read
data full type
data full type
Custom Properties
list
customProperties.list
Lists the custom user properties defined for the school
Risk: read
object[]
Output full type
Output full type
Exams
list
exams.list
Lists all exams of the school, including the examId used for results
Risk: read
data full type
data full type
results
exams.results
Lists the exam results of every user who took an exam, with each run and whether it passed
Risk: read
Output
data full type
data full type
Offers
list
offers.list
Lists the offers available in the school
Risk: read
object[]
Output full type
Output full type
Users
courseProgress
users.courseProgress
Lists every course progress record for a user by email, paginated
Risk: read
Output
data full type
data full type
courseProgressByUid
users.courseProgressByUid
Lists every course progress record for a user by uid, paginated
Risk: read
Output
data full type
data full type
courseProgressDetail
users.courseProgressDetail
Returns one user’s progress in one course, by email
Risk: read
Output
courseProgressDetailByUid
users.courseProgressDetailByUid
Returns one user’s progress in one course, by uid
Risk: read
Output
delete
users.delete
Permanently deletes up to 10 users by email; deleted accounts and their progress cannot be restored
Risk: destructive · Irreversible
Output
deleteByUid
users.deleteByUid
Permanently deletes up to 10 users by uid; deleted accounts and their progress cannot be restored
Risk: destructive · Irreversible
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
Output
progress full type
progress full type
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
Output
progress full type
progress full type
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
Output
grantedOffers full type
grantedOffers full type
grantOfferByUid
users.grantOfferByUid
Grants an offer to an existing user by uid
Risk: write
Output
grantedOffers full type
grantedOffers full type
list
users.list
Returns a page of users, optionally filtered by offer or course, with a cursor for the next page
Risk: read
Output
data full type
data full type
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
Output
offers
users.offers
Returns the offers granted to a user with their active state and expiry
Risk: read
Output
offers full type
offers full type
setCourseStartDate
users.setCourseStartDate
Sets when a user’s access to a course starts
Risk: write
Output
setCustomProperties
users.setCustomProperties
Sets several custom user properties at once by email; properties omitted from the map are left unchanged
Risk: write
Output
progress full type
progress full type
setCustomPropertiesByUid
users.setCustomPropertiesByUid
Sets several custom user properties at once by uid
Risk: write
Output
progress full type
progress full type
setCustomProperty
users.setCustomProperty
Sets one custom user property by email; a null value blanks it
Risk: write
Output
progress full type
progress full type
setCustomPropertyByUid
users.setCustomPropertyByUid
Sets one custom user property by uid
Risk: write
Output
progress full type
progress full type
setOfferExpires
users.setOfferExpires
Sets or clears the expiry date of an offer for a user by uid
Risk: write
Output
setOfferState
users.setOfferState
Activates or deactivates an offer for a user by email, which is how access is revoked
Risk: write
Output
setOfferStateByUid
users.setOfferStateByUid
Activates or deactivates an offer for a user by uid
Risk: write
Output
setOrderState
users.setOrderState
Sets the state of an offer tied to an order for a user by email
Risk: write
Output
setOrderStateByOrderId
users.setOrderStateByOrderId
Sets the state of every offer carrying a given orderId, across all users
Risk: write
Output
setOrderStateByUid
users.setOrderStateByUid
Sets the state of an offer tied to an order for a user by uid
Risk: write
Output