• Documentation
  • Introduction
    • The member journey
  • Training
    • Create a program
    • Courses and sections
    • Lessons, media and publication
    • Milestones and paths
    • Tasks and deliverables
    • Cohorts and groups
  • Student & Community
    • Joining a school
    • Learning and resuming
    • Submitting and revising work
    • Calendar and lives
    • Spaces and questions
    • Reading progress
  • Coaching
    • Roles and assignments
    • Member context and work queue
    • Reviews and feedback
    • Sessions and interventions
    • Cohort cockpit and live operations
  • Leads & Qualification
    • People, leads and applications
    • Contacts and import
    • Qualification forms
    • Application triage
  • Setting & Booking
    • Setter scope
    • Sales availability
    • Share a booking link
    • Prospect booking
    • Agenda and booking management
    • Prepare a call and share its meeting link
  • Closing, Offers & Payments
    • Closer scope
    • Compose an offer
    • Share a nominal payment link
    • Buyer checkout and access
    • Instalments
    • Offline payment
    • Track payment and access failures
    • Stripe school account
  • Administration & Integrations
    • Organization roles and domains
    • API keys and tenant binding
    • Webhooks
    • Payment setup
  • API quickstart
  • API reference
    • Connect with MCP
    • Enrollments
      • GETGet the enrollment timeline
      • GETGet the coaching briefing
      • POSTPause an enrollment
      • POSTResume an enrollment
      • POSTExtend a deadline
      • POSTTransfer an enrollment
      • POSTClose an enrollment
      • POSTSubmit an outcome measure
      • GETList outcome measures
      • GETList deadline extensions
      • DELETECancel a deadline extension
      • GETList enrollments
      • POSTEnroll a person
    • Cohorts
      • GETGet the cohort cockpit
      • GETList the enrollments behind a cockpit signal
      • PATCHConfigure a cohort
      • POSTMove a cohort to another phase
      • POSTCreate a cohort
      • POSTChange a cohort's status
    • Coaching sessions
      • GETList coaching sessions
      • GETGet a coaching session
      • POSTRecord a coaching session
      • POSTAppend coaching session entries
    • Interventions
      • GETList interventions
      • POSTPlan an intervention
      • POSTClose an intervention
    • Live sessions
      • PATCHRecord live attendance
      • GETList live attendance
      • GETRead one enrollment's attendance
      • GETList live sessions
      • POSTSchedule a live session
      • PATCHUpdate a live session
      • POSTCancel a live session
      • GETGet live session
    • Programs
      • GETList programs
      • POSTCreate a program
      • GETRead a program
      • PATCHUpdate a program
      • POSTArchive a program
      • POSTRestore a program
    • Courses
      • GETList the courses of a program
      • POSTCreate a course
      • PATCHUpdate a course
      • POSTRename a course
      • POSTArchive a course
      • POSTReorder the courses of a program
      • POSTUpload a course cover
    • Sections
      • GETList the sections of a course
      • POSTCreate a section
      • POSTRename a section
      • POSTDissolve a section
      • POSTReorder the sections of a course
      • POSTMove a lesson into a section
      • DELETETake a lesson out of its section
    • Lessons
      • GETList the lessons of a program
      • POSTCreate a lesson
      • GETRead a lesson
      • PATCHUpdate a lesson
      • POSTPublish a lesson
      • POSTArchive a lesson
      • POSTMove a lesson to another course
      • POSTReorder the lessons of a program
      • POSTAttach a resource
      • DELETEDetach a resource
      • POSTReorder the resources of a lesson
      • POSTUpload a lesson resource
      • POSTUpload a lesson video
      • GETRead a lesson by its identifier
      • PATCHUpdate a lesson by its identifier
      • GETRead the discussion of a lesson
      • POSTComment on a lesson
    • Milestones
      • GETList the milestones of a program
      • POSTCreate a milestone
      • PATCHUpdate a milestone
      • POSTArchive a milestone
      • POSTReorder the milestones of a program
      • GETList the contributions of a milestone
      • POSTAttach a contribution
      • DELETEDetach a contribution
    • People
      • POSTImport people
      • POSTLink a duplicate person
      • DELETEUnlink a duplicate person
    • Delivery analytics
      • GETGet delivery analytics
    • Sales availability
      • GETRead sales availability
      • GETPreview sales slots
      • PUTReplace sales availability
      • GETList eligible sales closers
    • Community
      • POSTUpload an attachment
      • POSTAttach to a thread
      • POSTCreate a space
      • POSTPost a thread
      • POSTReply to a thread
      • POSTLink a thread
      • GETList spaces
      • GETRead a thread
      • GETSearch the community
    • Offer payments
      • POSTPause automatic charging
      • DELETEResume automatic charging
      • POSTCharge an instalment now
      • GETGet collections dashboard
    • Member tasks
      • POSTCreate a member task
      • GETList the tasks of a milestone
      • PUTUpdate a member task
      • POSTArchive a member task
      • POSTReorder the tasks of a milestone
      • GETRead a task
      • GETList program tasks
    • Deliverables
      • POSTCreate a deliverable
      • GETList the deliverables of a task
      • GETGet a deliverable
      • PUTUpdate a deliverable
      • POSTArchive a deliverable
    • Groups
      • GETList groups
      • POSTCreate a group
      • GETGet a group
      • PATCHUpdate a group
      • POSTAdd a Group membership
      • DELETERemove a Group membership
    • Paths
      • GETList program paths
      • POSTCreate a path
      • GETGet a path
      • PATCHVersion or promote a path
    • Webhooks
      • GETList webhook subscriptions
      • POSTCreate a webhook subscription
      • GETGet a webhook subscription
      • PATCHUpdate a webhook subscription
      • DELETEDelete a webhook subscription
      • POSTVerify a webhook subscription
      • POSTRotate a webhook secret
      • POSTPause or reactivate a webhook subscription
      • GETList webhook deliveries
      • GETGet a webhook delivery
      • POSTReplay a webhook delivery
    • Media
      • GETList media
      • POSTUpload a media
      • PATCHRename a media
      • DELETEDelete a media
    • Bookings
      • GETList the open slots of a booking link
      • POSTSave a booking lead
      • POSTBook a call for a prospect
      • GETGet booking details
      • GETList bookings
      • GETGet booking
      • PATCHUpdate booking details
      • GETGet booking agenda
      • GETGet closer meeting link
      • GETList person bookings
      • PUTSet closer meeting link
      • GETList booking links
      • POSTSend a booking email
      • GETRead booking follow-up
      • POSTCreate booking link
      • GETGet booking link
      • PUTRecord booking attendance
      • GETRead booking reminder settings
      • PATCHUpdate booking link
      • POSTReschedule booking
      • PUTSet booking reminder settings
      • POSTCancel booking
      • GETList booking reassignment candidates
      • POSTReassign booking
      • GETList booking reschedule slots
      • GETList booking reassignment slots
    • My learning
      • GETList my enrollments
      • GETGet my learning context
      • GETList my lessons
      • GETGet one of my lessons
      • GETList my agenda
      • GETGet my lesson note
      • PUTSave my lesson note
      • DELETEDelete my lesson note
      • GETList my lesson notes
      • GETGet my lesson's agent section
      • GETList my tasks
      • GETRead my submission
      • POSTOpen my submission draft
      • PUTSave my submission draft
      • POSTSubmit my work
      • POSTResubmit my work
    • Forms
      • GETList forms
      • POSTCreate a form
      • GETGet a form
      • PATCHUpdate form identity
      • DELETEDelete a form
      • PUTSave form definition
      • PUTSet form theme
      • PUTSet form qualification
      • PUTSet submission mode
      • PUTOpen or close a form
      • POSTPublish a form
      • POSTUnpublish a form
      • GETList form responses
      • GETGet a form response
      • GETRead form statistics
      • POSTRetry response qualification
      • GETRead form definition
      • GETRead form theme
      • GETRead form qualification
      • GETRead form submission-settings
      • GETRead form identity fields
      • PUTSet form identity fields
    • Calendar connections
      • GETList calendar connections
      • GETRead a calendar connection
      • POSTRequest calendar consent
      • GETList writable calendars
      • PUTSelect a calendar
      • DELETEDisconnect a calendar
    • Offers
      • GETList offers
      • POSTCreate an offer
      • GETGet an offer
      • PATCHUpdate an offer
      • GETGet composer options
    • Responsibilities
      • GETList responsibilities
      • POSTAssign a responsibility
      • DELETERemove a responsibility
    • Submission reviews
      • GETList submission reviews
      • GETRead a submission review
      • POSTTake a submission in review
      • POSTDecide a submission review
    • Closers
      • GETList closer invitations
      • POSTInvite a closer
      • POSTResend a closer invitation
      • DELETECancel a closer invitation
      • GETRead commercial responsibility
      • PUTAssign commercial responsibility
      • GETRead my sales availability
      • PUTUpdate my sales availability
      • GETRead my closer setup
    • Personal preparation
      • GETRead my work profile
      • PATCHUpdate my work profile
      • GETRead my preparation
    • Video library
      • GETList video resources
      • GETGet a video resource
      • POSTPublish a video resource
      • PATCHUpdate a video resource
      • POSTUnpublish a video resource
      • POSTRepublish a video resource
    • Video questions
      • POSTAsk a question
      • GETList my questions
      • GETGet my question
      • GETList received questions
      • PATCHAssign a question
      • POSTAnswer a question
      • POSTCancel a question
  1. Documentation
  2. API reference
