Courses, careers, contact, FAQ and legal: enrolment, applications, inboxes, follows and editions
2026.10.14-api-typesCourses
Enrolment and progress.
PUT …/course/enrolmentenrols a learner and records their last lesson.POST …/course/progress/mergeadds progress a learner made while signed out.GET /orgs/{orgId}/me/coursesreturns "My learning".The outline carries
enrolment,course(instructors, prerequisites, length),access, and per-lessonlocked.…/course/lessons/{slug}/mediasaves where a learner stopped in a video, across devices.GET …/course/me/stats?tz=returns the learner's streak and XP.
Access and pacing. Set rules with GET/PUT …/course/authoring/access: audience, linear order, prerequisites, and drip by module. A locked lesson answers 403 course.locked, the same on the page, its .md, its PDF and its comments. Free-preview lessons are always open.
Owner tools.
…/course/authoring/detailsand…/authoring/learning(mail, nudges, XP).GET …/learners,learners.csvandfunnel. These need the newcourses.managecapability (PAT scopecourses:manage).PUT …/learners/{userId}/certificaterevokes or restores a certificate. Verifying a revoked certificate answers 410.
Catalogue and paths. GET /public/orgs/{orgId}/courses lists the org's public courses, and ?path= narrows it to one path. Learning paths: CRUD at /orgs/{orgId}/course-paths, public reads at /public/orgs/{orgId}/course-paths, and a learner's progress at /orgs/{orgId}/me/course-paths.
Webhooks: course.enrolled, lesson.completed, quiz.passed, course.completed, certificate.issued.
Careers
Applying is checked. An application to a page that is not a role answers 422. An application to a closed role answers 410. A page's metadata.kind (role or page) decides which it is. GET /space-types publishes each type's pageKinds.
Application forms and pipeline.
GET/PATCH …/careers/formsets the default questions, questions per role, EEO, consent text, retention and what happens after a reader applies. The public form for a role is atGET /public/…/careers/form?pageId=.Applications take
answers,eeo,consentandsource.EEO answers are stored on their own and never appear in the inbox, the CSV or the webhook.
GET …/eeo-summaryreturns counts only.Also new:
applications.csv, a custompipeline, and per-applicationnotesandrating.Webhook:
application.created.
Integrations.
…/careers/atsimports roles from Greenhouse, Lever or Ashby and syncs them every hour./orgs/{orgId}/google-indexingand…/careers/indexingsubmit roles to Google's Indexing API with your own key.The careers feeds and job alerts are covered in the feeds release.
Contact
Form and topics.
GET/PATCH …/contact/formsets the form's fields, wording,successMessage,redirectUrl,spamFilter,workEmailOnlyandbookingUrl.Departments become topics, with a description, an icon, their own fields, a redirect, an auto-assignee and an auto-reply. The old
{name, email}shape is still accepted.The public contact read adds
topics(without addresses) andchannels.A 422 on submit names each field that failed.
POST /public/…/contact/submissionsaccepts a form post that works without JavaScript.
Inbox.
The list takes
?folder=(inbox,unread,archived,spamorall).Without
folder, the list leaves out spam. A message the spam filter flags never firescontact.submitted, an alert or an auto-reply.PATCH …/contact/{id}/statusmoves a message between folders, andGET …/contact/export.csvexports them.GET/DELETE /orgs/{orgId}/contact-submissions?email=finds or erases one sender's data.Webhook:
contact.submitted.
FAQ
GET /public/…/faqtakes?locale=and returnslocaleandlocales.Questions carry
featured,views,helpfulandaudience. Sections carryslug,descriptionandicon.Feeds can be sorted by
helpfulandviews.POST /public/…/faq/search-eventsrecords the searches that found nothing, for the no-result report.Following a section is covered in the feeds release.
Legal
Editions.
GET /public/orgs/{orgId}/legal/{kind}/versions/{n|current|next}reads one edition, and…/{kind}/diff?from=&to=compares two./versionsaddsstatus,effectiveAt,changeNoteandupcoming.Give an edition a future effective date to schedule it. Public surfaces serve the edition in force until that date.
PUT /orgs/{orgId}/legal/{kind}/editions/{n}corrects an edition's change note, and the correction is audited.
More public reads.
GET /public/orgs/{orgId}/legal/{kind}/subprocessors: the subprocessor table, with changes.GET /public/orgs/{orgId}/legal/trust.json: the org's trust-centre links.Document feeds and subscribe are covered in the feeds release.