Reference
Profiles API
10 operations. Generated from the OpenAPI document, so this page always matches the API.
OpenAPI documentErrors and rate limitsSDK and CLI recipes
On this page
profiles.get
Read a person’s profile as this team sees it
POST/api/v1/manage/profiles/get
- Read
- Permission profiles.get
const result = await shuffl.profiles.get({
"personId": "<personId>"
});Request fields (2)
- personId string required
- viewAs "other" | "team" optional
Response object
- about object required
- askMeAbout null | string[] required
- asks null | string required
- bio null | string required
- interests null | string required
- location null | string required
- offers null | string required
- phone null | string required
- preferredName string required
- pronouns null | string required
- workingOn null | string required
- birthday null | object required
- day number required
- month number required
- buddy null | object required
- id string required
- name string required
- photoUrl null | string required
- slackUserId null | string required
- title null | string required
- userId null | string required
- buddying null | object required
- active number required
- status null | "removed" | "volunteer" required
- total number required
- canEdit boolean required
- canManage boolean required
- knows null | number required
- links null | object[] required
- id string required
- label string required
- url 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
- person object required
- coverUrl null | string required
- department null | string required
- departmentId null | string required
- email null | string required
- employeeNumber null | number required
- groups object[] required
- id string required
- name string required
- id string required
- joinedAfterPercent null | number required
- name string required
- photoUrl null | string required
- slackUserId null | string required
- startDate null | string required
- timezone null | string required
- title null | string required
- uploadedPhoto boolean required
- userId null | string required
- positions null | object[] required
- endedOn null | string required
- id string required
- organization null | string required
- source "admin" | "directory" | "person" required
- startedOn null | string required
- title string required
- unitName null | string required
- preview null | "other" | "team" required
- relation "other" | "self" | "team" required
- reports object[] required
- id string required
- name string required
- photoUrl null | string required
- slackUserId null | string required
- title null | string required
- userId null | string required
- self boolean required
- settings null | object required
- about "everyone" | "my_team" | "only_me" required
- badges "everyone" | "my_team" | "only_me" required
- birthday "everyone" | "my_team" | "only_me" required
- buddy "everyone" | "my_team" | "only_me" required
- links "everyone" | "my_team" | "only_me" required
- location "everyone" | "my_team" | "only_me" required
- network "everyone" | "my_team" | "only_me" required
- phone "everyone" | "my_team" | "only_me" required
- pronouns "everyone" | "my_team" | "only_me" required
- teammates object[] required
- id string required
- name string required
- photoUrl null | string required
- slackUserId null | string required
- title null | string required
- userId null | string required
profiles.whoKnows
Find coworkers who know about a topic, place or skill from what they share on their profiles, with the words that matched
POST/api/v1/manage/profiles/whoKnows
- Read
- Permission profiles.whoKnows
const result = await shuffl.profiles.whoKnows({});Request fields (4)
- from "command_palette" | "people_page" optional
- limit number optional
- personIds string[] optional
- topic string optional
Response object
- people object[] required
- askMeAbout string[] required
- knowsYou boolean required
- person object required
- id string required
- name string required
- photoUrl null | string required
- slackUserId null | string required
- title null | string required
- reasons object[] required
- field "askMeAbout" | "bio" | "community" | "interests" | "location" | "offers" | "position" | "team" | "title" | "workingOn" required
- label string required
- text string required
- self boolean required
- total number required
profiles.draft
Draft the empty parts of your own profile with Mello; nothing is saved
POST/api/v1/manage/profiles/draft
- Write
- Permission profiles.draft
- Needs a requestKey
- Needs confirm set to profiles.draft
const result = await shuffl.profiles.draft({
"personId": "<personId>",
"confirm": "profiles.draft",
"requestKey": "a-new-unique-key"
});Request fields (3)
- personId string required
- confirm "profiles.draft" 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
- askMeAbout string[] required
- bio null | string required
- by "ai" | "rule" required
- interests null | string required
- offers null | string required
- workingOn null | string required
profiles.employeeNumber
Set a person’s employee number to an unused number
POST/api/v1/manage/profiles/employeeNumber
- Write
- Permission profiles.employeeNumber
- Needs a requestKey
- Needs confirm set to profiles.employeeNumber
const result = await shuffl.profiles.employeeNumber({
"employeeNumber": 0,
"personId": "<personId>",
"confirm": "profiles.employeeNumber",
"requestKey": "a-new-unique-key"
});Request fields (4)
- employeeNumber number required
- personId string required
- confirm "profiles.employeeNumber" 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
- saved boolean required
profiles.save
Save your own profile: pronouns, location, phone, bio, interests, links and what you are working on
POST/api/v1/manage/profiles/save
- Write
- Permission profiles.save
- Needs a requestKey
const result = await shuffl.profiles.save({
"links": [
{
"label": "<label>",
"url": "<url>"
}
],
"personId": "<personId>",
"requestKey": "a-new-unique-key"
});Request fields (13)
- askMeAbout string[] optional
- asks string optional
- bio string optional
- interests string optional
- links object[] required
- label string required
- url string required
- location string optional
- offers string optional
- personId string required
- phone string optional
- preferredName string optional
- pronouns string optional
- workingOn string optional
- 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
- saved boolean required
profiles.settings
Choose who sees the optional parts of your own profile
POST/api/v1/manage/profiles/settings
- Write
- Permission profiles.settings
- Needs a requestKey
- Needs confirm set to profiles.settings
const result = await shuffl.profiles.settings({
"about": "everyone",
"badges": "everyone",
"links": "everyone",
"location": "everyone",
"network": "everyone",
"personId": "<personId>",
"phone": "everyone",
"pronouns": "everyone",
"confirm": "profiles.settings",
"requestKey": "a-new-unique-key"
});Request fields (12)
- about "everyone" | "my_team" | "only_me" required
- badges "everyone" | "my_team" | "only_me" required
- birthday "everyone" | "my_team" | "only_me" optional
- buddy "everyone" | "my_team" | "only_me" optional
- links "everyone" | "my_team" | "only_me" required
- location "everyone" | "my_team" | "only_me" required
- network "everyone" | "my_team" | "only_me" required
- personId string required
- phone "everyone" | "my_team" | "only_me" required
- pronouns "everyone" | "my_team" | "only_me" required
- confirm "profiles.settings" 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
- saved boolean required
profiles.cover.delete
Remove your profile cover picture
POST/api/v1/manage/profiles/cover/delete
- Write
- Permission profiles.cover.delete
- Needs a requestKey
const result = await shuffl.profiles.cover.delete({
"personId": "<personId>",
"requestKey": "a-new-unique-key"
});Request fields (2)
- personId string 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
- saved boolean required
profiles.photo.delete
Remove your profile photo
POST/api/v1/manage/profiles/photo/delete
- Write
- Permission profiles.photo.delete
- Needs a requestKey
const result = await shuffl.profiles.photo.delete({
"personId": "<personId>",
"requestKey": "a-new-unique-key"
});Request fields (2)
- personId string 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
- saved boolean required
profiles.positions.delete
Remove a past position from your profile
POST/api/v1/manage/profiles/positions/delete
- Write
- Permission profiles.positions.delete
- Needs a requestKey
const result = await shuffl.profiles.positions.delete({
"personId": "<personId>",
"positionId": "<positionId>",
"requestKey": "a-new-unique-key"
});Request fields (3)
- personId string required
- positionId string 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
- saved boolean required
profiles.positions.save
Add or change a past position on your profile
POST/api/v1/manage/profiles/positions/save
- Write
- Permission profiles.positions.save
- Needs a requestKey
const result = await shuffl.profiles.positions.save({
"endedOn": "<endedOn>",
"organization": "<organization>",
"personId": "<personId>",
"startedOn": "<startedOn>",
"title": "<title>",
"unitName": "<unitName>",
"requestKey": "a-new-unique-key"
});Request fields (8)
- endedOn null | string required
- id string optional
- organization null | string required
- personId string required
- startedOn null | string required
- title string required
- unitName null | string 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
- id string required