Notification | ReceiveChangeNotify
A webhook/callback mechanism that pushes real-time status updates regarding the rescheduling (change) process. This ensures your system is synchronized with the final ticketing result without constant polling.
Notice:
Product Scope :FareMarket
Data Integrity :The payload contains the final changeId, orderStatus, the updated Itinerary Details.
Response Required :Your server should return a 200 OK to acknowledge receipt.
POST
Callback URL provided by the customer.Parameter
| Field | Mandatory | Type | Scope | Description |
|---|---|---|---|---|
| action | required |
String | ReceiveChangeNotify | |
| 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 | ||
| orderNum | required |
String | AeroHub Order number generated by Commit. Unique ID for bookings for FareMarket | |
| changeNum | required |
String | change order number. | |
| changeType | required |
String | Type of change: <br>VOLUNTARY: voluntary change<br>INVOLUNTARY: involuntary change<br>INFORMATION_UPDATER: information update<br>OTHER: other reasons<br>Refer to appendix ‘Change Type List’ for details | |
| changeReason | optional |
String | Resason for change:<br>FLIGHT_CHANGE: flight change<br>FLIGHT_CANCEL: flight cancel<br>OTHER: other reasons<br>The field is required when the “changeType” is “INVOLUNTARY”<br>Refer to appendix ‘AChange Reason List’ for details | |
| customerRemark | optional |
String | Customer remarks. | |
| changeStatus | required |
String | change order status. Refer to appendix ‘Change Status List’ for details | |
| attachmentStatus | optional |
Int | Attachment Status:<br> 0: No attachment required <br> 1: Attachment required | |
| rejectReason | optional |
String | Rejection reason. | |
| totalChangeFee | required |
Float | Total change fee. Without service fee. | |
| serviceCharge | required |
Float | Service fee. | |
| quotes | optional |
Object[] | Quotation details. | |
| ageType | required |
Int | Passenger type: <br>0: adult <br>1: child <br>2: infant | |
| changeFee | optional |
Float | change fee per person. | |
| cabinFee | optional |
Float | Cabin difference per person. | |
| attachments | optional |
Object[] | Attachment. The field is required when the “changeType” is “INFORMATION_UPDATER”. The supported file types are as follows, JPG, JPEG, PNG, PDF. Maximum single upload file size: 10M. | |
| name | required |
String | File name with extension. | |
| url | required |
String | Attach url | |
| passengers | required |
Object[] | Passenger information for change. | |
| originalPassengers | required |
Object | Original passenger information. | |
| firstName | required |
String | Passenger first name. If there is a middle name, connect it with a space like “firstname middlename”. | |
| lastName | required |
String | Passenger last name. | |
| ageType | required |
Int | Passenger type: <br>0: adult <br>1: child <br>2: infant | |
| birthday | optional |
String | Passenger birthday, formatted with “YYYYMMDD”. | |
| gender | optional |
String | Passenger gender: <br>M: male<br>F: female | |
| nationality | optional |
String | Passenger nationality, 2-letter country code. | |
| cardNum | optional |
String | Passenger identity number, maximum 15 characters. | |
| cardExpired | optional |
String | The expiration date of the identity card, formatted with “YYYYMMDD”. | |
| updatedPassengers | optional |
Object | Updated passenger information. | |
| firstName | required |
String | Passenger first name. If there is a middle name, connect it with a space like “firstname middlename”. | |
| lastName | required |
String | Passenger last name. | |
| ageType | required |
Int | Passenger type: <br>0: adult <br>1: child <br>2: infant | |
| birthday | optional |
String | Passenger birthday, formatted with “YYYYMMDD”. | |
| gender | optional |
String | Passenger gender: <br>M: male<br>F: female | |
| nationality | optional |
String | Passenger nationality, 2-letter country code. | |
| cardNum | optional |
String | Passenger identity number, maximum 15 characters. | |
| cardExpired | optional |
String | The expiration date of the identity card, formatted with “YYYYMMDD”. | |
| segments | optional |
Object[] | Itinerary Information for change. | |
| originalSegments | required |
Object[] | Original itinerary information. | |
| tripType | required |
Int | Trip type:<br> 1: outbound <br>2: inbound | |
| segmentNumber | required |
Int | Segment number, starts from 1. | |
| flightNumber | required |
String | Flight number, e.g. CA123. | |
| depAirport | required |
String | Departure airport, IATA 3-letter code. | |
| arrAirport | required |
String | Arrival airport, IATA 3-letter code. | |
| depTime | required |
String | Departure date and time, formatted with “YYYYMMDDHHMM”.(e.g. 201203100315 represents 2012/03/10 03:15) | |
| arrTime | required |
String | Arrival date and time, formatted with “YYYYMMDDHHMM”.(e.g. 201203101305 represents 2012/03/10 13:05) | |
| updatedSegments | optional |
Object[] | Updated itinerary information. | |
| tripType | required |
Int | Trip type:<br>1: outbound<br>2: inbound | |
| segmentNumber | required |
Int | Segment number, starts from 1. | |
| flightNumber | required |
String | Flight number, e.g. CA123. | |
| depAirport | required |
String | Departure airport, IATA 3-letter code. | |
| arrAirport | required |
String | Arrival airport, IATA 3-letter code. | |
| departureDate | required |
String | Departure date, formatted with “YYYYMMDD”. | |
| depTime | optional |
String | Departure date and time, formatted with “YYYYMMDDHHMM”.(e.g. 201203100315 represents 2012/03/10 03:15) | |
| arrTime | optional |
String | Arrival date and time, formatted with “YYYYMMDDHHMM”.(e.g. 201203101305 represents 2012/03/10 13:05) | |
| tickets | optional |
Object[] | Ticket number list. It will have return data only when the “ChangeStatus” is “COMPLETED”, and only the updated ticket information will be returned. | |
| firstName | required |
String | Passenger first name. If there is a middle name, connect it with a space like “firstname middlename”. | |
| lastName | required |
String | Passenger last name. | |
| tripType | required |
Int | Trip type: <br>1: outbound <br>2: inbound | |
| segmentNumber | required |
Int | Segment number. | |
| flightNumber | required |
String | Flight number. | |
| ticketNumber | optional |
String | Ticket number returns from airline. | |
| pnr | optional |
String | PNR returns from airline. |
> Request_Example:
{
"action": "ReceiveChangeNotify",
"request": {
"quotes": [
{
"ageType": 0,
"cabinFee": 20,
"changeFee": 10
},
{
"ageType": 1,
"cabinFee": 50,
"changeFee": 10
}
],
"tickets": [],
"currency": "USD",
"orderNum": "2030245045650825216",
"segments": {
"updatedSegments": [
{
"arrTime": "20260326110000",
"depTime": "20260325203000",
"tripType": 1,
"arrAirport": "BOM",
"depAirport": "LHR",
"flightNumber": "AI130",
"departureDate": "20260325",
"segmentNumber": 1
},
{
"arrTime": "20260326133500",
"depTime": "20260326073000",
"tripType": 1,
"arrAirport": "BKK",
"depAirport": "BOM",
"flightNumber": "AI2354",
"departureDate": "20260326",
"segmentNumber": 2
},
{
"arrTime": "20260327175000",
"depTime": "20260327144500",
"tripType": 2,
"arrAirport": "BOM",
"depAirport": "BKK",
"flightNumber": "AI2353",
"departureDate": "20260327",
"segmentNumber": 1
},
{
"arrTime": "20260328110500",
"depTime": "20260328062500",
"tripType": 2,
"arrAirport": "LHR",
"depAirport": "BOM",
"flightNumber": "AI129",
"departureDate": "20260328",
"segmentNumber": 2
}
],
"originalSegments": [
{
"arrTime": "20260323110000",
"depTime": "20260323203000",
"tripType": 1,
"arrAirport": "BOM",
"depAirport": "LHR",
"flightNumber": "AI130",
"departureDate": "20260323",
"segmentNumber": 1
},
{
"arrTime": "20260325133500",
"depTime": "20260325073000",
"tripType": 1,
"arrAirport": "BKK",
"depAirport": "BOM",
"flightNumber": "AI2354",
"departureDate": "20260325",
"segmentNumber": 2
},
{
"arrTime": "20260326175000",
"depTime": "20260326144500",
"tripType": 2,
"arrAirport": "BOM",
"depAirport": "BKK",
"flightNumber": "AI2353",
"departureDate": "20260326",
"segmentNumber": 1
},
{
"arrTime": "20260327110500",
"depTime": "20260327062500",
"tripType": 2,
"arrAirport": "LHR",
"depAirport": "BOM",
"flightNumber": "AI129",
"departureDate": "20260327",
"segmentNumber": 2
}
]
},
"changeNum": "C20260307204427443",
"changeType": "VOLUNTARY",
"passengers": {
"updatedPassengers": [],
"originalPassengers": [
{
"gender": "F",
"ageType": 0,
"cardNum": "CF9865976",
"birthday": "19870318",
"lastName": "Conrad",
"firstName": "Deborah",
"cardExpired": "2029-03-28",
"nationality": "CN"
},
{
"gender": "M",
"ageType": 1,
"cardNum": "422618948",
"birthday": "20191218",
"lastName": "Henderson",
"firstName": "Jesse",
"cardExpired": "2027-10-28",
"nationality": "CN"
}
]
},
"attachments": [],
"changeReason": "",
"changeStatus": "VALID_QUOTE",
"rejectReason": "",
"serviceCharge": "10.00",
"customerRemark": "",
"totalChangeFee": "90.00", //The totalChangeFee is the sum, over all passenger types, of (cabinFee + changeFee) for each passenger type multiplied by the number of passengers of that type.The final amount deducted from your account will be the sum of totalChangeFee and serviceCharge.
"attachmentStatus": 0
},
"version": "1.0.0",
"timestamp": 1772887539
}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 |
| changeNum | String | Rescheduling order number. |
>[success] Success-Response:
{
"status": 0,
"msg": "success",
"changeNum": "C20240409152629973"
}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 |
>[danger] Error-Response
{
"status": 1000,
"msg": "General system error"
}Author:admin Create time:2026-02-04 11:17
Last editor:AeroHub Update time:2026-03-19 18:20
Last editor:AeroHub Update time:2026-03-19 18:20