ماحول، حدیں اور ورژن بندی
سینڈ باکس اور پروڈکشن کے لیے ایک بیس URL؛ جس کلید سے آپ دستخط کرتے ہیں وہی ماحول منتخب کرتی ہے۔
سینڈ باکس اور پروڈکشن، ایک بیس URL
بیس URL: https://api.dubaitrip.com/v1۔ سینڈ باکس اور پروڈکشن اسے مشترکہ استعمال کرتے ہیں؛ جس کلید سے آپ دستخط کرتے ہیں وہی ماحول منتخب کرتی ہے۔ dt_sbx_ کلید ہمارے فراہم کنندگان کے ٹیسٹ ماحول پر چلتی ہے — تلاشیں، قیمتیں، نرخ کی جانچ، آرڈرز، بکنگز، ٹکٹ جاری کرنا اور منسوخیاں سب ٹیسٹ انوینٹری پر شروع سے آخر تک کام کرتی ہیں، بغیر کسی حقیقی ٹکٹ یا واؤچر کے اور بغیر کوئی رقم کاٹے۔ پروڈکشن جائزے کے بعد جاری ہونے والی dt_live_ کلید لائیو انوینٹری تک پہنچتی ہے اور اس کا تصفیہ آپ کے ڈپازٹ سے ہوتا ہے۔
آپ کے ڈویلپر پورٹل میں سینڈ باکس اور پروڈکشن بکنگز الگ رکھی جاتی ہیں (ہر بکنگ پر نشان ہوتا ہے)، اور رسائی کے دائرے، حدیں اور IP اصول ہر ماحول کے لیے الگ الگ منظم ہوتے ہیں۔
ریٹ کی حدیں اور کوٹے
ہر کلید کو token bucket (فی سیکنڈ مسلسل درخواستیں اور ایک burst) اور روزانہ کوٹے کے ذریعے محدود کیا جاتا ہے۔ سینڈ باکس کی طے شدہ قدریں: 2 درخواستیں/سیکنڈ، burst 5، 2000 درخواستیں/دن۔ پروڈکشن کی حدیں ہر اکاؤنٹ کے لیے طے کی جاتی ہیں۔ bucket سے تجاوز پر Retry-After ہیڈر کے ساتھ 429 api_rate_limited ملتا ہے؛ کوٹہ ختم ہونے پر UTC آدھی رات تک 429 api_quota_exceeded ملتا ہے۔
بھاری تلاشیں ڈیزائن کے لحاظ سے غیر ہم وقت ہیں: فوراً searchId حاصل کر کے تلاش کے اینڈ پوائنٹ کو بار بار چیک کرنے کے لیے wait=false بھیجیں، یا ایک ہی کال میں مکمل نتیجہ پانے کے لیے wait=true۔ بار بار چیک کرنا (polling) بھی کسی دوسری درخواست کی طرح آپ کی حدوں میں شمار ہوتا ہے۔
لُک ٹو بُک تحفظ
تلاشیں آپ کی کی گئی بکنگز کے تناسب سے بھی محدود ہوتی ہیں۔ ایک متحرک مدت (طے شدہ طور پر 7 دن) کا ہر دن تلاشوں کی ایک مفت حد دیتا ہے، اور اس مدت میں کی گئی ہر بکنگ مزید cap تلاشیں شامل کرتی ہے — cap آپ کے اکاؤنٹ کے لیے طے شدہ فی بکنگ تلاشوں کی تعداد ہے جو ڈویلپر پورٹل پر دکھائی جاتی ہے۔ polling، قیمتیں، کرایہ اصول اور مواد پڑھنا کبھی شمار نہیں ہوتے؛ صرف پرواز اور ہوٹل کی تلاش کی کالز شمار ہوتی ہیں۔
حد ختم ہونے پر تلاشیں 429 look_to_book_exceeded لوٹاتی ہیں، ساتھ Retry-After ہیڈر جو اگلی UTC آدھی رات کی نشاندہی کرتا ہے، جب مدت کا سب سے پرانا دن خارج ہو جاتا ہے۔ ایک بکنگ حد کو فوراً دوبارہ کھول دیتی ہے۔ ڈویلپر پورٹل کا لُک ٹو بُک کارڈ لائیو کاؤنٹر، cap اور باقی مقدار دکھاتا ہے؛ اگر آپ کا انضمام جائز طور پر بکنگ سے کہیں زیادہ تلاش کرتا ہے تو انکار کے باوجود دوبارہ کوشش کرنے کے بجائے ہم سے cap بڑھانے کو کہیں۔
آئیڈیمپوٹینسی
رقم یا انوینٹری کو پابند کرنے والے اینڈ پوائنٹس — آرڈر یا بکنگ بنانا، جاری کرنا، منسوخ کرنا — کے لیے Idempotency-Key ہیڈر ضروری ہے (128 حروف تک کوئی بھی منفرد اسٹرنگ، UUID بہترین ہے)۔ اسی کلید کے ساتھ دوبارہ کوشش کرنے پر ڈپلیکیٹ بنانے کے بجائے اصل جواب واپس آتا ہے؛ دوبارہ استعمال شدہ کلید کے ساتھ مختلف باڈی پر 409 ملتا ہے۔
ورژن بندی
ورژن پاتھ میں ہوتا ہے (/v1)۔ اضافی تبدیلیاں — نئے اختیاری فیلڈز، نئی enum قدریں، نئے اینڈ پوائنٹس — ورژن بدلے بغیر جاری ہوتی ہیں، اس لیے احتیاط سے پارس کریں اور نامعلوم فیلڈز کو نظر انداز کریں۔ غیر مطابقت رکھنے والی تبدیلیوں کو منتقلی کی مہلت کے ساتھ نیا بڑا ورژن ملتا ہے؛ تبدیلیوں کا ریکارڈ رہنما ہر تبدیلی درج کرتا ہے۔