Search-flight Bamboo
# 1. Tổng quan
- Action URL:
/api/v1/bamboo/flight/search - Đặc tả chi tiết: Swagger Link (opens new window)
- Mô tả:
- Tính năng này cho phép tìm kiếm chuyến bay và giá vé theo tiêu chí một chiều.
- Có thể truyền các tham số tùy chọn để lọc kết quả theo mong muốn, bao gồm:
- Chế độ tìm kiếm
- Điểm dừng
# 2. Hướng dẫn
- Thực hiện request từ thông tin chặng bay muốn tìm kiếm, số lượng khách, các tùy chọn khác.
- POST tới API action URL để nhận về kết quả tìm kiếm chuyến bay.
- Nhận về response và xử lý dữ liệu ở phía ứng dụng của đại lý.
# 3. Parameters
# Bảng mô tả Parameters
| Thuộc tính | Bắt buộc | Kiểu dữ liệu | Mô tả |
|---|---|---|---|
x-api-token | Có | String | Token API (F10) |
x-api-password | Có | String | Mật khẩu API (F10) |
x-api-account | Có | String | Tài khoản API (F10) |
# 4. Request Body
# 4.1 Ví dụ Request Body
{
"availability_searches": [
{
"origin": "string",
"destination": "string",
"flight_date": "string(yyyy-mm-dd)"
}
],
"pax_types": [
{
"type": "string",
"count": "number"
}
],
"trip_type": "string",
"point_of_purchase": "string"
}
# 4.2 Bảng mô tả cấu trúc dữ liệu
| Thuộc tính | Bắt buộc | Kiểu dữ liệu | Mô tả | Ví dụ |
|---|---|---|---|---|
Origin | Có | String | Điểm khởi hành | |
Destination | Có | String | Điểm đến | |
Flight_date | Có | String | Ngày bay | |
Pax_types | Có | List_paxtype | Danh sách khách | |
Type | Có | String | Loại khách | |
Count | Có | String | Số lượng | |
Trip_type | Có | String | Loại chuyến bay | |
Point_of_purchase | Có | String | Mã tiền tệ |
# 5. Response
# 5.1 Ví dụ Response
{
"success": true,
"status_code": 200,
"message": "Tìm kiếm chuyến bay thành công",
"request_id": "req_123456",
"flight_options": [
{
"option_id": "opt_123456",
"segments": [
{
"SegmentId": 0,
"Airline": "string",
"Operator": "string",
"StartPoint": "string",
"EndPoint": "string",
"DepartDate": "string",
"ArriveDate": "string",
"StartTerminal": "string",
"EndTerminal": "string",
"FlightNumber": "string",
"Equipment": "string",
"Duration": 0,
"HasStop": true,
"StopPoint": "string",
"StopTime": 0,
"TechnicalStop": "string",
"DayChange": true,
"StopOvernight": true,
"ChangeStation": true,
"ChangeAirport": true,
"MarriageGrp": "string",
"FlightsMiles": 0,
"Status": "string"
}
],
"fare": {
"fare_type": "ECONOMY",
"price": 1500000,
"currency": "VND",
"taxes_and_fees": 150000,
"total_price": 1650000
},
"total_duration": 120,
"flight_count": 1
}
],
"total_options": 5,
"search_duration": 1500
}
# 5.2 Bảng mô tả Cấu trúc SearchFlightRes
| Thuộc tính | Kiểu dữ liệu | Mô tả | Ví dụ |
|---|---|---|---|
success* | boolean | Trạng thái thành công của yêu cầu | |
status_code* | number | Mã trạng thái HTTP/ứng dụng | |
message* | string | Thông báo kết quả tìm kiếm | |
request_id* | string | ID yêu cầu phục vụ truy vết | |
flight_options* | List<BambooFlightOptionDto> | Danh sách các tùy chọn chuyến bay trả về | |
Total_duration | number | Thời gian xử lý tổng chi phí | |
Flight_count | number | Thứ tự chuyến bay | |
Total_options | number | Tổng số tùy chọn chuyến bay | |
Search_duration | number | Thời gian xử lý tìm kiếm (ms) |
# 5.3 Bảng mô tả Cấu trúc flight_option
| Thuộc tính | Kiểu dữ liệu | Mô tả | Ví dụ |
|---|---|---|---|
Option_id | string | Mã duy nhất của chuyến bay | |
segment | List | Danh sách chặng bay | |
Fare | List | Giá vé |
# 5.4 Bảng mô tả Cấu trúc segment
| Thuộc tính | Kiểu dữ liệu | Mô tả | Ví dụ |
|---|---|---|---|
SegmentId | number (integer) | ID của chặng bay (bắt đầu từ 0) | |
Airline | string | Hãng khai thác (mã IATA/ICAO hoặc tên) | |
Operator | string | Đơn vị vận hành thực tế (code-share nếu có) | |
StartPoint | string | Điểm khởi hành (mã sân bay, ví dụ: HAN) | |
EndPoint | string | Điểm đến (mã sân bay, ví dụ: SGN) | |
DepartDate | string (ISO datetime) | Thời gian cất cánh | |
ArriveDate | string (ISO datetime) | Thời gian hạ cánh | |
StartTerminal | string | Nhà ga khởi hành (ví dụ: T1) | |
EndTerminal | string | Nhà ga đến (ví dụ: T2) | |
FlightNumber | string | Số hiệu chuyến bay (ví dụ: QH123) | |
Equipment | string | Loại tàu bay (ví dụ: A321) | |
Duration | number (phút) | Thời lượng bay | |
HasStop | boolean | Có dừng kỹ thuật hay không | |
StopPoint | string | Điểm dừng (mã sân bay) nếu có | |
StopTime | number (phút) | Thời gian dừng | |
TechnicalStop | string | Ghi chú dừng kỹ thuật (refuel/maintenance) | |
DayChange | boolean | Có đổi ngày khi đến (+1 ngày) | |
StopOvernight | boolean | Dừng qua đêm hay không | |
ChangeStation | boolean | Có đổi trạm trong cùng thành phố | |
ChangeAirport | boolean | Có đổi sân bay khác | |
MarriageGrp | string | Nhóm marriage group trong PNR/fare | |
FlightsMiles | number (integer) | Số dặm bay | |
Status | string | Tình trạng chặng (Confirmed/Waitlisted/Canceled) |
# 5.5 Bảng mô tả Cấu trúc fare
| Thuộc tính | Kiểu dữ liệu | Mô tả | Ví dụ |
|---|---|---|---|
Fare_type | string | Loại vé | |
Price | number | Giá cước | |
Currency | string | Mã tiền tệ | |
Taxes_and_fees | number | Thuế sân bay | |
Total_price | number | Tổng tiền phải trả |