Skip to content
shuffl

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

Reference

Time off API

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

OpenAPI documentErrors and rate limitsSDK and CLI recipes

On this page

timeOff.balances

Read your own time-off balances from the connected HR system

POST/api/v1/manage/timeOff/balances

const result = await shuffl.timeOff.balances();
Request fields (none)

This operation takes no input.

Response object

The response is object.

timeOff.cancel

Cancel a pending time-off request Mello filed

POST/api/v1/manage/timeOff/cancel

  • Write
  • Permission timeOff.cancel
  • Needs a requestKey
  • Needs confirm set to timeOff.cancel
const result = await shuffl.timeOff.cancel({
"id": "<id>",
"requestKey": "a-new-unique-key",
"confirm": "timeOff.cancel"
});
Request fields (3)
  • id string required
  • requestKey string required1 to 128 characters
  • confirm "timeOff.cancel" required
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
      • cancellable boolean required
      • createdAt string required
      • details object required
        • Option 1 object optional
          • appName string required
          • groups object[] required
          • kind "access" required
          • levelName null | string required
          • operation "add" | "remove" required
          • requestId string required
        • Option 2 object optional
          • amount null | number required
          • approverName null | string required
          • approverPersonId null | string required
          • cardId null | string required
          • cardName null | string required
          • cards object[] required
          • currency null | string required
          • groupName null | string required
          • interval null | "monthly" | "quarterly" | "total" | "yearly" required
          • invitation null | string required
          • kind "card_issue" | "card_limit" | "card_lock" required
          • lastFour null | string required
          • previousAmount null | number required
          • reason "asked" | "joining" | "leaving" | "moved" required
          • spendUserId null | string required
        • Option 3 object optional
          • deviceId null | string required
          • deviceName null | string required
          • kind "device" required
          • model null | string required
          • operation "lock" | "order" | "return" | "wipe" required
          • serialLast4 null | string required
          • shipmentId null | string required
        • Option 4 object optional
          • amount null | number required
          • currency null | string required
          • fileName null | string required
          • from null | string required
          • kind "expense" required
          • memo string required
          • merchant null | string required
          • miles null | number required
          • receiptId null | string required
          • stage null | string required
          • to null | string required
          • tripDate null | string required
          • type "mileage" | "receipt" required
        • Option 5 object optional
          • amountCents number required
          • currency string required
          • giftId string required
          • kind "gift" required
          • occasion "anniversary" | "birthday" | "praise" | "welcome" required
          • rewardId null | string required
        • Option 6 object optional
          • event null | "buddy_assigned" | "day_one" | "playbook_started" required
          • hireId string required
          • kind "hiring" required
          • startDate null | string required
          • text string required
          • write "note" | "start_date" | "tag" required
        • Option 7 object optional
          • caseId string required
          • categoryId null | string required
          • destinationId string required
          • destinationLabel string required
          • kind "ticket" required
          • ticketKey null | string required
        • Option 8 object optional
          • amount null | number required
          • approver null | string required
          • approverSubject null | string optional
          • decisionNote null | string optional
          • endDate string required
          • endHalfDay boolean required
          • kind "time_off" required
          • policy string required
          • policyId null | string required
          • startDate string required
          • startHalfDay boolean required
          • unit null | "days" | "hours" required
      • errorCode null | string required
      • id string required
      • kind "access" | "card_issue" | "card_limit" | "card_lock" | "device" | "expense" | "gift" | "hiring" | "ticket" | "time_off" required
      • lastCheckedAt null | string required
      • provider string required
      • providerName string required
      • settledAt null | string required
      • status "approved" | "cancelled" | "declined" | "failed" | "prepared" | "resolved" | "running" | "submitted" | "unknown" required
      • statusLabel string required
      • submittedAt null | string required
      • vendorUrl null | string required
    • providerName string required
    • status "approved" | "cancelled" | "declined" | "failed" | "prepared" | "resolved" | "running" | "submitted" | "unknown" required
    • statusLabel string required
    • summary string required
    • vendorUrl null | string required

