ڈویلپرز
B2B API دستاویزات
nwp.ae کے پیچھے B2B API: اپنے کلائنٹس کے لیے نیٹ ریٹ پر قیمت نکالیں اور بک کریں، واؤچر جاری کریں، اور ہوٹل ڈیسک، کارپوریٹ ٹرانسپورٹ اور DMC پروگرام چلائیں، ساتھ میں آپ کے ریٹ، اسٹیٹمنٹ اور انوائسز۔ ابتدائی رسائی: سینڈ باکس کلیدیں لیبل شدہ ٹیسٹ ڈیٹا کے ساتھ جواب دیتی ہیں، اور لائیو کلیدیں منظوری پر جاری ہوتی ہیں۔
حیثیتابتدائی رسائی · صرف سینڈ باکس
سینڈ باکس اصل درخواستوں کو اصل اسکیما کے مطابق جانچتا ہے اور ٹیسٹ ڈیٹا کے ساتھ جواب دیتا ہے۔ کچھ بھی بک نہیں ہوتا، کوئی گاڑی روکی نہیں جاتی اور کوئی قیمت واپس نہیں کی جاتی۔ سینڈ باکس کے ساتھ سروس لیول کی کوئی ذمہ داری نہیں، اور API کھلنے پر منظور شدہ پارٹنرز کو پروڈکشن کیز جاری کی جاتی ہیں۔
ابتدائی رسائی کی درخواست دیںجائزہ
HTTPS پر JSON۔ Content-Type: application/json بھیجیں۔ ہر جواب JSON ہوتا ہے اور اس میں ٹریڈ ڈیسک کو بتانے کے لیے ایک x-request-id ہیڈر ہوتا ہے؛ سینڈ باکس کے جوابات میں x-nwp-environment: sandbox بھی ہوتا ہے۔
| بیس URL | — |
|---|---|
| سینڈ باکس | https://nwp.ae/api/b2b/sandbox |
| پروڈکشن | https://nwp.ae/api/b2b/v1ابھی کھلا نہیں · لائیو کلید درکار — منظوری پر جاری |
B2B API v1
اکاؤنٹ کے ہر کام کے لیے ایک API: آپ کی تجارتی شرائط (نیٹ ریٹ، کمیشن یا ٹیرف) پر قیمت والی زمینی نقل و حمل اور ٹورز و سرگرمیاں، آپ کے کلائنٹس کی بکنگز، واؤچر اور نام کے بورڈ، ہوٹل ڈیسک، کارپوریٹ ٹرانسپورٹ، DMC پروگرام، بکنگ وجٹ، صارفین، نوٹسز، اسٹیٹمنٹ اور انوائسز۔ سینڈ باکس کلیدیں (nwp_test_…) درخواست دہندگان کے لیے کھلی ہیں: یہ ہر اینڈ پوائنٹ پر sandbox: true نشان زدہ آزمائشی ڈیٹا دیتی ہیں، کبھی بکنگ نہیں کرتیں اور آپ کے اکاؤنٹ میں کچھ نہیں بدلتیں۔ لائیو کلیدیں (nwp_live_…) منظوری پر جاری ہوتی ہیں اور اس وقت کام کرتی ہیں جب NWP آپ کے اکاؤنٹ کے لیے لائیو رسائی آن کر دیتا ہے۔ ہر POST ایک Idempotency-Key لیتا ہے، ہر جواب میں x-request-id ہوتا ہے، اور ہر کلید کی اپنی فی منٹ حد ہے۔
OpenAPI 3.1 دستاویز: /api/b2b/v1/openapi.json
زمینی نقل و حمل
POST/api/b2b/v1/transport/quoteآپ کی شرائط پر قیمت
اسکوپ:
transport:readPOST/api/b2b/v1/transport/bookingsبک کریں
اسکوپ:
transport:writeلائیو کلید درکار — منظوری پر جاریGET/api/b2b/v1/transport/bookings/{id}بکنگ کی حالت اور منسوخی کی شرائط
اسکوپ:
transport:readPOST/api/b2b/v1/transport/bookings/{id}/cancelپالیسی کے مطابق منسوخ کریں
اسکوپ:
transport:writeلائیو کلید درکار — منظوری پر جاریGET/api/b2b/v1/transport/bookings/{id}/voucherآپ کے برانڈ میں واؤچر (HTML یا PDF)
اسکوپ:
transport:read
ٹورز اور سرگرمیاں
GET/api/b2b/v1/activities/productsفروخت پر مصنوعات، فی فرد یا فی گاڑی
اسکوپ:
activities:readGET/api/b2b/v1/activities/products/{id}/availabilityروزانہ دستیابی
اسکوپ:
activities:readPOST/api/b2b/v1/activities/quoteآپ کی شرائط پر قیمت
اسکوپ:
activities:readPOST/api/b2b/v1/activities/bookingsبک کریں
اسکوپ:
activities:writeلائیو کلید درکار — منظوری پر جاریGET/api/b2b/v1/activities/bookings/{id}بکنگ کی حالت اور منسوخی کی شرائط
اسکوپ:
activities:readPOST/api/b2b/v1/activities/bookings/{id}/cancelپالیسی کے مطابق منسوخ کریں
اسکوپ:
activities:writeلائیو کلید درکار — منظوری پر جاریGET/api/b2b/v1/activities/bookings/{id}/voucherآپ کے برانڈ میں واؤچر (HTML یا PDF)
اسکوپ:
activities:read
کروز
GET/api/b2b/v1/cruise/sailingsروانگیاں
اسکوپ:
cruise:readابھی دستیاب نہیں: کروز فراہم کنندہ منسلک ہونے تک 501 دیتا ہےPOST/api/b2b/v1/cruise/quoteآپ کی شرائط پر قیمت
اسکوپ:
cruise:readابھی دستیاب نہیں: کروز فراہم کنندہ منسلک ہونے تک 501 دیتا ہےPOST/api/b2b/v1/cruise/bookingsبک کریں
اسکوپ:
cruise:writeابھی دستیاب نہیں: کروز فراہم کنندہ منسلک ہونے تک 501 دیتا ہےGET/api/b2b/v1/cruise/bookings/{id}بکنگ کی حالت اور منسوخی کی شرائط
اسکوپ:
cruise:readابھی دستیاب نہیں: کروز فراہم کنندہ منسلک ہونے تک 501 دیتا ہےPOST/api/b2b/v1/cruise/bookings/{id}/cancelپالیسی کے مطابق منسوخ کریں
اسکوپ:
cruise:writeابھی دستیاب نہیں: کروز فراہم کنندہ منسلک ہونے تک 501 دیتا ہے
خوش آمدید گائیڈز
GET/api/b2b/v1/guides/propertiesآپ کی پراپرٹیز
اسکوپ:
guides:readPOST/api/b2b/v1/guides/propertiesپراپرٹی شامل کریں
اسکوپ:
guides:writeGET/api/b2b/v1/guides/properties/{id}پراپرٹی کی گائیڈ، لنک اور فائلیں
اسکوپ:
guides:readPATCH/api/b2b/v1/guides/properties/{id}پراپرٹی میں ترمیم
اسکوپ:
guides:writePOST/api/b2b/v1/guides/properties/{id}/statusگائیڈ روکیں یا دوبارہ چلائیں
اسکوپ:
guides:writePOST/api/b2b/v1/guides/properties/{id}/linkمہمان لنک بدلیں
اسکوپ:
guides:writeGET/api/b2b/v1/guides/properties/{id}/wifiوائی فائی کی تفصیلات پڑھیں
اسکوپ:
guides_wifi:readPOST/api/b2b/v1/guides/properties/{id}/wifiوائی فائی سیٹ کریں
اسکوپ:
guides_wifi:writeGET/api/b2b/v1/guides/properties/{id}/qrQR کوڈ (PNG یا SVG)
اسکوپ:
guides:readGET/api/b2b/v1/guides/properties/{id}/cardپرنٹ کے قابل کارڈ (PDF یا HTML)
اسکوپ:
guides:readGET/api/b2b/v1/guides/statsاسکین، ویوز، بکنگز اور آپ کا حصہ
اسکوپ:
guides:read
اکاؤنٹ
GET/api/b2b/v1/whoamiکلید جانچیں
اسکوپ:
account:readGET/api/b2b/v1/openapi.jsonیہ API بطور OpenAPI 3.1
ایفیلی ایٹس
GET/api/b2b/v1/affiliate/statsکسی مدت کے اعداد و شمار: کلکس، بکنگز، کنورژن، کمائی
اسکوپ:
affiliate:readGET/api/b2b/v1/affiliate/linksآپ کے ٹریکنگ لنکس، QR کوڈز کے ساتھ
اسکوپ:
affiliate:readPOST/api/b2b/v1/affiliate/linksUTM کے ساتھ ٹریکنگ لنک بنائیں
اسکوپ:
affiliate:writeلائیو کلید درکار — منظوری پر جاریGET/api/b2b/v1/affiliate/links/{code}/qrکسی لنک کا QR کوڈ (SVG یا PNG)
اسکوپ:
affiliate:readGET/api/b2b/v1/affiliate/performanceہر لنک کے لحاظ سے کلکس، بکنگز اور کمائی
اسکوپ:
affiliate:readGET/api/b2b/v1/affiliate/payoutsادائیگی کا بیلنس اور ادائیگی کی درخواستیں
اسکوپ:
affiliate:readPOST/api/b2b/v1/affiliate/payoutsادائیگی کی درخواست کریں، بینک ٹرانسفر سے بھیجی جاتی ہے
اسکوپ:
affiliate:writeلائیو کلید درکار — منظوری پر جاریPOST/api/b2b/v1/affiliate/payouts/{reference}/cancelادائیگی کی درخواست واپس لیں
اسکوپ:
affiliate:writeلائیو کلید درکار — منظوری پر جاریPOST/api/b2b/v1/affiliate/bank-detailsبینک کی تفصیلات محفوظ کریں (صرف بھیجی جا سکتی ہیں، کبھی واپس نہیں دکھائی جاتیں)
اسکوپ:
affiliate:writeلائیو کلید درکار — منظوری پر جاریGET/api/b2b/v1/affiliate/widgetوجٹ کی سیٹنگز اور اسنیپٹ
اسکوپ:
affiliate:readPOST/api/b2b/v1/affiliate/widgetبکنگ ویجیٹ سیٹ اپ کریں
اسکوپ:
affiliate:writeلائیو کلید درکار — منظوری پر جاری
آپ کے کلائنٹس کی بکنگز
POST/api/b2b/v1/bookings/quoteآپ کی شرائط پر قیمت
اسکوپ:
bookings:createPOST/api/b2b/v1/bookingsبک کریں
اسکوپ:
bookings:createلائیو کلید درکار — منظوری پر جاریGET/api/b2b/v1/bookingsفہرست
اسکوپ:
bookings:viewGET/api/b2b/v1/bookings/creditedآپ کے اکاؤنٹ میں شمار ہونے والی بکنگز
اسکوپ:
bookings:viewGET/api/b2b/v1/bookings/{ref}تفصیلات
اسکوپ:
bookings:viewPOST/api/b2b/v1/bookings/{ref}/cancelپالیسی کے مطابق منسوخ کریں
اسکوپ:
bookings:manageلائیو کلید درکار — منظوری پر جاریPOST/api/b2b/v1/bookings/{ref}/amendmentsٹریڈ ڈیسک سے تبدیلی کی درخواست کریں
اسکوپ:
bookings:manageلائیو کلید درکار — منظوری پر جاریPOST/api/b2b/v1/bookings/{ref}/brandاس کی دستاویزات پر آپ کا برانڈ، یا کوئی نہیں
اسکوپ:
bookings:manageلائیو کلید درکار — منظوری پر جاریGET/api/b2b/v1/bookings/{ref}/voucherآپ کے برانڈ میں واؤچر (HTML یا PDF)
اسکوپ:
bookings:viewGET/api/b2b/v1/bookings/{ref}/name-boardڈرائیور کا نام والا بورڈ (HTML)
اسکوپ:
bookings:viewGET/api/b2b/v1/requestsتبدیلی اور سروس کی درخواستیں، ڈیسک کے جوابات کے ساتھ
اسکوپ:
bookings:viewPOST/api/b2b/v1/requests/{id}/withdrawکھلی درخواست واپس لیں
اسکوپ:
bookings:manageلائیو کلید درکار — منظوری پر جاری
ہوٹل ڈیسک
POST/api/b2b/v1/desk/salesڈیسک پر فوری فروخت
اسکوپ:
bookings:createلائیو کلید درکار — منظوری پر جاریGET/api/b2b/v1/desk/days/{date}ایک دن کی فروخت، یا اس کا حساب CSV یا PDF میں
اسکوپ:
statements:readPOST/api/b2b/v1/desk/days/{date}/closeدن بند کریں اور اس کا حساب منجمد کریں
اسکوپ:
statements:readلائیو کلید درکار — منظوری پر جاری
کارپوریٹ ٹرانسپورٹ
GET/api/b2b/v1/corporate/cost-centresفہرست
اسکوپ:
bookings:viewPOST/api/b2b/v1/corporate/cost-centresبنائیں یا تبدیل کریں
اسکوپ:
settings:manageلائیو کلید درکار — منظوری پر جاریPOST/api/b2b/v1/corporate/cost-centres/{id}/approversبنائیں یا تبدیل کریں
اسکوپ:
settings:manageلائیو کلید درکار — منظوری پر جاریGET/api/b2b/v1/corporate/requestsفہرست
اسکوپ:
bookings:viewPOST/api/b2b/v1/corporate/requestsبک کریں
اسکوپ:
bookings:createلائیو کلید درکار — منظوری پر جاریPOST/api/b2b/v1/corporate/requests/{id}/decisionمنظور یا مسترد کریں
اسکوپ:
bookings:createلائیو کلید درکار — منظوری پر جاریGET/api/b2b/v1/corporate/shuttlesفہرست
اسکوپ:
bookings:viewPOST/api/b2b/v1/corporate/shuttlesبنائیں یا تبدیل کریں
اسکوپ:
bookings:createلائیو کلید درکار — منظوری پر جاریPOST/api/b2b/v1/corporate/shuttles/{id}/statusاس کی حالت تبدیل کریں
اسکوپ:
bookings:createلائیو کلید درکار — منظوری پر جاریPOST/api/b2b/v1/corporate/shuttles/{id}/scheduleایک مہینے کے سفر شیڈول کریں
اسکوپ:
bookings:createلائیو کلید درکار — منظوری پر جاریPOST/api/b2b/v1/corporate/shuttles/{id}/repriceنیا طے شدہ ریٹ لاگو کریں
اسکوپ:
bookings:createلائیو کلید درکار — منظوری پر جاریGET/api/b2b/v1/corporate/usageکاسٹ سینٹر کے لحاظ سے استعمال (JSON یا CSV)
اسکوپ:
statements:read
DMC پروگرام
GET/api/b2b/v1/dmc/programmesفہرست
اسکوپ:
bookings:viewPOST/api/b2b/v1/dmc/programmesبنائیں یا تبدیل کریں
اسکوپ:
bookings:createلائیو کلید درکار — منظوری پر جاریGET/api/b2b/v1/dmc/programmes/{id}تفصیلات
اسکوپ:
bookings:viewPOST/api/b2b/v1/dmc/programmes/{id}/versionsقیمت کے ساتھ ورژن محفوظ کریں
اسکوپ:
bookings:createلائیو کلید درکار — منظوری پر جاریPOST/api/b2b/v1/dmc/programmes/{id}/statusاس کی حالت تبدیل کریں
اسکوپ:
bookings:createلائیو کلید درکار — منظوری پر جاریPOST/api/b2b/v1/dmc/programmes/{id}/brandاس کی دستاویزات پر آپ کا برانڈ، یا کوئی نہیں
اسکوپ:
bookings:createلائیو کلید درکار — منظوری پر جاریPOST/api/b2b/v1/dmc/programmes/{id}/acceptایک ورژن قبول کریں اور اسے بک کریں
اسکوپ:
bookings:createلائیو کلید درکار — منظوری پر جاریGET/api/b2b/v1/dmc/programmes/{id}/proposalکلائنٹ کے لیے تجویز (HTML)
اسکوپ:
bookings:viewPOST/api/b2b/v1/dmc/programmes/{id}/linksمیعاد والا کلائنٹ لنک جاری کریں
اسکوپ:
bookings:createلائیو کلید درکار — منظوری پر جاریGET/api/b2b/v1/dmc/programmes/{id}/linksکلائنٹ لنکس اور کس نے قبول کیا
اسکوپ:
bookings:viewPOST/api/b2b/v1/dmc/programmes/{id}/links/{link}/revokeکلائنٹ لنک منسوخ کریں
اسکوپ:
bookings:createلائیو کلید درکار — منظوری پر جاری
ریٹ اور کوٹیشن کی درخواستیں
GET/api/b2b/v1/rates/catalogueآپ کے ریٹ پر کیٹلاگ (JSON، CSV یا PDF)
اسکوپ:
rates:viewGET/api/b2b/v1/rates/sheetسروسز کی ریٹ شیٹ
اسکوپ:
rates:viewPOST/api/b2b/v1/quote-requestsکوٹیشن کی درخواست بھیجیں
اسکوپ:
bookings:createلائیو کلید درکار — منظوری پر جاریPOST/api/b2b/v1/wholesale-requestsگاڑیوں کی گنجائش کی درخواست کریں
اسکوپ:
bookings:createلائیو کلید درکار — منظوری پر جاری
بکنگ وجٹ
GET/api/b2b/v1/widgetوجٹ کی سیٹنگز اور اسنیپٹ
اسکوپ:
tracking:viewPOST/api/b2b/v1/widgetوجٹ تبدیل کریں
اسکوپ:
tracking:manageلائیو کلید درکار — منظوری پر جاری
صارفین
GET/api/b2b/v1/usersفہرست
اسکوپ:
users:viewPOST/api/b2b/v1/usersکسی فرد کو مدعو کریں
اسکوپ:
users:manageلائیو کلید درکار — منظوری پر جاریPOST/api/b2b/v1/users/{id}/roleکسی فرد کا کردار تبدیل کریں
اسکوپ:
users:manageلائیو کلید درکار — منظوری پر جاریPOST/api/b2b/v1/users/{id}/deactivateکسی فرد کی رسائی ختم کریں
اسکوپ:
users:manageلائیو کلید درکار — منظوری پر جاریPOST/api/b2b/v1/users/{id}/reactivateکسی فرد کی رسائی بحال کریں
اسکوپ:
users:manageلائیو کلید درکار — منظوری پر جاری
نوٹسز
GET/api/b2b/v1/inboxآپ کے اکاؤنٹ کے بارے میں نوٹسز
اسکوپ:
inbox:view
اسٹیٹمنٹ اور انوائسز
GET/api/b2b/v1/statementsاسٹیٹمنٹ، بیلنس اور کھلی انوائسز
اسکوپ:
statements:readGET/api/b2b/v1/statements/{period}ایک مہینے کا اسٹیٹمنٹ (JSON یا PDF)
اسکوپ:
statements:readGET/api/b2b/v1/invoices/{id}ایک انوائس (JSON یا PDF)
اسکوپ:
statements:read
اکاؤنٹ کی ترتیبات
GET/api/b2b/v1/settingsاکاؤنٹ کی تفصیلات، رابطے اور بلنگ ای میل
اسکوپ:
settings:viewPOST/api/b2b/v1/settings/billing-emailبلنگ ای میل مقرر کریں
اسکوپ:
settings:manageلائیو کلید درکار — منظوری پر جاریPOST/api/b2b/v1/settings/contactsرابطہ شامل کریں یا تبدیل کریں
اسکوپ:
settings:manageلائیو کلید درکار — منظوری پر جاریPOST/api/b2b/v1/settings/contacts/{id}/removeرابطہ ہٹائیں
اسکوپ:
settings:manageلائیو کلید درکار — منظوری پر جاریPOST/api/b2b/v1/settings/brandاس کی دستاویزات پر آپ کا برانڈ، یا کوئی نہیں
اسکوپ:
settings:manageلائیو کلید درکار — منظوری پر جاری
curl -X POST 'https://nwp.ae/api/b2b/v1/transport/quote' \
-H 'Authorization: Bearer nwp_test_…' \
-H 'Content-Type: application/json' \
-H 'Idempotency-Key: 7f1c2b0e-quote-1' \
-d '{"airport":"dxb","terminal":"t3","direction":"from_airport","place":"downtown","vehicle":"vclass","pickup_date":"2026-11-02","pickup_time":"14:30","passengers":3,"bags":3}'تصدیق
ہر سینڈ باکس کال کے لیے بیئرر ٹوکن درکار ہے۔ ڈویلپر ہینڈ شیک ایک ٹوکن جاری کرتا ہے: JWT کی شکل کا ٹوکن جو nwp_sandbox_ سے شروع ہوتا ہے، 30 دن چلتا ہے اور صرف ٹیسٹ ڈیٹا کھولتا ہے۔
1سینڈ باکس ٹوکن کی درخواست کریں
curl -X POST https://nwp.ae/api/b2b/orchestration \
-H 'Content-Type: application/json' \
-d '{
"action": "developer_handshake",
"platform_name": "Example Travel App",
"contact_email": "developers@example.com",
"use_case": "transfers"
}'{
"environment": "sandbox",
"status": "early-access",
"test_data": true,
"token_type": "Bearer",
"token": "nwp_sandbox_eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCIsImVudiI6InNhbmRib3gifQ…",
"expires_at": "2026-10-31T08:00:00.000Z",
"scopes": [
"sandbox:transfers.quote",
"sandbox:availability.read"
],
"endpoints": [
{
"method": "POST",
"url": "https://nwp.ae/api/b2b/sandbox/transfers"
},
{
"method": "GET",
"url": "https://nwp.ae/api/b2b/sandbox/availability"
},
{
"method": "GET",
"url": "https://nwp.ae/api/b2b/sandbox/status"
}
],
"production": {
"status": "not_open",
"request_access": "https://nwp.ae/register?type=institutional"
}
}2اس کے ساتھ سینڈ باکس کو کال کریں
curl -X POST https://nwp.ae/api/b2b/sandbox/transfers \
-H 'Authorization: Bearer nwp_sandbox_eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCIsImVudiI6InNhbmRib3gifQ…' \
-H 'Content-Type: application/json' \
-d @transfer.jsonٹرانسفر کی درخواست
نیچے دیے گئے فیلڈز سینڈ باکس ٹرانسفر اینڈ پوائنٹ پر بھیجیں۔ فیلڈز کے نام API کا حصہ ہیں اور ہر زبان میں انگریزی میں ہی رہتے ہیں۔
pickup_locationلازمی{ type: "airport" | "coordinates" | "hotel", … }مسافر کو کہاں سے لیا جاتا ہے: ایئرپورٹ ٹرمینل (DXB_T1, DXB_T2, DXB_T3, DWC, SHJ)، متحدہ عرب امارات کے اندر کوآرڈینیٹس، یا ہوٹل کا حوالہ۔
dropoff_locationلازمی{ type: "hotel" | "coordinates" | "airport", … }مسافر کو کہاں لے جایا جاتا ہے: ہوٹل کے حوالے کی اسٹرنگ (آپ کا اپنا ہوٹل کوڈ یا ہوٹل کا نام)، کوآرڈینیٹس، یا ایئرپورٹ ٹرمینل۔
flight_numberمشروطstringآنے والی پرواز، مثلاً EK202۔ پک اپ کا وقت پرواز کی شیڈول شدہ لینڈنگ کے مطابق رکھا جاتا ہے۔
pickup_atمشروطstring (ISO 8601)آفسیٹ کے ساتھ ISO 8601۔ اس وقت لازمی جب پک اپ ایئرپورٹ پر نہ ہو، یا جب ایئرپورٹ پک اپ کی کوئی پرواز نہ ہو۔
buffer_minutes_overrideاختیاریintegerلینڈنگ کے بعد مفت انتظار، منٹوں میں، 0 سے 180 تک۔ ڈیفالٹ 60 ہے: وہی مفت انتظار جو گروپ کی ٹرانسفر سائٹ پہلے سے ہر آمد پر دیتی ہے۔
vehicle_classلازمیenumان میں سے ایک: VIP_V_CLASS، EXECUTIVE_SEDAN، یا LUXURY_COACH۔
passengersاختیاریintegerکلاس کی نشستوں سے زیادہ ہونے پر مسترد۔
client_metadataاختیاریobjectمسافر کے واؤچر کے لیے وائٹ لیبل تفصیلات: agency_name، logo_url (صرف https)، voucher_branding اور agency_reference۔
| فیلڈ | قسم | لازمی | تفصیل |
|---|---|---|---|
pickup_location | { type: "airport" | "coordinates" | "hotel", … } | لازمی | مسافر کو کہاں سے لیا جاتا ہے: ایئرپورٹ ٹرمینل (DXB_T1, DXB_T2, DXB_T3, DWC, SHJ)، متحدہ عرب امارات کے اندر کوآرڈینیٹس، یا ہوٹل کا حوالہ۔ |
dropoff_location | { type: "hotel" | "coordinates" | "airport", … } | لازمی | مسافر کو کہاں لے جایا جاتا ہے: ہوٹل کے حوالے کی اسٹرنگ (آپ کا اپنا ہوٹل کوڈ یا ہوٹل کا نام)، کوآرڈینیٹس، یا ایئرپورٹ ٹرمینل۔ |
flight_number | string | مشروط | آنے والی پرواز، مثلاً EK202۔ پک اپ کا وقت پرواز کی شیڈول شدہ لینڈنگ کے مطابق رکھا جاتا ہے۔ |
pickup_at | string (ISO 8601) | مشروط | آفسیٹ کے ساتھ ISO 8601۔ اس وقت لازمی جب پک اپ ایئرپورٹ پر نہ ہو، یا جب ایئرپورٹ پک اپ کی کوئی پرواز نہ ہو۔ |
buffer_minutes_override | integer | اختیاری | لینڈنگ کے بعد مفت انتظار، منٹوں میں، 0 سے 180 تک۔ ڈیفالٹ 60 ہے: وہی مفت انتظار جو گروپ کی ٹرانسفر سائٹ پہلے سے ہر آمد پر دیتی ہے۔ |
vehicle_class | enum | لازمی | ان میں سے ایک: VIP_V_CLASS، EXECUTIVE_SEDAN، یا LUXURY_COACH۔ |
passengers | integer | اختیاری | کلاس کی نشستوں سے زیادہ ہونے پر مسترد۔ |
client_metadata | object | اختیاری | مسافر کے واؤچر کے لیے وائٹ لیبل تفصیلات: agency_name، logo_url (صرف https)، voucher_branding اور agency_reference۔ |
{
"pickup_location": {
"type": "airport",
"terminal": "DXB_T3"
},
"dropoff_location": {
"type": "hotel",
"hotel_ref": "EXAMPLE-HOTEL-DOWNTOWN"
},
"flight_number": "EK202",
"buffer_minutes_override": 60,
"vehicle_class": "VIP_V_CLASS",
"passengers": 4,
"client_metadata": {
"agency_name": "Example Travel",
"logo_url": "https://example.com/logo.png",
"voucher_branding": {
"mode": "white_label",
"accent_hex": "#0A0A0A"
},
"agency_reference": "EX-10442"
}
}گاڑیوں کی کلاسیں
| کلاس | گاڑی | نشستیں |
|---|---|---|
VIP_V_CLASS | Mercedes-Benz V-Class or similar | 7 |
EXECUTIVE_SEDAN | Lexus ES 350 or a similar executive saloon | 3 |
LUXURY_COACH | Toyota Coaster or King Long coach | 30 |
ہر گاڑی کام کے لیے اپنے لائسنس یافتہ شوفر کے ساتھ کرائے پر لی جاتی ہے؛ کلاس گاڑی کی قسم اور اس کی نشستیں طے کرتی ہے۔
جواب
سینڈ باکس کوٹیشن درخواست کو دہراتی ہے اور بتاتی ہے کہ پک اپ کا وقت کیسے طے ہوگا اور واؤچر پر برانڈنگ کیسے ہوگی۔ اس میں کبھی کوئی قیمت نہیں ہوتی۔
{
"environment": "sandbox",
"test_data": true,
"notice": "Sandbox response: test data only. Nothing is booked, no vehicle is held and no price is quoted. Production is not open yet.",
"quote_id": "SBX-WT5PCXWF",
"status": "sandbox_accepted",
"vehicle": {
"class": "VIP_V_CLASS",
"description": "Mercedes-Benz V-Class or similar",
"max_passengers": 7
},
"passengers": 4,
"pickup": {
"location": {
"type": "airport",
"terminal": "DXB_T3"
},
"timing": {
"mode": "flight_landing",
"flight_number": "EK202",
"driver_ready": "at the scheduled landing time",
"free_waiting_minutes": 60,
"live_arrival_tracking": "planned"
}
},
"dropoff": {
"location": {
"type": "hotel",
"hotel_ref": "EXAMPLE-HOTEL-DOWNTOWN"
}
},
"voucher": {
"branding": "white_label",
"agency_name": "Example Travel",
"logo_url": "https://example.com/logo.png",
"accent_hex": "#0A0A0A",
"footer_text": null,
"agency_reference": "EX-10442",
"shows_nwp_branding": false
},
"price": null,
"price_note": "Sandbox quotes carry no price. Net rates are issued to approved partners in the portal.",
"default_buffer_minutes": 60,
"created_at": "2026-10-01T08:00:00.000Z"
}{
"error": {
"code": "validation_failed",
"message": "One or more fields are invalid.",
"retryable": false,
"fields": [
"flight_number"
],
"issues": [
{
"path": "flight_number",
"message": "flight_number must be an airline flight number such as EK202."
}
]
},
"environment": "sandbox"
}پرواز کا وقت
آج پک اپ بکنگ میں درج لینڈنگ کے وقت کے مطابق رکھا جاتا ہے، اور ڈرائیور اس کے بعد بفر کی مدت تک مفت انتظار کرتا ہے۔ اگر پرواز کا وقت بدلے تو ٹریڈ ڈیسک کو بتائیں، اور پک اپ بھی اس کے ساتھ بدل جاتا ہے۔
FlightAware یا AeroDataBox کے ذریعے خودکار لائیو آمد ٹریکنگ منصوبہ بندی میں ہے۔ ابھی دونوں میں سے کوئی بھی منسلک نہیں، اور سینڈ باکس live_arrival_tracking کو planned (منصوبہ بندی میں) کے طور پر دکھاتا ہے۔
دستخط شدہ دستیابی
ہینڈ شیک ایک دستخط شدہ دستیابی URL واپس کرتا ہے۔ دستخط تاریخ، گاڑی کی کلاس اور میعاد ختم ہونے کے وقت کا احاطہ کرتا ہے؛ ان میں سے کچھ بھی بدلیں تو کال مسترد ہو جاتی ہے۔ حیثیتیں تیاری کے لیے نمونے ہیں۔
curl 'https://nwp.ae/api/b2b/sandbox/availability?date=2026-10-15&vehicle_class=VIP_V_CLASS&expires=1760572800&sig=…'{
"environment": "sandbox",
"test_data": true,
"notice": "Sandbox response: test data only. Nothing is booked, no vehicle is held and no price is quoted. Production is not open yet.",
"date": "2026-10-15",
"vehicle_class": "VIP_V_CLASS",
"vehicle": {
"description": "Mercedes-Benz V-Class or similar",
"max_passengers": 7
},
"sample_status": "on_request",
"note": "A sample status for building against. Real availability is confirmed by the trade desk until the API opens."
}اکاؤنٹ ایکشنز
ایکشن کے ساتھ آرکیسٹریشن اینڈ پوائنٹ پر POST کریں۔ جو ایکشن کسی شخص سے کچھ کرنے کو کہتا ہے، اسے جواب میں یہ بتائے جانے سے پہلے محفوظ کر کے ٹریڈ ڈیسک کے حوالے کر دیا جاتا ہے۔
| ایکشن | یہ کیا کرتا ہے |
|---|---|
credit_line_application | متحدہ عرب امارات میں رجسٹرڈ کمپنی کے لیے Net-15، 30، 45 یا 60 کی شرائط۔ ٹریڈ لائسنس نمبر اور TRN (15 ہندسے، 100 سے شروع) لازمی ہیں۔ ہر درخواست کا جائزہ ایک شخص لیتا ہے، اور کریڈٹ لائن منظور ہونے تک بکنگز کی پیشگی ادائیگی ہوتی ہے۔ |
wallet_topup | آپ کے اکاؤنٹ میں پیشگی ادائیگی۔ کارڈ سے ٹاپ اپ ابھی دستیاب نہیں، اس لیے ٹریڈ ڈیسک آپ کو بینک ٹرانسفر کے لیے انوائس بھیجتا ہے، اور جواب میں یہ بتایا جاتا ہے۔ |
account_payload | آپ کے اکاؤنٹ کا کرنسی میٹرکس۔ AED بنیاد ہے اور واحد کرنسی ہے جس میں کچھ بھی چارج کیا یا کمایا جاتا ہے؛ دیگر کرنسیاں سائٹ کے روزانہ ریٹ پر صرف دکھانے کے لیے تبادلے ہیں، اس لیے تبادلے سے مارجن کبھی نہیں بدلتا۔ |
tracking_link | ہالیڈے ہوم اور ایفیلی ایٹ ٹیئرز کے لیے ایک متعین (deterministic) پارٹنر URL اور QR کوڈ، اس واضح بیان کے ساتھ کہ آج اس کا کریڈٹ کہاں جاتا ہے۔ |
developer_handshake | ایک سینڈ باکس ٹوکن، سینڈ باکس اینڈ پوائنٹس اور ایک دستخط شدہ دستیابی URL۔ |
{
"action": "credit_line_application",
"company_legal_name": "Example Travel L.L.C.",
"trade_licence_number": "1234567",
"licence_authority": "Department of Economy and Tourism, Dubai",
"trn": "100000000000003",
"contact_name": "Finance Desk",
"contact_email": "finance@example.com",
"requested_terms": "NET_30",
"requested_limit_aed": 50000
}{
"action": "wallet_topup",
"company_name": "Example Travel L.L.C.",
"contact_email": "finance@example.com",
"amount_aed": 10000,
"purchase_order": "PO-2291"
}{
"action": "account_payload",
"company_name": "Example Travel L.L.C.",
"tier": "Tier_4_Regional_DMCs",
"display_currencies": [
"USD",
"EUR"
],
"lines": [
{
"label": "Your own city-tour package",
"net_aed": 400,
"sell_aed": 560
}
]
}{
"action": "tracking_link",
"partner_code": "HHO-EXAMPLE",
"tier": "Tier_1_Holiday_Homes",
"property_id": "marina-2104",
"destination": "dubaitransfers.ae"
}خرابیاں
ہر خرابی کی شکل ایک جیسی ہوتی ہے: error.code، error.message اور error.retryable، اور توثیق ناکام ہونے پر fields اور issues بھی۔
| حیثیت | کوڈ | مطلب |
|---|---|---|
| 400 | invalid_json | باڈی درست JSON نہیں ہے۔ |
| 401 | unauthenticated | کوئی سینڈ باکس ٹوکن نہیں، یا ٹوکن خراب، میعاد ختم یا غلط دستخط شدہ ہے۔ |
| 404 | not_found | یہ اینڈ پوائنٹ اس ہوسٹ پر موجود نہیں۔ |
| 405 | method_not_allowed | یہ اینڈ پوائنٹ کوئی دوسرا طریقہ (method) لیتا ہے۔ |
| 413 | payload_too_large | باڈی 16 KB سے بڑی ہے۔ |
| 422 | validation_failed | کوئی فیلڈ غائب یا غلط ہے: fields اور issues دیکھیں۔ |
| 429 | rate_limited | اس پتے سے بہت زیادہ درخواستیں: retry_after_seconds کے بعد دوبارہ کوشش کریں۔ |
| 500 | internal | ہماری طرف کچھ ناکام ہوا: درخواست کی ID بتائیں۔ |
| 502 | upstream_unavailable | کسی ادائیگی فراہم کنندہ نے جواب نہیں دیا۔ |
| 503 | not_configured | درخواست محفوظ نہیں ہو سکی: ٹریڈ ڈیسک کو ای میل کریں۔ |
ریٹ لمٹس
اکاؤنٹ ایکشنز فی پتہ، فی گھنٹہ محدود ہیں: credit_line_application: 5، wallet_topup: 10، account_payload: 60، tracking_link: 60، اور developer_handshake: 10۔ سینڈ باکس کالز فی پتہ فی گھنٹہ 120 تک محدود ہیں۔
بکنگ ویجیٹ
بکنگ وجٹ ابتدائی رسائی میں منظور شدہ شراکت داروں کے لیے کھلا ہے: ایک اسکرپٹ ٹیگ nwp.ae کے ٹورز اور ٹرانسفرز آپ کی سائٹ پر عوامی قیمت پر، بارہ زبانوں میں، آپ کے نام کے ساتھ اور ہر بکنگ پر آپ کے پارٹنر کوڈ سمیت دکھاتا ہے۔ اسے API کے ذریعے ترتیب دیں: بکنگ وجٹ کے اینڈ پوائنٹس اس کی سیٹنگز پڑھتے اور بدلتے ہیں اور پیسٹ کرنے کے لیے اسنیپٹ واپس کرتے ہیں۔