Skip to content

المطوّرون

ابنِ ما تحتاجه على واجهة NextEAM API.

REST وGraphQL وWebhooks، محصورة بنطاق المنشأة منذ اليوم الأول. مواصفة OpenAPI 3، وحزم SDK لـ JS وPython، وتكاملات مرجعية مع SAP FICO وOracle Fusion. هي نفسها الواجهة التي بُنيت عليها شاشات المنتج. لا توجد واجهة موازية.

المصادقة

رمز Bearer مع حصر النطاق بالمنشأة.

كل طلب يحمل شيئين: رمز API في رأس Authorization ومعرّف المنشأة في رأس X-Tenant-Id ولا يقبل الخادم أي طلب ينقصه أحدهما.

رموز API محصورة بمنشأة واحدة ومستخدم واحد ودور واحد. تُنشأ من صفحة الإعدادات داخل التطبيق ويمكن إبطالها في أي وقت. لا نعرض الرمز مرة أخرى بعد إنشائه، فانسخه فوراً إلى مخزن الأسرار لديك.

الرؤوس المطلوبة3 أسطر
Authorization: Bearer YOUR_API_TOKEN
X-Tenant-Id: tnt_01HX0R3F...
Accept: application/json

لأحمال العمل بين الخدمات (تكامل بلا مستخدم بشري مثلاً)، استخدم حساب خدمة تابعاً للمنشأة. لحسابات الخدمة سياسة تدوير رموز خاصة بها ووسم مستقل في سجل التدقيق.

أمثلة برمجية

ثلاث صيغ، والواجهة واحدة.

curl4 أسطر
curl -X GET https://api.nexteam.me/v1/work-orders \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "X-Tenant-Id: your-tenant-id" \
  -H "Accept: application/json"
Node (حزمة TypeScript SDK)14 سطراً
import { NextEAM } from '@nexteam/sdk';

const client = new NextEAM({
  apiKey: process.env.NEXTEAM_API_KEY,
  tenantId: process.env.NEXTEAM_TENANT_ID,
});

const workOrders = await client.workOrders.list({
  status: 'open',
  priority: 'P1',
  limit: 50,
});

console.log(`${workOrders.total} open P1 WOs`);
حزمة Python SDK14 سطراً
from nexteam import NextEAM

client = NextEAM(
    api_key=os.environ["NEXTEAM_API_KEY"],
    tenant_id=os.environ["NEXTEAM_TENANT_ID"],
)

work_orders = client.work_orders.list(
    status="open",
    priority="P1",
    limit=50,
)

print(f"{work_orders.total} open P1 WOs")
تسليم Webhook (من الخادم إلى نقطة النهاية لديك)15 سطراً
POST https://your-app.example.com/webhooks/nexteam HTTP/1.1
Content-Type: application/json
X-NextEAM-Signature: sha256=...
X-NextEAM-Event: work_order.completed
X-NextEAM-Delivery: a8f1...

{
  "event": "work_order.completed",
  "tenantId": "tnt_01HX...",
  "data": {
    "workOrderId": "wo_01HY...",
    "completedAt": "2026-05-26T08:14:22.110Z",
    "completedBy": "usr_01HX..."
  }
}

حزم SDK الرسمية @nexteam/sdk على npm، وحزمة nexteam على PyPI تُنشر مع كل إصدار. استخدمها للوصول الآمن بالأنواع، وارجع إلى curl المباشر عند كتابة البرامج النصية أو تتبّع الأخطاء.

الموارد الأساسية

موارد REST، منعكسة كما هي في GraphQL.

كل مورد يتبع الاصطلاحات نفسها: GET للعرض والقراءة، POST للإنشاء، PATCH للتحديث الجزئي، DELETE للحذف النهائي (الحذف المنطقي هو السلوك الافتراضي ويظهر عبر ?archived=true).

