Skip to content
shuffl

Searches the public product guides only. Nothing from a workspace is read, and questions are not saved.

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

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

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

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

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

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

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

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

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