1.1 Tìm kiếm chuyến bay thông thường

Phương thức tìm kiếm chuyến bay thông thường

Mô tả

  • Phương thức này cho phép tìm kiếm các chuyến bay:

            - Một chiều.

            - Khứ hồi.

            - Nhiều chặng.

  • Các tùy chọn tìm kiếm nâng cao khác:

            - Tìm kiếm theo hãng hàng không xác định.

            - Tùy chọn chế độ tổ chức giá vé.

Nội địa

Quốc Tế

Kết nối


{

"Adt": 0, "Chd": 0, "Inf": 0, "ViewMode": "string", "ListFlight": [{ "StartPoint": "string", "EndPoint": "string", "DepartDate": "string", "Airline": "string" ],
} "HeaderUser": "string", "HeaderPass": "string", "ProductKey": "string", "Language": "string", "AgentAccount": "string", "AgentPassword": "string" }


Bảng mô tả cấu trúc dữ liệu SearchRequest

Trường thông tin
Bắt buộc
Mô tả
Kiểu dữ liệu
Ví dụ
Adt
Số lượng khách người lớn
int
1
Chd

Số lượng khách trẻ em
int
0
Inf

Số lượng khách trẻ sơ sinh
int
0
ViewMode
KhôngChế độ hiển thị giá (mặc định để trống)
string

ListFlight

Danh sách thông tin các chặng bay muốn tìm kiếm
FlightRequest[]

Thông tin xác thực API

Xemmôtảởmục
Các thuộc tính dùng chung


Bảng mô tả cấu trúc dữ liệu FlightRequest

Trường thông tin
Bắt buộc
Mô tả
Kiểu dữ liệu
Ví dụ
StartPoint
Mã sân bay, thành phố đi
string
HAN
EndPoint

Mã sân bay, thành phố đến
string
SGN
DepartDate

Ngày khởi hành (định dạng ddMMyyyy)
string
17092019
Airline
KhôngMã hãng hàng không. Để trống nếu muốn tìm tất cả.
string
VN
  • Hướng dẫn và lưu ý:

           - Tổng số lượng hành khách phải nhỏ hơn hoặc bằng 9.

           - Số lượng khách trẻ sơ sinh phải nhỏ hơn hoặc bằng số lượng khách người lớn.

           - Chế độ hiển thị ViewMode:

                  ✓ = default hoặc trống: Chế độ mặc định.

                  ✓ = combine: Hệ thống sẽ tự động ghép các cặp chuyến bay trên các hãng LCC thành một lựa chọn giá (FareData), các chuyến bay quốc tế trên GDS vẫn giữ nguyên cấu trúc.

                  ✓ ViewMode = split: Hệ thống sẽ tự động tách các chuyến bay trong FareData thành các FareData có giá tương tự, nhưng chứa từng cặp chuyến bay duy nhất, các chuyến bay trên các hãng LCC giữ nguyên.

           - Chuyến bay 1 chiều: ListFlight gồm 1 phần tử FlightRequest

           - Chuyến bay khứ hồi: ListFlight gồm 2 phần tử FlightRequest, thỏa mãn điều kiện:

                  ✓ FlightRequest[0].StartPoint = FlightRequest[1].EndPoint

                  ✓ FlightRequest[0].EndPoint = FlightRequest[1].StartPoint

                  ✓ FlightRequest[0].DepartDate <= FlightRequest[1]. DepartDate

           - Chuyến bay nhiều chặng: ListFlight chứa từ 2 phần tử FlightRequest trở lên. Nếu ListFlight chứa 2 phần tử, nhưng điểm đầu, điểm cuối khác nhau (không thỏa điều kiện khứ hồi ở trên), thì cũng được tính là tìm kiếm nhiều chặng.

           - Nếu đối tác muốn tìm kiếm chuyến bay trên từng hãng hàng không, truyền vào tham số Airline mã hãng, hệ thống sẽ chỉ tìm kiếm và trả về dữ liệu của hãng hàng không đó. Đối tác cần nắm được lịch bay của hãng hàng không trên các chặng bay để tìm kiếm ra kết quả.

  • Ví dụ:

