API เที่ยวบิน
ปฏิทินค่าโดยสาร ค้นหาจากสายการบิน 900+ แห่ง คิดราคาข้อเสนอ เพิ่มบริการเสริม สร้างคำสั่งซื้อ ออกตั๋ว ขอใบเสนอราคาและดำเนินการคืนเงิน
ปฏิทินค่าโดยสาร
GET /v1/flights/price-calendar?origin=DXB&destination=LHR&departureFrom=2026-11-01&departureTo=2026-11-30 ส่งคืนค่าโดยสารที่ถูกที่สุดจากแคชของแต่ละวันสำหรับเส้นทางนั้น ในสกุลเงินของคุณ พร้อมบอกความสดใหม่ของแคช เพิ่ม returnFrom / returnTo เพื่อดูยอดรวมไป-กลับต่อคู่วันที่ และ cabin เพื่อจำกัดชั้นโดยสาร ข้อมูลนี้มาจากแคชราคาของเรา — ได้ทันทีและไม่นับเป็นการค้นหากับซัพพลายเออร์ — จึงใช้แสดงปฏิทินหรือแถบ “วันที่ถูกที่สุด” ก่อนการค้นหาจริงได้
ค้นหา
POST /v1/flights/search โดยใช้หนึ่ง slice สำหรับเที่ยวเดียว สอง slice สำหรับไป-กลับ และสูงสุดหก slice สำหรับหลายเมือง จำนวนผู้โดยสารแยกตามประเภท ชั้นโดยสารและจำนวนจุดแวะพักสูงสุด (maxStops) เป็นแบบไม่บังคับ เมื่อใช้ wait=true การตอบกลับจะมีทุกข้อเสนอหลังจากซัพพลายเออร์ทั้งหมดตอบแล้ว เมื่อใช้ wait=false คุณจะได้ searchId และ poll GET /v1/flights/search/{searchId} ด้วย cursor จนกว่า complete จะเป็น true
แต่ละข้อเสนอมี offerId ที่เป็นค่าทึบ ยอดรวมในสกุลเงินของคุณพร้อมรายละเอียดต่อผู้โดยสาร slices → segments (สายการบิน เลขเที่ยวบิน เวลา เครื่องบิน ห้องโดยสาร สัมภาระ) สรุปเงื่อนไขค่าโดยสาร และเวลาหมดอายุ ข้อเสนอใช้ได้ตลอดอายุของเซสชันการค้นหา (ประมาณ 20 นาที)
ราคาและกฎ
POST /v1/flights/offers/{offerId}/price ตรวจสอบค่าโดยสารกับซัพพลายเออร์อีกครั้งทันทีก่อนคุณยืนยัน และส่งคืนราคาที่ยืนยันแล้ว ภาษี และข้อมูลผู้โดยสารที่สายการบินกำหนด (เอกสาร วันเกิด สมาชิกสะสมไมล์) GET .../fare-rules ส่งคืนข้อความค่าปรับ GET .../ancillaries แสดงสัมภาระแบบเสียเงินและตัวเลือกที่คุณเพิ่มลงในคำสั่งซื้อได้
บริการเสริม (สัมภาระเพิ่ม)
GET /v1/flights/offers/{offerId}/ancillaries แสดงรายการบริการเสริมแบบเสียเงินที่สายการบินเสนอสำหรับค่าโดยสารนั้น — ปัจจุบันคือน้ำหนักสัมภาระโหลดใต้เครื่องเพิ่มเติม แต่ละรายการมี key จำนวนชิ้น / น้ำหนัก และราคาต่อผู้โดยสาร แบบเสียเงินหมายถึงคิดราคาเพิ่มจากค่าโดยสารและเรียกเก็บพร้อมคำสั่งซื้อ ต่างจากน้ำหนักสัมภาระที่รวมอยู่แล้วซึ่งแสดงในข้อเสนอ
หากต้องการซื้อ ให้เพิ่ม ancillaries[] ใน POST /v1/flights/orders: หนึ่งรายการต่อบริการเสริมหนึ่งอย่าง พร้อม key และ passengerIndex (นับจาก 0 ตามลำดับใน passengers) บริการเสริมจะถูกคิดราคา จอง และออกตั๋วพร้อมกับคำสั่งซื้อ และแสดงในยอดรวมตั๋วของคำสั่งซื้อ ไม่สามารถเพิ่มบริการเสริมในคำสั่งซื้อที่ออกตั๋วแล้ว การเลือกที่นั่งจะใช้รูปแบบเดียวกันในอนาคต
{
"offerId": "fo_7Gk2Qp9LcKM5aGqrMQOIzJko",
"passengers": [{ "type": "ADT", "gender": "M", "firstName": "SAM", "lastName": "TRAVELLER", "dateOfBirth": "1990-05-04" }],
"contact": { "email": "[email protected]", "phone": "+971501234567" },
"ancillaries": [{ "key": "BAG20-1", "passengerIndex": 0 }]
}สร้างคำสั่งซื้อ
POST /v1/flights/orders พร้อม offerId ผู้โดยสาร (ชื่อตามหนังสือเดินทาง ประเภท วันเกิด เอกสารสำหรับเส้นทางระหว่างประเทศ) ผู้ติดต่อ และ ancillaries[] แบบไม่บังคับ (ดูด้านบน) และใส่ Idempotency-Key คุณจะได้รับ orderId, PNR ของสายการบิน เวลาจำกัดในการออกตั๋ว และสถานะ held ในแซนด์บ็อกซ์ คำสั่งซื้อจะไปที่ระบบทดสอบของซัพพลายเออร์และไม่มีการเรียกเก็บเงิน ในระบบใช้งานจริง เงินฝากจะถูกกันไว้
ออกตั๋ว
POST /v1/flights/orders/{orderId}/issue (ต้องมี Idempotency-Key) ออกตั๋วอิเล็กทรอนิกส์และส่งคืนหมายเลขตั๋วของผู้โดยสารแต่ละคน อ่านคำสั่งซื้อได้ทุกเมื่อด้วย GET /v1/flights/orders/{orderId} สถานะจะเปลี่ยนตามลำดับ held → issued → cancelled/refunded
โมฆะ ยกเลิก และคืนเงิน
GET /v1/flights/orders/{orderId}/refund-quote บอกว่าการยกเลิกจะได้เงินคืนเท่าไรตามกฎค่าโดยสาร (การทำโมฆะภายในวันเดียวกันมักไม่มีค่าใช้จ่าย) POST /v1/flights/orders/{orderId}/cancel ยืนยันการยกเลิก เงินคืนจะเข้าบัญชีแยกประเภทเงินฝากของคุณ ดูได้ในพอร์ทัลนักพัฒนา