HomeBlogDocumentationPricingContact

API reference

PreviousAPI quickstartNextConnect with MCP
On this page
AuthenticationTenant bindingIdempotencyCorrelating a callWhat comes backEvery endpoint

This page describes the REST endpoints under /api/v1, authenticated with an organization-bound API key. For OAuth clients and tools, see Connect with MCP.

Everything below applies to the REST API. Each endpoint page then documents only what is its own.

Authentication

One header, on every request:

bash
curl -H "x-api-key: $COHORTE_API_KEY" \
  "https://your-school.cohorte.app/api/v1/enrollments/$ENROLLMENT_ID/timeline"

A key belongs to one organization and one person. Cohorte resolves both from the key alone, and two checks follow, in this order:

  1. The organization role of the key holder — member, admin or owner. Some endpoints require a minimum; most do not, and delegate to the second check.
  2. The business rule of the domain. A program director is only a member of the school: requiring admin on the wrapper would close endpoints to the very people meant to call them. The domain policy has the last word, and each endpoint page states it.

Creating a key: Getting started.

Cohorte checks the holder's current account status on every request. A suspended holder receives 401 Unauthorized, even with a valid key, before any domain operation runs. A temporary suspension stops blocking access after its expiry; the key must still be valid and the holder must still belong to the school. Suspension does not permanently revoke the key.

