تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
يُحاط معرّفات الأجهزة في DeviceIdentifier لتحديد هوية
الجهاز المصنّع. يوضّح هذا المستند كيفية التعامل مع المعرّفات في واجهة برمجة التطبيقات
zero-touch enrollment API.
يجمع DeviceIdentifier البيانات الوصفية للأجهزة أو المعرّفات المطلوبة لتحديد جهاز معيّن بشكلٍ فريد.
تُدرِج مؤسستك قيم معرّفات الأجهزة عند تحميل data
الأجهزة من خلال البوابة أو طلب بيانات من واجهة برمجة التطبيقات.
حقول مطلوبة
الأجهزة التي تعمل بنظام التشغيل Android
يتعرّف برنامج "إعداد الأجهزة الجوّالة للمؤسسات دفعةً واحدة" عادةً على الأجهزة من خلال أرقام تعريف IMEI (أو MEID)
للمودم الخلوي. لتتوافق مع الأجهزة التي لا تتضمّن أجهزة مودم خلوي، مثل
الأجهزة اللوحية، يمكنك أيضًا تحديد الأجهزة باستخدام مجموعة مختلفة من الحقول. يوضّح الجدول التالي الحقول التي يمكنك استخدامها لكل نوع من أنواع الأجهزة:
المُعرّف
شبكة الجوّال
شبكة Wi‑Fi فقط
ملاحظات
hardware_id
يجب أن يحتوي هذا الحقل على رقم IMEI أو MEID. تتحقّق ميزة "إعداد الأجهزة الجوّالة للمؤسسات بدون تلامس" من صحة تنسيق قيم IMEI عند تمريرها في مَعلمات واجهة برمجة التطبيقات.
hardware_id2
يجب أن يكون هذا الحقل رقم IMEI أو MEID ثانٍ. تتحقّق ميزة "إعداد الأجهزة الجوّالة للمؤسسات بدون تلامس" من صحة تنسيق قيم IMEI عند تمريرها في مَعلمات واجهة برمجة التطبيقات. للحصول على معلومات عن الأجهزة التي تحتوي على أكثر من مودم خلوي واحد، يُرجى الاطّلاع على الأجهزة المزوّدة بشريحتَي SIM.
serialNumber
الرقم التسلسلي للجهاز المحدّد من الشركة المصنّعة الرقم التسلسلي حسّاس لحالة الأحرف وهو القيمة نفسها التي يتم عرضها من Build.getSerial().
model
يجب أن تتطابق قيمة طراز الجهاز مع القيمة المدمجة للجهاز التي يتم عرضها من Build.MODEL. اطّلِع على مرجع أسماء الطُرز للحصول على قائمة بالقيم المسموح بها لكل شركة تصنيع.
manufacturer
يجب أن تتطابق قيمة الحقل manufacturer مع القيمة المدمجة للجهاز التي يتم عرضها من Build.MANUFACTURER. راجِع مرجع أسماء الشركات المصنّعة للحصول على مزيد من المعلومات.
في حال تسجيل الرقم التسلسلي، يجب أيضًا تسجيل الشركة المصنّعة والطراز ل ensure zero-touch is able to detect the device.
الأجهزة المزوّدة بشريحتَي SIM
يشتمل أي جهاز بشريحتَي SIM على مودمَين منفصلَين ويكون له رقما IMEI. في حال تسجيل رقم IMEI واحد فقط، يُفضَّل استخدام الرقم الأصغر من رقمَي IMEI لأنّ ميزة "إعداد الأجهزة الجوّالة للمؤسسات دفعةً واحدة" تعمل بشكل أكثر موثوقية مع الرقم الأصغر من رقمَي IMEI. لزيادة
الموثوقية، يمكنك أيضًا تسجيل رقم IMEI الآخر أو الرقم التسلسلي
والشركة المصنّعة والطراز.
لعرض رقم IMEI الثاني في منصة "إعداد الأجهزة الجوّالة للمؤسسات دفعةً واحدة"، اتّبِع الخطوات التالية:
انتقِل إلى علامة التبويب الأجهزة.
في أعلى يسار الصفحة، بجانب الزر إضافة جهاز، انقر على رمز النقاط الثلاث
more_vert.
اختَر تخصيص الجدول.
ضَع علامة في مربّع الاختيار IMEI2.
انقر على حفظ.
أجهزة ChromeOS
بالنسبة إلى أجهزة ChromeOS، تكون مجموعة المعرّفات المطلوبة متطابقة للأجهزة المزوّدة بشبكة الجوّال
والأجهزة المزوّدة بشبكة Wi-Fi فقط:
المُعرّف
ملاحظات
serialNumber
الرقم التسلسلي المحدّد من الشركة المصنّعة
للجهاز
model
يجب أن تتطابق قيمة طراز الجهاز مع القيمة
المضمّنة في الجهاز. يمكنك الاطّلاع على قائمة قيم طُرز ChromeOS
للرجوع إليها.
// Create a DeviceIdentifier.DeviceIdentifierdeviceIdentifier=newDeviceIdentifier();deviceIdentifier.setImei("123456789012347");// Perform the search using the zero-touch enrollment API.FindDevicesByDeviceIdentifierRequestbody=newFindDevicesByDeviceIdentifierRequest();body.setLimit(1L);body.setDeviceIdentifier(deviceIdentifier);FindDevicesByDeviceIdentifierResponseresponse=service.partners().devices().findByIdentifier(PARTNER_ID,body).execute();
NET.
// Create a DeviceIdentifier.vardeviceIdentifier=newDeviceIdentifier{Imei="123456789012347"};// Perform the search using the zero-touch enrollment API.varbody=newFindDevicesByDeviceIdentifierRequest{Limit=1,DeviceIdentifier=deviceIdentifier};varresponse=service.Partners.Devices.FindByIdentifier(body,PartnerId).Execute();
Python
# Create a DeviceIdentifier.device_identifier={'imei':'123456789012347'}# Perform the search using the zero-touch enrollment API.response=service.partners().devices().findByIdentifier(partnerId=PARTNER_ID,body={'deviceIdentifier':device_identifier, \
'limit':1}).execute()
يوضِّح المقتطف التالي كيفية إنشاء معرّف جهاز باستخدام رقم
تسلسلي:
Java
// Create a device identifier to find a Wi-Fi-only device.DeviceIdentifierdeviceIdentifier=newDeviceIdentifier();deviceIdentifier.setManufacturer("Honeywell");deviceIdentifier.setModel("VM1A");deviceIdentifier.setSerialNumber("ABcd1235678");
NET.
// Create a device identifier to find a Wi-Fi-only device.vardeviceIdentifier=newDeviceIdentifier{Manufacturer="Honeywell",Model="VM1A",SerialNumber="ABcd1235678"};
Python
# Create a device identifier to find a Wi-Fi-only device.device_identifier={'manufacturer':'Honeywell', \
'model':'VM1A','serialNumber':'ABcd1235678'}
تاريخ التعديل الأخير: 2025-07-25 (حسب التوقيت العالمي المتفَّق عليه)
[null,null,["تاريخ التعديل الأخير: 2025-07-25 (حسب التوقيت العالمي المتفَّق عليه)"],[[["\u003cp\u003eA \u003ccode\u003eDeviceIdentifier\u003c/code\u003e is used to uniquely identify a hardware device and is distinct from \u003ccode\u003edeviceId\u003c/code\u003e, which refers to a record in the API.\u003c/p\u003e\n"],["\u003cp\u003eFor Android devices, identification commonly relies on IMEI or MEID numbers for cellular devices, while Wi-Fi-only devices can use serial number, model, and manufacturer.\u003c/p\u003e\n"],["\u003cp\u003eDual-SIM devices have two IMEI numbers, and while either can be used, it is recommended to register the lowest number and include other information for increased reliability.\u003c/p\u003e\n"],["\u003cp\u003eChromeOS devices require the manufacturer's serial number, device model, and the Attested Device ID for identification.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eDeviceIdentifier\u003c/code\u003e is used to find or claim devices, and the specific required fields vary depending on the device type.\u003c/p\u003e\n"]]],["`DeviceIdentifier` represents hardware for zero-touch enrollment, using hardware IDs like IMEI, serial number, model, and manufacturer. Organizations use these values when uploading device data. Android devices use IMEI/MEID for cellular models, or serial number, model, and manufacturer for Wi-Fi only. Dual-SIM devices have two IMEIs. ChromeOS devices require serial number, model, and `chromeOsAttestedDeviceId`. To find a device, a `DeviceIdentifier` object with required fields is used in the `partners.devices.findByIdentifier` API call.\n"],null,["# Identifiers\n\nA [`DeviceIdentifier`](/zero-touch/reference/reseller/rest/v1/partners.devices#DeviceIdentifier) encapsulates hardware IDs to identify a\nmanufactured device. This document explains how to work with identifiers in the\nzero-touch enrollment API.\n\nA `DeviceIdentifier` combines hardware metadata or IDs required to uniquely\nidentify a device.\n\nYour organization includes the device identifier values when uploading device\ndata through the portal or calling the API.\n| **Important:** a `DeviceIdentifier` represents a hardware device. It shouldn't be confused with `deviceId`, which represents a record in the API.\n\nRequired fields\n---------------\n\n### Android devices\n\nZero-touch enrollment typically identifies devices by the IMEI (or MEID)\ncellular modem IDs. To support devices without cellular modems, such as\ntablets, you can also identify devices using a different set of fields. The\nfollowing table shows the fields you can use for each type of device:\n\n| Identifier | Cellular | Wi‑Fi only | Notes |\n|----------------|----------|------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `hardware_id` | | | This field must be an IMEI or MEID number. Zero-touch enrollment validates the format of IMEI values when you pass them in API arguments. |\n| `hardware_id2` | | | This field must be a second IMEI or MEID number. Zero-touch enrollment validates the format of IMEI values when you pass them in API arguments. For information on devices with more than one cellular modem, see [Dual-SIM devices](#dual-sim). |\n| `serialNumber` | | | The manufacturer's serial number for the device. The serial number is case sensitive and is the same value that's returned from [`Build.getSerial()`](https://developer.android.com/reference/android/os/Build.html#getSerial()). |\n| `model` | | | The device model value must match the device's built-in value returned from [`Build.MODEL`](https://developer.android.com/reference/android/os/Build.html#MODEL). See the [model names](/zero-touch/resources/manufacturer-names#model-names) reference for a list of allowed values for each manufacturer. |\n| `manufacturer` | | | The `manufacturer` field value must match the device's built-in value returned from [`Build.MANUFACTURER`](https://developer.android.com/reference/android/os/Build.html#MANUFACTURER). See the [manufacturer names](/zero-touch/resources/manufacturer-names) reference for further information. |\n\nIf registering serial number you must also register manufacturer and model to\nensure zero-touch is able to detect the device.\n\n#### Dual-SIM devices\n\nA dual-SIM device includes two discrete modems and has two IMEI numbers. If\nregistering just one IMEI, prefer the numerically lowest IMEI number as\nzero-touch enrollment works more reliably with the lowest IMEI. To increase\nreliability you can additionally register the other IMEI, or the serial number,\nmanufacturer and model.\n\nTo display the second IMEI in the zero-touch portal:\n\n1. Go to the **Devices** tab.\n2. On the upper right corner, beside the **Add Device** button, click the three dots more_vert.\n3. Select **Customize table**.\n4. Select the checkbox for **IMEI2**.\n5. Click **Save**.\n\n### ChromeOS devices\n\nFor ChromeOS devices the set of required identifiers is the same for cellular\nand Wi-Fi only devices:\n\n| Identifier | Notes |\n|----------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `serialNumber` | The manufacturer's serial number for the device. |\n| `model` | The device model value must match the device's built-in value. See the [list of ChromeOS model values](/zero-touch/resources/chromeos-models) for reference. |\n| `chromeOsAttestedDeviceId` | The Attested Device ID. See the [list of compatible ChromeOS devices](https://support.google.com/chrome/a/answer/10130175?#identify_compatible&zippy=%2Cidentify-compatible-chrome-devices) for reference. |\n\nRefer to a device\n-----------------\n\nUse a `DeviceIdentifier` when finding or claiming devices. You need to include\nthe required fields specified for the type of device.\n\nThe following snippet shows an IMEI number used to search for a specific device\nby calling [`partners.devices.findByIdentifier`](/zero-touch/reference/reseller/rest/v1/partners.devices/findByIdentifier): \n\n### Java\n\n```java\n// Create a DeviceIdentifier.\nDeviceIdentifier deviceIdentifier = new DeviceIdentifier();\ndeviceIdentifier.setImei(\"123456789012347\");\n\n// Perform the search using the zero-touch enrollment API.\nFindDevicesByDeviceIdentifierRequest body = new FindDevicesByDeviceIdentifierRequest();\nbody.setLimit(1L);\nbody.setDeviceIdentifier(deviceIdentifier);\n\nFindDevicesByDeviceIdentifierResponse response = service\n .partners()\n .devices()\n .findByIdentifier(PARTNER_ID, body)\n .execute();\n```\n\n### .NET\n\n```c#\n// Create a DeviceIdentifier.\nvar deviceIdentifier = new DeviceIdentifier\n{\n Imei = \"123456789012347\"\n};\n\n// Perform the search using the zero-touch enrollment API.\nvar body = new FindDevicesByDeviceIdentifierRequest\n{\n Limit = 1,\n DeviceIdentifier = deviceIdentifier\n};\nvar response = service.Partners.Devices.FindByIdentifier(body, PartnerId).Execute();\n```\n\n### Python\n\n```python\n# Create a DeviceIdentifier.\ndevice_identifier = {'imei':'123456789012347'}\n\n# Perform the search using the zero-touch enrollment API.\nresponse = service.partners().devices().findByIdentifier(\n partnerId=PARTNER_ID, body={'deviceIdentifier':device_identifier, \\\n 'limit':1}).execute()\n```\n\nThe following snippet shows how to create a device identifier with a serial\nnumber: \n\n### Java\n\n```java\n// Create a device identifier to find a Wi-Fi-only device.\nDeviceIdentifier deviceIdentifier = new DeviceIdentifier();\ndeviceIdentifier.setManufacturer(\"Honeywell\");\ndeviceIdentifier.setModel(\"VM1A\");\ndeviceIdentifier.setSerialNumber(\"ABcd1235678\");\n```\n\n### .NET\n\n```c#\n// Create a device identifier to find a Wi-Fi-only device.\nvar deviceIdentifier = new DeviceIdentifier\n{\n Manufacturer = \"Honeywell\",\n Model = \"VM1A\",\n SerialNumber = \"ABcd1235678\"\n};\n```\n\n### Python\n\n```python\n# Create a device identifier to find a Wi-Fi-only device.\ndevice_identifier = {'manufacturer':'Honeywell', \\\n 'model':'VM1A', 'serialNumber':'ABcd1235678'}\n```\n\nLearn more\n----------\n\n- To learn more about hardware identifiers, see the [API reference documentation](/zero-touch/reference/reseller/rest/v1/partners.devices#DeviceIdentifier) for `DeviceIdentifier`.\n- To see a list of allowed manufacturer names and device models, review the [manufacturer names](/zero-touch/resources/manufacturer-names) reference.\n- To see a list of compatible ChromeOS devices, see the [ChromeOs Help Center](https://support.google.com/chrome/a/answer/10130175?#identify_compatible&zippy=%2Cidentify-compatible-chrome-devices)"]]