Skip to content
shuffl

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

Reference

HR digest and nudges API

8 operations. Generated from the OpenAPI document, so this page always matches the API.

OpenAPI documentErrors and rate limitsSDK and CLI recipes

On this page

digest.culture

List the Culture page’s recommendations in order and what happened after each one acted on

POST/api/v1/manage/digest/culture

const result = await shuffl.digest.culture();
Request fields (none)

This operation takes no input.

Response object
  • focus object required
    • company object required
      • metPct null | number required
      • previous object required
        • metPct null | number required
        • pulse null | object required
        • thankedPct null | number required
      • pulse null | object required
        • metric "enps" | "favourable" required
        • value number required
      • responsePct null | number required
      • thankedPct null | number required
    • groups object[] required
      • below "connections" | "playbook" | "praise" | "pulse"[] required
      • id string required
      • joined number required
      • left number required
      • metPct null | number required
      • missedCheckIns number required
      • name string required
      • needHelp number required
      • noBuddy number required
      • people number required
      • previous object required
        • metPct null | number required
        • pulse null | object required
        • thankedPct null | number required
      • pulse null | object required
        • metric "enps" | "favourable" required
        • value number required
      • responsePct null | number required
      • thankedPct null | number required
      • weakDriver null | object required
        • company number required
        • driver "ai_adoption" | "belonging" | "clarity" | "engagement" | "growth" | "manager" | "recognition" | "safety" | "tools" | "workload" required
        • label string required
        • value number required
    • kind null | "department" | "group" required
    • pairs object[] required
      • a string required
      • b string required
      • met number required
    • praise object[] required
      • count number required
      • from string required
      • to string required
  • help object[] required
    • answeredAt string (date-time) required
    • day number required
    • enrollmentId string required
    • name string required
    • programId string required
  • outcomes object[] required
    • actedAt string (date-time) required
    • area "connections" | "playbook" | "praise" | "pulse" required
    • detail string required
    • id string required
    • kind "buddy_gap" | "cross_team" | "praise_gap" | "praise_low" | "pulse_low" | "start_cross_team" | "start_playbook" | "start_praise" | "start_pulse" required
    • step string required
    • title string required
    • worked boolean required
  • playbooks object[] required
    • active number required
    • id string required
    • leaving boolean required
    • name string required
    • people object[] required
      • day number required
      • enrollmentId string required
      • flag null | "help" | "late" | "no_buddy" required
      • late number required
      • name string required
      • photoUrl null | string required
      • progressPct null | number required
  • recommendations object[] required
    • Option 1 object optional
      • action object required
        • label string required
        • path string required
      • area "connections" | "playbook" | "praise" | "pulse" required
      • department string required
      • id string required
      • kind "praise_gap" required
      • people number required
      • rank number required
      • subject string required
      • title string required
      • weeks number required
    • Option 2 object optional
      • action object required
        • label string required
        • path string required
      • area "connections" | "playbook" | "praise" | "pulse" required
      • days number required
      • enrollmentId string required
      • hires number required
      • id string required
      • kind "buddy_gap" required
      • programId string required
      • rank number required
      • subject string required
      • title string required
    • Option 3 object optional
      • action object required
        • label string required
        • path string required
      • area "connections" | "playbook" | "praise" | "pulse" required
      • departments string[] required
      • id string required
      • kind "cross_team" required
      • programId null | string required
      • rank number required
      • subject string required
      • title string required
      • weeks number required
    • Option 4 object optional
      • action object required
        • label string required
        • path string required
      • area "connections" | "playbook" | "praise" | "pulse" required
      • company number required
      • department string required
      • id string required
      • kind "praise_low" required
      • rank number required
      • share number required
      • subject string required
      • title string required
    • Option 5 object optional
      • action object required
        • label string required
        • path string required
      • area "connections" | "playbook" | "praise" | "pulse" required
      • company number required
      • group string required
      • id string required
      • kind "pulse_low" required
      • metric "enps" | "favourable" required
      • rank number required
      • subject string required
      • title string required
      • value number required
    • Option 6 object optional
      • action object required
        • label string required
        • path string required
      • area "connections" | "playbook" | "praise" | "pulse" required
      • id string required
      • kind "start_playbook" | "start_praise" | "start_pulse" required
      • rank number required
      • subject string required
      • title string required
    • Option 7 object optional
      • action object required
        • label string required
        • path string required
      • area "connections" | "playbook" | "praise" | "pulse" required
      • departments number required
      • id string required
      • kind "start_cross_team" required
      • rank number required
      • subject string required
      • title string required
  • week object required
    • finished number required
    • introductions number required
    • thanked number required
  • wins object required
    • anniversaries object[] required
      • date string required
      • name string required
      • personId string required
      • years number required
    • finished object[] required
      • at string (date-time) required
      • enrollmentId string required
      • name string required
      • playbook string required
      • programId string required

digest.nudge

Read one of Mello’s culture nudges

POST/api/v1/manage/digest/nudge

const result = await shuffl.digest.nudge({
"nudgeId": "<nudgeId>"
});
Request fields (1)
  • nudgeId string required
Response object
  • action object required
    • label string required
    • path string required
  • dismissed boolean required
  • id string required
  • kind "buddy_gap" | "cross_team" | "praise_gap" | "praise_low" | "pulse_low" | "start_cross_team" | "start_playbook" | "start_praise" | "start_pulse" required
  • title string required