Tenant binding

The school is read from the key, never from the request. There is no organizationId parameter, and sending one changes nothing.

An identifier that belongs to another school comes back 404 Not Found, not 403 — the API does not confirm that a resource it will not show you exists.

Idempotency

Every endpoint that changes something requires an Idempotency-Key header. It is a value you choose — a UUID is the usual answer — and it must be stable across retries of the same intent.

bash
curl -X POST \
  -H "x-api-key: $COHORTE_API_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"reason": "Parental leave"}' \
  "https://your-school.cohorte.app/api/v1/enrollments/$ENROLLMENT_ID/pause"

Replaying the same key returns the original result with replayed: true, and writes nothing a second time — no duplicate event, no duplicate audit line, no second notification.

Omitting the header on a command is a 400, deliberately: a retry without one is a duplicate waiting to happen.

Correlating a call

x-correlation-id is optional. Send one and it travels through the command, its audit line and its domain events, then comes back in the response as correlationId. Send none and Cohorte generates one.

It is what lets you find, in the audit trail, everything one run of your script caused.

What comes back

A success is JSON, with success: true:

json
{
  "success": true,
  "data": {},
  "correlationId": "b0e7f1c2-1d3a-4a52-9f77-52a4b7c3d1e0"
}

A failure is JSON too: a human-readable error, and a stable code to branch on.