Chuyến bay 1 chiều


{ "Adt": 1, "Chd": 1, "Inf": 1, "ViewMode": "", "ListFlight": [{ "StartPoint": "HAN", "EndPoint": "SGN", "DepartDate": "17092019", "Airline": "" } ], "HeaderUser": "datacom", "HeaderPass": "xxxxxxx", "ProductKey": "xxxxxxxxxxxx", "Language": "vi", "AgentAccount": "DC00001", "AgentPassword": "xxxxxx" }


Chuyến bay khứ hồi


{ "Adt": 1, "Chd": 1, "Inf": 1,
"ViewMode": "",
"ListFlight": [{
],
},{
}
"HeaderUser": "datacom", "HeaderPass": "xxxxxxx",
"StartPoint": "HAN",
"EndPoint": "SGN",
"DepartDate": "17092019",
"Airline": ""
"StartPoint": "SGN",
"EndPoint": "HAN",
"DepartDate": "25092019",
"Airline": ""
"ProductKey": "xxxxxxxxxxxx",
"Language": "vi",
"AgentAccount": "DC00001",
"AgentPassword": "xxxxxx"

}



Chuyến bay nhiều chặng

{
"Adt": 1, "Chd": 1, "Inf": 1, "ViewMode": "", "ListFlight": [{ "StartPoint": "HAN", "EndPoint": "DAD", "DepartDate": "17092019", "Airline": "" },{ "StartPoint": "DAD", "EndPoint": "SGN", "DepartDate": "25092019", "Airline": "" },{ "StartPoint": "SGN", "EndPoint": "HAN", "DepartDate": "30092019", "Airline": "" } ], "HeaderUser": "datacom", "HeaderPass": "xxxxxxx", "ProductKey": "xxxxxxxxxxxx", "Language": "vi", "AgentAccount": "DC00001", "AgentPassword": "xxxxxx"

}


Kết quả trả về

  • Cấu trúc dữ liệu trả về: SearchResponse


{
"FlightType": "string",
"Session": "string",
"Itinerary": 0,
"ListFareData": [
{
"FareDataId": 0,
"Airline": "string",
"Itinerary": 0,
"Leg": 0,
"Promo": true,
"Currency": "string",
"System": "string",
"Adt": 0,
"Chd": 0,
"Inf": 0,
"FareAdt": 0,

"FareChd": 0,
"FareInf": 0,
"TaxAdt": 0,
"TaxChd": 0,
"TaxInf": 0,
"FeeAdt": 0,
"FeeChd": 0,
"FeeInf": 0,
"ServiceFeeAdt": 0,
"ServiceFeeChd": 0,
"ServiceFeeInf": 0,
"TotalNetPrice": 0,
"TotalServiceFee": 0,
"TotalPrice": 0,

"ListFlight": [
{
"FlightId": 0,
"Leg": 0,
"Airline": "string",
"StartPoint": "string",
"EndPoint": "string",
"StartDate": "2019-04-09T19:49:45.889Z",
"EndDate": "2019-04-09T19:49:45.889Z",
"FlightNumber": "string",
"StopNum": 0,
"HasDownStop": true,
"Duration": 0,
"NoRefund": true,
"GroupClass": "string",
"FareClass": "string",
"Promo": true,
"FlightValue": "string",
"ListSegment": [
{
"Id": 0,
"Airline": "string",
"StartPoint": "string",
"EndPoint": "string",
"StartTime": "2019-04-09T19:49:45.889Z",
"EndTime": "2019-04-09T19:49:45.890Z",
"FlightNumber": "string",
"Duration": 0,
"Class": "string",
"Plane": "string",
"StartTerminal": "string",
"EndTerminal": "string",
"HasStop": true,
"StopPoint": "string",
"StopTime": 0,
"DayChange": true,
"StopOvernight": true,
"ChangeStation": true,
"ChangeAirport": true,
"LastItem": true,
"HandBaggage": "string"
}
]
}
]
}
],
"Status": true,
"ErrorCode": "string",
"Message": "string"
}


  • Đặc tả cấu trúc dữ liệu trả về.

