Cancellation | SubmitCancellation

Initiates a formal request to cancel a booking and calculate potential refund amounts. This is the first step in the cancellation request lifecycle.Only bookings in “Confirmed” or “Ticketed” status are eligible for cancellation requests.

When applyType = QUOTATION, the response will synchronously return the quotation result if available. The quotation result structure is aligned with ReceiveCancellationNotify for easier client-side integration.

Notice:
Product Scope: FareMarket and TechHub

POST

/flight/cancellation

Parameter

Field Mandatory Type Scope Description
action required String SubmitCancellation
key required String API security key applied from AeroHub
signature required String Refer to Guideline to generate.
timestamp required Int The ‘timestamp’ field should be a 10-digit Unix timestamp in seconds, used for encryption and data verification.
version optional String API version information, e.g. 3.2.0
request required Object
  applyType required String Application type. Supported values: QUOTATION, TICKET.
QUOTATION: submit a quote request first and confirm later.
TICKET: submit the cancellation request directly without a separate quote confirmation step.
  orderNum required String AeroHub Order number generated by Commit. Unique ID for bookings for FareMarket
  cancellationCategory required String For more details visit: Cancellation Category
  segments required Object[] Segment Information for Cancellation
    depAirport required String Departure airport IATA 3-Letter Codes
    arrAirport required String Arrival airport IATA 3-Letter Codes
    flightNumber required String Flight number, e.g. CA123 if flight number begin with 0, must waived all the zeros, e.g. CZ006 should be used as CZ6
  passengers required Object[] Passenger Information for Cancellation
    firstName required String FirstName,in case of middle name, format is firstName middleName
    lastName required String LastName
    birthday optional String Birthday, format: YYYYMMDD
  customerRemark optional String Customer remarks
  attachments optional Object[] The supported file types are as follows, JPG, JPEG, PNG, PDF.
    name required String File name with extension.
    url required String This field uses the url returned by the UploadAttachment interface.

Request_Example:

{
    "request": {
        "orderNum": "2028200311520366592",
        "cancellationCategory": "VOLUNTARY_CANCELLATION",
        "applyType": "QUOTATION",
        "segments": [
            {
                "depAirport": "LAS",
                "arrAirport": "LAX",
                "flightNumber": "AA1399"
            }
        ],
        "passengers": [
            {
                "firstName": "HUGO",
                "lastName": "OLIVEIRA",
                "birthday": "19900713"
            }
        ]
    },
      "key": "n93mPT7WzN6cLKC5",
      "signature": "YhQ2EoBQOfOnf/EOnuuuK5i+K+ncydeQhjFpoxYiEMo=",
      "timestamp": 1685116518,
    "action": "SubmitCancellation"
}

Response

Field Type Description
status Int 0 for success, others for failure, refer to status error appendix for details
msg String Return message, maximum 64 char
cancellationNum String Cancellation number generated by Aerohub
cancellationCategory String Returned when applyType = QUOTATION and quotation result is available. For more details visit: Cancellation Category
cancellationStatus String Returned when applyType = QUOTATION and quotation result is available. For more details visit: Cancellation Status
endTime String Returned when applyType = QUOTATION and quotation result is available. The time when the quotation or cancellation result is completed, format: YYYYMMDDHHMMSS
uneligibleDetail String Reason the cancellation request is ineligible. Returned when applicable.
currency String Currency of the refund amounts. Returned when applyType = QUOTATION and quotation result is available.
amount Float Total booking amount. Returned when applyType = QUOTATION and quotation result is available.
refundAmount Float Refund amount from the airline only. Does not include any cancellation service fee charged by AeroHub. Returned when applyType = QUOTATION and quotation result is available.
serviceFee Float Cancellation service fee charged by AeroHub. Returned when applyType = QUOTATION and quotation result is available.
refundCategory String Returned when applyType = QUOTATION and quotation result is available. For more details visit: Refund Category
creditVoucher Object[] Returned when applyType = QUOTATION and quotation result is available. the credit voucher
  currency String the currency of credit voucher
  amount Float Amount of credit voucher
  detail String Credit voucher details(No.,Introduction to use, etc.)
passengers Object[] Returned when applyType = QUOTATION and quotation result is available. Ticket Information for Cancellation
  firstName String FirstName,in case of middle name, format is firstName middleName
  lastName String LastName
  birthday String Birthday, format: YYYYMMDD
  pnr String PNR from airline
  ticketNumber String Ticket Number from airline
  amount Float Order payment amount
  refundAmount Float Refund amount returned by the airline. Does not include any AeroHub service fee.
  serviceFee Float Cancellation service fee charged by AeroHub.
customerRemark String Customer remarks

Success-Response - TICKET:

{
  "status": 0,
  "msg": "Success",
  "cancellationNum": "R20240409152629973"
}

Success-Response - QUOTATION:

{
  "status": 0,
  "msg": "Success",
  "cancellationNum": "R20240409152629973",
  "cancellationCategory": "VOLUNTARY_CANCELLATION",
  "cancellationStatus": "VALID_QUOTE",
  "endTime": "20260317123045",
  "uneligibleDetail": "",
  "currency": "USD",
  "amount": 500.0,
  "refundAmount": 494.0,
  "serviceFee": 6.0,
  "refundCategory": "ORIGINAL_PAYMENT",
  "creditVoucher": [
    {
      "currency": "USD",
      "amount": 100.0,
      "detail": "Voucher No.12345, valid for 1 year"
    }
  ],
  "passengers": [
    {
      "firstName": "John",
      "lastName": "Doe",
      "birthday": "19900101",
      "pnr": "ABC123",
      "ticketNumber": "1234567890",
      "amount": 250.0,
      "refundAmount": 247.0,
      "serviceFee": 3.0
    },
    {
      "firstName": "Jane",
      "lastName": "Smith",
      "birthday": "19850515",
      "pnr": "XYZ456",
      "ticketNumber": "0987654321",
      "amount": 250.0,
      "refundAmount": 247.0,
      "serviceFee": 3.0
    }
  ],
  "customerRemark": "Requesting full refund due to cancellation",
}

Status Code

Name Description
1000 General system error
1001 Request parameters or part of parameters missing
1002 Invalid Action
1003 API request timeout, please request again
1004 Invalid request parameter
1005 Service system error
1101 Authentication fail, wrong signature
1102 Account disabled, please contact with account administrator
3101 Order does not exist
3103 Segment does not exist
3104 Passenger does not exist
3105 {passenger_name} : {depart_airport}-{arrival_airport} Cancellation in process
3106 {passenger_name} : {depart_airport}-{arrival_airport} Cancellation completed
3107 Failed to create a cancellation

Error-Response

{
    "status": 1000,
    "msg": "General system error"
}
Author:AeroHub  Create time:2024-01-24 14:06
Last editor:admin  Update time:2026-03-19 18:20