الموارد الأساسية
الموردنقطة النهايةالأفعال
الأصول/v1/assetsGET, POST, PATCH, DELETE
أوامر العمل/v1/work-ordersGET, POST, PATCH, DELETE
الصيانة الوقائية/v1/pmGET, POST, PATCH, DELETE
قطع الغيار/v1/spare-partsGET, POST, PATCH, DELETE
أوامر الشراء/v1/purchase-ordersGET, POST, PATCH
فواتير المورّدين/v1/vendor-invoicesGET, POST, PATCH
العقود/v1/contractsGET, POST, PATCH, DELETE
المستخدمون والأدوار/v1/usersGET, POST, PATCH, DELETE
سجلات التدقيق/v1/audit-logsGET (قراءة فقط)
المساعد الذكي/v1/assistant/respondPOST (استعلام RAG)

القائمة الكاملة (أكثر من 40 مورداً) موجودة في مواصفة OpenAPI. وGraphQL انعكاس مطابق لواجهة REST مع إضافة مزايا اختيار الحقول.

Webhooks

أحداث تصل موقّعة بـ HMAC.

اشترك في الأحداث من إعدادات Webhook داخل التطبيق. ونوقّع كل عملية إرسال برأس X-NextEAM-Signature (توقيع HMAC-SHA256 لمحتوى الطلب باستخدام سر الاشتراك لديك). تحقّق من التوقيع قبل معالجة المحتوى.

نعيد محاولة الإرسال الفاشل بتباعد متزايد حتى 24 ساعة، ثم نضع الاشتراك في حالة إخفاق ونبلّغ مسؤول المنشأة. كما تتوفر محتويات Webhook عبر نقطة النهاية /v1/webhook-deliveries لإعادة الإرسال.

الأحداث المدعومة (جزء منها)

  • work_order.created
  • work_order.assigned
  • work_order.completed
  • work_order.overdue
  • asset.health.declined
  • pm.generated
  • po.approved
  • goods_receipt.matched
  • invitation.accepted
  • incident.reported

حدود المعدل

حدود افتراضية معقولة، وتُرفع عند الطلب.

  • الافتراضي

    القراءات
    100 طلب / دقيقة
    الكتابات
    30 طلباً / دقيقة
  • باقة Growth

    القراءات
    500 طلب / دقيقة
    الكتابات
    150 طلباً / دقيقة
  • باقة Enterprise

    القراءات
    حسب الاتفاق
    الكتابات
    حسب الاتفاق

كل استجابة تحمل رأسَي X-RateLimit-Remaining و X-RateLimit-Reset وتجاوز الحد يُرجع 429 Too Many Requests مع تلميح Retry-After للمهلة. أما أحمال الاستيراد الجماعي فتستخدم نقاط النهاية الجماعية، ولها حدود أعلى ومستقلة. تواصل معنا قبل جدولة أي تعبئة بيانات كبيرة.

تكاملات مرجعية

وصفات جاهزة للأنظمة التي يربطها معظم العملاء.

  • SAP FICO

    مزامنة ثنائية الاتجاه لطلبات وأوامر الشراء، ومواءمة مراكز التكلفة، وترحيل القيود المحاسبية عند إغلاق أمر العمل، عبر إطار REST وWebhook لدينا للتخاطب مع نقاط نهاية SAP BAPI / OData. يُنفَّذ كتكامل محدد النطاق أثناء التهيئة (باقتا Growth وEnterprise).

  • Oracle Fusion Cloud

    مزامنة مراكز التكلفة، ومزامنة بيانات المورّدين، وترحيل طلبات وأوامر الشراء، عبر إطار REST وWebhook لدينا للتخاطب مع واجهات Fusion REST. يُنفَّذ كتكامل محدد النطاق أثناء التهيئة (باقتا Growth وEnterprise).

  • REST / Webhook عام

    ابنِ مباشرة على واجهة REST وWebhook. تجد أمثلة لـ Zapier وn8n ووسائط Node/Python مخصصة في مكتبة الوصفات.

تبني شيئاً؟ أخبرنا.

شركاء التكامل يحصلون على مهندس حلول يرافقهم في التنفيذ، واعتماد تقني بعد مراجعة التكامل، وتسويق مشترك بعد دخوله الإنتاج.