json
{
  "error": "The request is invalid.",
  "code": "invalid_request",
  "details": "title: String must contain at least 1 character(s)"
}

Read code, never the sentence: the sentence is written for a human and may be reworded or translated, the code will not change under you. details appears only on invalid_request, because it is the only failure you fix by re-reading what you sent.

CodeStatus
invalid_request400
unauthorized401
forbidden403
not_found404
conflict409
internal_error500

An unexpected failure never describes itself: it answers internal_error and nothing more. What happened is in Cohorte's logs, under the correlation id you sent.

The status says what kind:

StatusWhat it means
400 Bad RequestThe payload or a required header is wrong. The message names what.
401 UnauthorizedMissing, unknown or expired key — or its holder is currently suspended or left the school.
403 ForbiddenThe key is valid, and its holder is not allowed to do this.
404 Not FoundNo such resource in this school.
409 ConflictThe resource is not in a state that allows this command.
500 Internal Server ErrorCohorte's fault. Retry with the same Idempotency-Key.

Information

403 and 404 are not interchangeable. 403 means you may not, 404 means there is nothing here for you — and a resource from another school always gets the second, never the first.

Every endpoint

Enrollments

GETGet the enrollment timeline/api/v1/enrollments/{enrollmentId}/timelineGETGet the coaching briefing/api/v1/enrollments/{enrollmentId}/briefingPOSTPause an enrollment/api/v1/enrollments/{enrollmentId}/pausePOSTResume an enrollment/api/v1/enrollments/{enrollmentId}/reactivatePOSTExtend a deadline/api/v1/enrollments/{enrollmentId}/deadline-extensionsPOSTTransfer an enrollment/api/v1/enrollments/{enrollmentId}/transferPOSTClose an enrollment/api/v1/enrollments/{enrollmentId}/closePOSTSubmit an outcome measure/api/v1/enrollments/{enrollmentId}/outcome-measuresGETList outcome measures/api/v1/enrollments/{enrollmentId}/outcome-measuresGETList deadline extensions/api/v1/enrollments/{enrollmentId}/deadline-extensionsDELETECancel a deadline extension/api/v1/enrollments/{enrollmentId}/deadline-extensions/{extensionId}GETList enrollments/api/v1/enrollmentsPOSTEnroll a person/api/v1/enrollments

Cohorts

GETGet the cohort cockpit/api/v1/cohorts/{cohortId}/cockpitGETList the enrollments behind a cockpit signal/api/v1/cohorts/{cohortId}/cockpit/enrollmentsPATCHConfigure a cohort/api/v1/cohorts/{cohortId}POSTMove a cohort to another phase/api/v1/cohorts/{cohortId}/phasePOSTCreate a cohort/api/v1/cohortsPOSTChange a cohort's status/api/v1/cohorts/{cohortId}/status

Coaching sessions

GETList coaching sessions/api/v1/enrollments/{enrollmentId}/coaching-sessionsGETGet a coaching session/api/v1/coaching-sessions/{coachingSessionId}POSTRecord a coaching session/api/v1/enrollments/{enrollmentId}/coaching-sessionsPOSTAppend coaching session entries/api/v1/coaching-sessions/{coachingSessionId}/entries

Interventions

GETList interventions/api/v1/enrollments/{enrollmentId}/interventionsPOSTPlan an intervention/api/v1/enrollments/{enrollmentId}/interventionsPOSTClose an intervention/api/v1/interventions/{interventionId}/close

Live sessions

