v1

latestOpenAPI 3.0.1Apache 2.02026-08-063494581.6 MB
device_onboarding_DEP Sync Request

Create a DEP sync request

⚠️ Apple devices only. DEP (Device Enrollment Program) is an Apple provisioning technology, now part of Apple Business Manager.

Triggers a new DEP sync request, instructing Esper to pull the latest device assignments from Apple's DEP service for the tenant. About Create DEP Sync Request This endpoint initiates a DEP sync — the process by which Esper fetches the current set of Apple-assigned devices from Apple Business Manager and updates the tenant's device enrollment records accordingly. The request body is an empty JSON object; no parameters are required. The sync runs asynchronously: the 200 response returns a DEPSyncRequest record with a QUEUED or initial status, and the sync progresses through INPROGRESS to COMPLETE, SUCCESS, or FAILURE. Poll GET /api/onboarding/v0/depsyncs/{id}/ to track progress, or use GET /api/onboarding/v0/depsyncs/ to review status across all sync requests.

Key Fields

Request body — Empty JSON object ({})

id (response) — UUID of the newly created DEP sync request

status (response) — Initial status: QUEUED or INPROGRESS

created_by / created_at — Audit fields

Common Use Cases

Triggering a DEP sync after adding new devices to Apple Business Manager to make them available in Esper

Forcing a refresh of device enrollment assignments following an ABM organizational change

Programmatically scheduling regular DEP syncs as part of a device onboarding pipeline

Best Practices

Avoid triggering DEP syncs in rapid succession — syncs run asynchronously and queuing multiple requests simultaneously is unlikely to produce faster results

After triggering, poll GET /api/onboarding/v0/depsyncs/{id}/ using the returned id to track the sync to completion before taking dependent actions

For GET responses with full failure detail (including per-device failure reasons), use GET /api/onboarding/v0/depsyncs/{id}/ — the POST response uses the lighter DEPSyncRequest schema without device-level failure data

Workflow

Trigger the sync with an empty JSON POST body

Capture the returned id

Poll GET /api/onboarding/v0/depsyncs/{id}/ until status reaches SUCCESS, COMPLETE, or FAILURE

post/onboarding/v0/depsyncs/

Request body

object required

Response

DEP sync request successfully created.

codeinteger
messagestring