AI-generated Key Takeaways
-
CompanyReferenceuniquely identifies a company using a server-assignedcompanyIdand specifies thevendoras eitherSamsungorGoogle. -
A
Companyobject includes acompanyReference,companyName(displayed in the zero-touch enrollment portal), andvendorParamsfor additional vendor-specific data. -
A
Deviceis identified by a server-assigneddeviceId, hardwaredeviceIdentifier, associatedcustomercompany, and allows forvendorParams. -
DeviceIdentifierrequires different fields depending on the device type: Samsung devices need one of IMEI, serialNumber, or meid, while other devices require IMEI and manufacturer for cellular and serialNumber, manufacturer, and model for Wi-Fi-only. -
An
Operationrepresents an asynchronous API call's status, which can beIN_PROGRESS,COMPLETE,COMPLETE_WITH_ERRORS, orFAILED, and includes anoperationId,operationType, and potentially a list ofdeviceErrors.
CompanyReference
Uniquely identifies a company.
| Field name | Data type | Description |
|---|---|---|
companyId |
string |
Output only. The ID of the company, assigned by the server. |
vendor |
enum |
Samsung or Google. |
Company
Represents a company.
| Field name | Data type | Description |
|---|---|---|
companyReference |
object(CompanyReference) |
Company reference object. |
companyName |
string |
The name of the company. For example XYZ Corp. Displayed to the company's employees in the zero-touch enrollment portal. |
vendorParams |
map |
Extra fields in vendor-specified key-value pairs. |
Device
An Android device registered for enrollment.
| Field name | Data type | Description |
|---|---|---|
deviceId |
string |
Output only. The ID of the device, assigned by the server. |
deviceIdentifier |
object(DeviceIdentifier) |
The hardware IDs that identify a manufactured device. |
customer |
object(CompanyReference) |
The company IDs that identify which company the devices is assigned to. |
orderNumber |
string |
The order number. |
vendorParams |
map |
Extra fields in vendor-specified key-value pairs. |
DeviceIdentifier
Encapsulates hardware and product IDs to identify a manufacturer's device.
Samsung devices require one of the following fields:
IMEIserialNumbermeid
All other fields, like model, are ignored.
For all other Android devices:
- Cellular devices require
imeiandmanufacturer. - WiFi-only devices require
serialNumber,manufacturer, andmodel.
| Field name | Data type | Description |
|---|---|---|
imei |
string |
The device's IMEI number. Validated on input. |
serialNumber |
string |
The manufacturer's serial number for the device. This value might not be unique across different device models. |
meid |
string |
The device's MEID number. |
manufacturer |
string |
The device manufacturer's name. Matches the device's built-in value returned from android.os.Build.MANUFACTURER. Allowed values are listed in manufacturers. |
model |
string |
The device model's name. Matches the device's built-in value returned from android.os.Build.MODEL. Allowed values are listed in models. |
Operation
This resource contains the status of an asynchronous API call. There are four possible statuses:
IN_PROGRESS: The operation is in progress.COMPLETE: All devices were successfully processed.COMPLETE_WITH_ERRORS: The operation was processed, but some errors occurred. All errors are listed in thedeviceErrorslist.FAILED: The operation failed and nooperationIdis returned.
| Field name | Data type | Description |
|---|---|---|
operationId |
string |
The operation ID, prefixed with samsung/ or google/. If empty,state is FAILED. |
operationType |
enum(operationType) |
The operation type: CLAIM_DEVICES or UNCLAIM_DEVICES. |
state |
enum(operationState) |
The operation state: IN_PROGRESS, COMPLETE, COMPLETE_WITH_ERRORS, FAILED. |
deviceErrors |
List of object(DeviceOperationError) |
List of device operation errors. |
vendorParams |
map |
Extra fields in vendor-specified key-value pairs. |
DeviceOperationError
A device-specific error in an Operation. Each resource contains the same
deviceId and deviceIdentifier as the request that started the operation.
| Field name | Data type | Description |
|---|---|---|
deviceId |
string |
Output only. The ID of the device, assigned by the server. |
deviceIdentifier |
object(DeviceIdentifier) |
The hardware IDs that identify a manufactured device. |
error |
object(Error) |
The device operation error. |
CommonException
An exception that can be thrown by all synchronous APIs.
| Property name | Value | Description |
|---|---|---|
error |
object(Error) |
Synchronous operation error. |
Error
An object containing details about an error.
| Property name | Value | Description |
|---|---|---|
code |
enum(ErrorCode) |
The error code. For example, INVALID_REQUESET or PERMISSION_DENIED |
message |
string |
The error message. |
vendorMsg |
string |
A detailed explanation of the error from the vendor. |
errorId |
string |
The internal error identifier. |
vendorParams |
map |
Extra fields in vendor-specified key-value pairs. |
ErrorCode
Common errors.
| Enum | Description |
|---|---|
INVALID_PARAM_DEFAULT |
Unspecified invalid input parameter. Look at the vendorMsg to get more details. |
INVALID_PAGE_TOKEN |
The pageToken that was provided is invalid. |
INVALID_CUSTOMER_ID |
The customerId provided is invalid. |
INVALID_DEVICE_IMEI |
Invalid IMEI. |
INVALID_DEVICE_MEID |
Invalid MEID. |
INVALID_DEVICE_SERIAL |
Invalid Serial number. |
INVALID_OPERATION_ID |
The operationId provided is invalid. |
INVALID_RESELLER_ID |
The resellerId provided is invalid. |
INVALID_MANUFACTURER |
The manufacturer provided is invalid / unsupported. |
INVALID_IDENTIFIER_SET |
The set of identifiers provided is not sufficient for the request. See DeviceIdentifier for more information on allowed identifier sets. |
INVALID_MODEL |
The model provided is invalid / unsupported. |
INVALID_DEVICE_ID |
The deviceId provided is invalid. |
INVALID_DEVICE |
The provided device does not exist. This is a Samsung specific error code. |
DUPLICATE_DEVICE |
The device was previously claimed to the same customer. No corrective action required. |
DEVICE_UPLOAD_COUNT_EXCEEDED |
The request contains more devices that the limit (currently 100k). |
AUTHORIZATION_FAIL |
You do not have access to a given resource (e.g. device, customer), or the resource does not exist. Look at vendorMsg to get more details. |
INTERNAL_SERVER_ERROR |
Unspecified internal server error. Look at vendorMsg to get more details. These requests can be retried depending on the nature of the server error. |
NOT_IMPLEMENTED |
The request method is not supported by the server. |