Reference
Laptops and devices API
12 operations. Generated from the OpenAPI document, so this page always matches the API.
OpenAPI documentErrors and rate limitsSDK and CLI recipes
On this page
devices.catalog
List the laptops the connected shipping partner can send
POST/api/v1/manage/devices/catalog
- Read
- Permission devices.catalog
const result = await shuffl.devices.catalog();Request fields (none)
This operation takes no input.
Response object
The response is object.
devices.connections
List the connected device management and shipping partner
POST/api/v1/manage/devices/connections
- Read
- Permission devices.connections
const result = await shuffl.devices.connections();Request fields (none)
This operation takes no input.
Response object
- connections object[] required
- canLock boolean required
- canWipe boolean required
- connectedAt string required
- devices number required
- id string required
- label string required
- lastSyncedAt null | string required
- provider "firstbase" | "fixture_mdm" | "fixture_shipping" | "intune" | "jamf" | "kandji" required
- providerName string required
- role "mdm" | "shipping" required
- status "connected" | "disconnected" | "needs_attention" required
- offered object[] required
- blurb string required
- canLock boolean required
- canWipe boolean required
- docsHref string required
- fields object[] required
- help string optional
- label string required
- name string required
- optional false | true optional
- placeholder string optional
- type "password" | "text" | "url" required
- id "firstbase" | "fixture_mdm" | "fixture_shipping" | "intune" | "jamf" | "kandji" required
- name string required
- role "mdm" | "shipping" required
- steps string[] required
devices.forPerson
Read one person’s devices, laptop orders and return kits
POST/api/v1/manage/devices/forPerson
- Read
- Permission devices.forPerson
const result = await shuffl.devices.forPerson({
"personId": "<personId>"
});Request fields (1)
- personId string required
Response object
- devices object[] required
- canLock boolean required
- canWipe boolean required
- encrypted null | false | true required
- enrolledAt null | string required
- id string required
- issues object[] required
- code "encryption_off" | "firewall_off" | "not_checked_in" | "os_update" | "passcode" required
- fix string required
- label string required
- lastCheckInAt null | string required
- lockedAt null | string required
- match "email" | "manual" | "none" required
- model null | string required
- name string required
- osVersion null | string required
- person null | object required
- id string required
- name string required
- platform "android" | "ios" | "linux" | "mac" | "other" | "windows" required
- platformLabel string required
- provider string required
- providerName string required
- serialLast4 null | string required
- status "active" | "locked" | "removed" | "wiped" required
- statusLabel string required
- wipedAt null | string required
- person object required
- id string required
- lastDay null | string required
- name string required
- startDate null | string required
- shipments object[] required
- addressSummary null | string required
- carrier null | string required
- createdAt string required
- deliveredAt null | string required
- devices number required
- direction "order" | "return" required
- errorCode null | string required
- expectedBy null | string required
- fromPlaybook boolean required
- id string required
- model null | string required
- person object required
- id string required
- name string required
- provider string required
- providerName string required
- receivedAt null | string required
- skuId null | string required
- status "cancelled" | "delivered" | "failed" | "in_transit" | "ordered" | "prepared" | "received" | "shipped" required
- statusLabel string required
- trackingCode null | string required
- trackingUrl null | string required
- updatedAt string required
devices.list
List the devices device management reports, what each needs and who has it
POST/api/v1/manage/devices/list
- Read
- Permission devices.list
const result = await shuffl.devices.list({});Request fields (4)
- issues false | true optional
- limit number optional
- query string optional
- unmatched false | true optional
Response object
- counts object required
- issues number required
- locked number required
- total number required
- unmatched number required
- wiped number required
- devices object[] required
- canLock boolean required
- canWipe boolean required
- encrypted null | false | true required
- enrolledAt null | string required
- id string required
- issues object[] required
- code "encryption_off" | "firewall_off" | "not_checked_in" | "os_update" | "passcode" required
- fix string required
- label string required
- lastCheckInAt null | string required
- lockedAt null | string required
- match "email" | "manual" | "none" required
- model null | string required
- name string required
- osVersion null | string required
- person null | object required
- id string required
- name string required
- platform "android" | "ios" | "linux" | "mac" | "other" | "windows" required
- platformLabel string required
- provider string required
- providerName string required
- serialLast4 null | string required
- status "active" | "locked" | "removed" | "wiped" required
- statusLabel string required
- wipedAt null | string required
- shipments object[] required
- addressSummary null | string required
- carrier null | string required
- createdAt string required
- deliveredAt null | string required
- devices number required
- direction "order" | "return" required
- errorCode null | string required
- expectedBy null | string required
- fromPlaybook boolean required
- id string required
- model null | string required
- person object required
- id string required
- name string required
- provider string required
- providerName string required
- receivedAt null | string required
- skuId null | string required
- status "cancelled" | "delivered" | "failed" | "in_transit" | "ordered" | "prepared" | "received" | "shipped" required
- statusLabel string required
- trackingCode null | string required
- trackingUrl null | string required
- updatedAt string required
devices.mine
List your own laptops and devices, what each needs, and where your laptop or return kit is
POST/api/v1/manage/devices/mine
- Read
- Permission devices.mine
const result = await shuffl.devices.mine();Request fields (none)
This operation takes no input.
Response object
- connected boolean required
- devices object[] required
- canLock boolean required
- canWipe boolean required
- encrypted null | false | true required
- enrolledAt null | string required
- id string required
- issues object[] required
- code "encryption_off" | "firewall_off" | "not_checked_in" | "os_update" | "passcode" required
- fix string required
- label string required
- lastCheckInAt null | string required
- lockedAt null | string required
- match "email" | "manual" | "none" required
- model null | string required
- name string required
- osVersion null | string required
- person null | object required
- id string required
- name string required
- platform "android" | "ios" | "linux" | "mac" | "other" | "windows" required
- platformLabel string required
- provider string required
- providerName string required
- serialLast4 null | string required
- status "active" | "locked" | "removed" | "wiped" required
- statusLabel string required
- wipedAt null | string required
- shipments object[] required
- addressSummary null | string required
- carrier null | string required
- createdAt string required
- deliveredAt null | string required
- devices number required
- direction "order" | "return" required
- errorCode null | string required
- expectedBy null | string required
- fromPlaybook boolean required
- id string required
- model null | string required
- person object required
- id string required
- name string required
- provider string required
- providerName string required
- receivedAt null | string required
- skuId null | string required
- status "cancelled" | "delivered" | "failed" | "in_transit" | "ordered" | "prepared" | "received" | "shipped" required
- statusLabel string required
- trackingCode null | string required
- trackingUrl null | string required
- updatedAt string required
devices.disconnect
Disconnect device management or the shipping partner; shipments keep their status
POST/api/v1/manage/devices/disconnect
- Write
- Permission devices.disconnect
- Needs a requestKey
- Needs confirm set to devices.disconnect
const result = await shuffl.devices.disconnect({
"connectionId": "<connectionId>",
"confirm": "devices.disconnect",
"requestKey": "a-new-unique-key"
});Request fields (3)
- connectionId string required
- confirm "devices.disconnect" 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
- disconnected boolean required
devices.lock
Lock a device through device management
POST/api/v1/manage/devices/lock
- Write
- Permission devices.lock
- Needs a requestKey
- Needs confirm set to devices.lock
const result = await shuffl.devices.lock({
"deviceId": "<deviceId>",
"requestKey": "a-new-unique-key",
"confirm": "devices.lock"
});Request fields (4)
- deviceId string required
- message string optional
- requestKey string required1 to 128 characters
- confirm "devices.lock" 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
- device object required
- canLock boolean required
- canWipe boolean required
- encrypted null | false | true required
- enrolledAt null | string required
- id string required
- issues object[] required
- code "encryption_off" | "firewall_off" | "not_checked_in" | "os_update" | "passcode" required
- fix string required
- label string required
- lastCheckInAt null | string required
- lockedAt null | string required
- match "email" | "manual" | "none" required
- model null | string required
- name string required
- osVersion null | string required
- person null | object required
- id string required
- name string required
- platform "android" | "ios" | "linux" | "mac" | "other" | "windows" required
- platformLabel string required
- provider string required
- providerName string required
- serialLast4 null | string required
- status "active" | "locked" | "removed" | "wiped" required
- statusLabel string required
- wipedAt null | string required
- summary string required
- unlockPin null | string required
- device object required
devices.match
Match a device to a person in People, or clear the match
POST/api/v1/manage/devices/match
- Write
- Permission devices.match
- Needs a requestKey
- Needs confirm set to devices.match
const result = await shuffl.devices.match({
"deviceId": "<deviceId>",
"personId": "<personId>",
"confirm": "devices.match",
"requestKey": "a-new-unique-key"
});Request fields (4)
- deviceId string required
- personId null | string required
- confirm "devices.match" 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
- canLock boolean required
- canWipe boolean required
- encrypted null | false | true required
- enrolledAt null | string required
- id string required
- issues object[] required
- code "encryption_off" | "firewall_off" | "not_checked_in" | "os_update" | "passcode" required
- fix string required
- label string required
- lastCheckInAt null | string required
- lockedAt null | string required
- match "email" | "manual" | "none" required
- model null | string required
- name string required
- osVersion null | string required
- person null | object required
- id string required
- name string required
- platform "android" | "ios" | "linux" | "mac" | "other" | "windows" required
- platformLabel string required
- provider string required
- providerName string required
- serialLast4 null | string required
- status "active" | "locked" | "removed" | "wiped" required
- statusLabel string required
- wipedAt null | string required
devices.order
Order a person’s laptop through the shipping partner
POST/api/v1/manage/devices/order
- Write
- Permission devices.order
- Needs a requestKey
- Needs confirm set to devices.order
const result = await shuffl.devices.order({
"personId": "<personId>",
"requestKey": "a-new-unique-key",
"confirm": "devices.order"
});Request fields (4)
- personId string required
- requestKey string required1 to 128 characters
- skuId string optional
- confirm "devices.order" 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
- shipment object required
- addressSummary null | string required
- carrier null | string required
- createdAt string required
- deliveredAt null | string required
- devices number required
- direction "order" | "return" required
- errorCode null | string required
- expectedBy null | string required
- fromPlaybook boolean required
- id string required
- model null | string required
- person object required
- id string required
- name string required
- provider string required
- providerName string required
- receivedAt null | string required
- skuId null | string required
- status "cancelled" | "delivered" | "failed" | "in_transit" | "ordered" | "prepared" | "received" | "shipped" required
- statusLabel string required
- trackingCode null | string required
- trackingUrl null | string required
- updatedAt string required
- status "approved" | "cancelled" | "declined" | "failed" | "prepared" | "resolved" | "running" | "submitted" | "unknown" required
- summary string required
- shipment object required
devices.return
Send a person a return kit for the laptops device management lists for them
POST/api/v1/manage/devices/return
- Write
- Permission devices.return
- Needs a requestKey
- Needs confirm set to devices.return
const result = await shuffl.devices.return({
"personId": "<personId>",
"requestKey": "a-new-unique-key",
"confirm": "devices.return"
});Request fields (3)
- personId string required
- requestKey string required1 to 128 characters
- confirm "devices.return" 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
- shipment object required
- addressSummary null | string required
- carrier null | string required
- createdAt string required
- deliveredAt null | string required
- devices number required
- direction "order" | "return" required
- errorCode null | string required
- expectedBy null | string required
- fromPlaybook boolean required
- id string required
- model null | string required
- person object required
- id string required
- name string required
- provider string required
- providerName string required
- receivedAt null | string required
- skuId null | string required
- status "cancelled" | "delivered" | "failed" | "in_transit" | "ordered" | "prepared" | "received" | "shipped" required
- statusLabel string required
- trackingCode null | string required
- trackingUrl null | string required
- updatedAt string required
- status "approved" | "cancelled" | "declined" | "failed" | "prepared" | "resolved" | "running" | "submitted" | "unknown" required
- summary string required
- shipment object required
devices.sync
Read the fleet from device management now
POST/api/v1/manage/devices/sync
- Write
- Permission devices.sync
- Needs a requestKey
- Needs confirm set to devices.sync
const result = await shuffl.devices.sync({
"connectionId": "<connectionId>",
"confirm": "devices.sync",
"requestKey": "a-new-unique-key"
});Request fields (3)
- connectionId string required
- confirm "devices.sync" 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
- devices number required
- issues number required
- matched number required
devices.wipe
Wipe a device through device management, confirmed with the last four characters of its serial
POST/api/v1/manage/devices/wipe
- Write
- Permission devices.wipe
- Needs a requestKey
- Needs confirm set to devices.wipe
const result = await shuffl.devices.wipe({
"confirmSerial": "<confirmSerial>",
"deviceId": "<deviceId>",
"requestKey": "a-new-unique-key",
"confirm": "devices.wipe"
});Request fields (4)
- confirmSerial string required
- deviceId string required
- requestKey string required1 to 128 characters
- confirm "devices.wipe" 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
- device object required
- canLock boolean required
- canWipe boolean required
- encrypted null | false | true required
- enrolledAt null | string required
- id string required
- issues object[] required
- code "encryption_off" | "firewall_off" | "not_checked_in" | "os_update" | "passcode" required
- fix string required
- label string required
- lastCheckInAt null | string required
- lockedAt null | string required
- match "email" | "manual" | "none" required
- model null | string required
- name string required
- osVersion null | string required
- person null | object required
- id string required
- name string required
- platform "android" | "ios" | "linux" | "mac" | "other" | "windows" required
- platformLabel string required
- provider string required
- providerName string required
- serialLast4 null | string required
- status "active" | "locked" | "removed" | "wiped" required
- statusLabel string required
- wipedAt null | string required
- summary string required
- unlockPin null | string required
- device object required