timeOff.request

Request time off in your HR system; it waits for approval there

POST/api/v1/manage/timeOff/request

  • Write
  • Permission timeOff.request
  • Needs a requestKey
  • Needs confirm set to timeOff.request
const result = await shuffl.timeOff.request({
"endDate": "<endDate>",
"policy": "<policy>",
"requestKey": "a-new-unique-key",
"startDate": "<startDate>",
"confirm": "timeOff.request"
});
Request fields (7)
  • endDate string required
  • endHalfDay false | true optional
  • policy string required
  • requestKey string required1 to 128 characters
  • startDate string required
  • startHalfDay false | true optional
  • confirm "timeOff.request" required
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
      • cancellable boolean required
      • createdAt string required
      • details object required
        • Option 1 object optional
          • appName string required
          • groups object[] required
          • kind "access" required
          • levelName null | string required
          • operation "add" | "remove" required
          • requestId string required
        • Option 2 object optional
          • amount null | number required
          • approverName null | string required
          • approverPersonId null | string required
          • cardId null | string required
          • cardName null | string required
          • cards object[] required
          • currency null | string required
          • groupName null | string required
          • interval null | "monthly" | "quarterly" | "total" | "yearly" required
          • invitation null | string required
          • kind "card_issue" | "card_limit" | "card_lock" required
          • lastFour null | string required
          • previousAmount null | number required
          • reason "asked" | "joining" | "leaving" | "moved" required
          • spendUserId null | string required
        • Option 3 object optional
          • deviceId null | string required
          • deviceName null | string required
          • kind "device" required
          • model null | string required
          • operation "lock" | "order" | "return" | "wipe" required
          • serialLast4 null | string required
          • shipmentId null | string required
        • Option 4 object optional
          • amount null | number required
          • currency null | string required
          • fileName null | string required
          • from null | string required
          • kind "expense" required
          • memo string required
          • merchant null | string required
          • miles null | number required
          • receiptId null | string required
          • stage null | string required
          • to null | string required
          • tripDate null | string required
          • type "mileage" | "receipt" required
        • Option 5 object optional
          • amountCents number required
          • currency string required
          • giftId string required
          • kind "gift" required
          • occasion "anniversary" | "birthday" | "praise" | "welcome" required
          • rewardId null | string required
        • Option 6 object optional
          • event null | "buddy_assigned" | "day_one" | "playbook_started" required
          • hireId string required
          • kind "hiring" required
          • startDate null | string required
          • text string required
          • write "note" | "start_date" | "tag" required
        • Option 7 object optional
          • caseId string required
          • categoryId null | string required
          • destinationId string required
          • destinationLabel string required
          • kind "ticket" required
          • ticketKey null | string required
        • Option 8 object optional
          • amount null | number required
          • approver null | string required
          • approverSubject null | string optional
          • decisionNote null | string optional
          • endDate string required
          • endHalfDay boolean required
          • kind "time_off" required
          • policy string required
          • policyId null | string required
          • startDate string required
          • startHalfDay boolean required
          • unit null | "days" | "hours" required
      • errorCode null | string required
      • id string required
      • kind "access" | "card_issue" | "card_limit" | "card_lock" | "device" | "expense" | "gift" | "hiring" | "ticket" | "time_off" required
      • lastCheckedAt null | string required
      • provider string required
      • providerName string required
      • settledAt null | string required
      • status "approved" | "cancelled" | "declined" | "failed" | "prepared" | "resolved" | "running" | "submitted" | "unknown" required
      • statusLabel string required
      • submittedAt null | string required
      • vendorUrl null | string required
    • providerName string required
    • status "approved" | "cancelled" | "declined" | "failed" | "prepared" | "resolved" | "running" | "submitted" | "unknown" required
    • statusLabel string required
    • summary string required
    • vendorUrl null | string required