PATCHRecord live attendance/api/v1/live-sessions/{liveSessionId}/attendance/{enrollmentId}GETList live attendance/api/v1/live-sessions/{liveSessionId}/attendanceGETRead one enrollment's attendance/api/v1/live-sessions/{liveSessionId}/attendance/{enrollmentId}GETList live sessions/api/v1/live-sessionsPOSTSchedule a live session/api/v1/live-sessionsPATCHUpdate a live session/api/v1/live-sessions/{liveSessionId}POSTCancel a live session/api/v1/live-sessions/{liveSessionId}/cancelGETGet live session/api/v1/live-sessions/{liveSessionId}

Programs

GETList programs/api/v1/programsPOSTCreate a program/api/v1/programsGETRead a program/api/v1/programs/{programId}PATCHUpdate a program/api/v1/programs/{programId}POSTArchive a program/api/v1/programs/{programId}/archivePOSTRestore a program/api/v1/programs/{programId}/restore

Courses

GETList the courses of a program/api/v1/programs/{programId}/coursesPOSTCreate a course/api/v1/programs/{programId}/coursesPATCHUpdate a course/api/v1/courses/{courseId}POSTRename a course/api/v1/courses/{courseId}/renamePOSTArchive a course/api/v1/courses/{courseId}/archivePOSTReorder the courses of a program/api/v1/programs/{programId}/courses/reorderPOSTUpload a course cover/api/v1/courses/{courseId}/cover

Sections

GETList the sections of a course/api/v1/courses/{courseId}/sectionsPOSTCreate a section/api/v1/courses/{courseId}/sectionsPOSTRename a section/api/v1/sections/{sectionId}/renamePOSTDissolve a section/api/v1/sections/{sectionId}/dissolvePOSTReorder the sections of a course/api/v1/courses/{courseId}/sections/reorderPOSTMove a lesson into a section/api/v1/sections/{sectionId}/lessons/{lessonId}DELETETake a lesson out of its section/api/v1/sections/{sectionId}/lessons/{lessonId}

Lessons

GETList the lessons of a program/api/v1/programs/{programId}/lessonsPOSTCreate a lesson/api/v1/programs/{programId}/lessonsGETRead a lesson/api/v1/lessons/{lessonId}PATCHUpdate a lesson/api/v1/lessons/{lessonId}POSTPublish a lesson/api/v1/lessons/{lessonId}/publishPOSTArchive a lesson/api/v1/lessons/{lessonId}/archivePOSTMove a lesson to another course/api/v1/lessons/{lessonId}/movePOSTReorder the lessons of a program/api/v1/programs/{programId}/lessons/reorderPOSTAttach a resource/api/v1/lessons/{lessonId}/resourcesDELETEDetach a resource/api/v1/lessons/{lessonId}/resources/{resourceId}POSTReorder the resources of a lesson/api/v1/lessons/{lessonId}/resources/reorderPOSTUpload a lesson resource/api/v1/lessons/{lessonId}/resources/uploadPOSTUpload a lesson video/api/v1/lessons/{lessonId}/video-uploadGETRead a lesson by its identifier/api/v1/programs/{programId}/lessons/by-external-id/{externalId}PATCHUpdate a lesson by its identifier/api/v1/programs/{programId}/lessons/by-external-id/{externalId}GETRead the discussion of a lesson/api/v1/lessons/{lessonId}/discussionPOSTComment on a lesson/api/v1/lessons/{lessonId}/discussion/comments

Milestones

GETList the milestones of a program/api/v1/programs/{programId}/milestonesPOSTCreate a milestone/api/v1/programs/{programId}/milestonesPATCHUpdate a milestone/api/v1/milestones/{milestoneId}POSTArchive a milestone/api/v1/milestones/{milestoneId}/archivePOSTReorder the milestones of a program/api/v1/programs/{programId}/milestones/reorderGETList the contributions of a milestone/api/v1/milestones/{milestoneId}/contributionsPOSTAttach a contribution/api/v1/milestones/{milestoneId}/contributionsDELETEDetach a contribution/api/v1/milestones/{milestoneId}/contributions/{lessonId}

People

POSTImport people/api/v1/people/importsPOSTLink a duplicate person/api/v1/people/{personId}/aliasDELETEUnlink a duplicate person/api/v1/people/{personId}/alias