digest.nudges

List Mello’s culture nudges for the workspace

POST/api/v1/manage/digest/nudges

const result = await shuffl.digest.nudges();
Request fields (none)

This operation takes no input.

Response object[]

The response is object[].

digest.preview

Preview the HR digest for the last period

POST/api/v1/manage/digest/preview

const result = await shuffl.digest.preview();
Request fields (none)

This operation takes no input.

Response object
  • action null | object required
    • kind "buddy" | "drafts" | "hr_waiting" | "need_help" | "no_source" | "recheck" required
    • label string required
    • path string required
  • heading string required
  • nowCan string[] required
  • nudges object[] required
    • action object required
      • label string required
      • path string required
    • id string required
    • kind "buddy_gap" | "cross_team" | "praise_gap" | "praise_low" | "pulse_low" | "start_cross_team" | "start_playbook" | "start_praise" | "start_pulse" required
    • title string required
  • quiet boolean required
  • range string required
  • sections object[] required
    • id "celebrations" | "connections" | "mello" | "needs_you" | "playbook" | "praise" | "pulse" | "requests" required
    • link object required
      • label string required
      • path string required
    • note string optional
    • ratio object optional
      • label string required
      • part number required
      • whole number required
    • stats object[] required
      • change object optional
        • text string required
        • tone "bad" | "good" | "neutral" | "watch" required
      • label string required
      • value string required
    • title string required
  • subject string required
  • summary string required
  • tip null | object required
    • id "badges" | "buddy" | "celebrations" | "communities" | "connections" | "first_week" | "guidance" | "invite" | "meet" | "my_reports" | "my_team" | "org_team" | "playbook" | "praise_received" | "praise_values" | "profile" | "pulse" | "pulse_results" | "start_community" | "time_off" required
    • message string required
    • path string required
  • trend number[] optional

digest.settings

Read the HR digest schedule

POST/api/v1/manage/digest/settings

const result = await shuffl.digest.settings();
Request fields (none)

This operation takes no input.

Response object
  • next null | object required
    • at string required
    • periodEnd string required
    • periodStart string required
  • revision number required
  • saved boolean required
  • settings object required
    • cadence "biweekly" | "monthly" | "off" | "weekly" required
    • hour number required
    • quiet "short" | "skip" required
    • slackChannelId null | string required
    • slackChannelName null | string required
    • timezone string required
    • weekday number required

digest.actOnNudge

Record that a culture nudge was acted on and get where its action goes

POST/api/v1/manage/digest/actOnNudge

  • Write
  • Permission digest.actOnNudge
  • Needs a requestKey
  • Needs confirm set to digest.actOnNudge
const result = await shuffl.digest.actOnNudge({
"from": "culture",
"nudgeId": "<nudgeId>",
"confirm": "digest.actOnNudge",
"requestKey": "a-new-unique-key"
});
Request fields (4)
  • from "culture" | "email" | "page" | "preview" | "slack" | "today" required
  • nudgeId string required
  • confirm "digest.actOnNudge" 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
    • action object required
      • label string required
      • path string required
    • dismissed boolean required
    • id string required
    • kind "buddy_gap" | "cross_team" | "praise_gap" | "praise_low" | "pulse_low" | "start_cross_team" | "start_playbook" | "start_praise" | "start_pulse" required
    • recorded boolean required
    • title string required

digest.dismissNudge

Dismiss a culture nudge for 90 days

POST/api/v1/manage/digest/dismissNudge

const result = await shuffl.digest.dismissNudge({
"from": "culture",
"nudgeId": "<nudgeId>",
"confirm": "digest.dismissNudge",
"requestKey": "a-new-unique-key"
});
Request fields (4)
  • from "culture" | "email" | "page" | "preview" | "slack" | "today" required
  • nudgeId string required
  • confirm "digest.dismissNudge" 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
    • action object required
      • label string required
      • path string required
    • dismissed boolean required
    • id string required
    • kind "buddy_gap" | "cross_team" | "praise_gap" | "praise_low" | "pulse_low" | "start_cross_team" | "start_playbook" | "start_praise" | "start_pulse" required
    • recorded boolean required
    • title string required

digest.saveSettings

Save the HR digest schedule and admin channel

POST/api/v1/manage/digest/saveSettings

const result = await shuffl.digest.saveSettings({
"cadence": "biweekly",
"expectedRevision": 0,
"hour": 0,
"quiet": "short",
"slackChannelId": "<slackChannelId>",
"timezone": "<timezone>",
"weekday": 0,
"confirm": "digest.saveSettings",
"requestKey": "a-new-unique-key"
});
Request fields (9)
  • cadence "biweekly" | "monthly" | "off" | "weekly" required
  • expectedRevision number required
  • hour number required
  • quiet "short" | "skip" required
  • slackChannelId null | string required
  • timezone string required
  • weekday number required
  • confirm "digest.saveSettings" 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
    • next null | object required
      • at string required
      • periodEnd string required
      • periodStart string required
    • revision number required
    • saved boolean required
    • settings object required
      • cadence "biweekly" | "monthly" | "off" | "weekly" required
      • hour number required
      • quiet "short" | "skip" required
      • slackChannelId null | string required
      • slackChannelName null | string required
      • timezone string required
      • weekday number required