موارد المطورين
أجهزتك. واجهة واحدة.
اربط تطبيقك بالأجهزة عبر IoT Devices. ابدأ بطلب قراءة، ثم أضف الصلاحيات التي يحتاجها عملك.
HTTPS · الواجهة v1
ابدأ بمنظومة أجهزتك.
اطلب مفتاح API لمنظومتك. يرتبط كل مفتاح بمساحة أجهزة واحدة وصلاحيات محددة. احتفظ به في خادم تطبيقك.
https://iotdevices.org/api/iot/v1curl 'https://iotdevices.org/api/iot/v1/device/list?page_index=1&page_size=10' \
-H 'Authorization: Bearer YOUR_API_KEY'استخدم ترويسة Authorization: Bearer. القراءة تقبل GET أو JSON POST، والتغييرات تتطلب JSON POST. اترك ثانية بين طلبات المنظومة نفسها.
المعرّفات والأوامر في الأمثلة توضيحية. راجع إمكانات المنتج واستبدلها بقيم منظومتك.
طلب الوصول إلى الواجهةالواجهات المطابقة: 29 / 29
الأجهزة
GETعرض الأجهزة/device/list
الصلاحية المطلوبة: read
| الاسم | مطلوب | الوصف |
|---|---|---|
q | لا | البحث بمعرّف الجهاز أو اسمه؛ يُتجاهل عند تحديد tag. |
product | لا | التصفية بمعرّف واحد أو أكثر. |
tag | لا | التصفية بمعرّف واحد أو أكثر. |
group | لا | التصفية بمعرّف واحد أو أكثر. |
page_index | لا | رقم الصفحة، بدءًا من 1. |
page_size | لا | عدد النتائج في الصفحة: 10 أو 20 أو 30 أو 50.10 · 20 · 30 · 50 |
curl 'https://iotdevices.org/api/iot/v1/device/list?page_index=1&page_size=10' \
-H 'Authorization: Bearer YOUR_API_KEY'GETتفاصيل الجهاز/device/info
الصلاحية المطلوبة: read
| الاسم | مطلوب | الوصف |
|---|---|---|
device | نعم | معرّفات الأجهزة مفصولة بفواصل أو خطوط عمودية؛ بحد أقصى 100. |
curl 'https://iotdevices.org/api/iot/v1/device/info?device=1001' \
-H 'Authorization: Bearer YOUR_API_KEY'POSTتحديث وسوم الأجهزة/device/tag
الصلاحية المطلوبة: manage
أرسل add أو del أو كليهما؛ تُتجاهل عمليات الربط المكررة.
| الاسم | مطلوب | الوصف |
|---|---|---|
device | نعم | معرّفات الأجهزة مفصولة بفواصل أو خطوط عمودية؛ بحد أقصى 100. |
add | لا | معرّفات الوسوم المراد إضافتها. |
del | لا | معرّفات الوسوم المراد إزالتها. |
curl -X POST 'https://iotdevices.org/api/iot/v1/device/tag' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"device":"1001","add":"10"}'POSTنقل الأجهزة إلى مجموعة/device/group
الصلاحية المطلوبة: manage
| الاسم | مطلوب | الوصف |
|---|---|---|
device | نعم | معرّفات الأجهزة مفصولة بفواصل أو خطوط عمودية؛ بحد أقصى 100. |
group | نعم | معرّف المجموعة المستهدفة؛ 0 يلغي التعيين. |
curl -X POST 'https://iotdevices.org/api/iot/v1/device/group' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"device":"1001","group":10}'GETسجلات الجهاز/device/log
الصلاحية المطلوبة: read
| الاسم | مطلوب | الوصف |
|---|---|---|
device | نعم | معرّف جهاز واحد. |
date | لا | تاريخ بصيغة YYYY-MM-DD؛ الافتراضي هو اليوم. |
type | لا | أنواع السجل مفصولة بفواصل: connect, disconnect, subscribe, unsubscribe, register, ota, control, event. |
page_index | لا | رقم الصفحة، بدءًا من 1. |
page_size | لا | عدد النتائج في الصفحة: 10 أو 20 أو 30 أو 50.10 · 20 · 30 · 50 |
curl 'https://iotdevices.org/api/iot/v1/device/log?device=1001&page_size=10' \
-H 'Authorization: Bearer YOUR_API_KEY'الأوامر
POSTإرسال أمر إلى الجهاز/device/order
الصلاحية المطلوبة: control
القبول يؤكد إرسال الأمر فقط. تحقّق من حالة الجهاز أو الأحداث قبل تأكيد التنفيذ.
| الاسم | مطلوب | الوصف |
|---|---|---|
device | نعم | معرّفات الأجهزة مفصولة بفواصل أو خطوط عمودية؛ بحد أقصى 100. |
order | نعم | كائن JSON يتضمن الأوامر التي يدعمها طراز الجهاز. |
gateway | لا | معرّفات البوابات عند الحاجة إلى التمرير؛ بحد أقصى 5. |
curl -X POST 'https://iotdevices.org/api/iot/v1/device/order' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"device":"1001","order":{"power":1}}'الإعدادات
GETقراءة إعدادات الجهاز/config/info
الصلاحية المطلوبة: read
| الاسم | مطلوب | الوصف |
|---|---|---|
device | نعم | معرّف جهاز واحد. |
type | نعم | قسم الإعدادات.basic · device · network · mode |
curl 'https://iotdevices.org/api/iot/v1/config/info?device=1001&type=basic' \
-H 'Authorization: Bearer YOUR_API_KEY'POSTكتابة إعدادات الجهاز/config
الصلاحية المطلوبة: manage
القبول يؤكد إرسال الأمر فقط. تحقّق من حالة الجهاز أو الأحداث قبل تأكيد التنفيذ.
| الاسم | مطلوب | الوصف |
|---|---|---|
device | نعم | معرّفات الأجهزة مفصولة بفواصل أو خطوط عمودية؛ بحد أقصى 100. |
config | نعم | خصائص الإعداد التي يدعمها الجهاز. |
curl -X POST 'https://iotdevices.org/api/iot/v1/config' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"device":"1001","config":{"relay1":"1"}}'البرامج الثابتة
GETعرض البرامج الثابتة المتاحة/ota/firmware
الصلاحية المطلوبة: read
| الاسم | مطلوب | الوصف |
|---|---|---|
device | نعم | معرّف جهاز واحد. |
curl 'https://iotdevices.org/api/iot/v1/ota/firmware?device=1001' \
-H 'Authorization: Bearer YOUR_API_KEY'POSTترقية البرنامج الثابت/ota
الصلاحية المطلوبة: firmware
القبول يؤكد إرسال الأمر فقط. تحقّق من حالة الجهاز أو الأحداث قبل تأكيد التنفيذ.
| الاسم | مطلوب | الوصف |
|---|---|---|
device | نعم | معرّفات الأجهزة مفصولة بفواصل أو خطوط عمودية؛ بحد أقصى 100. |
firmware | لا | للجهاز الواحد، أرسل name وsize من قائمة البرامج الثابتة. الأجهزة المتعددة تستخدم أحدث إصدار. |
curl -X POST 'https://iotdevices.org/api/iot/v1/ota' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"device":"1001","firmware":{"name":"VERSION_FROM_FIRMWARE_LIST","size":"300.68"}}'المنتجات
GETالبحث عن المنتجات/product/list
الصلاحية المطلوبة: read
| الاسم | مطلوب | الوصف |
|---|---|---|
q | نعم | البحث بمعرّف المنتج أو اسمه أو طرازه. |
page_index | لا | رقم الصفحة، بدءًا من 1. |
page_size | لا | عدد النتائج في الصفحة: 10 أو 20 أو 30 أو 50.10 · 20 · 30 · 50 |
curl 'https://iotdevices.org/api/iot/v1/product/list?q=switch&page_size=10' \
-H 'Authorization: Bearer YOUR_API_KEY'GETإمكانات المنتج/product/detail
الصلاحية المطلوبة: read
| الاسم | مطلوب | الوصف |
|---|---|---|
id | نعم | معرّف المنتج من قائمة المنتجات. |
curl 'https://iotdevices.org/api/iot/v1/product/detail?id=100' \
-H 'Authorization: Bearer YOUR_API_KEY'GETمنتجات منظومتك/product/list/stock
الصلاحية المطلوبة: read
لا تُطلب معلمات.
curl 'https://iotdevices.org/api/iot/v1/product/list/stock' \
-H 'Authorization: Bearer YOUR_API_KEY'المجموعات
GETعرض المجموعات/group/list
الصلاحية المطلوبة: read
| الاسم | مطلوب | الوصف |
|---|---|---|
format | لا | قائمة مسطحة أو شجرة متداخلة.list · tree |
page_index | لا | رقم الصفحة، بدءًا من 1. |
page_size | لا | عدد النتائج في الصفحة: 10 أو 20 أو 30 أو 50.10 · 20 · 30 · 50 |
curl 'https://iotdevices.org/api/iot/v1/group/list?format=tree' \
-H 'Authorization: Bearer YOUR_API_KEY'قيد التحققإنشاء مجموعة
معلمات هذه الواجهة قيد التحقق وهي غير مفعّلة. تواصل معنا إذا احتاجها مشروعك.
قيد التحققتحديث مجموعة
معلمات هذه الواجهة قيد التحقق وهي غير مفعّلة. تواصل معنا إذا احتاجها مشروعك.
POSTحذف المجموعات/group/delete
الصلاحية المطلوبة: manage
| الاسم | مطلوب | الوصف |
|---|---|---|
group | نعم | معرّفات المجموعات المراد حذفها؛ بحد أقصى 100. تبقى الأجهزة محفوظة. |
curl -X POST 'https://iotdevices.org/api/iot/v1/group/delete' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"group":"10"}'POSTالتحكم في مجموعة/group/control
الصلاحية المطلوبة: control
القبول يؤكد إرسال الأمر فقط. تحقّق من حالة الجهاز أو الأحداث قبل تأكيد التنفيذ.
| الاسم | مطلوب | الوصف |
|---|---|---|
group | نعم | معرّف مجموعة واحدة. |
order | لا | كائن JSON يتضمن الأوامر التي يدعمها طراز الجهاز. |
action | لا | معرّف إجراء موجود. |
curl -X POST 'https://iotdevices.org/api/iot/v1/group/control' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"group":"10","order":{"power":1}}'الوسوم
قيد التحققعرض الوسوم
معلمات هذه الواجهة قيد التحقق وهي غير مفعّلة. تواصل معنا إذا احتاجها مشروعك.
POSTإنشاء وسم/tag/create
الصلاحية المطلوبة: manage
| الاسم | مطلوب | الوصف |
|---|---|---|
title | نعم | حتى 32 حرفًا صينيًا أو إنجليزيًا أو رقمًا أو شرطة سفلية. |
remark | لا | ملاحظة اختيارية. |
curl -X POST 'https://iotdevices.org/api/iot/v1/tag/create' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"title":"room_100"}'قيد التحققتحديث وسم
معلمات هذه الواجهة قيد التحقق وهي غير مفعّلة. تواصل معنا إذا احتاجها مشروعك.
قيد التحققحذف الوسوم
معلمات هذه الواجهة قيد التحقق وهي غير مفعّلة. تواصل معنا إذا احتاجها مشروعك.
قيد التحققالتحكم في الأجهزة الموسومة
معلمات هذه الواجهة قيد التحقق وهي غير مفعّلة. تواصل معنا إذا احتاجها مشروعك.
المهام
GETعرض المهام/task/list
الصلاحية المطلوبة: read
| الاسم | مطلوب | الوصف |
|---|---|---|
device | لا | التصفية بمعرّف جهاز واحد أو أكثر. |
stage | لا | أنواع الجدولة مفصولة بفواصل أو خطوط عمودية. |
page_index | لا | رقم الصفحة، بدءًا من 1. |
page_size | لا | عدد النتائج في الصفحة: 10 أو 20 أو 30 أو 50.10 · 20 · 30 · 50 |
curl 'https://iotdevices.org/api/iot/v1/task/list?page_size=10' \
-H 'Authorization: Bearer YOUR_API_KEY'POSTإنشاء مهمة/task/create
الصلاحية المطلوبة: control
أرسل commands أو action مع حقول الجدولة المختارة. تُنشئ الأمثلة مهام متوقفة مؤقتًا.
حقول الجدولة: datetime → datetime؛ minute → second؛ hour → minute + second؛ day → time؛ week → week + time؛ month → day + time؛ loop → interval. تحقّق من المنطقة الزمنية قبل الجدولة.
| الاسم | مطلوب | الوصف |
|---|---|---|
devices | نعم | معرّفات الأجهزة؛ استخدم d_ وg_ وt_ عند الجمع بين الأجهزة والمجموعات والوسوم. |
type | نعم | نوع الجدولة.datetime · minute · hour · day · week · month · loop |
times | لا | عدد مرات التنفيذ؛ 0 يعني عدم تحديد عدد. |
datetime | لا | تاريخ ووقت التنفيذ، أو طابع Unix الزمني. |
second | لا | الثانية ضمن الدقيقة، من 0 إلى 59. |
minute | لا | الدقيقة ضمن الساعة، من 0 إلى 59. |
time | لا | وقت اليوم بصيغة HH:mm:ss. |
week | لا | أيام الأسبوع كأرقام مفصولة بفواصل، من 1 إلى 7. |
day | لا | يوم الشهر، من 1 إلى 31. |
interval | لا | الفاصل بالثواني؛ 3 على الأقل. |
commands | لا | كائن JSON يتضمن الأوامر المراد جدولتها. |
action | لا | معرّف إجراء موجود. |
enable | لا | 1 يفعّل المهمة؛ 0 يبقيها متوقفة مؤقتًا.0 · 1 |
curl -X POST 'https://iotdevices.org/api/iot/v1/task/create' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"devices":"1001","type":"loop","interval":60,"commands":{"power":1},"enable":0}'GETتفاصيل المهمة/task/detail
الصلاحية المطلوبة: read
| الاسم | مطلوب | الوصف |
|---|---|---|
task | نعم | معرّف مهمة واحدة أو أكثر. |
curl 'https://iotdevices.org/api/iot/v1/task/detail?task=10' \
-H 'Authorization: Bearer YOUR_API_KEY'POSTتحديث مهمة/task/modify
الصلاحية المطلوبة: control
تتغير الحقول المُرسلة فقط. إرسال times يعيد ضبط عدّاد التنفيذ.
حقول الجدولة: datetime → datetime؛ minute → second؛ hour → minute + second؛ day → time؛ week → week + time؛ month → day + time؛ loop → interval. تحقّق من المنطقة الزمنية قبل الجدولة.
| الاسم | مطلوب | الوصف |
|---|---|---|
task | نعم | معرّف مهمة واحدة. |
devices | لا | معرّفات الأجهزة؛ استخدم d_ وg_ وt_ عند الجمع بين الأجهزة والمجموعات والوسوم. |
type | لا | نوع الجدولة.datetime · minute · hour · day · week · month · loop |
times | لا | عدد مرات التنفيذ؛ 0 يعني عدم تحديد عدد. |
datetime | لا | تاريخ ووقت التنفيذ، أو طابع Unix الزمني. |
second | لا | الثانية ضمن الدقيقة، من 0 إلى 59. |
minute | لا | الدقيقة ضمن الساعة، من 0 إلى 59. |
time | لا | وقت اليوم بصيغة HH:mm:ss. |
week | لا | أيام الأسبوع كأرقام مفصولة بفواصل، من 1 إلى 7. |
day | لا | يوم الشهر، من 1 إلى 31. |
interval | لا | الفاصل بالثواني؛ 3 على الأقل. |
commands | لا | كائن JSON يتضمن الأوامر المراد جدولتها. |
action | لا | معرّف إجراء موجود. |
enable | لا | 1 يفعّل المهمة؛ 0 يبقيها متوقفة مؤقتًا.0 · 1 |
curl -X POST 'https://iotdevices.org/api/iot/v1/task/modify' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"task":"10","enable":0}'POSTحذف المهام/task/delete
الصلاحية المطلوبة: control
| الاسم | مطلوب | الوصف |
|---|---|---|
task | نعم | معرّفات المهام المراد حذفها؛ بحد أقصى 100. |
curl -X POST 'https://iotdevices.org/api/iot/v1/task/delete' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"task":"10"}'قيد التحققبدء المهام أو إيقافها مؤقتًا
معلمات هذه الواجهة قيد التحقق وهي غير مفعّلة. تواصل معنا إذا احتاجها مشروعك.
الاستجابات والأخطاء
تتضمن الاستجابة code وmsg وdata عند توفرها. قد تتضمن القوائم page_index وpage_count وis_more وtotal. يختلف شكل الكائن أو المصفوفة حسب الواجهة.
القبول يؤكد إرسال الأمر فقط. تحقّق من حالة الجهاز أو الأحداث قبل تأكيد التنفيذ.
قد يكون طلب الكتابة مقبولًا رغم انتهاء المهلة. تحقّق من الجهاز أو المهمة قبل إعادته؛ لا تُعاد الكتابة تلقائيًا. هذا الإصدار لا يوفر إشعارات أحداث أو واجهة MQTT.
400 / 415- تحقّق من أسماء المعلمات والحقول المطلوبة ونوع محتوى JSON.
401 / 403- تحقّق من مفتاح API وصلاحياته.
429- انتظر ثانية على الأقل قبل إعادة طلب القراءة.
501- هذه الواجهة قيد التحقق من المواصفات.
502 / 504- خدمة الأجهزة غير متاحة أو نتيجة الطلب غير معروفة.
503- لا يزال التكامل يحتاج إلى إعداد الخادم.