Delivery analytics

GETGet delivery analytics/api/v1/delivery-analytics

Sales availability

GETRead sales availability/api/v1/sales-availabilityGETPreview sales slots/api/v1/sales-slotsPUTReplace sales availability/api/v1/sales-availabilityGETList eligible sales closers/api/v1/sales-availability/eligible-closers

Community

POSTUpload an attachment/api/v1/community/attachmentsPOSTAttach to a thread/api/v1/community/threads/{threadId}/attachmentsPOSTCreate a space/api/v1/community/spacesPOSTPost a thread/api/v1/community/spaces/{spaceId}/threadsPOSTReply to a thread/api/v1/community/threads/{threadId}/repliesPOSTLink a thread/api/v1/community/threads/{threadId}/linksGETList spaces/api/v1/community/spacesGETRead a thread/api/v1/community/threads/{threadId}GETSearch the community/api/v1/community/search

Offer payments

POSTPause automatic charging/api/v1/offers/{offerId}/charging-pauseDELETEResume automatic charging/api/v1/offers/{offerId}/charging-pausePOSTCharge an instalment now/api/v1/offer-installments/{installmentId}/chargeGETGet collections dashboard/api/v1/payments/dashboard

Member tasks

POSTCreate a member task/api/v1/programs/{programId}/member-tasksGETList the tasks of a milestone/api/v1/milestones/{milestoneId}/member-tasksPUTUpdate a member task/api/v1/member-tasks/{memberTaskId}POSTArchive a member task/api/v1/member-tasks/{memberTaskId}/archivePOSTReorder the tasks of a milestone/api/v1/milestones/{milestoneId}/member-tasks/reorderGETRead a task/api/v1/member-tasks/{memberTaskId}GETList program tasks/api/v1/programs/{programId}/member-tasks

Deliverables

POSTCreate a deliverable/api/v1/member-tasks/{memberTaskId}/deliverablesGETList the deliverables of a task/api/v1/member-tasks/{memberTaskId}/deliverablesGETGet a deliverable/api/v1/deliverables/{deliverableId}PUTUpdate a deliverable/api/v1/deliverables/{deliverableId}POSTArchive a deliverable/api/v1/deliverables/{deliverableId}/archive

Groups

GETList groups/api/v1/groupsPOSTCreate a group/api/v1/groupsGETGet a group/api/v1/groups/{groupId}PATCHUpdate a group/api/v1/groups/{groupId}POSTAdd a Group membership/api/v1/groups/{groupId}/membershipsDELETERemove a Group membership/api/v1/groups/{groupId}/memberships/{enrollmentId}

Paths

GETList program paths/api/v1/programs/{programId}/pathsPOSTCreate a path/api/v1/programs/{programId}/pathsGETGet a path/api/v1/paths/{pathId}PATCHVersion or promote a path/api/v1/paths/{pathId}

Webhooks

GETList webhook subscriptions/api/v1/webhook-subscriptionsPOSTCreate a webhook subscription/api/v1/webhook-subscriptionsGETGet a webhook subscription/api/v1/webhook-subscriptions/{subscriptionId}PATCHUpdate a webhook subscription/api/v1/webhook-subscriptions/{subscriptionId}DELETEDelete a webhook subscription/api/v1/webhook-subscriptions/{subscriptionId}POSTVerify a webhook subscription/api/v1/webhook-subscriptions/{subscriptionId}/verifyPOSTRotate a webhook secret/api/v1/webhook-subscriptions/{subscriptionId}/rotate-secretPOSTPause or reactivate a webhook subscription/api/v1/webhook-subscriptions/{subscriptionId}/pauseGETList webhook deliveries/api/v1/webhook-deliveriesGETGet a webhook delivery/api/v1/webhook-deliveries/{deliveryId}POSTReplay a webhook delivery/api/v1/webhook-deliveries/{deliveryId}/replay

Media

GETList media/api/v1/mediaPOSTUpload a media/api/v1/mediaPATCHRename a media/api/v1/media/{mediaId}DELETEDelete a media/api/v1/media/{mediaId}

