/v2/flight/init-searchসার্চ শুরু করুন
ফায়ার-অ্যান্ড-ফরগেট। সাথে সাথে searchId পাবেন; ভাড়া আসবে পোল করলে।
২০০ মানে সার্চ শুরু হয়েছে, রেজাল্ট এসেছে এমন নয়। প্রোভাইডার ব্যাকগ্রাউন্ডে জিজ্ঞেস হয়। স্টোরফ্রন্ট এজেন্সি প্রিন্সিপাল থেকে সার্ভারে লাগে যাতে রো আপনার মার্কআপে দাম হয় — ক্লায়েন্ট তা বদলাতে পারে না।
cURL
curl -X POST https://booking.aerolink.dev/v2/flight/init-search \
-H "Authorization: Bearer eyJ..." \
-H "Content-Type: application/json" \
-d '{"originDest":[{"departure":"DAC","arrival":"DXB","date":"2026-10-15"}],"travellers":{"adults":1,"children":0,"kids":0,"infants":0},"tripType":"ONE_WAY","cabinClass":"ECONOMY"}'হেডার
AuthorizationBearerকাস্টমার অ্যাকসেস টোকেন
Content-Typeapplication/jsonJSON বডি
AuthorizationBearer আবশ্যক | কাস্টমার অ্যাকসেস টোকেন |
Content-Typeapplication/json আবশ্যক | JSON বডি |
রিকোয়েস্ট
{
"originDest": [
{ "departure": "DAC", "arrival": "DXB", "date": "2026-10-15" }
],
"travellers": { "adults": 1, "children": 0, "kids": 0, "infants": 0 },
"tripType": "ONE_WAY",
"cabinClass": "ECONOMY",
"preferredAirlines": ["EK"],
"isStudentFare": false,
"isOmrahFare": false,
"directFlight": false,
"radiusSearch": { "enabled": false, "miles": 50, "allowBorderCross": true }
}বডি ফিল্ড
originDestarrayপ্রতি লেগে একটি এন্ট্রি। খালি চলবে না।
originDest[].departurestringঅরিজিন IATA। ট্রিম ও আপারকেস।
originDest[].arrivalstringগন্তব্য IATA
originDest[].datestringযাত্রার তারিখ
travellers.adultsnumberকমপক্ষে ১
travellers.childrennumberchildAges না থাকলে বয়স ৮
travellers.kidsnumberchildAges না থাকলে বয়স ৫
travellers.infantsnumberchildAges না থাকলে বয়স ১
travellers.childAgesnumber[]থাকলে children, kids ও infants পুরোপুরি সরিয়ে দেয়।
tripTypeenumONE_WAY, RETURN, …
cabinClassenumECONOMY, PREMIUM_ECONOMY, BUSINESS, PREMIUM_BUSINESS, FIRST_CLASS
preferredAirlinesstring[]কোন PCC সোর্স জিজ্ঞেস হবে তা সীমাবদ্ধ করে
isStudentFarebooleanSabre pax টাইপ STU
isOmrahFarebooleanSabre pax টাইপ ADR
directFlightbooleanশুধু ননস্টপ। কানেক্টিং ইটিনারেরি মার্জের পর বাদ।
radiusSearchobjectSabre কাছের-এয়ারপোর্ট শপ। BdFare উপেক্ষা করে। চালু থাকলে miles ১–১০০।
originDestarray আবশ্যক | প্রতি লেগে একটি এন্ট্রি। খালি চলবে না। |
originDest[].departurestring আবশ্যক | অরিজিন IATA। ট্রিম ও আপারকেস। |
originDest[].arrivalstring আবশ্যক | গন্তব্য IATA |
originDest[].datestring আবশ্যক | যাত্রার তারিখ |
travellers.adultsnumber আবশ্যক | কমপক্ষে ১ |
travellers.childrennumber ঐচ্ছিক | childAges না থাকলে বয়স ৮ |
travellers.kidsnumber ঐচ্ছিক | childAges না থাকলে বয়স ৫ |
travellers.infantsnumber ঐচ্ছিক | childAges না থাকলে বয়স ১ |
travellers.childAgesnumber[] ঐচ্ছিক | থাকলে children, kids ও infants পুরোপুরি সরিয়ে দেয়। |
tripTypeenum ঐচ্ছিক | ONE_WAY, RETURN, … |
cabinClassenum ঐচ্ছিক | ECONOMY, PREMIUM_ECONOMY, BUSINESS, PREMIUM_BUSINESS, FIRST_CLASS |
preferredAirlinesstring[] ঐচ্ছিক | কোন PCC সোর্স জিজ্ঞেস হবে তা সীমাবদ্ধ করে |
isStudentFareboolean ঐচ্ছিক | Sabre pax টাইপ STU |
isOmrahFareboolean ঐচ্ছিক | Sabre pax টাইপ ADR |
directFlightboolean ঐচ্ছিক | শুধু ননস্টপ। কানেক্টিং ইটিনারেরি মার্জের পর বাদ। |
radiusSearchobject ঐচ্ছিক | Sabre কাছের-এয়ারপোর্ট শপ। BdFare উপেক্ষা করে। চালু থাকলে miles ১–১০০। |
রেসপন্স
{
"message": "Success",
"data": {
"searchId": "9f2c...",
"initiatedAt": "2026-09-02T15:30:00"
},
"error": null
}রেসপন্স ফিল্ড
searchIdstringএটি দিয়ে রেজাল্ট পোল করুন
initiatedAtdatetimeসার্চ কখন শুরু
searchIdstring | এটি দিয়ে রেজাল্ট পোল করুন |
initiatedAtdatetime | সার্চ কখন শুরু |
বিজনেস রুল
- এজেন্সি ইটিনারেরি ক্যাশ কির অংশ, তাই আলাদা মার্কআপের দুই স্টোরফ্রন্ট ক্যাশ ভাগ করে না।
- IATA কোড আপনার জন্য ট্রিম ও আপারকেস হয়।
এরর
খালি originDest, লেগ ফিল্ড নেই, travellers নেই, adults < ১, নেগেটিভ চাইল্ড, বা স্টুডেন্ট ও ওমরাহ একসাথে।
টোকেন নেই বা B2C_FLIGHT_SEARCH নেই
| HTTP | message | কখন |
|---|---|---|
| 400 | validation failed | খালি originDest, লেগ ফিল্ড নেই, travellers নেই, adults < ১, নেগেটিভ চাইল্ড, বা স্টুডেন্ট ও ওমরাহ একসাথে। |
| 401 / 403 | UNAUTHORIZED | টোকেন নেই বা B2C_FLIGHT_SEARCH নেই |