Cancel-PNR
# 1. Tổng quan
- Action URL:
/api/v1/bamboo/manager/pnr-cancel - Đặc tả chi tiết: Swagger Link (opens new window)
- Mô tả:
Tính năng này cho phép truy xuất thông tin PNR.
# 2. Hướng dẫn
- Thực hiện request từ thông tin mã máy bay để hủy PNR.
- POST tới API action URL để nhận về kết quả huỷ.
- 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
{
"pnr_number": "EKA0BZ",
"air_booking_id": "FLN202510241028051761276485488213818"
}
# 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ụ |
|---|---|---|---|---|
Pnr_number | Có | string | Số PNR cần truy xuất | "QH1234" |
Air_booking_id | Có | string | ID đặt chuyến bay | "AID5678" |
# 5. Response
# 5.1 Ví dụ Response
{
"statusCode": 200,
"timestamp": "2025-10-24T03:36:43.035Z",
"path": "/api/v1/bamboo/manager/pnr-cancel",
"message": "Hủy PNR Bamboo Airways thành công",
"data": {
"success": true,
"id": "FLN202510241028051761276485488213818",
"message": [
{
"message": "Thành công!"
}
],
"data": {
"error": null,
"pnr_number": "EKA0BZ",
"pnr_status": "Cancel",
"pnr_on_hold": false,
"creation_datetime": "2025-10-24 03:36:00",
"last_modified_datetime": "",
"number_of_seats": 1,
"guest_details": [
{
"given_name": "NAM",
"sur_name": "KHANH",
"name_prefix": "MR",
"type": "ADULT",
"guest_id": 2
}
],
"ssr_details": [],
"seat_details": [],
"fee_details": null,
"emd_deposits": [],
"pnr_contact": {
"address": {
"email": "HOC22100@GMAIL.COM",
"phone_number": "+84969573782"
},
"name_prefix": "",
"language": "EN",
"sur_name": "",
"given_name": ""
},
"itin_price": {
"guest_price_break_down": []
},
"total_amount_paid": {},
"total_amount_tobe_paid": {},
"time_limit_detail": {},
"refund_amount": {}
}
},
"errors": null
}
# 5.2 Response (top-level)
| Thuộc tính | Kiểu dữ liệu | Mô tả | Ví dụ |
|---|---|---|---|
statusCode | number (integer) | Mã trạng thái HTTP. | 200 |
timestamp | string (ISO 8601) | Thời điểm phản hồi. | "2025-10-28T09:00:00Z" |
path | string | Đường dẫn API. | "/api/v1/bamboo/manager/pnr-cancel" |
message | string | Thông báo chung. | "Cancel success" |
data | object | Khối dữ liệu chi tiết. | {...} |
errors | array<object> | null | Danh sách lỗi nếu có. | null |
# data
| Thuộc tính | Kiểu dữ liệu | Mô tả | Ví dụ |
|---|---|---|---|
success | boolean | Trạng thái thành công phía Bamboo. | true |
id | string | ID truy vết/yêu cầu Bamboo. | "REQ123456" |
message | array<object> | Danh sách thông điệp chi tiết. | [{}] |
data | object | Dữ liệu chi tiết sau khi hủy PNR. | {...} |
# data.data
| Thuộc tính | Kiểu dữ liệu | Mô tả | Ví dụ |
|---|---|---|---|
error | string | null | Lỗi nếu có. | null |
pnr_number | string | Mã đặt chỗ (PNR). | "QH1234" |
pnr_status | string | Trạng thái PNR (Cancel/Active/...). | "Cancel" |
pnr_on_hold | boolean | PNR đang giữ chỗ hay không. | false |
creation_datetime | string (YYYY-MM-DD HH:mm:ss) | Thời điểm tạo/cập nhật thao tác. | "2025-10-28 08:00:00" |
last_modfied_datetime | string | Thời điểm cập nhật gần nhất (nếu có). | "2025-10-28 08:10:00" |
number_of_seats | number (integer) | Số ghế. | 2 |
guest_details | array<object> | Danh sách khách. | [{}] |
ssr_details | array<object> | Dịch vụ bổ sung (nếu có). | [] |
seat_details | array<object> | Chỗ ngồi (nếu có). | [] |
fee_details | object | null | Chi tiết phí bổ sung (nếu có). | null |
emd_deposits | array<object> | Các EMD/phiếu thu kèm theo (nếu có). | [] |
pnr_contact | object | Thông tin liên hệ PNR. | {...} |
itin_price | object | Thông tin giá hành trình. | {...} |
total_amount_paid | object | Tổng đã thanh toán (nếu có). | {} |
total_amount_tobe_paid | object | Tổng còn phải trả (nếu có). | {} |
time_limit_detail | object | Thông tin hạn (nếu có). | {} |
refund_amount | object | Thông tin hoàn tiền (nếu có). | {} |
# data.data.guest_details[]
| Thuộc tính | Kiểu dữ liệu | Mô tả | Ví dụ |
|---|---|---|---|
given_name | string | Tên khách. | "DUY" |
sur_name | string | Họ khách. | "TRAN" |
name_prefix | string | Xưng hô. | "Mr" |
type | string (enum) | Loại khách: ADULT / CHILD / INFANT. | "ADULT" |
guest_id | number (integer) | ID khách. | 1 |
# data.data.pnr_contact
| Thuộc tính | Kiểu dữ liệu | Mô tả | Ví dụ |
|---|---|---|---|
address | object | Địa chỉ liên hệ. | {...} |
name_prefix | string | Xưng hô người liên hệ. | "Ms" |
language | string | Ngôn ngữ. | "vi" |
sur_name | string | Họ người liên hệ. | "Nguyen" |
given_name | string | Tên người liên hệ. | "Hoa" |
# data.data.pnr_contact.address
| Thuộc tính | Kiểu dữ liệu | Mô tả | Ví dụ |
|---|---|---|---|
email | string (email) | Email liên hệ. | "example@gmail.com" |
phone_number | string | Số điện thoại liên hệ. | "0901234567" |
# data.data.itin_price
| Thuộc tính | Kiểu dữ liệu | Mô tả | Ví dụ |
|---|---|---|---|
guest_price_break_down | array<object> | Chi tiết giá theo từng khách. | [{}] |
# Các trường trống/khác
| Thuộc tính | Kiểu dữ liệu | Mô tả | Ví dụ |
|---|---|---|---|
ssr_details | array<object> | Danh sách dịch vụ bổ sung (rỗng trong mẫu). | [] |
seat_details | array<object> | Danh sách ghế (rỗng trong mẫu). | [] |
total_amount_paid | object | Tổng đã thanh toán (rỗng trong mẫu). | {} |
total_amount_tobe_paid | object | Tổng còn phải trả (rỗng trong mẫu). | {} |
time_limit_detail | object | Thông tin hạn (rỗng trong mẫu). | {} |
refund_amount | object | Thông tin hoàn tiền (rỗng trong mẫu). | {} |