Bookings

GETList the open slots of a booking link/api/v1/booking-links/{orgSlug}/{linkSlug}/slotsPOSTSave a booking lead/api/v1/booking-links/{orgSlug}/{linkSlug}/leadsPOSTBook a call for a prospect/api/v1/bookingsGETGet booking details/api/v1/bookings/{bookingId}/detailsGETList bookings/api/v1/bookingsGETGet booking/api/v1/bookings/{bookingId}PATCHUpdate booking details/api/v1/bookings/{bookingId}/detailsGETGet booking agenda/api/v1/booking-agendaGETGet closer meeting link/api/v1/sales-closers/{closerId}/meeting-linkGETList person bookings/api/v1/people/{personId}/bookingsPUTSet closer meeting link/api/v1/sales-closers/{closerId}/meeting-linkGETList booking links/api/v1/booking-linksPOSTSend a booking email/api/v1/bookings/{bookingId}/emailsGETRead booking follow-up/api/v1/bookings/{bookingId}/messagesPOSTCreate booking link/api/v1/booking-linksGETGet booking link/api/v1/booking-links/{bookingLinkId}PUTRecord booking attendance/api/v1/bookings/{bookingId}/attendanceGETRead booking reminder settings/api/v1/booking-reminder-settingsPATCHUpdate booking link/api/v1/booking-links/{bookingLinkId}POSTReschedule booking/api/v1/bookings/{bookingId}/reschedulePUTSet booking reminder settings/api/v1/booking-reminder-settingsPOSTCancel booking/api/v1/bookings/{bookingId}/cancelGETList booking reassignment candidates/api/v1/bookings/{bookingId}/reassignment-candidatesPOSTReassign booking/api/v1/bookings/{bookingId}/reassignGETList booking reschedule slots/api/v1/bookings/{bookingId}/reschedule-slotsGETList booking reassignment slots/api/v1/bookings/{bookingId}/reassignment-slots

My learning

GETList my enrollments/api/v1/me/enrollmentsGETGet my learning context/api/v1/me/enrollments/{enrollmentId}/learning-contextGETList my lessons/api/v1/me/enrollments/{enrollmentId}/lessonsGETGet one of my lessons/api/v1/me/enrollments/{enrollmentId}/lessons/{lessonId}GETList my agenda/api/v1/me/agendaGETGet my lesson note/api/v1/me/lessons/{lessonId}/notePUTSave my lesson note/api/v1/me/lessons/{lessonId}/noteDELETEDelete my lesson note/api/v1/me/lessons/{lessonId}/noteGETList my lesson notes/api/v1/me/lesson-notesGETGet my lesson's agent section/api/v1/me/enrollments/{enrollmentId}/lessons/{lessonId}/agent-sectionGETList my tasks/api/v1/me/enrollments/{enrollmentId}/member-tasksGETRead my submission/api/v1/me/member-tasks/{memberTaskId}/submissionPOSTOpen my submission draft/api/v1/me/member-tasks/{memberTaskId}/submissionPUTSave my submission draft/api/v1/me/member-tasks/{memberTaskId}/submissionPOSTSubmit my work/api/v1/me/member-tasks/{memberTaskId}/submission/submitPOSTResubmit my work/api/v1/me/member-tasks/{memberTaskId}/submission/resubmit

Forms

