Skip to content
shuffl

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

Reference

Reimbursements API

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

OpenAPI documentErrors and rate limitsSDK and CLI recipes

On this page

expenses.mine

Read your own reimbursements Mello filed and where each one stands

POST/api/v1/manage/expenses/mine

const result = await shuffl.expenses.mine();
Request fields (none)

This operation takes no input.

Response object
  • expenses 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
        • 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 3 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 4 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 5 object optional
        • caseId string required
        • categoryId null | string required
        • destinationId string required
        • destinationLabel string required
        • kind "ticket" required
        • ticketKey null | string required
      • Option 6 object optional
        • amount null | number required
        • approver null | string required
        • 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" | "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

expenses.stageReceipt

Hand over a receipt photo or PDF for a reimbursement; it is kept for a day until filed

POST/api/v1/manage/expenses/stageReceipt

const result = await shuffl.expenses.stageReceipt({
"fileName": "<fileName>",
"receipt": "<receipt>",
"confirm": "expenses.stageReceipt",
"requestKey": "a-new-unique-key"
});
Request fields (4)
  • fileName string required
  • receipt string required
  • confirm "expenses.stageReceipt" 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
    • expiresAt string required
    • fileName string required
    • providerName string required
    • receiptId string required
    • sizeBytes number required

expenses.submitMileage

File a mileage reimbursement for a work trip; the spend platform applies the rate

POST/api/v1/manage/expenses/submitMileage

const result = await shuffl.expenses.submitMileage({
"memo": "<memo>",
"miles": 0,
"requestKey": "a-new-unique-key",
"tripDate": "<tripDate>",
"confirm": "expenses.submitMileage"
});
Request fields (7)
  • from null | string optional
  • memo string required
  • miles number required
  • requestKey string required1 to 128 characters
  • to null | string optional
  • tripDate string required
  • confirm "expenses.submitMileage" 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
          • 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 3 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 4 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 5 object optional
          • caseId string required
          • categoryId null | string required
          • destinationId string required
          • destinationLabel string required
          • kind "ticket" required
          • ticketKey null | string required
        • Option 6 object optional
          • amount null | number required
          • approver null | string required
          • 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" | "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
    • stage null | string required
    • status "approved" | "cancelled" | "declined" | "failed" | "prepared" | "resolved" | "running" | "submitted" | "unknown" required
    • statusLabel string required
    • summary string required
    • vendorUrl null | string required

expenses.submitReceipt

File a reimbursement from a receipt you handed over; the spend platform drafts it from the receipt

POST/api/v1/manage/expenses/submitReceipt

const result = await shuffl.expenses.submitReceipt({
"memo": "<memo>",
"receiptId": "<receiptId>",
"requestKey": "a-new-unique-key",
"confirm": "expenses.submitReceipt"
});
Request fields (4)
  • memo string required
  • receiptId string required
  • requestKey string required1 to 128 characters
  • confirm "expenses.submitReceipt" 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
          • 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 3 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 4 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 5 object optional
          • caseId string required
          • categoryId null | string required
          • destinationId string required
          • destinationLabel string required
          • kind "ticket" required
          • ticketKey null | string required
        • Option 6 object optional
          • amount null | number required
          • approver null | string required
          • 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" | "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
    • stage null | string required
    • status "approved" | "cancelled" | "declined" | "failed" | "prepared" | "resolved" | "running" | "submitted" | "unknown" required
    • statusLabel string required
    • summary string required
    • vendorUrl null | string required