Create a ABM provisioning request using device serial number
⚠️ Apple devices only.
Creates an ABM provisioning request for one or more devices using device serial numbers supplied in a JSON request body, pre-assigning them to a blueprint and optionally a group.
About Create ABM Provisioning Request (Serial Number)
This endpoint is the JSON-body alternative to the CSV upload path for seamless ABM provisioning. It accepts a SeamlessRequestBody containing the assigned_blueprint_id, an optional group_id, and a seamless_info object with unique_ids (comma-separated device identifiers) and unique_id_type. On success it returns a single SeamlessRequest record. This is the preferred method for programmatic or API-driven provisioning workflows where device identifiers are available at runtime rather than in a pre-prepared file. For bulk provisioning from an exported device list, use POST /api/v2/seamless/upload.
Key Fields
assigned_blueprint_id (body, required) — UUID of the blueprint to assign to the devices
group_id (body, optional) — UUID of the group to assign the devices to
seamless_info.unique_ids (body) — Comma-separated device identifiers (e.g., serial numbers)
seamless_info.unique_id_type (body) — Integer type code identifying the identifier format
id (response) — SeamlessRequest UUID
assigned_blueprint_id (response) — Confirmed blueprint assignment
group_id (response) — Confirmed group assignment (nullable)
Common Use Cases
Programmatically pre-assigning a specific device to a blueprint as part of an automated provisioning pipeline
Registering a known device serial number for zero-touch enrollment without preparing a CSV file
Integrating ABM provisioning into a device lifecycle management workflow driven by an external system
Best Practices
Ensure assigned_blueprint_id references a published blueprint version — assigning an unpublished blueprint will result in a device that cannot complete hands-free enrollment
Use comma-separated unique_ids to provision multiple devices in a single call rather than making repeated individual requests
For large-scale bulk provisioning, POST /api/v2/seamless/upload with a CSV may be more practical
Request body
Example request
{
"assigned_blueprint_id": "3e41fd18-d53d-4673-a10a-23089cbb6b73",
"group_id": "3e41fd18-d53d-4673-a10a-23089cbb6b73",
"seamless_info": {
"unique_ids": "3e41fd18-d53d-4673-a10a-23089cbb6b73,3e41fd18-d53d-4673-a10a-23089cbb6b73",
"unique_id_type": 2
}
}Response
Seamless request successfully created.