Reference
Mentorship API
35 operations. Generated from the OpenAPI document, so this page always matches the API.
OpenAPI documentErrors and rate limitsSDK and CLI recipes
On this page
mentorship.mine
Your mentorship programs and pairings, with goals and check-ins
POST/api/v1/manage/mentorship/mine
- Read
- Permission mentorship.mine
const result = await shuffl.mentorship.mine();Request fields (none)
This operation takes no input.
Response object
- invitations object[] required
- from string required
- id string required
- message string required
- program object required
- id string required
- name string required
- sentAt string required
- topic string required
- mentoring null | object required
- answered number required
- badge object required
- completed number required
- earned boolean required
- circles object[] required
- going null | false | true required
- goingCount number required
- id string required
- minutes number required
- program string required
- startsAt string required
- topic string required
- feedback null | object required
- change string[] required
- helped string[] required
- goalsDone number required
- meetings number required
- mentored number required
- pairs object[] required
- canGiveFeedback boolean required
- checkIns object[] required
- answer null | "helped" | "met" | "not_yet" required
- dueOn string required
- id string required
- kind "check_in" | "final" required
- circle null | object required
- members object[] required
- id string required
- name string required
- photoUrl null | string required
- slackUserId null | string required
- title null | string required
- userId null | string required
- mentorId string required
- programId string required
- members object[] required
- due object[] required
- kind "check_in" | "goals_stalled" | "no_goals" | "no_meeting" required
- label string required
- endedAt null | string required
- endsOn string required
- feedback null | object required
- change string required
- helped string required
- format "ask_once" | "circle" | "one_to_one" | "reverse" required
- goals object[] required
- done boolean required
- id string required
- title string required
- id string required
- lastMetOn null | string required
- nextCheckInOn null | string required
- nextMeeting null | object required
- end string required
- meetingUrl null | string required
- start string required
- status "booked" | "pending" required
- other object required
- id string required
- name string required
- photoUrl null | string required
- slackUserId null | string required
- title null | string required
- userId null | string required
- otherTopics string required
- prep null | object required
- nextStep null | string required
- openGoals string[] required
- questions string[] required
- stage "first" | "last" | "middle" required
- program string required
- programId string required
- role "mentee" | "mentor" required
- sessions object[] required
- author string required
- heldOn string required
- id string required
- mine boolean required
- nextStep string required
- notes string required
- startedAt string required
- status "active" | "ended" | "paused" required
- thanks null | object required
- managerTold boolean required
- message string required
- onProfile boolean required
- praised boolean required
- timeline null | object[] required
- label string required
- state "done" | "next" | "now" required
- week number required
- programs object[] required
- audience null | string required
- choices object[] required
- mentor object required
- id string required
- name string required
- photoUrl null | string required
- slackUserId null | string required
- title null | string required
- userId null | string required
- reasons string[] required
- topics string required
- mentor object required
- cohort null | object required
- approved boolean required
- signupClosesOn string required
- signupOpen boolean required
- startsOn string required
- wrapsUpOn string required
- description string required
- format "ask_once" | "circle" | "one_to_one" | "reverse" required
- id string required
- mentee null | object required
- capacity null | number required
- hoursPerMonth null | number required
- status "active" | "left" | "removed" required
- topics string required
- menteesChoose boolean required
- mentor null | object required
- capacity null | number required
- hoursPerMonth null | number required
- status "active" | "left" | "removed" required
- topics string required
- mentorCapacity number required
- name string required
- requested null | object required
- mentor object required
- id string required
- name string required
- photoUrl null | string required
- slackUserId null | string required
- title null | string required
- userId null | string required
- requestedAt string required
- mentor object required
- sponsor null | object required
- name string required
- note string required
- terms string required
- waiting boolean required
- requests object[] required
- mentee object required
- id string required
- name string required
- photoUrl null | string required
- slackUserId null | string required
- title null | string required
- userId null | string required
- menteeTopics string required
- pairId string required
- program string required
- reasons string[] required
- requestedAt string required
- mentee object required
- suggestedTopics string[] required
mentorship.join
Join a mentorship program as a mentor or mentee, saying what you can help with or want to learn, and as a mentor how many mentees and hours you can give
POST/api/v1/manage/mentorship/join
- Write
- Permission mentorship.join
- Needs a requestKey
- Needs confirm set to mentorship.join
const result = await shuffl.mentorship.join({
"programId": "<programId>",
"role": "mentee",
"topics": "<topics>",
"confirm": "mentorship.join",
"requestKey": "a-new-unique-key"
});Request fields (7)
- capacity null | number optional
- hoursPerMonth null | number optional
- programId string required
- role "mentee" | "mentor" required
- topics string required
- confirm "mentorship.join" required
- requestKey string required1 to 128 characters
Response object
- receipt object required
- completedAt string (date-time) | null required
- createdAt string (date-time) required
- id string (uuid) required
- operation string required
- requestKey string required
- status "running" | "succeeded" | "failed" | "unknown" required
- result object | null required
- joined boolean required
- ownLoad boolean required
- role "mentee" | "mentor" required
- topics boolean required
mentorship.leave
Leave a mentorship program as a mentor or mentee
POST/api/v1/manage/mentorship/leave
- Write
- Permission mentorship.leave
- Needs a requestKey
- Needs confirm set to mentorship.leave
const result = await shuffl.mentorship.leave({
"programId": "<programId>",
"role": "mentee",
"confirm": "mentorship.leave",
"requestKey": "a-new-unique-key"
});Request fields (4)
- programId string required
- role "mentee" | "mentor" required
- confirm "mentorship.leave" required
- requestKey string required1 to 128 characters
Response object
- receipt object required
- completedAt string (date-time) | null required
- createdAt string (date-time) required
- id string (uuid) required
- operation string required
- requestKey string required
- status "running" | "succeeded" | "failed" | "unknown" required
- result object | null required
- changed boolean required
- role "mentee" | "mentor" required
mentorship.checkIns.answer
Answer whether you met your mentor or mentee, and whether it helped
POST/api/v1/manage/mentorship/checkIns/answer
- Write
- Permission mentorship.checkIns.answer
- Needs a requestKey
- Needs confirm set to mentorship.checkIns.answer
const result = await shuffl.mentorship.checkIns.answer({
"answer": "helped",
"checkInId": "<checkInId>",
"confirm": "mentorship.checkIns.answer",
"requestKey": "a-new-unique-key"
});Request fields (4)
- answer "helped" | "met" | "not_yet" required
- checkInId string required
- confirm "mentorship.checkIns.answer" required
- requestKey string required1 to 128 characters
Response object
- receipt object required
- completedAt string (date-time) | null required
- createdAt string (date-time) required
- id string (uuid) required
- operation string required
- requestKey string required
- status "running" | "succeeded" | "failed" | "unknown" required
- result object | null required
- answer "helped" | "met" | "not_yet" required
- changed boolean required
- kind "check_in" | "final" required
- role "mentee" | "mentor" required
mentorship.circles.cancel
Call off a mentorship program’s next mentor circle
POST/api/v1/manage/mentorship/circles/cancel
- Write
- Permission mentorship.circles.cancel
- Needs a requestKey
- Needs confirm set to mentorship.circles.cancel
const result = await shuffl.mentorship.circles.cancel({
"circleId": "<circleId>",
"confirm": "mentorship.circles.cancel",
"requestKey": "a-new-unique-key"
});Request fields (3)
- circleId string required
- confirm "mentorship.circles.cancel" required
- requestKey string required1 to 128 characters
Response object
- receipt object required
- completedAt string (date-time) | null required
- createdAt string (date-time) required
- id string (uuid) required
- operation string required
- requestKey string required
- status "running" | "succeeded" | "failed" | "unknown" required
- result object | null required
- canceled boolean required
mentorship.circles.reply
Say whether you’ll come to your program’s mentor circle
POST/api/v1/manage/mentorship/circles/reply
- Write
- Permission mentorship.circles.reply
- Needs a requestKey
- Needs confirm set to mentorship.circles.reply
const result = await shuffl.mentorship.circles.reply({
"circleId": "<circleId>",
"going": false,
"confirm": "mentorship.circles.reply",
"requestKey": "a-new-unique-key"
});Request fields (4)
- circleId string required
- going boolean required
- confirm "mentorship.circles.reply" required
- requestKey string required1 to 128 characters
Response object
- receipt object required
- completedAt string (date-time) | null required
- createdAt string (date-time) required
- id string (uuid) required
- operation string required
- requestKey string required
- status "running" | "succeeded" | "failed" | "unknown" required
- result object | null required
- going boolean required
mentorship.circles.save
Set or move a mentorship program’s next mentor circle, a short meeting where its mentors swap what works
POST/api/v1/manage/mentorship/circles/save
- Write
- Permission mentorship.circles.save
- Needs a requestKey
- Needs confirm set to mentorship.circles.save
const result = await shuffl.mentorship.circles.save({
"programId": "<programId>",
"startsAt": "<startsAt>",
"confirm": "mentorship.circles.save",
"requestKey": "a-new-unique-key"
});Request fields (6)
- minutes number optional
- programId string required
- startsAt string required
- topic string optional
- confirm "mentorship.circles.save" required
- requestKey string required1 to 128 characters
Response object
- receipt object required
- completedAt string (date-time) | null required
- createdAt string (date-time) required
- id string (uuid) required
- operation string required
- requestKey string required
- status "running" | "succeeded" | "failed" | "unknown" required
- result object | null required
- added boolean required
- circleId null | string required
- reached number required
mentorship.cohorts.sponsor
Sponsor an upcoming mentorship cohort with a short note shown on its invite and kickoff, or take it back
POST/api/v1/manage/mentorship/cohorts/sponsor
- Write
- Permission mentorship.cohorts.sponsor
- Needs a requestKey
- Needs confirm set to mentorship.cohorts.sponsor
const result = await shuffl.mentorship.cohorts.sponsor({
"note": "<note>",
"programId": "<programId>",
"confirm": "mentorship.cohorts.sponsor",
"requestKey": "a-new-unique-key"
});Request fields (4)
- note null | string required
- programId string required
- confirm "mentorship.cohorts.sponsor" required
- requestKey string required1 to 128 characters
Response object
- receipt object required
- completedAt string (date-time) | null required
- createdAt string (date-time) required
- id string (uuid) required
- operation string required
- requestKey string required
- status "running" | "succeeded" | "failed" | "unknown" required
- result object | null required
- sponsored boolean required
- withdrawn boolean required
mentorship.feedback.save
Tell your mentor what helped most and one thing to change, when your pairing ends. Only your mentor reads it, once three mentees have answered
POST/api/v1/manage/mentorship/feedback/save
- Write
- Permission mentorship.feedback.save
- Needs a requestKey
- Needs confirm set to mentorship.feedback.save
const result = await shuffl.mentorship.feedback.save({
"pairId": "<pairId>",
"confirm": "mentorship.feedback.save",
"requestKey": "a-new-unique-key"
});Request fields (5)
- change string optional
- helped string optional
- pairId string required
- confirm "mentorship.feedback.save" required
- requestKey string required1 to 128 characters
Response object
- receipt object required
- completedAt string (date-time) | null required
- createdAt string (date-time) required
- id string (uuid) required
- operation string required
- requestKey string required
- status "running" | "succeeded" | "failed" | "unknown" required
- result object | null required
- added boolean required
- change boolean required
- helped boolean required
mentorship.goals.remove
Remove a goal from your mentorship, as the mentee
POST/api/v1/manage/mentorship/goals/remove
- Write
- Permission mentorship.goals.remove
- Needs a requestKey
- Needs confirm set to mentorship.goals.remove
const result = await shuffl.mentorship.goals.remove({
"goalId": "<goalId>",
"pairId": "<pairId>",
"confirm": "mentorship.goals.remove",
"requestKey": "a-new-unique-key"
});Request fields (4)
- goalId string required
- pairId string required
- confirm "mentorship.goals.remove" required
- requestKey string required1 to 128 characters
Response object
- receipt object required
- completedAt string (date-time) | null required
- createdAt string (date-time) required
- id string (uuid) required
- operation string required
- requestKey string required
- status "running" | "succeeded" | "failed" | "unknown" required
- result object | null required
- removed boolean required
mentorship.goals.save
Add, rename or check off a goal in your mentorship, as the mentee
POST/api/v1/manage/mentorship/goals/save
- Write
- Permission mentorship.goals.save
- Needs a requestKey
- Needs confirm set to mentorship.goals.save
const result = await shuffl.mentorship.goals.save({
"pairId": "<pairId>",
"confirm": "mentorship.goals.save",
"requestKey": "a-new-unique-key"
});Request fields (6)
- done false | true optional
- goalId string optional
- pairId string required
- title string optional
- confirm "mentorship.goals.save" required
- requestKey string required1 to 128 characters
Response object
- receipt object required
- completedAt string (date-time) | null required
- createdAt string (date-time) required
- id string (uuid) required
- operation string required
- requestKey string required
- status "running" | "succeeded" | "failed" | "unknown" required
- result object | null required
- added boolean required
- done boolean required
- goalId null | string required
mentorship.invitations.answer
Answer an invite to mentor: yes, not now, or ask me later
POST/api/v1/manage/mentorship/invitations/answer
- Write
- Permission mentorship.invitations.answer
- Needs a requestKey
- Needs confirm set to mentorship.invitations.answer
const result = await shuffl.mentorship.invitations.answer({
"answer": "later",
"invitationId": "<invitationId>",
"confirm": "mentorship.invitations.answer",
"requestKey": "a-new-unique-key"
});Request fields (4)
- answer "later" | "not_now" | "yes" required
- invitationId string required
- confirm "mentorship.invitations.answer" required
- requestKey string required1 to 128 characters
Response object
- receipt object required
- completedAt string (date-time) | null required
- createdAt string (date-time) required
- id string (uuid) required
- operation string required
- requestKey string required
- status "running" | "succeeded" | "failed" | "unknown" required
- result object | null required
- answer "later" | "not_now" | "yes" required
- changed boolean required
- invitationId string required
- programId string required
mentorship.invitations.send
Invite up to 20 people to mentor in a program, optionally telling their managers. Nobody becomes a mentor until they say yes
POST/api/v1/manage/mentorship/invitations/send
- Write
- Permission mentorship.invitations.send
- Needs a requestKey
- Needs confirm set to mentorship.invitations.send
const result = await shuffl.mentorship.invitations.send({
"message": "<message>",
"personIds": [
"<personIds>"
],
"programId": "<programId>",
"confirm": "mentorship.invitations.send",
"requestKey": "a-new-unique-key"
});Request fields (7)
- message string required
- personIds string[] required
- programId string required
- tellManagers false | true optional
- topic string optional
- confirm "mentorship.invitations.send" required
- requestKey string required1 to 128 characters
Response object
- receipt object required
- completedAt string (date-time) | null required
- createdAt string (date-time) required
- id string (uuid) required
- operation string required
- requestKey string required
- status "running" | "succeeded" | "failed" | "unknown" required
- result object | null required
- leader boolean required
- managersTold number required
- sent number required
- skipped number required
mentorship.leaders.get
Mentorship across the people you lead: how many take part against the company, topics short of mentors and cohorts you can sponsor. Totals only
POST/api/v1/manage/mentorship/leaders/get
- Read
- Permission mentorship.leaders.get
const result = await shuffl.mentorship.leaders.get();Request fields (none)
This operation takes no input.
Response object
- available boolean required
- invite null | object required
- draft string required
- topic string required
- managers object[] required
- id string required
- name string required
- photoUrl null | string required
- slackUserId null | string required
- title null | string required
- userId null | string required
- me null | string required
- mentees number required
- mentoring boolean required
- mentors number required
- people number required
- programs object[] required
- cohort null | object required
- signupClosesOn string required
- startsOn string required
- id string required
- name string required
- sponsor null | object required
- id string required
- name string required
- note string required
- cohort null | object required
- scope "company" | "org" required
- takingPart object required
- company number required
- org number required
- teams object[] required
- label string required
- people number required
- takingPart number required
- thanks object[] required
- mentor string required
- message string required
- topics object[] required
- label string required
- offer number required
- topic string required
- want number required
mentorship.members.setStatus
Take someone off a mentorship program, or put them back
POST/api/v1/manage/mentorship/members/setStatus
- Write
- Permission mentorship.members.setStatus
- Needs a requestKey
- Needs confirm set to mentorship.members.setStatus
const result = await shuffl.mentorship.members.setStatus({
"personId": "<personId>",
"programId": "<programId>",
"role": "mentee",
"status": "active",
"confirm": "mentorship.members.setStatus",
"requestKey": "a-new-unique-key"
});Request fields (6)
- personId string required
- programId string required
- role "mentee" | "mentor" required
- status "active" | "removed" required
- confirm "mentorship.members.setStatus" required
- requestKey string required1 to 128 characters
Response object
- receipt object required
- completedAt string (date-time) | null required
- createdAt string (date-time) required
- id string (uuid) required
- operation string required
- requestKey string required
- status "running" | "succeeded" | "failed" | "unknown" required
- result object | null required
- changed boolean required
mentorship.mentors.candidates
People who could mentor a topic, from their titles, tenure, who they manage and praise that mentions it, with a drafted invite
POST/api/v1/manage/mentorship/mentors/candidates
- Read
- Permission mentorship.mentors.candidates
const result = await shuffl.mentorship.mentors.candidates({
"programId": "<programId>"
});Request fields (2)
- programId string required
- topic string optional
Response object
- candidates object[] required
- id string required
- invited null | "later" | "not_now" | "waiting" | "yes" required
- name string required
- photoUrl null | string required
- reasons string[] required
- slackUserId null | string required
- title null | string required
- userId null | string required
- draft string required
mentorship.mentors.choose
Choose your mentor from the mentors Shuffl suggests, in a program where mentees choose
POST/api/v1/manage/mentorship/mentors/choose
- Write
- Permission mentorship.mentors.choose
- Needs a requestKey
- Needs confirm set to mentorship.mentors.choose
const result = await shuffl.mentorship.mentors.choose({
"mentorId": "<mentorId>",
"programId": "<programId>",
"confirm": "mentorship.mentors.choose",
"requestKey": "a-new-unique-key"
});Request fields (4)
- mentorId string required
- programId string required
- confirm "mentorship.mentors.choose" required
- requestKey string required1 to 128 characters
Response object
- receipt object required
- completedAt string (date-time) | null required
- createdAt string (date-time) required
- id string (uuid) required
- operation string required
- requestKey string required
- status "running" | "succeeded" | "failed" | "unknown" required
- result object | null required
- pairId string required
- reached boolean required
- status "requested" required
mentorship.pairs.approveAll
Approve every suggested pair in a mentorship program at once. In a cohort before its start day they wait for it; otherwise each starts now
POST/api/v1/manage/mentorship/pairs/approveAll
- Write
- Permission mentorship.pairs.approveAll
- Needs a requestKey
- Needs confirm set to mentorship.pairs.approveAll
const result = await shuffl.mentorship.pairs.approveAll({
"programId": "<programId>",
"confirm": "mentorship.pairs.approveAll",
"requestKey": "a-new-unique-key"
});Request fields (3)
- programId string required
- confirm "mentorship.pairs.approveAll" required
- requestKey string required1 to 128 characters
Response object
- receipt object required
- completedAt string (date-time) | null required
- createdAt string (date-time) required
- id string (uuid) required
- operation string required
- requestKey string required
- status "running" | "succeeded" | "failed" | "unknown" required
- result object | null required
- approved number required
- skipped number required
- started number required
mentorship.pairs.decide
Approve a suggested mentorship pair, which introduces them, or skip it
POST/api/v1/manage/mentorship/pairs/decide
- Write
- Permission mentorship.pairs.decide
- Needs a requestKey
- Needs confirm set to mentorship.pairs.decide
const result = await shuffl.mentorship.pairs.decide({
"decision": "approve",
"pairId": "<pairId>",
"confirm": "mentorship.pairs.decide",
"requestKey": "a-new-unique-key"
});Request fields (4)
- decision "approve" | "skip" required
- pairId string required
- confirm "mentorship.pairs.decide" required
- requestKey string required1 to 128 characters
Response object
- receipt object required
- completedAt string (date-time) | null required
- createdAt string (date-time) required
- id string (uuid) required
- operation string required
- requestKey string required
- status "running" | "succeeded" | "failed" | "unknown" required
- result object | null required
- Option 1 object optional
- decision "skip" required
- endsOn any optional
- reached number required
- status "skipped" required
- Option 2 object optional
- decision "approve" required
- endsOn null required
- reached number required
- status "approved" required
- Option 3 object optional
- decision "approve" required
- endsOn string required
- reached number required
- status "active" required
- Option 1 object optional
mentorship.pairs.end
End a mentorship pairing early
POST/api/v1/manage/mentorship/pairs/end
- Write
- Permission mentorship.pairs.end
- Needs a requestKey
- Needs confirm set to mentorship.pairs.end
const result = await shuffl.mentorship.pairs.end({
"pairId": "<pairId>",
"confirm": "mentorship.pairs.end",
"requestKey": "a-new-unique-key"
});Request fields (3)
- pairId string required
- confirm "mentorship.pairs.end" required
- requestKey string required1 to 128 characters
Response object
- receipt object required
- completedAt string (date-time) | null required
- createdAt string (date-time) required
- id string (uuid) required
- operation string required
- requestKey string required
- status "running" | "succeeded" | "failed" | "unknown" required
- result object | null required
- changed boolean required
mentorship.pairs.nudge
Nudge every pair in a mentorship program that hasn’t met in three weeks to pick a time. Each pair hears it once a week at most
POST/api/v1/manage/mentorship/pairs/nudge
- Write
- Permission mentorship.pairs.nudge
- Needs a requestKey
- Needs confirm set to mentorship.pairs.nudge
const result = await shuffl.mentorship.pairs.nudge({
"programId": "<programId>",
"confirm": "mentorship.pairs.nudge",
"requestKey": "a-new-unique-key"
});Request fields (3)
- programId string required
- confirm "mentorship.pairs.nudge" required
- requestKey string required1 to 128 characters
Response object
- receipt object required
- completedAt string (date-time) | null required
- createdAt string (date-time) required
- id string (uuid) required
- operation string required
- requestKey string required
- status "running" | "succeeded" | "failed" | "unknown" required
- result object | null required
- nudged number required
mentorship.pairs.setMine
Pause, resume or end your own mentorship pairing
POST/api/v1/manage/mentorship/pairs/setMine
- Write
- Permission mentorship.pairs.setMine
- Needs a requestKey
- Needs confirm set to mentorship.pairs.setMine
const result = await shuffl.mentorship.pairs.setMine({
"pairId": "<pairId>",
"status": "active",
"confirm": "mentorship.pairs.setMine",
"requestKey": "a-new-unique-key"
});Request fields (4)
- pairId string required
- status "active" | "ended" | "paused" required
- confirm "mentorship.pairs.setMine" required
- requestKey string required1 to 128 characters
Response object
- receipt object required
- completedAt string (date-time) | null required
- createdAt string (date-time) required
- id string (uuid) required
- operation string required
- requestKey string required
- status "running" | "succeeded" | "failed" | "unknown" required
- result object | null required
- changed boolean required
- role string required
- status "active" | "ended" | "paused" required
mentorship.pairs.suggest
Suggest a mentor outside their reporting line for every mentee still waiting
POST/api/v1/manage/mentorship/pairs/suggest
- Write
- Permission mentorship.pairs.suggest
- Needs a requestKey
- Needs confirm set to mentorship.pairs.suggest
const result = await shuffl.mentorship.pairs.suggest({
"programId": "<programId>",
"confirm": "mentorship.pairs.suggest",
"requestKey": "a-new-unique-key"
});Request fields (3)
- programId string required
- confirm "mentorship.pairs.suggest" required
- requestKey string required1 to 128 characters
Response object
- receipt object required
- completedAt string (date-time) | null required
- createdAt string (date-time) required
- id string (uuid) required
- operation string required
- requestKey string required
- status "running" | "succeeded" | "failed" | "unknown" required
- result object | null required
- suggested number required
- waiting number required
mentorship.profiles.get
A person’s Mentoring section: how many people they mentored, what they offer and the thank-yous shared there
POST/api/v1/manage/mentorship/profiles/get
- Read
- Permission mentorship.profiles.get
const result = await shuffl.mentorship.profiles.get({
"personId": "<personId>"
});Request fields (1)
- personId string required
Response object
- hidden boolean required
- mentored number required
- self boolean required
- thanks object[] required
- at string required
- from object required
- id string required
- name string required
- photoUrl null | string required
- slackUserId null | string required
- title null | string required
- userId null | string required
- id string required
- message string required
- topics string[] required
mentorship.profiles.setHidden
Hide or show the Mentoring section of your own profile
POST/api/v1/manage/mentorship/profiles/setHidden
- Write
- Permission mentorship.profiles.setHidden
- Needs a requestKey
- Needs confirm set to mentorship.profiles.setHidden
const result = await shuffl.mentorship.profiles.setHidden({
"hidden": false,
"confirm": "mentorship.profiles.setHidden",
"requestKey": "a-new-unique-key"
});Request fields (3)
- hidden boolean required
- confirm "mentorship.profiles.setHidden" required
- requestKey string required1 to 128 characters
Response object
- receipt object required
- completedAt string (date-time) | null required
- createdAt string (date-time) required
- id string (uuid) required
- operation string required
- requestKey string required
- status "running" | "succeeded" | "failed" | "unknown" required
- result object | null required
- hidden boolean required
mentorship.programs.get
One mentorship program: who joined, the suggested pairs, whether pairs are meeting and the next mentor circle
POST/api/v1/manage/mentorship/programs/get
- Read
- Permission mentorship.programs.get
const result = await shuffl.mentorship.programs.get({
"programId": "<programId>"
});Request fields (1)
- programId string required
Response object
- circle null | object required
- going number required
- id string required
- minutes number required
- notGoing number required
- startsAt string required
- topic string required
- health object required
- needs object[] required
- Option 1 object optional
- count number required
- kind "approve" required
- Option 2 object optional
- count number required
- kind "not_met" required
- Option 3 object optional
- kind "topic" required
- label string required
- offer number required
- topic string required
- want number required
- Option 4 object optional
- count number required
- kind "rematch" required
- Option 1 object optional
- topics object[] required
- label string required
- offer number required
- short boolean required
- topic string required
- want number required
- vitals object required
- daysToMatch null | number required
- meeting number required
- metRate null | number required
- waiting number required
- needs object[] required
- invitations object[] required
- answer null | "later" | "not_now" | "yes" required
- answeredAt null | string required
- from null | string required
- id string required
- person object required
- id string required
- name string required
- photoUrl null | string required
- slackUserId null | string required
- title null | string required
- userId null | string required
- sentAt string required
- topic string required
- members object[] required
- capacity null | number required
- hoursPerMonth null | number required
- id string required
- joinedAt string required
- name string required
- pairs number required
- photoUrl null | string required
- role "mentee" | "mentor" required
- slackUserId null | string required
- status "active" | "left" | "removed" required
- title null | string required
- topics string required
- userId null | string required
- pairs object[] required
- approvedAt null | string required
- checkIns object required
- answered number required
- asked number required
- met number required
- endedAt null | string required
- endReason null | "completed" | "hr" | "mentee" | "mentor" required
- endsOn null | string required
- final object required
- mentee null | "helped" | "met" | "not_yet" required
- mentor null | "helped" | "met" | "not_yet" required
- id string required
- mentee object required
- id string required
- name string required
- photoUrl null | string required
- slackUserId null | string required
- title null | string required
- userId null | string required
- mentor object required
- id string required
- name string required
- photoUrl null | string required
- slackUserId null | string required
- title null | string required
- userId null | string required
- nextCheckInOn null | string required
- reasons string[] required
- startedAt null | string required
- status "active" | "ended" | "paused" | "requested" | "skipped" | "suggested" required
- suggestedAt string required
- program object required
- activePairs number required
- approved number required
- audience null | string required
- checkInWeeks number required
- cohort null | object required
- matched boolean required
- signupClosesOn string required
- started boolean required
- startsOn string required
- wrapsUpOn string required
- createdAt string required
- description string required
- format "ask_once" | "circle" | "one_to_one" | "reverse" required
- groupId null | string required
- id string required
- mentees number required
- menteesChoose boolean required
- mentorCapacity number required
- mentors number required
- name string required
- pairingWeeks number required
- requested number required
- sponsor null | object required
- id string required
- name string required
- note string required
- status "active" | "archived" | "paused" required
- suggested number required
- waiting number required
mentorship.programs.list
List mentorship programs, with how many mentors, mentees and pairs each has
POST/api/v1/manage/mentorship/programs/list
- Read
- Permission mentorship.programs.list
const result = await shuffl.mentorship.programs.list();Request fields (none)
This operation takes no input.
Response object
- programs object[] required
- activePairs number required
- approved number required
- audience null | string required
- checkInWeeks number required
- cohort null | object required
- matched boolean required
- signupClosesOn string required
- started boolean required
- startsOn string required
- wrapsUpOn string required
- createdAt string required
- description string required
- format "ask_once" | "circle" | "one_to_one" | "reverse" required
- groupId null | string required
- id string required
- mentees number required
- menteesChoose boolean required
- mentorCapacity number required
- mentors number required
- name string required
- pairingWeeks number required
- requested number required
- sponsor null | object required
- id string required
- name string required
- note string required
- status "active" | "archived" | "paused" required
- suggested number required
- waiting number required
mentorship.programs.save
Create or change a mentorship program: who can join, its format (one to one, ask once, circles or reverse mentoring), whether it runs as a cohort, how long pairings last and how often pairs check in
POST/api/v1/manage/mentorship/programs/save
- Write
- Permission mentorship.programs.save
- Needs a requestKey
- Needs confirm set to mentorship.programs.save
const result = await shuffl.mentorship.programs.save({
"name": "<name>",
"confirm": "mentorship.programs.save",
"requestKey": "a-new-unique-key"
});Request fields (12)
- checkInWeeks number optional
- cohort null | object optional
- signupClosesOn string required
- startsOn string required
- description string optional
- format "ask_once" | "circle" | "one_to_one" | "reverse" optional
- groupId null | string optional
- id string optional
- menteesChoose false | true optional
- mentorCapacity number optional
- name string required
- pairingWeeks number optional
- confirm "mentorship.programs.save" required
- requestKey string required1 to 128 characters
Response object
- receipt object required
- completedAt string (date-time) | null required
- createdAt string (date-time) required
- id string (uuid) required
- operation string required
- requestKey string required
- status "running" | "succeeded" | "failed" | "unknown" required
- result object | null required
- cohort boolean required
- created boolean required
- format "ask_once" | "circle" | "one_to_one" | "reverse" required
- grouped boolean required
- id string required
mentorship.programs.setStatus
Turn mentorship programs on, pause one, or archive one and end its pairs
POST/api/v1/manage/mentorship/programs/setStatus
- Write
- Permission mentorship.programs.setStatus
- Needs a requestKey
- Needs confirm set to mentorship.programs.setStatus
const result = await shuffl.mentorship.programs.setStatus({
"programId": "<programId>",
"status": "active",
"confirm": "mentorship.programs.setStatus",
"requestKey": "a-new-unique-key"
});Request fields (4)
- programId string required
- status "active" | "archived" | "paused" required
- confirm "mentorship.programs.setStatus" required
- requestKey string required1 to 128 characters
Response object
- receipt object required
- completedAt string (date-time) | null required
- createdAt string (date-time) required
- id string (uuid) required
- operation string required
- requestKey string required
- status "running" | "succeeded" | "failed" | "unknown" required
- result object | null required
- changed boolean required
- status "active" | "archived" | "paused" required
mentorship.requests.answer
Accept or pass on a mentee who chose you as their mentor
POST/api/v1/manage/mentorship/requests/answer
- Write
- Permission mentorship.requests.answer
- Needs a requestKey
- Needs confirm set to mentorship.requests.answer
const result = await shuffl.mentorship.requests.answer({
"decision": "accept",
"pairId": "<pairId>",
"confirm": "mentorship.requests.answer",
"requestKey": "a-new-unique-key"
});Request fields (4)
- decision "accept" | "pass" required
- pairId string required
- confirm "mentorship.requests.answer" required
- requestKey string required1 to 128 characters
Response object
- receipt object required
- completedAt string (date-time) | null required
- createdAt string (date-time) required
- id string (uuid) required
- operation string required
- requestKey string required
- status "running" | "succeeded" | "failed" | "unknown" required
- result object | null required
- changed boolean required
- decision "accept" | "pass" required
- status "active" | "ended" | "paused" | "skipped" | "suggested" required
mentorship.sessions.remove
Remove your notes from a mentorship meeting
POST/api/v1/manage/mentorship/sessions/remove
- Write
- Permission mentorship.sessions.remove
- Needs a requestKey
- Needs confirm set to mentorship.sessions.remove
const result = await shuffl.mentorship.sessions.remove({
"pairId": "<pairId>",
"sessionId": "<sessionId>",
"confirm": "mentorship.sessions.remove",
"requestKey": "a-new-unique-key"
});Request fields (4)
- pairId string required
- sessionId string required
- confirm "mentorship.sessions.remove" required
- requestKey string required1 to 128 characters
Response object
- receipt object required
- completedAt string (date-time) | null required
- createdAt string (date-time) required
- id string (uuid) required
- operation string required
- requestKey string required
- status "running" | "succeeded" | "failed" | "unknown" required
- result object | null required
- removed boolean required
mentorship.sessions.save
Add or change your notes from a mentorship meeting: what you talked about and one thing to try
POST/api/v1/manage/mentorship/sessions/save
- Write
- Permission mentorship.sessions.save
- Needs a requestKey
- Needs confirm set to mentorship.sessions.save
const result = await shuffl.mentorship.sessions.save({
"heldOn": "<heldOn>",
"pairId": "<pairId>",
"confirm": "mentorship.sessions.save",
"requestKey": "a-new-unique-key"
});Request fields (7)
- heldOn string required
- nextStep string optional
- notes string optional
- pairId string required
- sessionId string optional
- confirm "mentorship.sessions.save" required
- requestKey string required1 to 128 characters
Response object
- receipt object required
- completedAt string (date-time) | null required
- createdAt string (date-time) required
- id string (uuid) required
- operation string required
- requestKey string required
- status "running" | "succeeded" | "failed" | "unknown" required
- result object | null required
- added boolean required
- nextStep boolean required
- role string required
- sessionId null | string required
mentorship.settings.get
What a new mentorship program starts with: pairing length, check-in cadence and mentees per mentor
POST/api/v1/manage/mentorship/settings/get
- Read
- Permission mentorship.settings.get
const result = await shuffl.mentorship.settings.get();Request fields (none)
This operation takes no input.
Response object
- defaults object required
- checkInWeeks 2 required
- mentorCapacity 2 required
- pairingWeeks 12 required
- settings object required
- checkInWeeks number required
- mentorCapacity number required
- pairingWeeks number required
- updatedAt null | string required
mentorship.settings.save
Change what a new mentorship program starts with; existing programs keep their own terms
POST/api/v1/manage/mentorship/settings/save
- Write
- Permission mentorship.settings.save
- Needs a requestKey
- Needs confirm set to mentorship.settings.save
const result = await shuffl.mentorship.settings.save({
"checkInWeeks": 0,
"mentorCapacity": 0,
"pairingWeeks": 0,
"confirm": "mentorship.settings.save",
"requestKey": "a-new-unique-key"
});Request fields (5)
- checkInWeeks number required
- mentorCapacity number required
- pairingWeeks number required
- confirm "mentorship.settings.save" required
- requestKey string required1 to 128 characters
Response object
- receipt object required
- completedAt string (date-time) | null required
- createdAt string (date-time) required
- id string (uuid) required
- operation string required
- requestKey string required
- status "running" | "succeeded" | "failed" | "unknown" required
- result object | null required
- changed number required
- custom boolean required
- settings object required
- checkInWeeks number required
- mentorCapacity number required
- pairingWeeks number required
mentorship.thanks.save
Thank your mentor when your pairing ends: optionally on their profile, to their manager, and as praise in a channel
POST/api/v1/manage/mentorship/thanks/save
- Write
- Permission mentorship.thanks.save
- Needs a requestKey
- Needs confirm set to mentorship.thanks.save
const result = await shuffl.mentorship.thanks.save({
"message": "<message>",
"pairId": "<pairId>",
"confirm": "mentorship.thanks.save",
"requestKey": "a-new-unique-key"
});Request fields (7)
- message string required
- onProfile false | true optional
- pairId string required
- praiseChannelId null | string optional
- tellManager false | true optional
- confirm "mentorship.thanks.save" required
- requestKey string required1 to 128 characters
Response object
- receipt object required
- completedAt string (date-time) | null required
- createdAt string (date-time) required
- id string (uuid) required
- operation string required
- requestKey string required
- status "running" | "succeeded" | "failed" | "unknown" required
- result object | null required
- added boolean required
- managerTold boolean required
- onProfile boolean required
- praise null | "failed" | "posted" required
- praiseError null | string required