GETList forms/api/v1/formsPOSTCreate a form/api/v1/formsGETGet a form/api/v1/forms/{formId}PATCHUpdate form identity/api/v1/forms/{formId}DELETEDelete a form/api/v1/forms/{formId}PUTSave form definition/api/v1/forms/{formId}/definitionPUTSet form theme/api/v1/forms/{formId}/themePUTSet form qualification/api/v1/forms/{formId}/qualificationPUTSet submission mode/api/v1/forms/{formId}/submission-settingsPUTOpen or close a form/api/v1/forms/{formId}/activationPOSTPublish a form/api/v1/forms/{formId}/publishPOSTUnpublish a form/api/v1/forms/{formId}/unpublishGETList form responses/api/v1/forms/{formId}/responsesGETGet a form response/api/v1/forms/{formId}/responses/{responseId}GETRead form statistics/api/v1/forms/{formId}/statsPOSTRetry response qualification/api/v1/forms/{formId}/responses/{responseId}/qualification/retryGETRead form definition/api/v1/forms/{formId}/definitionGETRead form theme/api/v1/forms/{formId}/themeGETRead form qualification/api/v1/forms/{formId}/qualificationGETRead form submission-settings/api/v1/forms/{formId}/submission-settingsGETRead form identity fields/api/v1/forms/{formId}/identity-fieldsPUTSet form identity fields/api/v1/forms/{formId}/identity-fields

Calendar connections

GETList calendar connections/api/v1/calendar-connectionsGETRead a calendar connection/api/v1/calendar-connections/{connectionId}POSTRequest calendar consent/api/v1/calendar-connections/authorizeGETList writable calendars/api/v1/calendar-connections/{connectionId}/calendarsPUTSelect a calendar/api/v1/calendar-connections/{connectionId}DELETEDisconnect a calendar/api/v1/calendar-connections/{connectionId}

Offers

GETList offers/api/v1/offersPOSTCreate an offer/api/v1/offersGETGet an offer/api/v1/offers/{offerId}PATCHUpdate an offer/api/v1/offers/{offerId}GETGet composer options/api/v1/offers/composer-options

Responsibilities

GETList responsibilities/api/v1/role-assignmentsPOSTAssign a responsibility/api/v1/role-assignmentsDELETERemove a responsibility/api/v1/role-assignments

Submission reviews

GETList submission reviews/api/v1/submission-reviewsGETRead a submission review/api/v1/submission-reviews/{submissionId}POSTTake a submission in review/api/v1/submission-reviews/{submissionId}/takePOSTDecide a submission review/api/v1/submission-reviews/{submissionId}/decision

Closers

GETList closer invitations/api/v1/closer-invitationsPOSTInvite a closer/api/v1/closer-invitationsPOSTResend a closer invitation/api/v1/closer-invitations/{invitationId}/resendDELETECancel a closer invitation/api/v1/closer-invitations/{invitationId}GETRead commercial responsibility/api/v1/people/{personId}/commercial-ownerPUTAssign commercial responsibility/api/v1/people/{personId}/commercial-ownerGETRead my sales availability/api/v1/me/sales-availabilityPUTUpdate my sales availability/api/v1/me/sales-availabilityGETRead my closer setup/api/v1/me/closer-setup

Personal preparation

GETRead my work profile/api/v1/me/work-profilePATCHUpdate my work profile/api/v1/me/work-profileGETRead my preparation/api/v1/me/onboarding

Video library

GETList video resources/api/v1/video-resourcesGETGet a video resource/api/v1/video-resources/{videoResourceId}POSTPublish a video resource/api/v1/video-resourcesPATCHUpdate a video resource/api/v1/video-resources/{videoResourceId}POSTUnpublish a video resource/api/v1/video-resources/{videoResourceId}/unpublishPOSTRepublish a video resource/api/v1/video-resources/{videoResourceId}/publish

Video questions

POSTAsk a question/api/v1/questionsGETList my questions/api/v1/me/questionsGETGet my question/api/v1/me/questions/{questionId}GETList received questions/api/v1/questionsPATCHAssign a question/api/v1/questions/{questionId}POSTAnswer a question/api/v1/questions/{questionId}/answerPOSTCancel a question/api/v1/questions/{questionId}/cancel

Booking administration, scoped commercial reads, coaching entry append, live detail and attendance are available through both the booking API and the MCP catalogue.

  • Responsibilities

  • Submission reviews

  • Personal preparation — private self profile and preparation shared across current roles.

  • Video library — video answers and replays the school team publishes; members read the published ones.

  • Video questions — members ask the team; the team assigns, answers with a library video, or cancels.