Bảng mô tả cấu trúc dư liệu trả về SearchResponse

Trường thông tin
Mô tả
Kiểu dữ liệu
Ví dụ
Status
Kết quả kết nối
bool
True
ErrorCode
Mã lỗi (nếu có)
string

Message
Thông báo lỗi (nếu có)
string

FlightType
Loại chuyến bay domestic: Nội địa international: Quốc tế
string
Domestic
Session
Phiên làm việc
string
DC000HANSG...
Itinerary
Kiểu hành trình
int
1
ListFareData
Danh sách dữ liệu chuyến bay và giá vé
FareData[]

Bảng mô tả cấu trúc dữ liệu FareData

Trường thông tin
Mô tả
Kiểu dữ liệu
Ví dụ
FareDataId
Mã định danh
int
1
Airline
Hãng hàng không
string
VN
Itinerary
Kiểu hành trình
int
1
Leg
Thứ tự chặng bay
int
0
Promo
Giá vé khuyến mại
bool
False
Currency
Mã tiền tệ
string
VND
System
Hệ thống dữ liệu
string
LCC
Adt
Số lượng khách người lớn
int
1
Chd
Số lượng khách trẻ em
int
0
Inf
Số lượng khách trẻ sơ sinh
int
0
FareAdt
Giá vé người lớn
double
1.000.000
FareChd
Giá vé trẻ em
double
750.000
FareInf
Giá vé trẻ sơ sinh
double
100.000
TaxAdt
Thuế người lớn
double
150.000
TaxChd
Thuế trẻ em
double
75.000
TaxInf
Thuế trẻ sơ sinh
double
10.000
FeeAdt
Phí người lớn
double
80.000
FeeChd
Phí trẻ em
double
50.000
FeeInf
Phí trẻ sơ sinh
double
30.000
ServiceFeeAdt
Phí dịch vụ người lớn
double
100.000
ServiceFeeChd
Phí dịch vụ trẻ em
double
100.000
ServiceFeeInf
Phí dịch vụ trẻ sơ sinh
double
100.000
TotalNetPrice
Tổng giá vé chưa gồm phí dịch vụ (Giá gốc từ hãng)
double
1.850.000

TotalServiceFee
Tổng phí dịch vụ
double
300.000
TotalPrice
Tổng giá vé
double
2.150.000
ListFlight
Danh sách chuyến bay của lựa chọn giá
Flight[]

Bảng mô tả cấu trúc dữ liệu Flight

Trường thông tin
Mô tả
Kiểu dữ liệu
Ví dụ
FlightId
Mã định danh chuyến bay
int
1
Airline
Hãng hàng không
string
VN
Leg
Thứ tự chuyến bay
int
0
StartPoint
Mã sân bay khởi hành
string
HAN
EndPoint
Mã sân bay hạ cánh
string
SGN
StartDate
Ngày, giờ đi
DateTime

EndDate
Ngày, giờ đến
DateTime

FlightNumber
Số hiệu chuyến bay
string
VN123
StopNum
Số điểm dừng
int
0
HasDownStop
Có điểm quá cảnh bool
False
Duration
Tổng thời gian bay
int
120
NoRefund
Chuyến bay không hoàn hủy
bool
False
GroupClass
Hạng vé
string
Economy
FareClass
Mã hạng vé
string
M
Promo
Chặng bay có giá khuyến mại
bool
False
FlightValue
Giá trị chuyến bay
string

ListSegment
Danh sách các chặng bay
Segment[]

Bảng mô tả cấu trúc dữ liệu Segment









Tags:

Hướng dẫn kết nối API dữ liệu vé máy bay Datacom