'1.0', 'info' => ['style' => 'ROA', 'product' => 'airticketOpen', 'version' => '2023-01-17'], 'directories' => [ [ 'children' => ['GetToken'], 'type' => 'directory', 'title' => 'Token credentials', ], [ 'children' => ['Search', 'Enrich', 'AncillarySuggest', 'Pricing', 'Book', 'TicketingCheck', 'Ticketing', 'Cancel', 'OrderDetail', 'OrderList'], 'type' => 'directory', 'title' => 'Booking', ], [ 'children' => ['RefundApply', 'RefundDetailList', 'RefundDetail'], 'type' => 'directory', 'title' => 'Refund', ], [ 'children' => ['ChangeConfirm', 'ChangeCancel', 'ChangeDetailListOfBuyer', 'ChangeDetail', 'ChangeApply', 'ChangeDetailListOfOrderNum'], 'type' => 'directory', 'title' => 'Rebooking', ], [ 'children' => ['FlightChangeOfOrder'], 'type' => 'directory', 'title' => 'Schedule change', ], [ 'children' => ['AccountFlowList', 'FileUpload', 'LuggageDirect', 'TransitVisa', 'CollectFlightLowestPrice', 'StandardSearch'], 'type' => 'directory', 'title' => 'Other', ], ], 'components' => [ 'schemas' => [], ], 'apis' => [ 'AccountFlowList' => [ 'summary' => 'Queries the account fund flow list.', 'path' => '/airticket/v1/account/flow-list', 'methods' => ['get'], 'schemes' => ['https', 'http'], 'security' => [ [ 'accessTokenAuth' => [], ], ], 'deprecated' => false, 'parameters' => [ [ 'name' => 'utc_begin_time', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The start search timestamp, effective to the day. Specify a 13-digit UTC timestamp.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1677427200000'], ], [ 'name' => 'day_num', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The number of days to search. Maximum value: 30. Valid values: 0 to 30.', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '0'], ], [ 'name' => 'page_index', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The page index.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'required' => false], ], [ 'name' => 'page_size', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The page size.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'required' => false], ], [ 'name' => 'x-acs-airticket-access-token', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'access_token.', 'type' => 'string', 'required' => true, 'example' => 'eyJhbGciOiJSUzI1NiIsImtpZCI6InN1ZXpfa2V5aWQifQ.eyJqdGkiOiJCQldMaWIzN0VxbC0xMjhhR2N5elJ3IiwiaWF0IjoxNjc3MDY2NTAxLCJleHAiOjE2NzcwNzM3MDEsIm5iZiI6MTY3NzA2NjQ0MX0.AF0DxsZK4Edyg0C6ObRQFUo36R1VYrb5IYmak25TmL1OfR5RkIUc3PpqFuQKNLKXf5fOtVQaKjaexzwodVeWZQDKEG_RPt_Ybb99EnEm6vPKs6e3pWFbKiBq71WleLHhVrdFb4YPowRKjc7bG0jyGUxiQ2iXy0RWDj9tIjfI-KEdzNp5oVnX7j4p3H12DwQrRPmd1nz3BciAQNINvDpzqusuIUw8JXyLFCz838Y0NhwB1_bYZyctxRLSzrGZuI5rrWtItgupqMsOlJ3RNy1QrIbQ2g6nPmzl-atOqcQ4Nw0HeDLR8dhM1OsIcFLbKXBUtwXofflhzAQrkDxhwYiXii'], ], [ 'name' => 'x-acs-airticket-language', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'The language. Default value: the language configured for the buyer account.', 'type' => 'string', 'required' => false, 'example' => 'en_US'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'PopBaseRes, Object>', 'type' => 'object', 'properties' => [ 'status' => ['title' => '', 'description' => 'The HTTP status code. The value is always 200 for successful HTTP requests.', 'type' => 'integer', 'format' => 'int32', 'example' => '200'], 'error_code' => ['title' => '', 'description' => 'The business error code.', 'type' => 'string', 'example' => 'null'], 'error_msg' => ['title' => '', 'description' => 'The error message.', 'type' => 'string', 'example' => 'null'], 'success' => ['title' => '', 'description' => 'Indicates whether the request is successful.', 'type' => 'boolean', 'example' => 'true'], 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '51593418-8C73-5E47-8BA8-3F1D4A00CC0B'], 'data' => [ 'title' => '', 'description' => 'The data returned for a successful request.', 'type' => 'object', 'properties' => [ 'list' => [ 'title' => '', 'description' => 'The data list.', 'type' => 'array', 'items' => [ 'description' => 'The element.', 'type' => 'object', 'properties' => [ 'flow_id' => ['title' => '', 'description' => 'The flow ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '1627239841225842666'], 'gmt_create' => ['title' => '', 'description' => 'The creation time.', 'type' => 'integer', 'format' => 'int64', 'example' => '1676799185000'], 'gmt_modified' => ['title' => '', 'description' => 'The modification time.', 'type' => 'integer', 'format' => 'int64', 'example' => '1676966530000'], 'op_type' => ['title' => '', 'description' => 'The operation type. Valid values:'."\n" .'- 1: payment'."\n" .'- 2: refund'."\n" .'- 3: top-up.', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], 'op_amount' => ['title' => '', 'description' => 'The operation amount, in CNY.', 'type' => 'number', 'format' => 'double', 'example' => '950.5'], 'before_available_amount' => ['title' => '', 'description' => 'The available balance before the operation, in CNY.', 'type' => 'number', 'format' => 'double', 'example' => '1950.5'], 'after_available_amount' => ['title' => '', 'description' => 'The available balance after the operation, in CNY.', 'type' => 'number', 'format' => 'double', 'example' => '1000'], 'order_num' => ['title' => '', 'description' => 'The original order number.', 'type' => 'integer', 'format' => 'int64', 'example' => '4988430***971'], 'out_order_num' => ['title' => '', 'description' => 'The external order number of the original order.', 'type' => 'string', 'example' => '4988430***971'], 'change_order_num' => ['title' => '', 'description' => 'The change order number. This value is not empty if the flow is related to a ticket change.', 'type' => 'integer', 'format' => 'int64', 'example' => '49880***971'], 'refund_order_num' => ['title' => '', 'description' => 'The refund order number. This value is not empty if the flow is related to a refund.', 'type' => 'integer', 'format' => 'int64', 'example' => '48430***971'], 'order_type' => ['title' => '', 'description' => 'The order type. Valid values:'."\n" .'- 0: original transaction'."\n" .'- 1: change order payment'."\n" .'- 2: refund.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], ], 'title' => '', 'example' => '', ], 'example' => '', ], 'pagination' => [ 'title' => '', 'description' => 'The pagination information.', 'type' => 'object', 'properties' => [ 'total_count' => ['title' => '', 'description' => 'The total number of records.', 'type' => 'integer', 'format' => 'int32', 'example' => '5'], 'total_page' => ['title' => '', 'description' => 'The total number of pages.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'current_page' => ['title' => '', 'description' => 'The current page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'page_size' => ['title' => '', 'description' => 'The number of records per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], ], 'example' => '', ], ], 'example' => '', ], 'error_data' => ['title' => '', 'description' => 'The data returned with the error.', 'type' => 'any', 'example' => 'null'], ], 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"status\\": 200,\\n \\"error_code\\": \\"null\\",\\n \\"error_msg\\": \\"null\\",\\n \\"success\\": true,\\n \\"RequestId\\": \\"51593418-8C73-5E47-8BA8-3F1D4A00CC0B\\",\\n \\"data\\": {\\n \\"list\\": [\\n {\\n \\"flow_id\\": 1627239841225842700,\\n \\"gmt_create\\": 1676799185000,\\n \\"gmt_modified\\": 1676966530000,\\n \\"op_type\\": 2,\\n \\"op_amount\\": 950.5,\\n \\"before_available_amount\\": 1950.5,\\n \\"after_available_amount\\": 1000,\\n \\"order_num\\": 0,\\n \\"out_order_num\\": \\"4988430***971\\",\\n \\"change_order_num\\": 0,\\n \\"refund_order_num\\": 0,\\n \\"order_type\\": 1\\n }\\n ],\\n \\"pagination\\": {\\n \\"total_count\\": 5,\\n \\"total_page\\": 1,\\n \\"current_page\\": 1,\\n \\"page_size\\": 10\\n }\\n },\\n \\"error_data\\": \\"null\\"\\n}","type":"json"}]', 'title' => 'AccountFlowList', 'changeSet' => [], ], 'AncillarySuggest' => [ 'summary' => 'Recommends ancillary products.', 'path' => '/airticket/v1/ancillary/action-suggest', 'methods' => ['post'], 'schemes' => ['https', 'http'], 'security' => [ [ 'accessTokenAuth' => [], ], ], 'deprecated' => false, 'systemTags' => [], 'parameters' => [ [ 'name' => 'solution_id', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The solution_id of the flight.', 'type' => 'string', 'required' => true, 'example' => 'eJwz8DeySEo0NjQ01TU3TU7TNTFINNO1SE5O0jVKM0hKNjEwTElLNYwz0A32cNT1dfPVNTIwMjYwNjRQ8/A3NLI01Q0Ic0cRBwBVFxJJ'."\n"], ], [ 'name' => 'x-acs-airticket-access-token', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'The access_token.', 'type' => 'string', 'required' => true, 'example' => 'eyJhbGciOiJSUzI1NiIsImtpZCI6InN1ZXpfa2V5aWQifQ.eyJqdGkiOiJCQldMaWIzN0VxbC0xMjhhR2N5elJ3IiwiaWF0IjoxNjc3MDY2NTAxLCJleHAiOjE2NzcwNzM3MDEsIm5iZiI6MTY3NzA2NjQ0MX0.AF0DxsZK4Edyg0C6ObRQFUo36R1VYrb5IYmak25TmL1OfR5RkIUc3PpqFuQKNLKXf5fOtVQaKjaexzwodVeWZQDKEG_RPt_Ybb99EnEm6vPKs6e3pWFbKiBq71WleLHhVrdFb4YPowRKjc7bG0jyGUxiQ2iXy0RWDj9tIjfI-KEdzNp5oVnX7j4p3H12DwQrRPmd1nz3BciAQNINvDpzqusuIUw8JXyLFCz838Y0NhwB1_bYZyctxRLSzrGZuI5rrWtItgupqMsOlJ3RNy1QrIbQ2g6nPmzl-atOqcQ4Nw0HeDLR8dhM1OsIcFLbKXBUtwXofflhzAQrkDxhwYiXii'], ], [ 'name' => 'x-acs-airticket-language', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'The language setting. Defaults to the buyer account configuration.', 'type' => 'string', 'required' => false, 'example' => 'en_US'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'PopBaseRes', 'type' => 'object', 'properties' => [ 'status' => ['title' => '', 'description' => 'The HTTP status code. The value is always 200 for successful requests.', 'type' => 'integer', 'format' => 'int32', 'example' => '200'], 'error_code' => ['title' => '', 'description' => 'The business error code.', 'type' => 'string', 'example' => 'null'], 'error_msg' => ['title' => '', 'description' => 'The error message.', 'type' => 'string', 'example' => 'null'], 'success' => ['title' => '', 'description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'true'], 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '51593418-8C73-5E47-8BA8-3F1D4A00CC0B'], 'data' => [ 'title' => '', 'description' => 'The data returned for a successful request.', 'type' => 'object', 'properties' => [ 'solution_id' => ['title' => '', 'description' => 'The solution_id of the flight.', 'type' => 'string', 'example' => 'eJwz8DeySEo0NjQ01TU3TU7TNTFINNO1SE5O0jVKM0hKNjEwTElLNYwz0A32cNT1dfPVNTIwMjYwNjRQ8/A3NLI01Q0Ic0cRBwBVFxJJ'], 'seg_ancillary_map_list' => [ 'title' => '', 'description' => 'The mapping between flights and ancillary products.', 'type' => 'array', 'items' => [ 'description' => 'The element.', 'type' => 'object', 'properties' => [ 'segment_id_list' => [ 'title' => '', 'description' => 'The list of segment IDs. These segments share the same ancillary product.', 'type' => 'array', 'items' => ['description' => 'segment_id', 'type' => 'string', 'example' => 'HO1295-PVG-MFM-20230310'."\n", 'title' => ''], 'example' => '', ], 'ancillary' => [ 'title' => '', 'description' => 'The ancillary product.', 'type' => 'object', 'properties' => [ 'ancillary_id' => ['title' => '', 'description' => 'The ancillary product ID.', 'type' => 'string', 'example' => 'eJwz8DeySEo0NjQ01TU3TU'], 'ancillary_type' => ['title' => '', 'description' => 'The ancillary product type. Currently supported value: 4 (paid baggage).', 'type' => 'integer', 'format' => 'int32', 'example' => '4'], 'baggage_ancillary' => [ 'title' => '', 'description' => 'The baggage ancillary details.', 'type' => 'object', 'properties' => [ 'baggage_amount' => ['title' => '', 'description' => 'The number of baggage pieces. Valid values: 3, 2, 1, 0, and -2. A value of -2 indicates weight-based calculation.', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'baggage_weight' => ['title' => '', 'description' => 'The baggage weight, ranging from 0 to 50. If isAllWeight is set to true, this value represents the total weight of all pieces.', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'baggage_weight_unit' => ['title' => '', 'description' => 'The unit of baggage weight.', 'type' => 'string', 'example' => 'KG'], 'is_all_weight' => ['title' => '', 'description' => 'Indicates whether the weight represents the total weight of all baggage pieces.', 'type' => 'boolean', 'example' => 'true'], 'price' => ['title' => '', 'description' => 'The total price.', 'type' => 'number', 'format' => 'double', 'example' => '10.0'], ], 'example' => '', ], ], 'example' => '', ], ], 'title' => '', 'example' => '', ], 'example' => '', ], ], 'example' => '', ], 'error_data' => ['title' => '', 'description' => 'The data returned with the error.', 'type' => 'any', 'example' => 'null'], ], 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"status\\": 200,\\n \\"error_code\\": \\"null\\",\\n \\"error_msg\\": \\"null\\",\\n \\"success\\": true,\\n \\"RequestId\\": \\"51593418-8C73-5E47-8BA8-3F1D4A00CC0B\\",\\n \\"data\\": {\\n \\"solution_id\\": \\"eJwz8DeySEo0NjQ01TU3TU7TNTFINNO1SE5O0jVKM0hKNjEwTElLNYwz0A32cNT1dfPVNTIwMjYwNjRQ8/A3NLI01Q0Ic0cRBwBVFxJJ\\",\\n \\"seg_ancillary_map_list\\": [\\n {\\n \\"segment_id_list\\": [\\n \\"HO1295-PVG-MFM-20230310\\\\n\\"\\n ],\\n \\"ancillary\\": {\\n \\"ancillary_id\\": \\"eJwz8DeySEo0NjQ01TU3TU\\",\\n \\"ancillary_type\\": 4,\\n \\"baggage_ancillary\\": {\\n \\"baggage_amount\\": 0,\\n \\"baggage_weight\\": 0,\\n \\"baggage_weight_unit\\": \\"KG\\",\\n \\"is_all_weight\\": true,\\n \\"price\\": 10\\n }\\n }\\n }\\n ]\\n },\\n \\"error_data\\": \\"null\\"\\n}","type":"json"}]', 'title' => 'AncillarySuggest', 'changeSet' => [], ], 'Book' => [ 'summary' => 'Creates a booking order.', 'path' => '/airticket/v1/trade/action-book', 'methods' => ['post'], 'schemes' => ['https', 'http'], 'security' => [ [ 'accessTokenAuth' => [], ], ], 'deprecated' => false, 'parameters' => [ [ 'name' => 'solution_id', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'solution_id.', 'type' => 'string', 'required' => true, 'example' => 'eJwz8DeySEo0NjQ01TU3TU7TNTFINNO1SE5O0jVKM0hKNjEwTElLNYwz0A32cNT1dfPVNTIwMjYwNjRQ8/A3NLI01Q0Ic0cRBwBVFxJJ'], ], [ 'name' => 'out_order_num', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The external order number.', 'type' => 'string', 'required' => true, 'example' => 'x091-2023-0220-j-0001'], ], [ 'name' => 'contact', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'The contact information.', 'type' => 'object', 'properties' => [ 'last_name' => ['title' => '', 'description' => 'The last name.', 'type' => 'string', 'required' => false, 'example' => 'ZHANG'], 'first_name' => ['title' => '', 'description' => 'The first name.', 'type' => 'string', 'required' => false, 'example' => 'SAN'], 'mobile_phone_num' => ['title' => '', 'description' => 'The mobile phone number.', 'type' => 'string', 'required' => false, 'example' => '183******96'], 'mobile_country_code' => ['title' => '', 'description' => 'The country calling code.', 'type' => 'string', 'required' => false, 'example' => '86'], 'email' => ['title' => '', 'description' => 'The email address.', 'type' => 'string', 'required' => false, 'example' => 'gao******@gmail.com'], ], 'required' => true, 'example' => '', ], ], [ 'name' => 'passenger_list', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'The list of passengers.', 'type' => 'array', 'items' => [ 'description' => 'passenger', 'type' => 'object', 'properties' => [ 'last_name' => ['title' => '', 'description' => 'The last name.', 'type' => 'string', 'required' => true, 'example' => 'ZHANG'], 'first_name' => ['title' => '', 'description' => 'The first name.', 'type' => 'string', 'required' => true, 'example' => 'SAN'], 'birthday' => ['title' => '', 'description' => 'The date of birth in yyyyMMdd format.', 'type' => 'string', 'example' => '20200320', 'required' => false], 'type' => ['title' => '', 'description' => 'The passenger type. Valid values:'."\n" .'- 0: adult'."\n" .'- 1: child'."\n" .'- 8: infant.', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '0'], 'mobile_phone_number' => ['title' => '', 'description' => 'The mobile phone number.', 'type' => 'string', 'required' => true, 'example' => '183******95'], 'mobile_country_code' => ['title' => '', 'description' => 'The country calling code for the mobile phone number.', 'type' => 'string', 'required' => true, 'example' => '86'], 'gender' => ['title' => '', 'description' => 'The gender. Valid values:'."\n" .'- 0: MALE'."\n" .'- 1: FEMALE.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'required' => false], 'nationality' => ['title' => '', 'description' => 'The nationality. Use a two-letter country code.', 'type' => 'string', 'example' => 'CN', 'required' => false], 'credential' => [ 'title' => '', 'description' => 'The credential information.', 'type' => 'object', 'properties' => [ 'cert_issue_place' => ['title' => '', 'description' => 'The place of issue. Use a two-letter country code.', 'type' => 'string', 'example' => 'CN', 'required' => false], 'credential_num' => ['title' => '', 'description' => 'The credential number.', 'type' => 'string', 'example' => 'E1***5674', 'required' => false], 'expire_date' => ['title' => '', 'description' => 'The expiration date of the credential.', 'type' => 'string', 'example' => '20290101', 'required' => false], 'credential_type' => ['title' => '', 'description' => 'The credential type. Valid values:'."\n" .'- 0: ID card'."\n" .'- 1: passport'."\n" .'- 4: Home Return Permit'."\n" .'- 5: Taiwan Compatriot Permit'."\n" .'- 6: Hong Kong and Macau Travel Permit'."\n" .'- 12: Taiwan Travel Permit'."\n" .'- 19: no credential.', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '1'], ], 'required' => false, 'example' => '', ], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => true, 'example' => '', ], ], [ 'name' => 'passenger_ancillary_purchase_map_list', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'The mapping between passengers and ancillary purchases.', 'type' => 'array', 'items' => [ 'description' => 'The element.', 'type' => 'object', 'properties' => [ 'passenger_list' => [ 'title' => '', 'description' => 'The list of passengers who purchase the same ancillary product.', 'type' => 'array', 'items' => [ 'description' => 'passenger', 'type' => 'object', 'properties' => [ 'last_name' => ['title' => '', 'description' => 'The last name.', 'type' => 'string', 'required' => true, 'example' => 'ZHANG'], 'first_name' => ['title' => '', 'description' => 'The first name.', 'type' => 'string', 'required' => true, 'example' => 'SAN'], 'birthday' => ['title' => '', 'description' => 'The date of birth in yyyyMMdd format.', 'type' => 'string', 'example' => '20020320', 'required' => false], 'type' => ['title' => '', 'description' => 'The passenger type. Valid values:'."\n" .'- 0: adult'."\n" .'- 1: child'."\n" .'- 8: infant.', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '0'], 'mobile_phone_number' => ['title' => '', 'description' => 'The mobile phone number.', 'type' => 'string', 'required' => true, 'example' => '182******92'], 'mobile_country_code' => ['title' => '', 'description' => 'The country calling code for the mobile phone number.', 'type' => 'string', 'required' => true, 'example' => '86'], 'gender' => ['title' => '', 'description' => 'The gender. Valid values:'."\n" .'- 0: MALE'."\n" .'- 1: FEMALE.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'required' => false], 'nationality' => ['title' => '', 'description' => 'The nationality.', 'type' => 'string', 'example' => 'CN', 'required' => false], 'credential' => [ 'title' => '', 'description' => 'The credential information.', 'type' => 'object', 'properties' => [ 'cert_issue_place' => ['title' => '', 'description' => 'The place of issue. Use a two-letter country code.', 'type' => 'string', 'example' => 'CN', 'required' => false], 'credential_num' => ['title' => '', 'description' => 'The credential number.', 'type' => 'string', 'example' => 'E1***5673', 'required' => false], 'expire_date' => ['title' => '', 'description' => 'The expiration date of the credential.', 'type' => 'string', 'example' => '20290102', 'required' => false], 'credential_type' => ['title' => '', 'description' => 'The credential type. Valid values:'."\n" .'- 0: ID card'."\n" .'- 1: passport'."\n" .'- 2: student ID'."\n" .'- 3: military ID'."\n" .'- 4: Home Return Permit'."\n" .'- 5: Taiwan Compatriot Permit'."\n" .'- 6: Hong Kong and Macau Travel Permit'."\n" .'- 7: international seafarer certificate'."\n" .'- 8: foreigner permanent residence permit'."\n" .'- 10: police officer certificate'."\n" .'- 11: soldier certificate'."\n" .'- 12: Taiwan Travel Permit'."\n" .'- 13: Taiwan Entry Permit'."\n" .'- 14: household register'."\n" .'- 15: birth certificate'."\n" .'- 16: driver license'."\n" .'- 17: Hong Kong and Macau resident residence permit'."\n" .'- 18: Taiwan resident residence permit.', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '1'], ], 'required' => false, 'example' => '', ], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'example' => '', ], 'book_ancillary_req_item' => [ 'title' => '', 'description' => 'The ancillary product object for the booking request.', 'type' => 'object', 'properties' => [ 'ancillary_id' => ['title' => '', 'description' => 'The ancillary product ID.', 'type' => 'string', 'example' => 'MDY2NTAxLCJleHAiOjE2NxNzM3MDEsIm5ix', 'required' => false], 'ancillary_type' => ['title' => '', 'description' => 'The ancillary product type. Currently supported value: 4 (paid baggage). More types will be supported in the future.', 'type' => 'integer', 'format' => 'int32', 'example' => '4', 'required' => false], ], 'required' => false, 'example' => '', ], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'example' => '', ], ], [ 'name' => 'x-acs-airticket-access-token', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'access_token.', 'type' => 'string', 'required' => true, 'example' => 'eyJhbGciOiJSUzI1NiIsImtpZCI6InN1ZXpfa2V5aWQifQ.eyJqdGkiOiJCQldMaWIzN0VxbC0xMjhhR2N5elJ3IiwiaWF0IjoxNjc3MDY2NTAxLCJleHAiOjE2NzcwNzM3MDEsIm5iZiI6MTY3NzA2NjQ0MX0.AF0DxsZK4Edyg0C6ObRQFUo36R1VYrb5IYmak25TmL1OfR5RkIUc3PpqFuQKNLKXf5fOtVQaKjaexzwodVeWZQDKEG_RPt_Ybb99EnEm6vPKs6e3pWFbKiBq71WleLHhVrdFb4YPowRKjc7bG0jyGUxiQ2iXy0RWDj9tIjfI-KEdzNp5oVnX7j4p3H12DwQrRPmd1nz3BciAQNINvDpzqusuIUw8JXyLFCz838Y0NhwB1_bYZyctxRLSzrGZuI5rrWtItgupqMsOlJ3RNy1QrIbQ2g6nPmzl-atOqcQ4Nw0HeDLR8dhM1OsIcFLbKXBUtwXofflhzAQrkDxhwYiXii'], ], [ 'name' => 'x-acs-airticket-language', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'The language setting. Uses the buyer account configuration by default.', 'type' => 'string', 'required' => false, 'example' => 'en_US'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'PopBaseRes', 'type' => 'object', 'properties' => [ 'status' => ['title' => '', 'description' => 'The HTTP status code. The value is always 200 for successful HTTP requests.', 'type' => 'integer', 'format' => 'int32', 'example' => '200'], 'error_code' => ['title' => '', 'description' => 'The business error code.', 'type' => 'string', 'example' => 'null'], 'error_msg' => ['title' => '', 'description' => 'The error message.', 'type' => 'string', 'example' => 'null'], 'success' => ['title' => '', 'description' => 'Indicates whether the request is successful.', 'type' => 'boolean', 'example' => 'true'], 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '51593418-8C73-5E47-8BA8-3F1D4A00CC0B'], 'data' => [ 'title' => '', 'description' => 'The data returned for a successful request.', 'type' => 'object', 'properties' => [ 'order_list' => [ 'title' => '', 'description' => 'The list of order information.', 'type' => 'array', 'items' => [ 'description' => 'The list of order numbers.', 'type' => 'object', 'properties' => [ 'order_num' => ['title' => '', 'description' => 'The order number.', 'type' => 'integer', 'format' => 'int64', 'example' => '4966***617111'], ], 'title' => '', 'example' => '', ], 'example' => '', ], ], 'example' => '', ], 'error_data' => [ 'title' => '', 'description' => 'The data returned with the error.', 'type' => 'object', 'properties' => [ 'order_list' => [ 'title' => '', 'description' => 'The list of order information. If you call the Book operation again with the same parameters after a successful booking, the order number is returned.', 'type' => 'array', 'items' => [ 'description' => 'The list of order numbers.', 'type' => 'object', 'properties' => [ 'order_num' => ['title' => '', 'description' => 'The order number.', 'type' => 'integer', 'format' => 'int64', 'example' => '4966***617111'], ], 'title' => '', 'example' => '', ], 'example' => '', ], ], 'example' => 'null', ], ], 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"status\\": 200,\\n \\"error_code\\": \\"null\\",\\n \\"error_msg\\": \\"null\\",\\n \\"success\\": true,\\n \\"RequestId\\": \\"51593418-8C73-5E47-8BA8-3F1D4A00CC0B\\",\\n \\"data\\": {\\n \\"order_list\\": [\\n {\\n \\"order_num\\": 0\\n }\\n ]\\n },\\n \\"error_data\\": {\\n \\"order_list\\": [\\n {\\n \\"order_num\\": 0\\n }\\n ]\\n }\\n}","type":"json"}]', 'title' => 'Book', 'changeSet' => [ ['createdAt' => '2025-09-29T07:26:39.000Z', 'description' => 'OpenAPI offline'], ], ], 'Cancel' => [ 'summary' => 'Cancels an unpaid order.', 'path' => '/airticket/v1/trade/action-cancel', 'methods' => ['post'], 'schemes' => ['https', 'http'], 'security' => [ [ 'accessTokenAuth' => [], ], ], 'deprecated' => false, 'systemTags' => [], 'parameters' => [ [ 'name' => 'order_num', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The order number.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '496***2617111'], ], [ 'name' => 'x-acs-airticket-access-token', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'access_token.', 'type' => 'string', 'required' => true, 'example' => 'eyJhbGciOiJSUzI1NiIsImtpZCI6InN1ZXpfa2V5aWQifQ.eyJqdGkiOiJCQldMaWIzN0VxbC0xMjhhR2N5elJ3IiwiaWF0IjoxNjc3MDY2NTAxLCJleHAiOjE2NzcwNzM3MDEsIm5iZiI6MTY3NzA2NjQ0MX0.AF0DxsZK4Edyg0C6ObRQFUo36R1VYrb5IYmak25TmL1OfR5RkIUc3PpqFuQKNLKXf5fOtVQaKjaexzwodVeWZQDKEG_RPt_Ybb99EnEm6vPKs6e3pWFbKiBq71WleLHhVrdFb4YPowRKjc7bG0jyGUxiQ2iXy0RWDj9tIjfI-KEdzNp5oVnX7j4p3H12DwQrRPmd1nz3BciAQNINvDpzqusuIUw8JXyLFCz838Y0NhwB1_bYZyctxRLSzrGZuI5rrWtItgupqMsOlJ3RNy1QrIbQ2g6nPmzl-atOqcQ4Nw0HeDLR8dhM1OsIcFLbKXBUtwXofflhzAQrkDxhwYiXii'], ], [ 'name' => 'x-acs-airticket-language', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'The language. The buyer account configuration is used by default.', 'type' => 'string', 'required' => false, 'example' => 'en_US'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'PopBaseRes', 'type' => 'object', 'properties' => [ 'status' => ['title' => '', 'description' => 'The HTTP status code. The value is always 200 for successful HTTP requests.', 'type' => 'integer', 'format' => 'int32', 'example' => '200'], 'error_code' => ['title' => '', 'description' => 'The business error code.', 'type' => 'string', 'example' => 'null'], 'error_msg' => ['title' => '', 'description' => 'The error message.', 'type' => 'string', 'example' => 'null'], 'success' => ['title' => '', 'description' => 'Indicates whether the request is successful.', 'type' => 'boolean', 'example' => 'true'], 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '51593418-8C73-5E47-8BA8-3F1D4A00CC0B'], 'data' => [ 'title' => '', 'description' => 'The data returned for a successful request.', 'type' => 'object', 'properties' => [ 'order_num' => ['title' => '', 'description' => 'The order number.', 'type' => 'integer', 'format' => 'int64', 'example' => '496***2617111'."\n"], ], 'example' => '', ], 'error_data' => ['title' => '', 'description' => 'The data returned for a failed request.', 'type' => 'any', 'example' => 'null'], ], 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"status\\": 200,\\n \\"error_code\\": \\"null\\",\\n \\"error_msg\\": \\"null\\",\\n \\"success\\": true,\\n \\"RequestId\\": \\"51593418-8C73-5E47-8BA8-3F1D4A00CC0B\\",\\n \\"data\\": {\\n \\"order_num\\": 0\\n },\\n \\"error_data\\": \\"null\\"\\n}","type":"json"}]', 'title' => 'Cancel', 'changeSet' => [], ], 'ChangeApply' => [ 'summary' => 'Submits a change application.', 'path' => '/airticket/v1/change/action-apply', 'methods' => ['post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'accessTokenAuth' => [], ], ], 'deprecated' => false, 'systemTags' => ['operationType' => 'none'], 'parameters' => [ [ 'name' => 'order_num', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The order number.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '4988430***950'], ], [ 'name' => 'type', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The change type. Valid values:'."\n" .'- 0: voluntary change'."\n" .'- 1: flight schedule change or flight cancellation.', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '0'], ], [ 'name' => 'change_passenger_list', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'The list of passengers for the change.', 'type' => 'array', 'items' => [ 'description' => 'The element.', 'type' => 'object', 'properties' => [ 'first_name' => ['title' => '', 'description' => 'The first name of the passenger.', 'type' => 'string', 'required' => true, 'example' => 'SAN'], 'last_name' => ['title' => '', 'description' => 'The last name of the passenger.', 'type' => 'string', 'required' => true, 'example' => 'ZHANG'], 'document' => ['title' => '', 'description' => 'The document number.', 'type' => 'string', 'example' => '411***********4411', 'required' => false], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => true, 'example' => '', ], ], [ 'name' => 'changed_journeys', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'The target journey for the change.', 'type' => 'array', 'items' => [ 'description' => 'The element.', 'type' => 'object', 'properties' => [ 'segment_list' => [ 'title' => '', 'description' => 'The list of target segments for the change.', 'type' => 'array', 'items' => [ 'description' => 'The element.', 'type' => 'object', 'properties' => [ 'departure_airport' => ['title' => '', 'description' => 'The three-letter IATA code of the departure airport.', 'type' => 'string', 'example' => 'PVG', 'required' => false], 'arrival_airport' => ['title' => '', 'description' => 'The three-letter IATA code of the arrival airport.', 'type' => 'string', 'example' => 'MFM', 'required' => false], 'departure_city' => ['title' => '', 'description' => 'The three-letter IATA code of the departure city.', 'type' => 'string', 'required' => true, 'example' => 'SHA'], 'arrival_city' => ['title' => '', 'description' => 'The three-letter IATA code of the arrival city.', 'type' => 'string', 'required' => true, 'example' => 'MFM'], 'departure_date' => ['title' => '', 'description' => 'The departure date (for example, yyyyMMdd).'."\n" .'[_single.params.changed_journeys.items.segment_list.items.departure_time.desc](Deprecated) The departure date and time of the flight, in UTC timestamp.'."\n" .'[_single.params.changed_journeys.items.segment_list.items.departure_time_str.desc](Required) The departure date and time of the flight, in local travel time. Format: yyyy-MM-dd HH:mm:ss.'."\n" .'[_single.params.changed_journeys.items.segment_list.items.arrive_time.desc](Deprecated) The arrival date and time of the flight, in UTC timestamp.'."\n" .'[_single.params.changed_journeys.items.segment_list.items.arrive_time_str.desc](Required) The arrival date and time of the flight, in local travel time. Format: yyyy-MM-dd HH:mm:ss.', 'type' => 'string', 'required' => true, 'example' => '20230320'], 'departure_time' => ['title' => '', 'description' => '(该属性废弃)航班起飞日期,utc时间戳', 'type' => 'integer', 'format' => 'int64', 'example' => '1677232998000', 'required' => false], 'departure_time_str' => ['title' => '', 'description' => '(必填参数)航班起飞日期时间,航班的旅行时间,格式:yyyy-MM-dd HH:mm:ss', 'type' => 'string', 'required' => false, 'example' => '2024-03-20 09:30:00'], 'arrive_time' => ['title' => '', 'description' => '(该属性废弃)航班到达日期时间,utc时间戳', 'type' => 'integer', 'format' => 'int64', 'example' => '1677232999000', 'required' => false], 'arrive_time_str' => ['title' => '', 'description' => '(必填参数)航班到达日期时间,航班的旅行时间,格式:yyyy-MM-dd HH:mm:ss', 'type' => 'string', 'required' => false, 'example' => '2024-03-20 12:30:00'], 'departure_terminal' => ['title' => '', 'description' => 'The departure terminal of the flight.', 'type' => 'string', 'example' => 'T2', 'required' => false], 'arrive_terminal' => ['title' => '', 'description' => 'The arrival terminal of the flight.', 'type' => 'string', 'example' => 'T1', 'required' => false], 'marketing_flight_no' => ['title' => '', 'description' => 'The marketing flight number (such as KA5809).', 'type' => 'string', 'required' => true, 'example' => 'HO1295'], 'operating_flight_no' => ['title' => '', 'description' => 'The operating flight number (such as CX601).', 'type' => 'string', 'example' => 'HO1295', 'required' => false], 'code_share' => ['title' => '', 'description' => 'Indicates whether the flight is a codeshare flight.', 'type' => 'boolean', 'example' => 'false', 'required' => false], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'example' => '', ], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => true, 'example' => '', ], ], [ 'name' => 'contact', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'The contact information for the change.', 'type' => 'object', 'properties' => [ 'mobile_country_code' => ['title' => '', 'description' => 'The country calling code.', 'type' => 'string', 'example' => '86', 'required' => false], 'mobile_phone_num' => ['title' => '', 'description' => 'The mobile phone number of the contact.', 'type' => 'string', 'example' => '183*****92', 'required' => false], 'email' => ['title' => '', 'description' => 'The email address.', 'type' => 'string', 'example' => 'gao******@gmail.com', 'required' => false], ], 'required' => true, 'example' => '', ], ], [ 'name' => 'remark', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The buyer remarks.', 'type' => 'string', 'example' => 'remark desc', 'required' => false], ], [ 'name' => 'x-acs-airticket-access-token', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'The access_token.', 'type' => 'string', 'required' => true, 'example' => 'eyJhbGciOiJSUzI1NiIsImtpZCI6InN1ZXpfa2V5aWQifQ.eyJqdGkiOiJCQldMaWIzN0VxbC0xMjhhR2N5elJ3IiwiaWF0IjoxNjc3MDY2NTAxLCJleHAiOjE2NzcwNzM3MDEsIm5iZiI6MTY3NzA2NjQ0MX0.AF0DxsZK4Edyg0C6ObRQFUo36R1VYrb5IYmak25TmL1OfR5RkIUc3PpqFuQKNLKXf5fOtVQaKjaexzwodVeWZQDKEG_RPt_Ybb99EnEm6vPKs6e3pWFbKiBq71WleLHhVrdFb4YPowRKjc7bG0jyGUxiQ2iXy0RWDj9tIjfI-KEdzNp5oVnX7j4p3H12DwQrRPmd1nz3BciAQNINvDpzqusuIUw8JXyLFCz838Y0NhwB1_bYZyctxRLSzrGZuI5rrWtItgupqMsOlJ3RNy1QrIbQ2g6nPmzl-atOqcQ4Nw0HeDLR8dhM1OsIcFLbKXBUtwXofflhzAQrkDxhwYiXii'], ], [ 'name' => 'x-acs-airticket-language', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'The language setting. Defaults to the buyer account configuration.', 'type' => 'string', 'required' => false, 'example' => 'en_US'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'PopBaseRes', 'type' => 'object', 'properties' => [ 'status' => ['title' => '', 'description' => 'The HTTP status code. The value is always 200 for successful requests.', 'type' => 'integer', 'format' => 'int32', 'example' => '200'], 'error_code' => ['title' => '', 'description' => 'The business error code.', 'type' => 'string', 'example' => 'null'], 'error_msg' => ['title' => '', 'description' => 'The error message.', 'type' => 'string', 'example' => 'null'], 'success' => ['title' => '', 'description' => 'Indicates whether the request is successful.', 'type' => 'boolean', 'example' => 'true'], 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '51593418-8C73-5E47-8BA8-3F1D4A00CC0B'], 'data' => [ 'title' => '', 'description' => 'The data returned for a successful request.', 'type' => 'object', 'properties' => [ 'order_num' => ['title' => '', 'description' => 'The order number.', 'type' => 'integer', 'format' => 'int64', 'example' => '4988430***950'], 'change_orders' => [ 'title' => '', 'description' => 'The list of change order application results.', 'type' => 'array', 'items' => [ 'description' => 'The element.', 'type' => 'object', 'properties' => [ 'change_order_num' => ['title' => '', 'description' => 'The change order number.', 'type' => 'integer', 'format' => 'int64', 'example' => '49884*****950'], 'change_order_status' => ['title' => '', 'description' => 'The change order status. Valid values:'."\n" .'- 0: Change order created.'."\n" .'- 5: Change order creation failed.', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'fail_reason' => ['title' => '', 'description' => 'The reason for the change order creation failure.', 'type' => 'string', 'example' => 'desc reason'], 'passengers' => [ 'title' => '', 'description' => 'The passenger information of the change order.', 'type' => 'array', 'items' => [ 'description' => 'The element.', 'type' => 'object', 'properties' => [ 'first_name' => ['title' => '', 'description' => 'The first name of the passenger.', 'type' => 'string', 'example' => 'SAN'], 'last_name' => ['title' => '', 'description' => 'The last name of the passenger.', 'type' => 'string', 'example' => 'ZHANG'], 'document' => ['title' => '', 'description' => 'The document number.', 'type' => 'string', 'example' => '411***********4411'], ], 'title' => '', 'example' => '', ], 'example' => '', ], ], 'title' => '', 'example' => '', ], 'example' => '', ], ], 'example' => '', ], 'error_data' => ['title' => '', 'description' => 'The data returned with the error.', 'type' => 'any', 'example' => 'null'], ], 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"status\\": 200,\\n \\"error_code\\": \\"null\\",\\n \\"error_msg\\": \\"null\\",\\n \\"success\\": true,\\n \\"RequestId\\": \\"51593418-8C73-5E47-8BA8-3F1D4A00CC0B\\",\\n \\"data\\": {\\n \\"order_num\\": 0,\\n \\"change_orders\\": [\\n {\\n \\"change_order_num\\": 0,\\n \\"change_order_status\\": 0,\\n \\"fail_reason\\": \\"desc reason\\",\\n \\"passengers\\": [\\n {\\n \\"first_name\\": \\"SAN\\",\\n \\"last_name\\": \\"ZHANG\\",\\n \\"document\\": \\"411***********4411\\"\\n }\\n ]\\n }\\n ]\\n },\\n \\"error_data\\": \\"null\\"\\n}","type":"json"}]', 'title' => 'ChangeApply', 'changeSet' => [ ['createdAt' => '2025-05-08T09:47:18.000Z', 'description' => 'OpenAPI offline'], ], ], 'ChangeCancel' => [ 'summary' => 'Cancel the change order.', 'path' => '/airticket/v1/change/action-cancel', 'methods' => ['post'], 'schemes' => ['https', 'http'], 'security' => [ [ 'accessTokenAuth' => [], ], ], 'deprecated' => false, 'systemTags' => [], 'parameters' => [ [ 'name' => 'change_order_num', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'Change order number', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '4988430***950'], ], [ 'name' => 'x-acs-airticket-access-token', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'access_token', 'type' => 'string', 'required' => true, 'example' => 'eyJhbGciOiJSUzI1NiIsImtpZCI6InN1ZXpfa2V5aWQifQ.eyJqdGkiOiJCQldMaWIzN0VxbC0xMjhhR2N5elJ3IiwiaWF0IjoxNjc3MDY2NTAxLCJleHAiOjE2NzcwNzM3MDEsIm5iZiI6MTY3NzA2NjQ0MX0.AF0DxsZK4Edyg0C6ObRQFUo36R1VYrb5IYmak25TmL1OfR5RkIUc3PpqFuQKNLKXf5fOtVQaKjaexzwodVeWZQDKEG_RPt_Ybb99EnEm6vPKs6e3pWFbKiBq71WleLHhVrdFb4YPowRKjc7bG0jyGUxiQ2iXy0RWDj9tIjfI-KEdzNp5oVnX7j4p3H12DwQrRPmd1nz3BciAQNINvDpzqusuIUw8JXyLFCz838Y0NhwB1_bYZyctxRLSzrGZuI5rrWtItgupqMsOlJ3RNy1QrIbQ2g6nPmzl-atOqcQ4Nw0HeDLR8dhM1OsIcFLbKXBUtwXofflhzAQrkDxhwYiXii'], ], [ 'name' => 'x-acs-airticket-language', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'Language. Uses the buyer account configuration by default.', 'type' => 'string', 'required' => false, 'example' => 'en_US'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'PopBaseRes', 'type' => 'object', 'properties' => [ 'status' => ['title' => '', 'description' => 'If the HTTP request is successful, the status value is 200.', 'type' => 'integer', 'format' => 'int32', 'example' => '200'], 'error_code' => ['title' => '', 'description' => 'Business error code', 'type' => 'string', 'example' => 'null'], 'error_msg' => ['title' => '', 'description' => 'Error message', 'type' => 'string', 'example' => 'null'], 'success' => ['title' => '', 'description' => 'Indicates whether the request is successful.', 'type' => 'boolean', 'example' => 'true'], 'RequestId' => ['title' => '', 'type' => 'string', 'example' => '51593418-8C73-5E47-8BA8-3F1D4A00CC0B', 'description' => ''], 'data' => ['title' => '', 'description' => 'The data returned for a successful request.', 'type' => 'any', 'example' => 'null'], 'error_data' => ['title' => '', 'description' => 'The data returned for a failed request.', 'type' => 'any', 'example' => 'null'], ], 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"status\\": 200,\\n \\"error_code\\": \\"null\\",\\n \\"error_msg\\": \\"null\\",\\n \\"success\\": true,\\n \\"RequestId\\": \\"51593418-8C73-5E47-8BA8-3F1D4A00CC0B\\",\\n \\"data\\": \\"null\\",\\n \\"error_data\\": \\"null\\"\\n}","type":"json"}]', 'title' => 'ChangeCancel', 'changeSet' => [], ], 'ChangeConfirm' => [ 'summary' => 'Confirms a flight change order.', 'path' => '/airticket/v1/change/action-confirm', 'methods' => ['post'], 'schemes' => ['https', 'http'], 'security' => [ [ 'accessTokenAuth' => [], ], ], 'deprecated' => false, 'systemTags' => [], 'parameters' => [ [ 'name' => 'change_order_num', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The change order number.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '4988430***950'], ], [ 'name' => 'x-acs-airticket-access-token', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'access_token.', 'type' => 'string', 'required' => true, 'example' => 'eyJhbGciOiJSUzI1NiIsImtpZCI6InN1ZXpfa2V5aWQifQ.eyJqdGkiOiJCQldMaWIzN0VxbC0xMjhhR2N5elJ3IiwiaWF0IjoxNjc3MDY2NTAxLCJleHAiOjE2NzcwNzM3MDEsIm5iZiI6MTY3NzA2NjQ0MX0.AF0DxsZK4Edyg0C6ObRQFUo36R1VYrb5IYmak25TmL1OfR5RkIUc3PpqFuQKNLKXf5fOtVQaKjaexzwodVeWZQDKEG_RPt_Ybb99EnEm6vPKs6e3pWFbKiBq71WleLHhVrdFb4YPowRKjc7bG0jyGUxiQ2iXy0RWDj9tIjfI-KEdzNp5oVnX7j4p3H12DwQrRPmd1nz3BciAQNINvDpzqusuIUw8JXyLFCz838Y0NhwB1_bYZyctxRLSzrGZuI5rrWtItgupqMsOlJ3RNy1QrIbQ2g6nPmzl-atOqcQ4Nw0HeDLR8dhM1OsIcFLbKXBUtwXofflhzAQrkDxhwYiXii'], ], [ 'name' => 'x-acs-airticket-language', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'The language. The buyer account configuration is used by default.', 'type' => 'string', 'required' => false, 'example' => 'en_US'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'PopBaseRes', 'type' => 'object', 'properties' => [ 'status' => ['title' => '', 'description' => 'The HTTP status code. The value is always 200 for successful requests.', 'type' => 'integer', 'format' => 'int32', 'example' => '200'], 'error_code' => ['title' => '', 'description' => 'The business error code.', 'type' => 'string', 'example' => 'null'], 'error_msg' => ['title' => '', 'description' => 'The error message.', 'type' => 'string', 'example' => 'null'], 'success' => ['title' => '', 'description' => 'Indicates whether the request is successful.', 'type' => 'boolean', 'example' => 'true'], 'RequestId' => ['title' => '', 'type' => 'string', 'example' => '51593418-8C73-5E47-8BA8-3F1D4A00CC0B', 'description' => ''], 'data' => [ 'title' => '', 'description' => 'The data returned for a successful request.', 'type' => 'object', 'properties' => [ 'pay_amount' => ['title' => '', 'description' => 'The payment amount for the flight change.', 'type' => 'number', 'format' => 'double', 'example' => '30'], 'transaction_no' => ['title' => '', 'description' => 'The payment transaction number for the flight change.', 'type' => 'string', 'example' => 'hkduendkd-2023-dj0'], ], 'example' => '', ], 'error_data' => ['title' => '', 'description' => 'The data returned for a failed request.', 'type' => 'any', 'example' => 'null'], ], 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"status\\": 200,\\n \\"error_code\\": \\"null\\",\\n \\"error_msg\\": \\"null\\",\\n \\"success\\": true,\\n \\"RequestId\\": \\"51593418-8C73-5E47-8BA8-3F1D4A00CC0B\\",\\n \\"data\\": {\\n \\"pay_amount\\": 30,\\n \\"transaction_no\\": \\"hkduendkd-2023-dj0\\"\\n },\\n \\"error_data\\": \\"null\\"\\n}","type":"json"}]', 'title' => 'ChangeConfirm', 'changeSet' => [ ['createdAt' => '2025-09-29T07:26:39.000Z', 'description' => 'OpenAPI offline'], ], ], 'ChangeDetail' => [ 'summary' => 'Retrieves the details of a flight change order.', 'path' => '/airticket/v1/change/detail', 'methods' => ['get'], 'schemes' => ['https', 'http'], 'security' => [ [ 'accessTokenAuth' => [], ], ], 'deprecated' => false, 'systemTags' => [], 'parameters' => [ [ 'name' => 'change_order_num', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The change order number.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '4988430***950'], ], [ 'name' => 'x-acs-airticket-access-token', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'The access_token.', 'type' => 'string', 'required' => true, 'example' => 'eyJhbGciOiJSUzI1NiIsImtpZCI6InN1ZXpfa2V5aWQifQ.eyJqdGkiOiJCQldMaWIzN0VxbC0xMjhhR2N5elJ3IiwiaWF0IjoxNjc3MDY2NTAxLCJleHAiOjE2NzcwNzM3MDEsIm5iZiI6MTY3NzA2NjQ0MX0.AF0DxsZK4Edyg0C6ObRQFUo36R1VYrb5IYmak25TmL1OfR5RkIUc3PpqFuQKNLKXf5fOtVQaKjaexzwodVeWZQDKEG_RPt_Ybb99EnEm6vPKs6e3pWFbKiBq71WleLHhVrdFb4YPowRKjc7bG0jyGUxiQ2iXy0RWDj9tIjfI-KEdzNp5oVnX7j4p3H12DwQrRPmd1nz3BciAQNINvDpzqusuIUw8JXyLFCz838Y0NhwB1_bYZyctxRLSzrGZuI5rrWtItgupqMsOlJ3RNy1QrIbQ2g6nPmzl-atOqcQ4Nw0HeDLR8dhM1OsIcFLbKXBUtwXofflhzAQrkDxhwYiXii'], ], [ 'name' => 'x-acs-airticket-language', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'The language. The buyer account configuration is used by default.', 'type' => 'string', 'required' => false, 'example' => 'en_US'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'PopBaseRes', 'type' => 'object', 'properties' => [ 'status' => ['title' => '', 'description' => 'The HTTP status code. The value is always 200 for successful HTTP requests.', 'type' => 'integer', 'format' => 'int32', 'example' => '200'], 'error_code' => ['title' => '', 'description' => 'The business error code.', 'type' => 'string', 'example' => 'null'], 'error_msg' => ['title' => '', 'description' => 'The error message.', 'type' => 'string', 'example' => 'null'], 'success' => ['title' => '', 'description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'true'], 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '51593418-8C73-5E47-8BA8-3F1D4A00CC0B'], 'data' => [ 'title' => '', 'description' => 'The data returned for a successful request.', 'type' => 'object', 'properties' => [ 'change_order_num' => ['title' => '', 'description' => 'The change order number.', 'type' => 'integer', 'format' => 'int64', 'example' => '4988430***950'], 'order_num' => ['title' => '', 'description' => 'The order number.', 'type' => 'integer', 'format' => 'int64', 'example' => '5988430***541'], 'change_passengers' => [ 'title' => '', 'description' => 'The list of passengers for the flight change.', 'type' => 'array', 'items' => [ 'description' => 'The element.', 'type' => 'object', 'properties' => [ 'first_name' => ['title' => '', 'description' => 'The first name of the passenger.', 'type' => 'string', 'example' => 'SAN'], 'last_name' => ['title' => '', 'description' => 'The last name of the passenger.', 'type' => 'string', 'example' => 'ZHANG'], 'document' => ['title' => '', 'description' => 'The document number.', 'type' => 'string', 'example' => '411***********4411'], ], 'title' => '', 'example' => '', ], 'example' => '', ], 'total_amount' => ['title' => '', 'description' => 'The total payment amount of the change order.', 'type' => 'number', 'format' => 'double', 'example' => '300'], 'order_status' => ['title' => '', 'description' => 'The status of the change order. Valid values:'."\n" .'- 0: initial state'."\n" .'- 1: pending payment'."\n" .'- 2: payment successful'."\n" .'- 3: change successful'."\n" .'- 4: change closed.', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], 'close_reason' => ['title' => '', 'description' => 'The reason for closing the change order.', 'type' => 'string', 'example' => 'reason desc'], 'transaction_no' => ['title' => '', 'description' => 'The transaction number.', 'type' => 'string', 'example' => 'hkduendkd-2023-dj0'], 'change_reason_type' => ['title' => '', 'description' => 'The type of the change reason. Valid values:'."\n" .'- 0: voluntary date change'."\n" .'- 1: flight schedule change or flight cancellation'."\n" .'- 2: change due to pandemic.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'create_utc_time' => ['title' => '', 'description' => 'The creation time of the change order, in UTC timestamp.', 'type' => 'integer', 'format' => 'int64', 'example' => '1677415276000'], 'last_confirm_utc_time' => ['title' => '', 'description' => 'The latest payment deadline for the buyer, in UTC timestamp.', 'type' => 'integer', 'format' => 'int64', 'example' => '1677415278000'], 'pay_status' => ['title' => '', 'description' => 'The payment status. Valid values:'."\n" .'- 0: initial state'."\n" .'- 1: pending payment'."\n" .'- 2: payment successful'."\n" .'- 4: paid order closed successfully'."\n" .'- 5: unpaid order closed successfully.', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], 'pay_success_utc_time' => ['title' => '', 'description' => 'The time when the buyer completed the payment, in UTC timestamp.', 'type' => 'integer', 'format' => 'int64', 'example' => '1677415255000'], 'close_utc_time' => ['title' => '', 'description' => 'The time when the order was closed, in UTC timestamp.', 'type' => 'integer', 'format' => 'int64', 'example' => '1677415244000'], 'contact' => [ 'title' => '', 'description' => 'The contact information for the change order.', 'type' => 'object', 'properties' => [ 'mobile_country_code' => ['title' => '', 'description' => 'The country calling code.', 'type' => 'string', 'example' => '86'], 'mobile_phone_num' => ['title' => '', 'description' => 'The mobile phone number of the contact.', 'type' => 'string', 'example' => '183*****92'], 'email' => ['title' => '', 'description' => 'The email address.', 'type' => 'string', 'example' => 'gao******@gmail.com'], ], 'example' => '', ], 'original_journeys' => [ 'title' => '', 'description' => 'The original journeys.', 'type' => 'array', 'items' => [ 'description' => 'The element.', 'type' => 'object', 'properties' => [ 'transfer_count' => ['title' => '', 'description' => 'The number of transfers.', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'segment_list' => [ 'title' => '', 'description' => 'The segment information.', 'type' => 'array', 'items' => [ 'description' => 'segment', 'type' => 'object', 'properties' => [ 'segment_id' => ['title' => '', 'description' => 'The segment ID. Format: flight number + departure airport + arrival airport + departure date (MMdd).', 'type' => 'string', 'example' => 'HO1295-PVG-MFM-20230310'], 'departure_airport' => ['title' => '', 'description' => 'The three-letter IATA code of the departure airport (uppercase).', 'type' => 'string', 'example' => 'PVG'], 'arrival_airport' => ['title' => '', 'description' => 'The three-letter IATA code of the arrival airport (uppercase).', 'type' => 'string', 'example' => 'MFM'], 'departure_city' => ['title' => '', 'description' => 'The three-letter IATA code of the departure city (uppercase).', 'type' => 'string', 'example' => 'SHA'], 'arrival_city' => ['title' => '', 'description' => 'The three-letter IATA code of the arrival city (uppercase).', 'type' => 'string', 'example' => 'MFM'], 'marketing_flight_no' => ['title' => '', 'description' => 'The marketing flight number (such as HO1295).', 'type' => 'string', 'example' => 'HO1295'], 'marketing_flight_no_int' => ['title' => '', 'description' => 'The numeric marketing flight number (such as 1295).', 'type' => 'integer', 'format' => 'int32', 'example' => '1295'], 'marketing_airline' => ['title' => '', 'description' => 'The marketing airline code (such as HO).', 'type' => 'string', 'example' => 'HO'], 'operating_flight_no' => ['title' => '', 'description' => 'The operating flight number (such as CX601).', 'type' => 'string', 'example' => 'HO1295'], 'operating_airline' => ['title' => '', 'description' => 'The operating airline code (such as CX).', 'type' => 'string', 'example' => 'HO'], 'departure_time' => ['title' => '', 'description' => 'The departure date and time in string format (yyyy-MM-dd HH:mm:ss).', 'type' => 'string', 'example' => '2023-03-10 07:55:00'], 'arrival_time' => ['title' => '', 'description' => 'The arrival date and time in string format (yyyy-MM-dd HH:mm:ss).', 'type' => 'string', 'example' => '2023-03-10 10:40:00'], 'code_share' => ['title' => '', 'description' => 'Indicates whether the flight is a codeshare flight.', 'type' => 'boolean', 'example' => 'false'], 'departure_terminal' => ['title' => '', 'description' => 'The departure terminal.', 'type' => 'string', 'example' => 'T2'], 'arrival_terminal' => ['title' => '', 'description' => 'The arrival terminal.', 'type' => 'string', 'example' => 'T1'], 'equip_type' => ['title' => '', 'description' => 'The aircraft type.', 'type' => 'string', 'example' => '32Q'], 'cabin' => ['title' => '', 'description' => 'The cabin code.', 'type' => 'string', 'example' => 'V'], 'cabin_class' => ['title' => '', 'description' => 'The cabin class.', 'type' => 'string', 'example' => 'Y'], 'availability' => ['title' => '', 'description' => 'The number of remaining seats.', 'type' => 'string', 'example' => '7'], 'stop_city_list' => ['title' => '', 'description' => 'The list of stopover cities. This parameter has a value when stopQuantity is greater than 0. Multiple cities are separated by commas.', 'type' => 'string', 'example' => 'SEL,HKG'], 'stop_quantity' => ['title' => '', 'description' => 'The number of stopover cities.', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'flight_duration' => ['title' => '', 'description' => 'The flight duration, in minutes.', 'type' => 'integer', 'format' => 'int32', 'example' => '165'], ], 'title' => '', 'example' => '', ], 'example' => '', ], ], 'title' => '', 'example' => '', ], 'example' => '', ], 'changed_journeys' => [ 'title' => '', 'description' => 'The journeys after the change.', 'type' => 'array', 'items' => [ 'description' => 'The element.', 'type' => 'object', 'properties' => [ 'transfer_count' => ['title' => '', 'description' => 'The number of transfers.', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'segment_list' => [ 'title' => '', 'description' => 'The segment information.', 'type' => 'array', 'items' => [ 'description' => 'The element.', 'type' => 'object', 'properties' => [ 'segment_id' => ['title' => '', 'description' => 'The segment ID. Format: flight number + departure airport + arrival airport + departure date (MMdd).', 'type' => 'string', 'example' => 'HO1295-PVG-MFM-20230310'], 'departure_airport' => ['title' => '', 'description' => 'The three-letter IATA code of the departure airport (uppercase).', 'type' => 'string', 'example' => 'PVG'], 'arrival_airport' => ['title' => '', 'description' => 'The three-letter IATA code of the arrival airport (uppercase).', 'type' => 'string', 'example' => 'MFM'], 'departure_city' => ['title' => '', 'description' => 'The three-letter IATA code of the departure city (uppercase).', 'type' => 'string', 'example' => 'SHA'], 'arrival_city' => ['title' => '', 'description' => 'The three-letter IATA code of the arrival city (uppercase).', 'type' => 'string', 'example' => 'MFM'], 'marketing_flight_no' => ['title' => '', 'description' => 'The marketing flight number (such as HO1295).', 'type' => 'string', 'example' => 'HO1295'], 'marketing_flight_no_int' => ['title' => '', 'description' => 'The numeric marketing flight number (such as 1295).', 'type' => 'integer', 'format' => 'int32', 'example' => '1295'], 'marketing_airline' => ['title' => '', 'description' => 'The marketing airline code (such as HO).', 'type' => 'string', 'example' => 'HO'], 'operating_flight_no' => ['title' => '', 'description' => 'The operating flight number (such as CX601).', 'type' => 'string', 'example' => 'HO1295'], 'operating_airline' => ['title' => '', 'description' => 'The operating airline code (such as CX).', 'type' => 'string', 'example' => 'HO'], 'departure_time' => ['title' => '', 'description' => 'The departure date and time in string format (yyyy-MM-dd HH:mm:ss).', 'type' => 'string', 'example' => '2023-03-10 07:55:00'], 'arrival_time' => ['title' => '', 'description' => 'The arrival date and time in string format (yyyy-MM-dd HH:mm:ss).', 'type' => 'string', 'example' => '2023-03-10 10:40:00'], 'code_share' => ['title' => '', 'description' => 'Indicates whether the flight is a codeshare flight.', 'type' => 'boolean', 'example' => 'false'], 'departure_terminal' => ['title' => '', 'description' => 'The departure terminal.', 'type' => 'string', 'example' => 'T2'], 'arrival_terminal' => ['title' => '', 'description' => 'The arrival terminal.', 'type' => 'string', 'example' => 'T1'], 'equip_type' => ['title' => '', 'description' => 'The aircraft type.', 'type' => 'string', 'example' => '32Q'], 'cabin' => ['title' => '', 'description' => 'The cabin code.', 'type' => 'string', 'example' => 'V'], 'cabin_class' => ['title' => '', 'description' => 'The cabin class.', 'type' => 'string', 'example' => 'Y'], 'availability' => ['title' => '', 'description' => 'The number of remaining seats.', 'type' => 'string', 'example' => '7'], 'stop_city_list' => ['title' => '', 'description' => 'The list of stopover cities. This parameter has a value when stopQuantity is greater than 0. Multiple cities are separated by commas.', 'type' => 'string', 'example' => 'SEL,HKG'], 'stop_quantity' => ['title' => '', 'description' => 'The number of stopover cities.', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'flight_duration' => ['title' => '', 'description' => 'The flight duration, in minutes.', 'type' => 'integer', 'format' => 'int32', 'example' => '165'], ], 'title' => '', 'example' => '', ], 'example' => '', ], ], 'title' => '', 'example' => '', ], 'example' => '', ], 'last_journeys' => [ 'title' => '', 'description' => 'The journeys from the previous change.', 'type' => 'array', 'items' => [ 'description' => 'The element.', 'type' => 'object', 'properties' => [ 'transfer_count' => ['title' => '', 'description' => 'The number of transfers.', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'segment_list' => [ 'title' => '', 'description' => 'The segment information.', 'type' => 'array', 'items' => [ 'description' => 'The element.', 'type' => 'object', 'properties' => [ 'segment_id' => ['title' => '', 'description' => 'The segment ID. Format: flight number + departure airport + arrival airport + departure date (MMdd).', 'type' => 'string', 'example' => 'HO1295-PVG-MFM-20230310'], 'departure_airport' => ['title' => '', 'description' => 'The three-letter IATA code of the departure airport (uppercase).', 'type' => 'string', 'example' => 'PVG'], 'arrival_airport' => ['title' => '', 'description' => 'The three-letter IATA code of the arrival airport (uppercase).', 'type' => 'string', 'example' => 'MFM'], 'departure_city' => ['title' => '', 'description' => 'The three-letter IATA code of the departure city (uppercase).', 'type' => 'string', 'example' => 'SHA'], 'arrival_city' => ['title' => '', 'description' => 'The three-letter IATA code of the arrival city (uppercase).', 'type' => 'string', 'example' => 'MFM'], 'marketing_flight_no' => ['title' => '', 'description' => 'The marketing flight number (such as HO1295).', 'type' => 'string', 'example' => 'HO1295'], 'marketing_flight_no_int' => ['title' => '', 'description' => 'The numeric marketing flight number (such as 1295).', 'type' => 'integer', 'format' => 'int32', 'example' => '1295'], 'marketing_airline' => ['title' => '', 'description' => 'The marketing airline code (such as HO).', 'type' => 'string', 'example' => 'HO'], 'operating_flight_no' => ['title' => '', 'description' => 'The operating flight number (such as CX601).', 'type' => 'string', 'example' => 'HO1295'], 'operating_airline' => ['title' => '', 'description' => 'The operating airline code (such as CX).', 'type' => 'string', 'example' => 'HO'], 'departure_time' => ['title' => '', 'description' => 'The departure date and time in string format (yyyy-MM-dd HH:mm:ss).', 'type' => 'string', 'example' => '2023-03-10 07:55:00'], 'arrival_time' => ['title' => '', 'description' => 'The arrival date and time in string format (yyyy-MM-dd HH:mm:ss).', 'type' => 'string', 'example' => '2023-03-10 10:40:00'], 'code_share' => ['title' => '', 'description' => 'Indicates whether the flight is a codeshare flight.', 'type' => 'boolean', 'example' => 'false'], 'departure_terminal' => ['title' => '', 'description' => 'The departure terminal.', 'type' => 'string', 'example' => 'T2'], 'arrival_terminal' => ['title' => '', 'description' => 'The arrival terminal.', 'type' => 'string', 'example' => 'T1'], 'equip_type' => ['title' => '', 'description' => 'The aircraft type.', 'type' => 'string', 'example' => '32Q'], 'cabin' => ['title' => '', 'description' => 'The cabin code.', 'type' => 'string', 'example' => 'V'], 'cabin_class' => ['title' => '', 'description' => 'The cabin class.', 'type' => 'string', 'example' => 'Y'], 'availability' => ['title' => '', 'description' => 'The number of remaining seats.', 'type' => 'string', 'example' => '7'], 'stop_city_list' => ['title' => '', 'description' => 'The list of stopover cities. This parameter has a value when stopQuantity is greater than 0. Multiple cities are separated by commas.', 'type' => 'string', 'example' => 'SEL,HKG'], 'stop_quantity' => ['title' => '', 'description' => 'The number of stopover cities.', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'flight_duration' => ['title' => '', 'description' => 'The flight duration, in minutes.', 'type' => 'integer', 'format' => 'int32', 'example' => '165'], ], 'title' => '', 'example' => '', ], 'example' => '', ], ], 'title' => '', 'example' => '', ], 'example' => '', ], 'change_fee_details' => [ 'title' => '', 'description' => 'The change fee details at the passenger level.', 'type' => 'array', 'items' => [ 'description' => 'The element.', 'type' => 'object', 'properties' => [ 'passenger' => [ 'title' => '', 'description' => 'The passenger information for the change.', 'type' => 'object', 'properties' => [ 'first_name' => ['title' => '', 'description' => 'The first name of the passenger.', 'type' => 'string', 'example' => 'SAN'], 'last_name' => ['title' => '', 'description' => 'The last name of the passenger.', 'type' => 'string', 'example' => 'ZHANG'], 'document' => ['title' => '', 'description' => 'The document number.', 'type' => 'string', 'example' => '411***********4411'], ], 'example' => '', ], 'change_fee' => [ 'title' => '', 'description' => 'The change fee details for the passenger.', 'type' => 'object', 'properties' => [ 'upgrade_fee' => ['title' => '', 'description' => 'The upgrade fee.', 'type' => 'number', 'format' => 'double', 'example' => '30'], 'service_fee' => ['title' => '', 'description' => 'The service fee.', 'type' => 'number', 'format' => 'double', 'example' => '50'], 'tax_fee' => ['title' => '', 'description' => 'The change tax fee.', 'type' => 'number', 'format' => 'double', 'example' => '20'], ], 'example' => '', ], ], 'title' => '', 'example' => '', ], 'example' => '', ], ], 'example' => '', ], 'error_data' => ['title' => '', 'description' => 'The data returned with the error.', 'type' => 'any', 'example' => 'null'], ], 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"status\\": 200,\\n \\"error_code\\": \\"null\\",\\n \\"error_msg\\": \\"null\\",\\n \\"success\\": true,\\n \\"RequestId\\": \\"51593418-8C73-5E47-8BA8-3F1D4A00CC0B\\",\\n \\"data\\": {\\n \\"change_order_num\\": 0,\\n \\"order_num\\": 0,\\n \\"change_passengers\\": [\\n {\\n \\"first_name\\": \\"SAN\\",\\n \\"last_name\\": \\"ZHANG\\",\\n \\"document\\": \\"411***********4411\\"\\n }\\n ],\\n \\"total_amount\\": 300,\\n \\"order_status\\": 2,\\n \\"close_reason\\": \\"reason desc\\",\\n \\"transaction_no\\": \\"hkduendkd-2023-dj0\\",\\n \\"change_reason_type\\": 1,\\n \\"create_utc_time\\": 1677415276000,\\n \\"last_confirm_utc_time\\": 1677415278000,\\n \\"pay_status\\": 2,\\n \\"pay_success_utc_time\\": 1677415255000,\\n \\"close_utc_time\\": 1677415244000,\\n \\"contact\\": {\\n \\"mobile_country_code\\": \\"86\\",\\n \\"mobile_phone_num\\": \\"183*****92\\",\\n \\"email\\": \\"gao******@gmail.com\\"\\n },\\n \\"original_journeys\\": [\\n {\\n \\"transfer_count\\": 0,\\n \\"segment_list\\": [\\n {\\n \\"segment_id\\": \\"HO1295-PVG-MFM-20230310\\",\\n \\"departure_airport\\": \\"PVG\\",\\n \\"arrival_airport\\": \\"MFM\\",\\n \\"departure_city\\": \\"SHA\\",\\n \\"arrival_city\\": \\"MFM\\",\\n \\"marketing_flight_no\\": \\"HO1295\\",\\n \\"marketing_flight_no_int\\": 1295,\\n \\"marketing_airline\\": \\"HO\\",\\n \\"operating_flight_no\\": \\"HO1295\\",\\n \\"operating_airline\\": \\"HO\\",\\n \\"departure_time\\": \\"2023-03-10 07:55:00\\",\\n \\"arrival_time\\": \\"2023-03-10 10:40:00\\",\\n \\"code_share\\": false,\\n \\"departure_terminal\\": \\"T2\\",\\n \\"arrival_terminal\\": \\"T1\\",\\n \\"equip_type\\": \\"32Q\\",\\n \\"cabin\\": \\"V\\",\\n \\"cabin_class\\": \\"Y\\",\\n \\"availability\\": \\"7\\",\\n \\"stop_city_list\\": \\"SEL,HKG\\",\\n \\"stop_quantity\\": 0,\\n \\"flight_duration\\": 165\\n }\\n ]\\n }\\n ],\\n \\"changed_journeys\\": [\\n {\\n \\"transfer_count\\": 0,\\n \\"segment_list\\": [\\n {\\n \\"segment_id\\": \\"HO1295-PVG-MFM-20230310\\",\\n \\"departure_airport\\": \\"PVG\\",\\n \\"arrival_airport\\": \\"MFM\\",\\n \\"departure_city\\": \\"SHA\\",\\n \\"arrival_city\\": \\"MFM\\",\\n \\"marketing_flight_no\\": \\"HO1295\\",\\n \\"marketing_flight_no_int\\": 1295,\\n \\"marketing_airline\\": \\"HO\\",\\n \\"operating_flight_no\\": \\"HO1295\\",\\n \\"operating_airline\\": \\"HO\\",\\n \\"departure_time\\": \\"2023-03-10 07:55:00\\",\\n \\"arrival_time\\": \\"2023-03-10 10:40:00\\",\\n \\"code_share\\": false,\\n \\"departure_terminal\\": \\"T2\\",\\n \\"arrival_terminal\\": \\"T1\\",\\n \\"equip_type\\": \\"32Q\\",\\n \\"cabin\\": \\"V\\",\\n \\"cabin_class\\": \\"Y\\",\\n \\"availability\\": \\"7\\",\\n \\"stop_city_list\\": \\"SEL,HKG\\",\\n \\"stop_quantity\\": 0,\\n \\"flight_duration\\": 165\\n }\\n ]\\n }\\n ],\\n \\"last_journeys\\": [\\n {\\n \\"transfer_count\\": 0,\\n \\"segment_list\\": [\\n {\\n \\"segment_id\\": \\"HO1295-PVG-MFM-20230310\\",\\n \\"departure_airport\\": \\"PVG\\",\\n \\"arrival_airport\\": \\"MFM\\",\\n \\"departure_city\\": \\"SHA\\",\\n \\"arrival_city\\": \\"MFM\\",\\n \\"marketing_flight_no\\": \\"HO1295\\",\\n \\"marketing_flight_no_int\\": 1295,\\n \\"marketing_airline\\": \\"HO\\",\\n \\"operating_flight_no\\": \\"HO1295\\",\\n \\"operating_airline\\": \\"HO\\",\\n \\"departure_time\\": \\"2023-03-10 07:55:00\\",\\n \\"arrival_time\\": \\"2023-03-10 10:40:00\\",\\n \\"code_share\\": false,\\n \\"departure_terminal\\": \\"T2\\",\\n \\"arrival_terminal\\": \\"T1\\",\\n \\"equip_type\\": \\"32Q\\",\\n \\"cabin\\": \\"V\\",\\n \\"cabin_class\\": \\"Y\\",\\n \\"availability\\": \\"7\\",\\n \\"stop_city_list\\": \\"SEL,HKG\\",\\n \\"stop_quantity\\": 0,\\n \\"flight_duration\\": 165\\n }\\n ]\\n }\\n ],\\n \\"change_fee_details\\": [\\n {\\n \\"passenger\\": {\\n \\"first_name\\": \\"SAN\\",\\n \\"last_name\\": \\"ZHANG\\",\\n \\"document\\": \\"411***********4411\\"\\n },\\n \\"change_fee\\": {\\n \\"upgrade_fee\\": 30,\\n \\"service_fee\\": 50,\\n \\"tax_fee\\": 20\\n }\\n }\\n ]\\n },\\n \\"error_data\\": \\"null\\"\\n}","type":"json"}]', 'title' => 'Change order details', 'changeSet' => [], ], 'ChangeDetailListOfBuyer' => [ 'summary' => 'Queries a paging list of change order summaries by buyer account.', 'path' => '/airticket/v1/change/buyer/detail-list', 'methods' => ['get'], 'schemes' => ['https', 'http'], 'security' => [ [ 'accessTokenAuth' => [], ], ], 'deprecated' => false, 'systemTags' => [], 'parameters' => [ [ 'name' => 'utc_create_begin', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The start time for change order creation. The value is a 13-digit UTC timestamp.', 'type' => 'integer', 'format' => 'int64', 'example' => '1677415276000', 'required' => false], ], [ 'name' => 'utc_create_end', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The end time for change order creation. The value is a 13-digit UTC timestamp.', 'type' => 'integer', 'format' => 'int64', 'example' => '1677415279000', 'required' => false], ], [ 'name' => 'page_index', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The page index.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'required' => false], ], [ 'name' => 'page_size', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The page size.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'required' => false], ], [ 'name' => 'x-acs-airticket-access-token', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'The access_token.', 'type' => 'string', 'required' => true, 'example' => 'eyJhbGciOiJSUzI1NiIsImtpZCI6InN1ZXpfa2V5aWQifQ.eyJqdGkiOiJCQldMaWIzN0VxbC0xMjhhR2N5elJ3IiwiaWF0IjoxNjc3MDY2NTAxLCJleHAiOjE2NzcwNzM3MDEsIm5iZiI6MTY3NzA2NjQ0MX0.AF0DxsZK4Edyg0C6ObRQFUo36R1VYrb5IYmak25TmL1OfR5RkIUc3PpqFuQKNLKXf5fOtVQaKjaexzwodVeWZQDKEG_RPt_Ybb99EnEm6vPKs6e3pWFbKiBq71WleLHhVrdFb4YPowRKjc7bG0jyGUxiQ2iXy0RWDj9tIjfI-KEdzNp5oVnX7j4p3H12DwQrRPmd1nz3BciAQNINvDpzqusuIUw8JXyLFCz838Y0NhwB1_bYZyctxRLSzrGZuI5rrWtItgupqMsOlJ3RNy1QrIbQ2g6nPmzl-atOqcQ4Nw0HeDLR8dhM1OsIcFLbKXBUtwXofflhzAQrkDxhwYiXii'], ], [ 'name' => 'x-acs-airticket-language', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'The language. Default value: the language configured for the buyer account.', 'type' => 'string', 'required' => false, 'example' => 'en_US'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'PopBaseRes, Object>', 'type' => 'object', 'properties' => [ 'status' => ['title' => '', 'description' => 'The HTTP status code. The value is always 200 for successful HTTP requests.', 'type' => 'integer', 'format' => 'int32', 'example' => '200'], 'error_code' => ['title' => '', 'description' => 'The business error code.', 'type' => 'string', 'example' => 'null'], 'error_msg' => ['title' => '', 'description' => 'The error message.', 'type' => 'string', 'example' => 'null'], 'success' => ['title' => '', 'description' => 'Indicates whether the request is successful.', 'type' => 'boolean', 'example' => 'true'], 'RequestId' => ['title' => '', 'type' => 'string', 'example' => '51593418-8C73-5E47-8BA8-3F1D4A00CC0B', 'description' => ''], 'data' => [ 'title' => '', 'description' => 'The data returned for a successful request.', 'type' => 'object', 'properties' => [ 'list' => [ 'title' => '', 'description' => 'The data list.', 'type' => 'array', 'items' => [ 'description' => 'The element.', 'type' => 'object', 'properties' => [ 'change_order_num' => ['title' => '', 'description' => 'The change order number.', 'type' => 'integer', 'format' => 'int64', 'example' => '4988430***950'], 'order_num' => ['title' => '', 'description' => 'The order number.', 'type' => 'integer', 'format' => 'int64', 'example' => '4988430***971'], 'order_status' => ['title' => '', 'description' => 'The application order status. Valid values:'."\n" .'- 0: initial state'."\n" .'- 1: pending payment'."\n" .'- 2: payment successful'."\n" .'- 3: change successful'."\n" .'- 4: change closed.', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], 'pay_status' => ['title' => '', 'description' => 'The payment status. Valid values:'."\n" .'- 0: initial state'."\n" .'- 1: pending payment'."\n" .'- 2: payment successful'."\n" .'- 3: transaction successful'."\n" .'- 4: paid order closed successfully'."\n" .'- 5: unpaid order closed successfully.', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], 'transaction_no' => ['title' => '', 'description' => 'The transaction number.', 'type' => 'string', 'example' => 'hkduendkd-2023-dj0'], 'utc_create_time' => ['title' => '', 'description' => 'The order creation time. The value is a UTC timestamp.', 'type' => 'integer', 'format' => 'int64', 'example' => '1677415274000'], ], 'title' => '', 'example' => '', ], 'example' => '', ], 'pagination' => [ 'title' => '', 'description' => 'The pagination information.', 'type' => 'object', 'properties' => [ 'total_count' => ['title' => '', 'description' => 'The total number of records.', 'type' => 'integer', 'format' => 'int32', 'example' => '5'], 'total_page' => ['title' => '', 'description' => 'The total number of pages.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'current_page' => ['title' => '', 'description' => 'The current page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'page_size' => ['title' => '', 'description' => 'The number of records per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], ], 'example' => '', ], ], 'example' => '', ], 'error_data' => ['title' => '', 'description' => 'The data returned with the error.', 'type' => 'any', 'example' => 'null'], ], 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"status\\": 200,\\n \\"error_code\\": \\"null\\",\\n \\"error_msg\\": \\"null\\",\\n \\"success\\": true,\\n \\"RequestId\\": \\"51593418-8C73-5E47-8BA8-3F1D4A00CC0B\\",\\n \\"data\\": {\\n \\"list\\": [\\n {\\n \\"change_order_num\\": 0,\\n \\"order_num\\": 0,\\n \\"order_status\\": 2,\\n \\"pay_status\\": 2,\\n \\"transaction_no\\": \\"hkduendkd-2023-dj0\\",\\n \\"utc_create_time\\": 1677415274000\\n }\\n ],\\n \\"pagination\\": {\\n \\"total_count\\": 5,\\n \\"total_page\\": 1,\\n \\"current_page\\": 1,\\n \\"page_size\\": 10\\n }\\n },\\n \\"error_data\\": \\"null\\"\\n}","type":"json"}]', 'title' => 'ChangeDetailListOfBuyer', 'changeSet' => [], ], 'ChangeDetailListOfOrderNum' => [ 'summary' => 'Queries the list of change orders by the original order number.', 'path' => '/airticket/v1/change/order-num/detail-list', 'methods' => ['get'], 'schemes' => ['https', 'http'], 'security' => [ [ 'accessTokenAuth' => [], ], ], 'deprecated' => false, 'systemTags' => [], 'parameters' => [ [ 'name' => 'order_num', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The order number.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '4988430***700'], ], [ 'name' => 'page_index', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The page index.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'required' => false], ], [ 'name' => 'page_size', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The page size.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'required' => false], ], [ 'name' => 'x-acs-airticket-access-token', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'The access token.', 'type' => 'string', 'required' => true, 'example' => 'eyJhbGciOiJSUzI1NiIsImtpZCI6InN1ZXpfa2V5aWQifQ.eyJqdGkiOiJCQldMaWIzN0VxbC0xMjhhR2N5elJ3IiwiaWF0IjoxNjc3MDY2NTAxLCJleHAiOjE2NzcwNzM3MDEsIm5iZiI6MTY3NzA2NjQ0MX0.AF0DxsZK4Edyg0C6ObRQFUo36R1VYrb5IYmak25TmL1OfR5RkIUc3PpqFuQKNLKXf5fOtVQaKjaexzwodVeWZQDKEG_RPt_Ybb99EnEm6vPKs6e3pWFbKiBq71WleLHhVrdFb4YPowRKjc7bG0jyGUxiQ2iXy0RWDj9tIjfI-KEdzNp5oVnX7j4p3H12DwQrRPmd1nz3BciAQNINvDpzqusuIUw8JXyLFCz838Y0NhwB1_bYZyctxRLSzrGZuI5rrWtItgupqMsOlJ3RNy1QrIbQ2g6nPmzl-atOqcQ4Nw0HeDLR8dhM1OsIcFLbKXBUtwXofflhzAQrkDxhwYiXii'], ], [ 'name' => 'x-acs-airticket-language', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'The language. Defaults to the buyer account configuration.', 'type' => 'string', 'required' => false, 'example' => 'en_US'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'PopBaseRes, Object>', 'type' => 'object', 'properties' => [ 'status' => ['title' => '', 'description' => 'The HTTP status code. The value is always 200 for successful requests.', 'type' => 'integer', 'format' => 'int32', 'example' => '200'], 'error_code' => ['title' => '', 'description' => 'The business error code.', 'type' => 'string', 'example' => 'null'], 'error_msg' => ['title' => '', 'description' => 'The error message.', 'type' => 'string', 'example' => 'null'], 'success' => ['title' => '', 'description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'true'], 'RequestId' => ['title' => '', 'type' => 'string', 'example' => '51593418-8C73-5E47-8BA8-3F1D4A00CC0B', 'description' => ''], 'data' => [ 'title' => '', 'description' => 'The data returned for a successful request.', 'type' => 'object', 'properties' => [ 'list' => [ 'title' => '', 'description' => 'The data list.', 'type' => 'array', 'items' => [ 'description' => 'The element.', 'type' => 'object', 'properties' => [ 'change_order_num' => ['title' => '', 'description' => 'The change order number.', 'type' => 'integer', 'format' => 'int64', 'example' => '4988430***950'], 'order_num' => ['title' => '', 'description' => 'The order number.', 'type' => 'integer', 'format' => 'int64', 'example' => '5988430***541'], 'change_passengers' => [ 'title' => '', 'description' => 'The list of passengers for the change order.', 'type' => 'array', 'items' => [ 'description' => 'The element.', 'type' => 'object', 'properties' => [ 'first_name' => ['title' => '', 'description' => 'The first name of the passenger.', 'type' => 'string', 'example' => 'SAN'], 'last_name' => ['title' => '', 'description' => 'The last name of the passenger.', 'type' => 'string', 'example' => 'ZHANG'], 'document' => ['title' => '', 'description' => 'The document number.', 'type' => 'string', 'example' => '411***********4411'], ], 'title' => '', 'example' => '', ], 'example' => '', ], 'total_amount' => ['title' => '', 'description' => 'The total payment amount of the change order.', 'type' => 'number', 'format' => 'double', 'example' => '300'], 'order_status' => ['title' => '', 'description' => 'The change order status. Valid values:'."\n" .'- 0: initial state'."\n" .'- 1: pending payment'."\n" .'- 2: payment successful'."\n" .'- 3: change successful'."\n" .'- 4: change closed.', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], 'close_reason' => ['title' => '', 'description' => 'The reason for closing the change order.', 'type' => 'string', 'example' => 'reason desc'], 'transaction_no' => ['title' => '', 'description' => 'The transaction number.', 'type' => 'string', 'example' => 'hkduendkd-2023-dj0'], 'change_reason_type' => ['title' => '', 'description' => 'The change reason type. Valid values:'."\n" .'- 0: voluntary date change'."\n" .'- 1: flight schedule change or flight cancellation'."\n" .'- 2: change due to epidemic.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'create_utc_time' => ['title' => '', 'description' => 'The creation time of the change order, in UTC timestamp.', 'type' => 'integer', 'format' => 'int64', 'example' => '1677415276000'], 'last_confirm_utc_time' => ['title' => '', 'description' => 'The latest payment deadline for the buyer, in UTC timestamp.', 'type' => 'integer', 'format' => 'int64', 'example' => '1677415278000'], 'pay_status' => ['title' => '', 'description' => 'The payment status. Valid values:'."\n" .'- 0: initial state'."\n" .'- 1: pending payment'."\n" .'- 2: payment successful'."\n" .'- 3: transaction transfer successful'."\n" .'- 4: paid order closed successfully'."\n" .'- 5: unpaid order closed successfully.', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], 'pay_success_utc_time' => ['title' => '', 'description' => 'The time when the buyer completed the payment, in UTC timestamp.', 'type' => 'integer', 'format' => 'int64', 'example' => '1677415255000'], 'close_utc_time' => ['title' => '', 'description' => 'The time when the order was closed, in UTC timestamp.', 'type' => 'integer', 'format' => 'int64', 'example' => '1677415244000'], 'contact' => [ 'title' => '', 'description' => 'The contact information for the change order.', 'type' => 'object', 'properties' => [ 'mobile_country_code' => ['title' => '', 'description' => 'The country calling code.', 'type' => 'string', 'example' => '86'], 'mobile_phone_num' => ['title' => '', 'description' => 'The mobile phone number of the contact.', 'type' => 'string', 'example' => '183*****92'], 'email' => ['title' => '', 'description' => 'The email address.', 'type' => 'string', 'example' => 'gao******@gmail.com'], ], 'example' => '', ], 'original_journeys' => [ 'title' => '', 'description' => 'The original journeys.', 'type' => 'array', 'items' => [ 'description' => 'The element.', 'type' => 'object', 'properties' => [ 'transfer_count' => ['title' => '', 'description' => 'The number of transfers.', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'segment_list' => [ 'title' => '', 'description' => 'The segment information.', 'type' => 'array', 'items' => [ 'description' => 'The element.', 'type' => 'object', 'properties' => [ 'segment_id' => ['title' => '', 'description' => 'The segment ID. Format: flight number + departure airport + arrival airport + departure date (MMdd).', 'type' => 'string', 'example' => 'HO1295-PVG-MFM-20230310'], 'departure_airport' => ['title' => '', 'description' => 'The three-letter IATA code of the departure airport (uppercase).', 'type' => 'string', 'example' => 'PVG'], 'arrival_airport' => ['title' => '', 'description' => 'The three-letter IATA code of the arrival airport (uppercase).', 'type' => 'string', 'example' => 'MFM'], 'departure_city' => ['title' => '', 'description' => 'The three-letter IATA code of the departure city (uppercase).', 'type' => 'string', 'example' => 'SHA'], 'arrival_city' => ['title' => '', 'description' => 'The three-letter IATA code of the arrival city (uppercase).', 'type' => 'string', 'example' => 'MFM'], 'marketing_flight_no' => ['title' => '', 'description' => 'The marketing flight number (such as HO1295).', 'type' => 'string', 'example' => 'HO1295'], 'marketing_flight_no_int' => ['title' => '', 'description' => 'The numeric marketing flight number (such as 1295).', 'type' => 'integer', 'format' => 'int32', 'example' => '1295'], 'marketing_airline' => ['title' => '', 'description' => 'The marketing airline code (such as HO).', 'type' => 'string', 'example' => 'HO'], 'operating_flight_no' => ['title' => '', 'description' => 'The operating flight number (such as CX601).', 'type' => 'string', 'example' => 'HO1295'], 'operating_airline' => ['title' => '', 'description' => 'The operating airline code (such as CX).', 'type' => 'string', 'example' => 'HO'], 'departure_time' => ['title' => '', 'description' => 'The departure date and time in string format (yyyy-MM-dd HH:mm:ss).', 'type' => 'string', 'example' => '2023-03-10 07:55:00'], 'arrival_time' => ['title' => '', 'description' => 'The arrival date and time in string format (yyyy-MM-dd HH:mm:ss).', 'type' => 'string', 'example' => '2023-03-10 10:40:00'], 'code_share' => ['title' => '', 'description' => 'Indicates whether this is a codeshare flight.', 'type' => 'boolean', 'example' => 'false'], 'departure_terminal' => ['title' => '', 'description' => 'The departure terminal.', 'type' => 'string', 'example' => 'T2'], 'arrival_terminal' => ['title' => '', 'description' => 'The arrival terminal.', 'type' => 'string', 'example' => 'T1'], 'equip_type' => ['title' => '', 'description' => 'The aircraft type.', 'type' => 'string', 'example' => '32Q'], 'cabin' => ['title' => '', 'description' => 'The cabin code.', 'type' => 'string', 'example' => 'V'], 'cabin_class' => ['title' => '', 'description' => 'The cabin class.', 'type' => 'string', 'example' => 'Y'], 'availability' => ['title' => '', 'description' => 'The number of remaining seats.', 'type' => 'string', 'example' => '7'], 'stop_city_list' => ['title' => '', 'description' => 'The list of stopover cities. This field has a value when stopQuantity is greater than 0. Multiple cities are separated by commas.', 'type' => 'string', 'example' => 'SEL,HKG'], 'stop_quantity' => ['title' => '', 'description' => 'The number of stopover cities.', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'flight_duration' => ['title' => '', 'description' => 'The flight duration in minutes.', 'type' => 'integer', 'format' => 'int32', 'example' => '165'], ], 'title' => '', 'example' => '', ], 'example' => '', ], ], 'title' => '', 'example' => '', ], 'example' => '', ], 'changed_journeys' => [ 'title' => '', 'description' => 'The journeys after the change.', 'type' => 'array', 'items' => [ 'description' => 'The element.', 'type' => 'object', 'properties' => [ 'transfer_count' => ['title' => '', 'description' => 'The number of transfers.', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'segment_list' => [ 'title' => '', 'description' => 'The segment information.', 'type' => 'array', 'items' => [ 'description' => 'The element.', 'type' => 'object', 'properties' => [ 'segment_id' => ['title' => '', 'description' => 'The segment ID. Format: flight number + departure airport + arrival airport + departure date (MMdd).', 'type' => 'string', 'example' => 'HO1295-PVG-MFM-20230310'], 'departure_airport' => ['title' => '', 'description' => 'The three-letter IATA code of the departure airport (uppercase).', 'type' => 'string', 'example' => 'PVG'], 'arrival_airport' => ['title' => '', 'description' => 'The three-letter IATA code of the arrival airport (uppercase).', 'type' => 'string', 'example' => 'MFM'], 'departure_city' => ['title' => '', 'description' => 'The three-letter IATA code of the departure city (uppercase).', 'type' => 'string', 'example' => 'SHA'], 'arrival_city' => ['title' => '', 'description' => 'The three-letter IATA code of the arrival city (uppercase).', 'type' => 'string', 'example' => 'MFM'], 'marketing_flight_no' => ['title' => '', 'description' => 'The marketing flight number (such as HO1295).', 'type' => 'string', 'example' => 'HO1295'], 'marketing_flight_no_int' => ['title' => '', 'description' => 'The numeric marketing flight number (such as 1295).', 'type' => 'integer', 'format' => 'int32', 'example' => '1295'], 'marketing_airline' => ['title' => '', 'description' => 'The marketing airline code (such as HO).', 'type' => 'string', 'example' => 'HO'], 'operating_flight_no' => ['title' => '', 'description' => 'The operating flight number (such as CX601).', 'type' => 'string', 'example' => 'HO1295'], 'operating_airline' => ['title' => '', 'description' => 'The operating airline code (such as CX).', 'type' => 'string', 'example' => 'HO'], 'departure_time' => ['title' => '', 'description' => 'The departure date and time in string format (yyyy-MM-dd HH:mm:ss).', 'type' => 'string', 'example' => '2023-03-10 07:55:00'], 'arrival_time' => ['title' => '', 'description' => 'The arrival date and time in string format (yyyy-MM-dd HH:mm:ss).', 'type' => 'string', 'example' => '2023-03-10 10:40:00'], 'code_share' => ['title' => '', 'description' => 'Indicates whether this is a codeshare flight.', 'type' => 'boolean', 'example' => 'false'], 'departure_terminal' => ['title' => '', 'description' => 'The departure terminal.', 'type' => 'string', 'example' => 'T2'], 'arrival_terminal' => ['title' => '', 'description' => 'The arrival terminal.', 'type' => 'string', 'example' => 'T1'], 'equip_type' => ['title' => '', 'description' => 'The aircraft type.', 'type' => 'string', 'example' => '32Q'], 'cabin' => ['title' => '', 'description' => 'The cabin code.', 'type' => 'string', 'example' => 'V'], 'cabin_class' => ['title' => '', 'description' => 'The cabin class.', 'type' => 'string', 'example' => 'Y'], 'availability' => ['title' => '', 'description' => 'The number of remaining seats.', 'type' => 'string', 'example' => '7'], 'stop_city_list' => ['title' => '', 'description' => 'The list of stopover cities. This field has a value when stopQuantity is greater than 0. Multiple cities are separated by commas.', 'type' => 'string', 'example' => 'SEL,HKG'], 'stop_quantity' => ['title' => '', 'description' => 'The number of stopover cities.', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'flight_duration' => ['title' => '', 'description' => 'The flight duration in minutes.', 'type' => 'integer', 'format' => 'int32', 'example' => '165'], ], 'title' => '', 'example' => '', ], 'example' => '', ], ], 'title' => '', 'example' => '', ], 'example' => '', ], 'last_journeys' => [ 'title' => '', 'description' => 'The journeys from the previous change.', 'type' => 'array', 'items' => [ 'description' => 'The element.', 'type' => 'object', 'properties' => [ 'transfer_count' => ['title' => '', 'description' => 'The number of transfers.', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'segment_list' => [ 'title' => '', 'description' => 'The segment information.', 'type' => 'array', 'items' => [ 'description' => 'The element.', 'type' => 'object', 'properties' => [ 'segment_id' => ['title' => '', 'description' => 'The segment ID. Format: flight number + departure airport + arrival airport + departure date (MMdd).', 'type' => 'string', 'example' => 'HO1295-PVG-MFM-20230310'], 'departure_airport' => ['title' => '', 'description' => 'The three-letter IATA code of the departure airport (uppercase).', 'type' => 'string', 'example' => 'PVG'], 'arrival_airport' => ['title' => '', 'description' => 'The three-letter IATA code of the arrival airport (uppercase).', 'type' => 'string', 'example' => 'MFM'], 'departure_city' => ['title' => '', 'description' => 'The three-letter IATA code of the departure city (uppercase).', 'type' => 'string', 'example' => 'SHA'], 'arrival_city' => ['title' => '', 'description' => 'The three-letter IATA code of the arrival city (uppercase).', 'type' => 'string', 'example' => 'MFM'], 'marketing_flight_no' => ['title' => '', 'description' => 'The marketing flight number (such as HO1295).', 'type' => 'string', 'example' => 'HO1295'], 'marketing_flight_no_int' => ['title' => '', 'description' => 'The numeric marketing flight number (such as 1295).', 'type' => 'integer', 'format' => 'int32', 'example' => '1295'], 'marketing_airline' => ['title' => '', 'description' => 'The marketing airline code (such as HO).', 'type' => 'string', 'example' => 'HO'], 'operating_flight_no' => ['title' => '', 'description' => 'The operating flight number (such as CX601).', 'type' => 'string', 'example' => 'HO1295'], 'operating_airline' => ['title' => '', 'description' => 'The operating airline code (such as CX).', 'type' => 'string', 'example' => 'HO'], 'departure_time' => ['title' => '', 'description' => 'The departure date and time in string format (yyyy-MM-dd HH:mm:ss).', 'type' => 'string', 'example' => '2023-03-10 07:55:00'], 'arrival_time' => ['title' => '', 'description' => 'The arrival date and time in string format (yyyy-MM-dd HH:mm:ss).', 'type' => 'string', 'example' => '2023-03-10 10:40:00'], 'code_share' => ['title' => '', 'description' => 'Indicates whether this is a codeshare flight.', 'type' => 'boolean', 'example' => 'false'], 'departure_terminal' => ['title' => '', 'description' => 'The departure terminal.', 'type' => 'string', 'example' => 'T2'], 'arrival_terminal' => ['title' => '', 'description' => 'The arrival terminal.', 'type' => 'string', 'example' => 'T1'], 'equip_type' => ['title' => '', 'description' => 'The aircraft type.', 'type' => 'string', 'example' => '32Q'], 'cabin' => ['title' => '', 'description' => 'The cabin code.', 'type' => 'string', 'example' => 'V'], 'cabin_class' => ['title' => '', 'description' => 'The cabin class.', 'type' => 'string', 'example' => 'Y'], 'availability' => ['title' => '', 'description' => 'The number of remaining seats.', 'type' => 'string', 'example' => '7'], 'stop_city_list' => ['title' => '', 'description' => 'The list of stopover cities. This field has a value when stopQuantity is greater than 0. Multiple cities are separated by commas.', 'type' => 'string', 'example' => 'SEL,HKG'], 'stop_quantity' => ['title' => '', 'description' => 'The number of stopover cities.', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'flight_duration' => ['title' => '', 'description' => 'The flight duration in minutes.', 'type' => 'integer', 'format' => 'int32', 'example' => '165'], ], 'title' => '', 'example' => '', ], 'example' => '', ], ], 'title' => '', 'example' => '', ], 'example' => '', ], 'change_fee_details' => [ 'title' => '', 'description' => 'The change fee details at the passenger level.', 'type' => 'array', 'items' => [ 'description' => 'The element.', 'type' => 'object', 'properties' => [ 'passenger' => [ 'title' => '', 'description' => 'The passenger information for the change.', 'type' => 'object', 'properties' => [ 'first_name' => ['title' => '', 'description' => 'The first name of the passenger.', 'type' => 'string', 'example' => 'SAN'], 'last_name' => ['title' => '', 'description' => 'The last name of the passenger.', 'type' => 'string', 'example' => 'ZHANG'], 'document' => ['title' => '', 'description' => 'The document number.', 'type' => 'string', 'example' => '411***********4411'], ], 'example' => '', ], 'change_fee' => [ 'title' => '', 'description' => 'The change fee details for the passenger.', 'type' => 'object', 'properties' => [ 'upgrade_fee' => ['title' => '', 'description' => 'The upgrade fee.', 'type' => 'number', 'format' => 'double', 'example' => '30'], 'service_fee' => ['title' => '', 'description' => 'The service fee.', 'type' => 'number', 'format' => 'double', 'example' => '50'], 'tax_fee' => ['title' => '', 'description' => 'The change tax fee.', 'type' => 'number', 'format' => 'double', 'example' => '20'], ], 'example' => '', ], ], 'title' => '', 'example' => '', ], 'example' => '', ], ], 'title' => '', 'example' => '', ], 'example' => '', ], 'pagination' => [ 'title' => '', 'description' => 'The pagination information.', 'type' => 'object', 'properties' => [ 'total_count' => ['title' => '', 'description' => 'The total number of records.', 'type' => 'integer', 'format' => 'int32', 'example' => '5'], 'total_page' => ['title' => '', 'description' => 'The total number of pages.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'current_page' => ['title' => '', 'description' => 'The current page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'page_size' => ['title' => '', 'description' => 'The number of records per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], ], 'example' => '', ], ], 'example' => '', ], 'error_data' => ['title' => '', 'description' => 'The data returned with the error.', 'type' => 'any', 'example' => 'null'], ], 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"status\\": 200,\\n \\"error_code\\": \\"null\\",\\n \\"error_msg\\": \\"null\\",\\n \\"success\\": true,\\n \\"RequestId\\": \\"51593418-8C73-5E47-8BA8-3F1D4A00CC0B\\",\\n \\"data\\": {\\n \\"list\\": [\\n {\\n \\"change_order_num\\": 0,\\n \\"order_num\\": 0,\\n \\"change_passengers\\": [\\n {\\n \\"first_name\\": \\"SAN\\",\\n \\"last_name\\": \\"ZHANG\\",\\n \\"document\\": \\"411***********4411\\"\\n }\\n ],\\n \\"total_amount\\": 300,\\n \\"order_status\\": 2,\\n \\"close_reason\\": \\"reason desc\\",\\n \\"transaction_no\\": \\"hkduendkd-2023-dj0\\",\\n \\"change_reason_type\\": 1,\\n \\"create_utc_time\\": 1677415276000,\\n \\"last_confirm_utc_time\\": 1677415278000,\\n \\"pay_status\\": 2,\\n \\"pay_success_utc_time\\": 1677415255000,\\n \\"close_utc_time\\": 1677415244000,\\n \\"contact\\": {\\n \\"mobile_country_code\\": \\"86\\",\\n \\"mobile_phone_num\\": \\"183*****92\\",\\n \\"email\\": \\"gao******@gmail.com\\"\\n },\\n \\"original_journeys\\": [\\n {\\n \\"transfer_count\\": 0,\\n \\"segment_list\\": [\\n {\\n \\"segment_id\\": \\"HO1295-PVG-MFM-20230310\\",\\n \\"departure_airport\\": \\"PVG\\",\\n \\"arrival_airport\\": \\"MFM\\",\\n \\"departure_city\\": \\"SHA\\",\\n \\"arrival_city\\": \\"MFM\\",\\n \\"marketing_flight_no\\": \\"HO1295\\",\\n \\"marketing_flight_no_int\\": 1295,\\n \\"marketing_airline\\": \\"HO\\",\\n \\"operating_flight_no\\": \\"HO1295\\",\\n \\"operating_airline\\": \\"HO\\",\\n \\"departure_time\\": \\"2023-03-10 07:55:00\\",\\n \\"arrival_time\\": \\"2023-03-10 10:40:00\\",\\n \\"code_share\\": false,\\n \\"departure_terminal\\": \\"T2\\",\\n \\"arrival_terminal\\": \\"T1\\",\\n \\"equip_type\\": \\"32Q\\",\\n \\"cabin\\": \\"V\\",\\n \\"cabin_class\\": \\"Y\\",\\n \\"availability\\": \\"7\\",\\n \\"stop_city_list\\": \\"SEL,HKG\\",\\n \\"stop_quantity\\": 0,\\n \\"flight_duration\\": 165\\n }\\n ]\\n }\\n ],\\n \\"changed_journeys\\": [\\n {\\n \\"transfer_count\\": 0,\\n \\"segment_list\\": [\\n {\\n \\"segment_id\\": \\"HO1295-PVG-MFM-20230310\\",\\n \\"departure_airport\\": \\"PVG\\",\\n \\"arrival_airport\\": \\"MFM\\",\\n \\"departure_city\\": \\"SHA\\",\\n \\"arrival_city\\": \\"MFM\\",\\n \\"marketing_flight_no\\": \\"HO1295\\",\\n \\"marketing_flight_no_int\\": 1295,\\n \\"marketing_airline\\": \\"HO\\",\\n \\"operating_flight_no\\": \\"HO1295\\",\\n \\"operating_airline\\": \\"HO\\",\\n \\"departure_time\\": \\"2023-03-10 07:55:00\\",\\n \\"arrival_time\\": \\"2023-03-10 10:40:00\\",\\n \\"code_share\\": false,\\n \\"departure_terminal\\": \\"T2\\",\\n \\"arrival_terminal\\": \\"T1\\",\\n \\"equip_type\\": \\"32Q\\",\\n \\"cabin\\": \\"V\\",\\n \\"cabin_class\\": \\"Y\\",\\n \\"availability\\": \\"7\\",\\n \\"stop_city_list\\": \\"SEL,HKG\\",\\n \\"stop_quantity\\": 0,\\n \\"flight_duration\\": 165\\n }\\n ]\\n }\\n ],\\n \\"last_journeys\\": [\\n {\\n \\"transfer_count\\": 0,\\n \\"segment_list\\": [\\n {\\n \\"segment_id\\": \\"HO1295-PVG-MFM-20230310\\",\\n \\"departure_airport\\": \\"PVG\\",\\n \\"arrival_airport\\": \\"MFM\\",\\n \\"departure_city\\": \\"SHA\\",\\n \\"arrival_city\\": \\"MFM\\",\\n \\"marketing_flight_no\\": \\"HO1295\\",\\n \\"marketing_flight_no_int\\": 1295,\\n \\"marketing_airline\\": \\"HO\\",\\n \\"operating_flight_no\\": \\"HO1295\\",\\n \\"operating_airline\\": \\"HO\\",\\n \\"departure_time\\": \\"2023-03-10 07:55:00\\",\\n \\"arrival_time\\": \\"2023-03-10 10:40:00\\",\\n \\"code_share\\": false,\\n \\"departure_terminal\\": \\"T2\\",\\n \\"arrival_terminal\\": \\"T1\\",\\n \\"equip_type\\": \\"32Q\\",\\n \\"cabin\\": \\"V\\",\\n \\"cabin_class\\": \\"Y\\",\\n \\"availability\\": \\"7\\",\\n \\"stop_city_list\\": \\"SEL,HKG\\",\\n \\"stop_quantity\\": 0,\\n \\"flight_duration\\": 165\\n }\\n ]\\n }\\n ],\\n \\"change_fee_details\\": [\\n {\\n \\"passenger\\": {\\n \\"first_name\\": \\"SAN\\",\\n \\"last_name\\": \\"ZHANG\\",\\n \\"document\\": \\"411***********4411\\"\\n },\\n \\"change_fee\\": {\\n \\"upgrade_fee\\": 30,\\n \\"service_fee\\": 50,\\n \\"tax_fee\\": 20\\n }\\n }\\n ]\\n }\\n ],\\n \\"pagination\\": {\\n \\"total_count\\": 5,\\n \\"total_page\\": 1,\\n \\"current_page\\": 1,\\n \\"page_size\\": 10\\n }\\n },\\n \\"error_data\\": \\"null\\"\\n}","type":"json"}]', 'title' => 'ChangeDetailListOfOrderNum', 'changeSet' => [], ], 'CollectFlightLowestPrice' => [ 'summary' => 'Collects lowest-price flight information.', 'path' => '/airticket/v1/data-collect/flight-lowest-price', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'accessTokenAuth' => [], ], ], 'deprecated' => false, 'parameters' => [ [ 'name' => 'lowest_price_flight_info_list', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'The lowest-price flight information.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'request_id' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '123456789dacd', 'required' => false], 'departure_city' => ['title' => '', 'description' => 'The departure city.', 'type' => 'string', 'required' => true, 'example' => 'SHA'], 'arrival_city' => ['title' => '', 'description' => 'The arrival city.', 'type' => 'string', 'required' => true, 'example' => 'MFM'], 'trip_type' => ['title' => '', 'description' => 'The trip type. Valid values:'."\n" .'- 1: one-way'."\n" .'- 2: round-trip.', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '1'], 'departure_date' => ['title' => '', 'description' => 'The departure date. Format: yyyy-MM-dd.', 'type' => 'string', 'required' => true, 'example' => '2024-11-11'], 'return_date' => ['title' => '', 'description' => 'The return date for round-trip scenarios. Format: yyyy-MM-dd.', 'type' => 'string', 'example' => '2024-11-11', 'required' => false], 'departure_flight_number' => ['title' => '', 'description' => 'The list of outbound flight numbers. Multiple segments are split by commas (,).', 'type' => 'string', 'required' => true, 'example' => 'CA123,CA456'], 'return_flight_number' => ['title' => '', 'description' => 'The list of return flight numbers. Multiple segments are split by commas (,).', 'type' => 'string', 'example' => 'CA123,CA456', 'required' => false], 'suez_total_price' => ['title' => '', 'description' => 'The Suez quoted price, including fare and taxes. The currency is USD.', 'type' => 'number', 'format' => 'double', 'required' => true, 'example' => '100.1'], 'market_total_price' => ['title' => '', 'description' => 'The lowest competitor price in the market, including fare and taxes. The currency is USD.', 'type' => 'number', 'format' => 'double', 'required' => true, 'example' => '100.0'], 'solution_id' => ['title' => '', 'description' => 'The solution_id returned by Search/Enrich.', 'type' => 'string', 'required' => true, 'example' => 'eJwz8DeySEo0NjQ01TU3TU7TNTFINNO1SE5O0jVKM0hKNjEwTElLNYwz0A32cNT1dfPVNTIwMjYwNjRQ8/A3NLI01Q0Ic0cRBwBVFxJJ'], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => true, 'example' => '', ], ], [ 'name' => 'x-acs-airticket-access-token', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'The access_token.', 'type' => 'string', 'required' => true, 'example' => 'eyJhbGciOiJSUzI1NiIsImtpZCI6InN1ZXpfa2V5aWQifQ.eyJqdGkiOiJCQldMaWIzN0VxbC0xMjhhR2N5elJ3IiwiaWF0IjoxNjc3MDY2NTAxLCJleHAiOjE2NzcwNzM3MDEsIm5iZiI6MTY3NzA2NjQ0MX0.AF0DxsZK4Edyg0C6ObRQFUo36R1VYrb5IYmak25TmL1OfR5RkIUc3PpqFuQKNLKXf5fOtVQaKjaexzwodVeWZQDKEG_RPt_Ybb99EnEm6vPKs6e3pWFbKiBq71WleLHhVrdFb4YPowRKjc7bG0jyGUxiQ2iXy0RWDj9tIjfI-KEdzNp5oVnX7j4p3H12DwQrRPmd1nz3BciAQNINvDpzqusuIUw8JXyLFCz838Y0NhwB1_bYZyctxRLSzrGZuI5rrWtItgupqMsOlJ3RNy1QrIbQ2g6nPmzl-atOqcQ4Nw0HeDLR8dhM1OsIcFLbKXBUtwXofflhzAQrkDxhwYiXii'], ], [ 'name' => 'x-acs-airticket-language', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'The language. Defaults to the buyer account configuration.', 'type' => 'string', 'required' => false, 'example' => 'en_US'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'PopBaseRes', 'type' => 'object', 'properties' => [ 'status' => ['title' => '', 'description' => 'The HTTP status code. The value is always 200 for successful HTTP requests.', 'type' => 'integer', 'format' => 'int32', 'example' => '200'], 'error_code' => ['title' => '', 'description' => 'The business error code.', 'type' => 'string', 'example' => 'null'], 'error_msg' => ['title' => '', 'description' => 'The error message.', 'type' => 'string', 'example' => 'null'], 'success' => ['title' => '', 'description' => 'Indicates whether the request is successful.', 'type' => 'boolean', 'example' => 'true'], 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '51593418-8C73-5E47-8BA8-3F1D4A00CC0B'], 'data' => ['title' => '', 'description' => 'The data returned for a successful request.', 'type' => 'object', 'example' => 'null'], 'error_data' => ['title' => '', 'description' => 'The data returned for a failed request.', 'type' => 'any', 'example' => 'null'], ], 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"status\\": 200,\\n \\"error_code\\": \\"null\\",\\n \\"error_msg\\": \\"null\\",\\n \\"success\\": true,\\n \\"RequestId\\": \\"51593418-8C73-5E47-8BA8-3F1D4A00CC0B\\",\\n \\"data\\": null,\\n \\"error_data\\": \\"null\\"\\n}","type":"json"}]', 'title' => 'CollectFlightLowestPrice', 'description' => 'Collects lowest-price flight information.', 'changeSet' => [], ], 'Enrich' => [ 'summary' => 'Find richer quote information for the itinerary, including free baggage allowance, refund and change rules, and baggage through-check rules.', 'path' => '/airticket/v1/trade/action-enrich', 'methods' => ['post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'accessTokenAuth' => [], ], ], 'deprecated' => false, 'systemTags' => ['operationType' => 'none'], 'parameters' => [ [ 'name' => 'solution_id', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'solution_id returned by Search', 'type' => 'string', 'example' => 'eJwz8DeySEo0NjQ01TU3TU7TNTFINNO1SE5O0jVKM0hKNjEwTElLNYwz0A32cNT1dfPVNTIwMjYwNjRQ8/A3NLI01Q0Ic0cRBwBVFxJJ', 'required' => false], ], [ 'name' => 'adults', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'Number of adult passengers 1-9', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'required' => false], ], [ 'name' => 'children', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'Number of child passengers 0-9', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'required' => false], ], [ 'name' => 'infants', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'Number of infant passengers 0-9', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'required' => false], ], [ 'name' => 'cabin_class', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'Cabin class ALL_CABIN: all cabin classes; Y: economy; FC: first class and business class; S: premium economy; YS: economy and premium economy; YSC: economy, premium economy, and business class;', 'type' => 'string', 'example' => 'ALL_CABIN', 'required' => false], ], [ 'name' => 'journey_param_list', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'Journey information', 'type' => 'array', 'items' => [ 'description' => 'journey_param', 'type' => 'object', 'properties' => [ 'departure_city' => ['title' => '', 'description' => 'Departure city code (3-letter uppercase)', 'type' => 'string', 'required' => true, 'example' => 'SHA'], 'arrival_city' => ['title' => '', 'description' => 'Arrival city code (3-letter uppercase)', 'type' => 'string', 'required' => true, 'example' => 'MFM'], 'departure_date' => ['title' => '', 'description' => 'Departure date (yyyyMMdd)', 'type' => 'string', 'required' => true, 'example' => '20230310'], 'segment_param_list' => [ 'title' => '', 'description' => 'Specified segment information for this journey', 'type' => 'array', 'items' => [ 'description' => 'element', 'type' => 'object', 'properties' => [ 'departure_city' => ['title' => '', 'description' => 'Flight departure city code (3-letter uppercase)', 'type' => 'string', 'example' => 'SHA', 'required' => false], 'arrival_city' => ['title' => '', 'description' => 'Flight arrival city code (3-letter uppercase)', 'type' => 'string', 'example' => 'MFM', 'required' => false], 'departure_airport' => ['title' => '', 'description' => 'Flight departure airport code (3-letter uppercase)', 'type' => 'string', 'required' => false, 'example' => 'PVG'], 'arrival_airport' => ['title' => '', 'description' => 'Flight arrival airport code (3-letter uppercase)', 'type' => 'string', 'required' => false, 'example' => 'MFM'], 'departure_time' => ['title' => '', 'description' => 'String, flight departure date and time (yyyy-MM-dd HH:mm:ss)', 'type' => 'string', 'required' => false, 'example' => '2023-03-10 07:55:00'."\n"], 'marketing_flight_no' => ['title' => '', 'description' => 'Marketing carrier flight number (e.g., KA5809)', 'type' => 'string', 'required' => true, 'example' => 'HO1295'], 'cabin' => ['title' => '', 'description' => 'Booking class', 'type' => 'string', 'example' => 'V', 'required' => false], 'child_cabin' => ['title' => '', 'description' => 'Child booking class', 'type' => 'string', 'example' => 'E', 'required' => false], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => true, 'example' => '', ], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'example' => '', ], ], [ 'name' => 'x-acs-airticket-access-token', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'access_token', 'type' => 'string', 'required' => true, 'example' => 'eyJhbGciOiJSUzI1NiIsImtpZCI6InN1ZXpfa2V5aWQifQ.eyJqdGkiOiJCQldMaWIzN0VxbC0xMjhhR2N5elJ3IiwiaWF0IjoxNjc3MDY2NTAxLCJleHAiOjE2NzcwNzM3MDEsIm5iZiI6MTY3NzA2NjQ0MX0.AF0DxsZK4Edyg0C6ObRQFUo36R1VYrb5IYmak25TmL1OfR5RkIUc3PpqFuQKNLKXf5fOtVQaKjaexzwodVeWZQDKEG_RPt_Ybb99EnEm6vPKs6e3pWFbKiBq71WleLHhVrdFb4YPowRKjc7bG0jyGUxiQ2iXy0RWDj9tIjfI-KEdzNp5oVnX7j4p3H12DwQrRPmd1nz3BciAQNINvDpzqusuIUw8JXyLFCz838Y0NhwB1_bYZyctxRLSzrGZuI5rrWtItgupqMsOlJ3RNy1QrIbQ2g6nPmzl-atOqcQ4Nw0HeDLR8dhM1OsIcFLbKXBUtwXofflhzAQrkDxhwYiXii'], ], [ 'name' => 'x-acs-airticket-language', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'Multilingual, defaults to buyer account configuration', 'type' => 'string', 'required' => false, 'example' => 'en_US'."\n"], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'PopBaseRes', 'type' => 'object', 'properties' => [ 'status' => ['title' => '', 'description' => 'When HTTP request succeeds, status value is always 200', 'type' => 'integer', 'format' => 'int32', 'example' => '200'], 'error_code' => ['title' => '', 'description' => 'Business error code', 'type' => 'string', 'example' => 'null'], 'error_msg' => ['title' => '', 'description' => 'Error message', 'type' => 'string', 'example' => 'null'], 'success' => ['title' => '', 'description' => 'Whether successful', 'type' => 'boolean', 'example' => 'true'], 'RequestId' => ['title' => '', 'description' => 'Request RequestId', 'type' => 'string', 'example' => '51593418-8C73-5E47-8BA8-3F1D4A00CC0B'], 'data' => [ 'title' => '', 'description' => 'Data returned on successful processing', 'type' => 'object', 'properties' => [ 'solution_list' => [ 'title' => '', 'description' => 'Search and inquiry results', 'type' => 'array', 'items' => [ 'description' => 'solution', 'type' => 'object', 'properties' => [ 'solution_id' => ['title' => '', 'description' => 'solution_id', 'type' => 'string', 'example' => 'eJwz8DeySEo0NjQ01TU3TU7TNTFINNO1SE5O0jVKM0hKNjEwTElLNYwz0A32cNT1dfPVNTIwMjYwNjRQ8/A3NLI01Q0Ic0cRBwBVFxJJ'], 'adult_price' => ['title' => '', 'description' => 'Adult unit price', 'type' => 'number', 'format' => 'double', 'example' => '500'], 'adult_tax' => ['title' => '', 'description' => 'Adult tax', 'type' => 'number', 'format' => 'double', 'example' => '100'], 'child_price' => ['title' => '', 'description' => 'Child unit price', 'type' => 'number', 'format' => 'double', 'example' => '100'], 'child_tax' => ['title' => '', 'description' => 'Child tax', 'type' => 'number', 'format' => 'double', 'example' => '100'], 'infant_price' => ['title' => '', 'description' => 'Infant unit price', 'type' => 'number', 'format' => 'double', 'example' => '500'], 'infant_tax' => ['title' => '', 'description' => 'Infant tax', 'type' => 'number', 'format' => 'double', 'example' => '100'], 'refund_ticket_coupon_description' => ['title' => '', 'type' => 'string', 'example' => 'description', 'description' => ''], 'product_type_description' => ['title' => '', 'type' => 'string', 'example' => 'description', 'description' => ''], 'journey_list' => [ 'title' => '', 'description' => 'Journey', 'type' => 'array', 'items' => [ 'description' => 'journey', 'type' => 'object', 'properties' => [ 'transfer_count' => ['title' => '', 'description' => 'Number of transfers', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'segment_list' => [ 'title' => '', 'description' => 'Segment information', 'type' => 'array', 'items' => [ 'description' => 'segment', 'type' => 'object', 'properties' => [ 'segment_id' => ['title' => '', 'description' => 'Segment ID format: flight number + departure airport + arrival airport + departure date (MMdd)', 'type' => 'string', 'example' => 'HO1295-PVG-MFM-20230310'], 'departure_airport' => ['title' => '', 'description' => 'Flight departure airport code (3-letter uppercase)', 'type' => 'string', 'example' => 'PVG'], 'arrival_airport' => ['title' => '', 'description' => 'Flight arrival airport code (3-letter uppercase)', 'type' => 'string', 'example' => 'MFM'], 'departure_city' => ['title' => '', 'description' => 'Flight departure city code (3-letter uppercase)', 'type' => 'string', 'example' => 'SHA'], 'arrival_city' => ['title' => '', 'description' => 'Flight arrival city code (3-letter uppercase)', 'type' => 'string', 'example' => 'MFM'], 'marketing_flight_no' => ['title' => '', 'description' => 'Marketing carrier flight number (e.g., KA5809)', 'type' => 'string', 'example' => 'HO1295'], 'marketing_flight_no_int' => ['title' => '', 'description' => 'Marketing carrier numeric flight number (e.g., 5809)', 'type' => 'integer', 'format' => 'int32', 'example' => '1295'], 'marketing_airline' => ['title' => '', 'description' => 'Marketing carrier airline (e.g., KA)', 'type' => 'string', 'example' => 'HO'], 'operating_flight_no' => ['title' => '', 'description' => 'Operating carrier flight number (e.g., CX601)', 'type' => 'string', 'example' => 'HO1295'], 'operating_airline' => ['title' => '', 'description' => 'Operating carrier airline (e.g., CX)', 'type' => 'string', 'example' => 'HO'], 'departure_time' => ['title' => '', 'description' => 'Flight departure date and time, string format (yyyy-MM-dd HH:mm:ss)', 'type' => 'string', 'example' => '2023-03-10 07:55:00'], 'arrival_time' => ['title' => '', 'description' => 'Flight arrival date and time, string format (yyyy-MM-dd HH:mm:ss)', 'type' => 'string', 'example' => '2023-03-10 10:40:00'], 'code_share' => ['title' => '', 'description' => 'Whether it is a codeshare flight', 'type' => 'boolean', 'example' => 'false'], 'departure_terminal' => ['title' => '', 'description' => 'Flight departure terminal', 'type' => 'string', 'example' => 'T2'], 'arrival_terminal' => ['title' => '', 'description' => 'Flight arrival terminal', 'type' => 'string', 'example' => 'null'], 'equip_type' => ['title' => '', 'description' => 'Aircraft type', 'type' => 'string', 'example' => '32Q'], 'cabin' => ['title' => '', 'description' => 'Booking class', 'type' => 'string', 'example' => 'V'], 'cabin_class' => ['title' => '', 'description' => 'Cabin class', 'type' => 'string', 'example' => 'Y'], 'availability' => ['title' => '', 'description' => 'Remaining seats. Value range: 1,2,3,4,5,6,7,8,9,A; A indicates more than 9 remaining seats.', 'type' => 'string', 'example' => '7'], 'stop_city_list' => ['title' => '', 'description' => 'Stopover city list, has value when stopQuantity > 0, multiple values separated by commas', 'type' => 'string', 'example' => '""'], 'stop_quantity' => ['title' => '', 'description' => 'Number of stopover cities', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'flight_duration' => ['title' => '', 'description' => 'Flight duration, unit: minutes', 'type' => 'integer', 'format' => 'int32', 'example' => '165'], ], 'title' => '', 'example' => '', ], 'example' => '', ], ], 'title' => '', 'example' => '', ], 'example' => '', ], 'segment_baggage_mapping_list' => [ 'title' => '', 'description' => 'Free baggage allowance rules', 'type' => 'array', 'items' => [ 'description' => 'segment\\_baggage\\_mapping', 'type' => 'object', 'properties' => [ 'segment_id_list' => [ 'title' => '', 'description' => 'Segment ID list. These segment IDs share the same free baggage allowance rules', 'type' => 'array', 'items' => ['description' => 'segment_id', 'type' => 'string', 'example' => 'HO1295-PVG-MFM-20230310', 'title' => ''], 'example' => '', ], 'passenger_baggage_allowance_mapping' => [ 'title' => '', 'description' => 'Passenger type to free baggage allowance mapping', 'type' => 'object', 'additionalProperties' => [ 'type' => 'object', 'properties' => [ 'baggage_amount' => ['title' => '', 'description' => 'Number of checked baggage pieces', 'type' => 'integer', 'format' => 'int32', 'example' => '22'], 'baggage_weight' => ['title' => '', 'description' => 'Checked baggage weight', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], 'baggage_weight_unit' => ['title' => '', 'description' => 'Checked baggage weight unit KG', 'type' => 'string', 'example' => 'KG'], 'is_all_weight' => ['title' => '', 'description' => 'Whether it is total checked baggage weight', 'type' => 'boolean', 'example' => 'true'], 'carry_on_amount' => ['title' => '', 'description' => 'Number of carry-on baggage pieces', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'carry_on_weight' => ['title' => '', 'description' => 'Carry-on baggage weight', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], 'carry_on_weight_unit' => ['title' => '', 'description' => 'Carry-on baggage weight unit KG', 'type' => 'string', 'example' => 'KG'], 'is_all_carry_on_weight' => ['title' => '', 'description' => 'Whether it is total carry-on baggage weight', 'type' => 'boolean', 'example' => 'true'], ], 'description' => 'element', 'title' => '', 'example' => '', ], 'example' => '', ], ], 'title' => '', 'example' => '', ], 'example' => '', ], 'segment_refund_change_rule_mapping_list' => [ 'title' => '', 'description' => 'Refund and change rules', 'type' => 'array', 'items' => [ 'description' => 'element', 'type' => 'object', 'properties' => [ 'segment_id_list' => [ 'title' => '', 'description' => 'Segment ID list. These segment IDs share the same refund and change rules', 'type' => 'array', 'items' => ['description' => 'segment_id', 'type' => 'string', 'example' => 'HO1295-PVG-MFM-20230310', 'title' => ''], 'example' => '', ], 'refund_change_rule_map' => [ 'title' => '', 'description' => 'Passenger type to refund and change rules mapping', 'type' => 'object', 'additionalProperties' => [ 'type' => 'object', 'properties' => [ 'refund_rule_all_unused_list' => [ 'title' => '', 'description' => 'Fully unused refund rules', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'type' => ['title' => '', 'description' => 'Refund rule applicable journey usage type 0: fully unused; 1: partially unused', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'time_unit' => ['title' => '', 'description' => 'Time unit: day/hour', 'type' => 'string', 'example' => 'hour'], 'rule_start_time' => ['title' => '', 'description' => 'Start time of the refund time interval applicable to this refund rule, unit (day/hour)', 'type' => 'integer', 'format' => 'int32', 'example' => '36'], 'rule_end_time' => ['title' => '', 'description' => 'End time of the refund time interval applicable to this refund rule, unit (day/hour)', 'type' => 'integer', 'format' => 'int32', 'example' => '12'], 'can_refund' => ['title' => '', 'description' => 'Whether refund is allowed X-Y hours (days) before departure', 'type' => 'boolean', 'example' => 'true'], 'refund_fee' => ['title' => '', 'description' => 'Refund fee X-Y hours (days) before departure', 'type' => 'number', 'format' => 'double', 'example' => '20'], 'can_return_all_tax' => ['title' => '', 'description' => 'Whether full tax refund is available X-Y hours (days) before departure', 'type' => 'boolean', 'example' => 'true'], 'return_part_tax_fee' => ['title' => '', 'description' => 'Partial tax refund amount X-Y hours (days) before departure', 'type' => 'number', 'format' => 'double', 'example' => '20'], ], 'description' => 'element', 'title' => '', 'example' => '', ], 'example' => '', ], 'refund_rule_part_unused_list' => [ 'title' => '', 'description' => 'Partially unused refund rules', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'type' => ['title' => '', 'description' => 'Refund rule applicable journey usage type 0: fully unused; 1: partially unused', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'time_unit' => ['title' => '', 'description' => 'Time unit: day/hour', 'type' => 'string', 'example' => 'hour'], 'rule_start_time' => ['title' => '', 'description' => 'Start time of the refund time interval applicable to this refund rule, unit (day/hour)', 'type' => 'integer', 'format' => 'int32', 'example' => '36'], 'rule_end_time' => ['title' => '', 'description' => 'End time of the refund time interval applicable to this refund rule, unit (day/hour)', 'type' => 'integer', 'format' => 'int32', 'example' => '12'], 'can_refund' => ['title' => '', 'description' => 'Whether refund is allowed X-Y hours (days) before departure', 'type' => 'boolean', 'example' => 'true'], 'refund_fee' => ['title' => '', 'description' => 'Refund fee X-Y hours (days) before departure', 'type' => 'number', 'format' => 'double', 'example' => '20'], 'can_return_all_tax' => ['title' => '', 'description' => 'Whether full tax refund is available X-Y hours (days) before departure', 'type' => 'boolean', 'example' => '30'], 'return_part_tax_fee' => ['title' => '', 'description' => 'Partial tax refund amount X-Y hours (days) before departure', 'type' => 'number', 'format' => 'double', 'example' => '20'], ], 'description' => 'element', 'title' => '', 'example' => '', ], 'example' => '', ], 'change_rule_in_unused_list' => [ 'title' => '', 'description' => 'Return/inbound unused change rules', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'type' => ['title' => '', 'description' => 'Change rule applicable journey usage type 2: outbound unused; 3: return/inbound unused', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], 'time_unit' => ['title' => '', 'description' => 'Time unit: day/hour', 'type' => 'string', 'example' => 'hour'], 'rule_start_time' => ['title' => '', 'description' => 'Start time of the refund time interval applicable to this refund rule, unit (day/hour)', 'type' => 'integer', 'format' => 'int32', 'example' => '36'], 'rule_end_time' => ['title' => '', 'description' => 'End time of the refund time interval applicable to this refund rule, unit (day/hour)', 'type' => 'integer', 'format' => 'int32', 'example' => '12'], 'can_change' => ['title' => '', 'description' => 'Whether rebooking is allowed X-Y hours (days) before departure', 'type' => 'boolean', 'example' => 'true'], 'change_fee' => ['title' => '', 'description' => 'Rebooking fee X-Y hours (days) before departure', 'type' => 'number', 'format' => 'double', 'example' => '20'], ], 'description' => 'element', 'title' => '', 'example' => '', ], 'example' => '', ], 'change_rule_out_unused_list' => [ 'title' => '', 'description' => 'Outbound unused change rules', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'type' => ['title' => '', 'description' => 'Change rule applicable journey usage type 2: outbound unused; 3: return/inbound unused', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], 'time_unit' => ['title' => '', 'description' => 'Time unit: day/hour', 'type' => 'string', 'example' => 'hour'], 'rule_start_time' => ['title' => '', 'description' => 'Start time of the refund time interval applicable to this refund rule, unit (day/hour)', 'type' => 'integer', 'format' => 'int32', 'example' => '36'], 'rule_end_time' => ['title' => '', 'description' => 'End time of the refund time interval applicable to this refund rule, unit (day/hour)', 'type' => 'integer', 'format' => 'int32', 'example' => '12'], 'can_change' => ['title' => '', 'description' => 'Whether rebooking is allowed X-Y hours (days) before departure', 'type' => 'boolean', 'example' => 'true'], 'change_fee' => ['title' => '', 'description' => 'Rebooking fee X-Y hours (days) before departure', 'type' => 'number', 'format' => 'double', 'example' => '10'], ], 'description' => 'element', 'title' => '', 'example' => '', ], 'example' => '', ], ], 'description' => 'element', 'title' => '', 'example' => '', ], 'example' => '', ], ], 'title' => '', 'example' => '', ], 'example' => '', ], 'segment_baggage_check_in_info_list' => [ 'title' => '', 'description' => 'Baggage through-check rules', 'type' => 'array', 'items' => [ 'description' => 'element', 'type' => 'object', 'properties' => [ 'segment_id_list' => [ 'title' => '', 'description' => 'Segment ID list. These segment IDs share the same baggage through-check rules', 'type' => 'array', 'items' => ['description' => 'segment_id', 'type' => 'string', 'example' => 'HO1295-PVG-MFM-20230310', 'title' => ''], 'example' => '', ], 'luggage_direct_info_type' => ['title' => '', 'description' => 'Baggage through-check rule type 1: baggage through-checked between segments; 2: baggage re-checked between segments; 3: baggage through-checked at stopover city; 4: baggage re-checked at stopover city', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], ], 'title' => '', 'example' => '', ], 'example' => '', ], 'solution_attribute' => [ 'title' => '', 'description' => 'Quote attributes', 'type' => 'object', 'properties' => [ 'supply_source_type' => ['title' => '', 'description' => 'Supply source type 1: self-operated; 2: agent; 3: flagship store', 'type' => 'string', 'example' => '1'], ], 'example' => '', ], ], 'title' => '', 'example' => '', ], 'example' => '', ], ], 'example' => '', ], 'error_data' => ['title' => '', 'description' => 'Data carried on error processing', 'type' => 'any', 'example' => 'null'], ], 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"status\\": 200,\\n \\"error_code\\": \\"null\\",\\n \\"error_msg\\": \\"null\\",\\n \\"success\\": true,\\n \\"RequestId\\": \\"51593418-8C73-5E47-8BA8-3F1D4A00CC0B\\",\\n \\"data\\": {\\n \\"solution_list\\": [\\n {\\n \\"solution_id\\": \\"eJwz8DeySEo0NjQ01TU3TU7TNTFINNO1SE5O0jVKM0hKNjEwTElLNYwz0A32cNT1dfPVNTIwMjYwNjRQ8/A3NLI01Q0Ic0cRBwBVFxJJ\\",\\n \\"adult_price\\": 500,\\n \\"adult_tax\\": 100,\\n \\"child_price\\": 100,\\n \\"child_tax\\": 100,\\n \\"infant_price\\": 500,\\n \\"infant_tax\\": 100,\\n \\"refund_ticket_coupon_description\\": \\"description\\",\\n \\"product_type_description\\": \\"description\\",\\n \\"journey_list\\": [\\n {\\n \\"transfer_count\\": 0,\\n \\"segment_list\\": [\\n {\\n \\"segment_id\\": \\"HO1295-PVG-MFM-20230310\\",\\n \\"departure_airport\\": \\"PVG\\",\\n \\"arrival_airport\\": \\"MFM\\",\\n \\"departure_city\\": \\"SHA\\",\\n \\"arrival_city\\": \\"MFM\\",\\n \\"marketing_flight_no\\": \\"HO1295\\",\\n \\"marketing_flight_no_int\\": 1295,\\n \\"marketing_airline\\": \\"HO\\",\\n \\"operating_flight_no\\": \\"HO1295\\",\\n \\"operating_airline\\": \\"HO\\",\\n \\"departure_time\\": \\"2023-03-10 07:55:00\\",\\n \\"arrival_time\\": \\"2023-03-10 10:40:00\\",\\n \\"code_share\\": false,\\n \\"departure_terminal\\": \\"T2\\",\\n \\"arrival_terminal\\": \\"null\\",\\n \\"equip_type\\": \\"32Q\\",\\n \\"cabin\\": \\"V\\",\\n \\"cabin_class\\": \\"Y\\",\\n \\"availability\\": \\"7\\",\\n \\"stop_city_list\\": \\"\\\\\\"\\\\\\"\\",\\n \\"stop_quantity\\": 0,\\n \\"flight_duration\\": 165\\n }\\n ]\\n }\\n ],\\n \\"segment_baggage_mapping_list\\": [\\n {\\n \\"segment_id_list\\": [\\n \\"HO1295-PVG-MFM-20230310\\"\\n ],\\n \\"passenger_baggage_allowance_mapping\\": {\\n \\"key\\": {\\n \\"baggage_amount\\": 22,\\n \\"baggage_weight\\": 2,\\n \\"baggage_weight_unit\\": \\"KG\\",\\n \\"is_all_weight\\": true,\\n \\"carry_on_amount\\": 1,\\n \\"carry_on_weight\\": 2,\\n \\"carry_on_weight_unit\\": \\"KG\\",\\n \\"is_all_carry_on_weight\\": true\\n }\\n }\\n }\\n ],\\n \\"segment_refund_change_rule_mapping_list\\": [\\n {\\n \\"segment_id_list\\": [\\n \\"HO1295-PVG-MFM-20230310\\"\\n ],\\n \\"refund_change_rule_map\\": {\\n \\"key\\": {\\n \\"refund_rule_all_unused_list\\": [\\n {\\n \\"type\\": 0,\\n \\"time_unit\\": \\"hour\\",\\n \\"rule_start_time\\": 36,\\n \\"rule_end_time\\": 12,\\n \\"can_refund\\": true,\\n \\"refund_fee\\": 20,\\n \\"can_return_all_tax\\": true,\\n \\"return_part_tax_fee\\": 20\\n }\\n ],\\n \\"refund_rule_part_unused_list\\": [\\n {\\n \\"type\\": 1,\\n \\"time_unit\\": \\"hour\\",\\n \\"rule_start_time\\": 36,\\n \\"rule_end_time\\": 12,\\n \\"can_refund\\": true,\\n \\"refund_fee\\": 20,\\n \\"can_return_all_tax\\": true,\\n \\"return_part_tax_fee\\": 20\\n }\\n ],\\n \\"change_rule_in_unused_list\\": [\\n {\\n \\"type\\": 2,\\n \\"time_unit\\": \\"hour\\",\\n \\"rule_start_time\\": 36,\\n \\"rule_end_time\\": 12,\\n \\"can_change\\": true,\\n \\"change_fee\\": 20\\n }\\n ],\\n \\"change_rule_out_unused_list\\": [\\n {\\n \\"type\\": 2,\\n \\"time_unit\\": \\"hour\\",\\n \\"rule_start_time\\": 36,\\n \\"rule_end_time\\": 12,\\n \\"can_change\\": true,\\n \\"change_fee\\": 10\\n }\\n ]\\n }\\n }\\n }\\n ],\\n \\"segment_baggage_check_in_info_list\\": [\\n {\\n \\"segment_id_list\\": [\\n \\"HO1295-PVG-MFM-20230310\\"\\n ],\\n \\"luggage_direct_info_type\\": 1\\n }\\n ],\\n \\"solution_attribute\\": {\\n \\"supply_source_type\\": \\"1\\"\\n }\\n }\\n ]\\n },\\n \\"error_data\\": \\"null\\"\\n}","type":"json"}]', 'title' => 'Enrich', 'description' => 'In the input parameters, choose either solution\\_id or journey\\_param\\_list. solution\\_id must be obtained from the Search API.', 'changeSet' => [ ['createdAt' => '2025-11-06T09:10:48.000Z', 'description' => 'OpenAPI offline'], ['createdAt' => '2025-11-06T03:52:34.000Z', 'description' => 'OpenAPI offline'], ['createdAt' => '2025-11-06T03:52:32.000Z', 'description' => 'OpenAPI offline'], ['createdAt' => '2025-11-04T11:41:35.000Z', 'description' => 'OpenAPI offline'], ['createdAt' => '2025-11-04T11:22:03.000Z', 'description' => 'OpenAPI offline'], ['createdAt' => '2025-10-24T06:03:24.000Z', 'description' => 'OpenAPI offline'], ['createdAt' => '2025-10-24T05:51:47.000Z', 'description' => 'OpenAPI offline'], ['createdAt' => '2025-10-16T02:18:18.000Z', 'description' => 'OpenAPI offline'], ['createdAt' => '2025-10-16T02:18:05.000Z', 'description' => 'OpenAPI offline'], ['createdAt' => '2025-10-15T03:23:12.000Z', 'description' => 'OpenAPI offline'], ['createdAt' => '2025-10-15T03:22:26.000Z', 'description' => 'OpenAPI offline'], ['createdAt' => '2025-07-08T02:11:20.000Z', 'description' => 'OpenAPI offline'], ['createdAt' => '2025-07-08T02:10:43.000Z', 'description' => 'OpenAPI offline'], ['createdAt' => '2025-06-16T13:47:33.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2025-06-16T13:45:19.000Z', 'description' => 'OpenAPI offline'], ['createdAt' => '2025-06-16T13:20:00.000Z', 'description' => 'OpenAPI offline'], ['createdAt' => '2025-06-16T06:40:50.000Z', 'description' => 'OpenAPI offline'], ['createdAt' => '2025-06-16T04:09:49.000Z', 'description' => 'OpenAPI offline'], ['createdAt' => '2025-06-16T04:09:45.000Z', 'description' => 'OpenAPI offline'], ['createdAt' => '2025-06-16T04:09:44.000Z', 'description' => 'OpenAPI offline'], ['createdAt' => '2025-06-16T03:47:56.000Z', 'description' => 'OpenAPI offline'], ['createdAt' => '2025-06-16T01:54:11.000Z', 'description' => 'OpenAPI offline'], ], ], 'FileUpload' => [ 'summary' => 'Uploads a file as an attachment image. The file size is limited to 300 KB or less.', 'path' => '/airticket/v1/attachment/action-upload', 'methods' => ['post'], 'schemes' => ['https', 'http'], 'security' => [ [ 'accessTokenAuth' => [], ], ], 'deprecated' => false, 'systemTags' => [], 'parameters' => [ [ 'name' => 'order_num', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The forward order number.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '496***2617111'], ], [ 'name' => 'file_content', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The Base64-encoded string of the attachment image file. Supported image types: .jpg, .png, and .jpeg.', 'type' => 'string', 'required' => true, 'example' => '0r2LSuIsHlxEoGZcnGe34U1njBOR83Q4HNSvMDGrDPK5J71VjcGdRIWz2x3+tFxvQaduwHB46Z9K'."\n" .'dbIoDN8xPQ5PWlky8rKOPmAqSZfIRyPmAwvPvTJFwr8bRgHPPaq2VO8kHJ6jFIpJJ5I7Zqd1BjGS'."\n" .'SR/kULQZHsDDd2zgA9RRTsEQF2OSxFFFx2P/2Q=='], ], [ 'name' => 'x-acs-airticket-access-token', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'The access_token.', 'type' => 'string', 'required' => true, 'example' => 'eyJhbGciOiJSUzI1NiIsImtpZCI6InN1ZXpfa2V5aWQifQ.eyJqdGkiOiJCQldMaWIzN0VxbC0xMjhhR2N5elJ3IiwiaWF0IjoxNjc3MDY2NTAxLCJleHAiOjE2NzcwNzM3MDEsIm5iZiI6MTY3NzA2NjQ0MX0.AF0DxsZK4Edyg0C6ObRQFUo36R1VYrb5IYmak25TmL1OfR5RkIUc3PpqFuQKNLKXf5fOtVQaKjaexzwodVeWZQDKEG_RPt_Ybb99EnEm6vPKs6e3pWFbKiBq71WleLHhVrdFb4YPowRKjc7bG0jyGUxiQ2iXy0RWDj9tIjfI-KEdzNp5oVnX7j4p3H12DwQrRPmd1nz3BciAQNINvDpzqusuIUw8JXyLFCz838Y0NhwB1_bYZyctxRLSzrGZuI5rrWtItgupqMsOlJ3RNy1QrIbQ2g6nPmzl-atOqcQ4Nw0HeDLR8dhM1OsIcFLbKXBUtwXofflhzAQrkDxhwYiXii'], ], [ 'name' => 'x-acs-airticket-language', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'The language setting. Uses the buyer account configuration by default.', 'type' => 'string', 'required' => false, 'example' => 'en_US'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'PopBaseRes', 'type' => 'object', 'properties' => [ 'status' => ['title' => '', 'description' => 'The HTTP status code. The value is always 200 for successful requests.', 'type' => 'integer', 'format' => 'int32', 'example' => '200'], 'error_code' => ['title' => '', 'description' => 'The business error code.', 'type' => 'string', 'example' => 'null'], 'error_msg' => ['title' => '', 'description' => 'The error message.', 'type' => 'string', 'example' => 'null'], 'success' => ['title' => '', 'description' => 'Indicates whether the request is successful.', 'type' => 'boolean', 'example' => 'true'], 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '51593418-8C73-5E47-8BA8-3F1D4A00CC0B'], 'data' => [ 'title' => '', 'description' => 'The data returned for a successful request.', 'type' => 'object', 'properties' => [ 'uploaded_file_url' => ['title' => '', 'description' => 'The file name after upload.', 'type' => 'string', 'example' => 'https://fliggy-flight-jinghang-bucket.oss-cn-zhangjiakou.aliyuncs.com/suez/flight_suez_9a634376****47.jpeg'], ], 'example' => '', ], 'error_data' => ['title' => '', 'description' => 'The data returned with an error response.', 'type' => 'any', 'example' => 'null'], ], 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"status\\": 200,\\n \\"error_code\\": \\"null\\",\\n \\"error_msg\\": \\"null\\",\\n \\"success\\": true,\\n \\"RequestId\\": \\"51593418-8C73-5E47-8BA8-3F1D4A00CC0B\\",\\n \\"data\\": {\\n \\"uploaded_file_url\\": \\"https://fliggy-flight-jinghang-bucket.oss-cn-zhangjiakou.aliyuncs.com/suez/flight_suez_9a634376****47.jpeg\\"\\n },\\n \\"error_data\\": \\"null\\"\\n}","type":"json"}]', 'title' => 'FileUpload', 'changeSet' => [], ], 'FlightChangeOfOrder' => [ 'summary' => 'Queries flight change information by order number.', 'path' => '/airticket/v1/flightchange/of-order', 'methods' => ['get'], 'schemes' => ['https', 'http'], 'security' => [ [ 'accessTokenAuth' => [], ], ], 'deprecated' => false, 'systemTags' => [], 'parameters' => [ [ 'name' => 'order_num', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The order number.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '4966***617111'], ], [ 'name' => 'x-acs-airticket-access-token', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'access_token.', 'type' => 'string', 'required' => true, 'example' => 'eyJhbGciOiJSUzI1NiIsImtpZCI6InN1ZXpfa2V5aWQifQ.eyJqdGkiOiJCQldMaWIzN0VxbC0xMjhhR2N5elJ3IiwiaWF0IjoxNjc3MDY2NTAxLCJleHAiOjE2NzcwNzM3MDEsIm5iZiI6MTY3NzA2NjQ0MX0.AF0DxsZK4Edyg0C6ObRQFUo36R1VYrb5IYmak25TmL1OfR5RkIUc3PpqFuQKNLKXf5fOtVQaKjaexzwodVeWZQDKEG_RPt_Ybb99EnEm6vPKs6e3pWFbKiBq71WleLHhVrdFb4YPowRKjc7bG0jyGUxiQ2iXy0RWDj9tIjfI-KEdzNp5oVnX7j4p3H12DwQrRPmd1nz3BciAQNINvDpzqusuIUw8JXyLFCz838Y0NhwB1_bYZyctxRLSzrGZuI5rrWtItgupqMsOlJ3RNy1QrIbQ2g6nPmzl-atOqcQ4Nw0HeDLR8dhM1OsIcFLbKXBUtwXofflhzAQrkDxhwYiXii'], ], [ 'name' => 'x-acs-airticket-language', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'The language setting. Defaults to the buyer account configuration.', 'type' => 'string', 'required' => false, 'example' => 'en_US'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'PopBaseRes, Object>', 'type' => 'object', 'properties' => [ 'status' => ['title' => '', 'description' => 'The HTTP status code. The value is always 200 for successful requests.', 'type' => 'integer', 'format' => 'int32', 'example' => '200'], 'error_code' => ['title' => '', 'description' => 'The business error code.', 'type' => 'string', 'example' => 'null'], 'error_msg' => ['title' => '', 'description' => 'The error message.', 'type' => 'string', 'example' => 'null'], 'success' => ['title' => '', 'description' => 'Indicates whether the request is successful.', 'type' => 'boolean', 'example' => 'true'], 'RequestId' => ['title' => '', 'type' => 'string', 'example' => '51593418-8C73-5E47-8BA8-3F1D4A00CC0B', 'description' => ''], 'data' => [ 'title' => '', 'description' => 'The data returned for a successful request.', 'type' => 'array', 'items' => [ 'description' => 'The data elements.', 'type' => 'object', 'properties' => [ 'flight_change_detail' => [ 'title' => '', 'description' => 'The flight change information.', 'type' => 'object', 'properties' => [ 'old_flight_no' => ['title' => '', 'description' => 'The original flight number.', 'type' => 'string', 'example' => 'HO1295'], 'old_departure_airport' => ['title' => '', 'description' => 'The three-letter IATA code of the original departure airport (uppercase).', 'type' => 'string', 'example' => 'PVG'], 'old_arrival_airport' => ['title' => '', 'description' => 'The three-letter IATA code of the original arrival airport (uppercase).', 'type' => 'string', 'example' => 'MFM'], 'old_departure_time' => ['title' => '', 'description' => 'The departure date and time of the original flight in string format (yyyy-MM-dd HH:mm:ss).', 'type' => 'string', 'example' => '2023-02-01 12:01:00'], 'old_arrival_time' => ['title' => '', 'description' => 'The arrival date and time of the original flight in string format (yyyy-MM-dd HH:mm:ss).', 'type' => 'string', 'example' => '023-02-01 14:01:00'], 'new_flight_no' => ['title' => '', 'description' => 'The new flight number.', 'type' => 'string', 'example' => 'HO1295'], 'new_departure_airport' => ['title' => '', 'description' => 'The three-letter IATA code of the new departure airport (uppercase).', 'type' => 'string', 'example' => 'PVG'], 'new_arrival_airport' => ['title' => '', 'description' => 'The three-letter IATA code of the new arrival airport (uppercase).', 'type' => 'string', 'example' => 'MFM'], 'new_departure_time' => ['title' => '', 'description' => 'The departure date and time of the new flight in string format (yyyy-MM-dd HH:mm:ss).', 'type' => 'string', 'example' => '2023-02-01 13:01:00'], 'new_arrival_time' => ['title' => '', 'description' => 'The arrival date and time of the new flight in string format (yyyy-MM-dd HH:mm:ss).', 'type' => 'string', 'example' => '2023-02-01 15:01:00'], 'change_time' => ['title' => '', 'description' => 'The time of the flight change in string format (yyyy-MM-dd HH:mm:ss).', 'type' => 'string', 'example' => '2023-02-01 10:01:00'], 'change_type' => ['title' => '', 'description' => 'The type of the flight change. Valid values:'."\n" .'- 1: cancellation'."\n" .'- 2: schedule change.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'change_reason' => ['title' => '', 'description' => 'The reason for the flight change.', 'type' => 'string', 'example' => '天气'], ], 'example' => '', ], 'order_num' => ['title' => '', 'description' => 'The order number.', 'type' => 'integer', 'format' => 'int64', 'example' => '4966***617111'], ], 'title' => '', 'example' => '', ], 'example' => '', ], 'error_data' => ['title' => '', 'description' => 'The data returned with the error.', 'type' => 'any', 'example' => 'null'], ], 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"status\\": 200,\\n \\"error_code\\": \\"null\\",\\n \\"error_msg\\": \\"null\\",\\n \\"success\\": true,\\n \\"RequestId\\": \\"51593418-8C73-5E47-8BA8-3F1D4A00CC0B\\",\\n \\"data\\": [\\n {\\n \\"flight_change_detail\\": {\\n \\"old_flight_no\\": \\"HO1295\\",\\n \\"old_departure_airport\\": \\"PVG\\",\\n \\"old_arrival_airport\\": \\"MFM\\",\\n \\"old_departure_time\\": \\"2023-02-01 12:01:00\\",\\n \\"old_arrival_time\\": \\"023-02-01 14:01:00\\",\\n \\"new_flight_no\\": \\"HO1295\\",\\n \\"new_departure_airport\\": \\"PVG\\",\\n \\"new_arrival_airport\\": \\"MFM\\",\\n \\"new_departure_time\\": \\"2023-02-01 13:01:00\\",\\n \\"new_arrival_time\\": \\"2023-02-01 15:01:00\\",\\n \\"change_time\\": \\"2023-02-01 10:01:00\\",\\n \\"change_type\\": 1,\\n \\"change_reason\\": \\"天气\\"\\n },\\n \\"order_num\\": 0\\n }\\n ],\\n \\"error_data\\": \\"null\\"\\n}","type":"json"}]', 'title' => 'FlightChangeOfOrder', 'changeSet' => [], ], 'GetToken' => [ 'summary' => 'Obtains a token for API calls. The token is valid for 2 hours.', 'path' => '/airticket/v1/token', 'methods' => ['get'], 'schemes' => ['https', 'http'], 'security' => [ [ 'rootTokenAuth' => [], ], ], 'deprecated' => false, 'systemTags' => [], 'parameters' => [ [ 'name' => 'app_key', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The appKey.', 'type' => 'string', 'required' => true, 'example' => 'fu1bltcu3400iurywuri'], ], [ 'name' => 'app_secret', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The appSecret.', 'type' => 'string', 'required' => true, 'example' => 'ZzQ3MW1mb3E1ODAwI2ldUjYlWUdJn5YI'], ], ], 'responses' => [ 200 => [ 'headers' => [], 'schema' => [ 'title' => '', 'description' => 'PopBaseRes', 'type' => 'object', 'properties' => [ 'status' => ['title' => '', 'description' => 'The HTTP status code. The value is always 200 for successful HTTP requests.', 'type' => 'integer', 'format' => 'int32', 'example' => '200'], 'error_code' => ['title' => '', 'description' => 'The business error code.', 'type' => 'string', 'example' => 'null'], 'error_msg' => ['title' => '', 'description' => 'The error message.', 'type' => 'string', 'example' => 'null'], 'success' => ['title' => '', 'description' => 'Indicates whether the request is successful.', 'type' => 'boolean', 'example' => 'true'], 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '51593418-8C73-5E47-8BA8-3F1D4A00CC0B'], 'data' => [ 'title' => '', 'description' => 'The data returned for a successful request.', 'type' => 'object', 'properties' => [ 'token' => ['title' => '', 'description' => 'token', 'type' => 'string', 'example' => 'eyJhbGciOiJSUzI1NiIsImtpZCI6InN1ZXpfa2V5aWQifQ.eyJqdGkiOiIyUlRjY0Ezc1puSndpYU11R1ctTkVRIiwiaWF0IjoxNjc3MTU1Njg3LCJleHAiOjE2NzcxNjI4ODcsIm5iZiI6MTY3NzE1NTYyN30.bd8qBedJ7R24NC8VpMtM4Ni5OR-Cc0utPiKSx8fjoj9taalt7zXBF8uIVTETw1N-Fx9reLflwVXrbDHky7ZKqlE5o_B5Bkx-crQKlJL-NzasEmNnuJNb5kmmbCy3mvIrQfo5Q5Y0ZaQ110pXK4qd1shRbklvuQXn8lPueJtNqo8VdIOAPGG_rPwOw2P767I0fyFHcome8FR4ST1UrwxeApNKMB_BkpCsUZLgpm9h9trhKbB-3qtk6UK1GKmfw6qlWpL3PQN7FAObNruS0r0CGh3Muc9PaGsuu8Xu5on21h9WmI7L0-jatZkS55p4PEerU56XpkwJfa35_hltKNTauu'], 'expire_time' => ['title' => '', 'description' => 'The remaining validity period of the token. Unit: seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '7200'], 'generate_time' => ['title' => '', 'description' => 'The UNIX timestamp when the token was generated. Unit: seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1677055176'], ], 'example' => '', ], 'error_data' => ['title' => '', 'description' => 'The data returned with an error response.', 'type' => 'any', 'example' => 'null'], ], 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"status\\": 200,\\n \\"error_code\\": \\"null\\",\\n \\"error_msg\\": \\"null\\",\\n \\"success\\": true,\\n \\"RequestId\\": \\"51593418-8C73-5E47-8BA8-3F1D4A00CC0B\\",\\n \\"data\\": {\\n \\"token\\": \\"eyJhbGciOiJSUzI1NiIsImtpZCI6InN1ZXpfa2V5aWQifQ.eyJqdGkiOiIyUlRjY0Ezc1puSndpYU11R1ctTkVRIiwiaWF0IjoxNjc3MTU1Njg3LCJleHAiOjE2NzcxNjI4ODcsIm5iZiI6MTY3NzE1NTYyN30.bd8qBedJ7R24NC8VpMtM4Ni5OR-Cc0utPiKSx8fjoj9taalt7zXBF8uIVTETw1N-Fx9reLflwVXrbDHky7ZKqlE5o_B5Bkx-crQKlJL-NzasEmNnuJNb5kmmbCy3mvIrQfo5Q5Y0ZaQ110pXK4qd1shRbklvuQXn8lPueJtNqo8VdIOAPGG_rPwOw2P767I0fyFHcome8FR4ST1UrwxeApNKMB_BkpCsUZLgpm9h9trhKbB-3qtk6UK1GKmfw6qlWpL3PQN7FAObNruS0r0CGh3Muc9PaGsuu8Xu5on21h9WmI7L0-jatZkS55p4PEerU56XpkwJfa35_hltKNTauu\\",\\n \\"expire_time\\": 7200,\\n \\"generate_time\\": 1677055176\\n },\\n \\"error_data\\": \\"null\\"\\n}","type":"json"}]', 'title' => 'GetToken', 'changeSet' => [], ], 'LuggageDirect' => [ 'summary' => 'Queries luggage through-check information for an itinerary.', 'path' => '/airticket/v1/flight-data/luggage-direct', 'methods' => ['get'], 'schemes' => ['https', 'http'], 'security' => [ [ 'accessTokenAuth' => [], ], ], 'deprecated' => false, 'parameters' => [ [ 'name' => 'flight_segment_param_list', 'in' => 'query', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'The list of flight segments that constitute an itinerary. Maximum size: 2.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'departure_airport' => ['title' => '', 'description' => 'The three-letter IATA code of the departure airport.', 'type' => 'string', 'required' => true, 'example' => 'HGH'], 'arrival_airport' => ['title' => '', 'description' => 'The three-letter IATA code of the arrival airport.', 'type' => 'string', 'required' => true, 'example' => 'SIN'], 'departure_terminal' => ['title' => '', 'description' => 'The departure terminal.', 'type' => 'string', 'example' => 'T1', 'required' => false], 'arrival_terminal' => ['title' => '', 'description' => 'The arrival terminal.', 'type' => 'string', 'example' => 'T1', 'required' => false], 'departure_time' => ['title' => '', 'description' => 'The departure time. A 13-digit UNIX timestamp.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1705285430445'], 'arrival_time' => ['title' => '', 'description' => 'The arrival time. A 13-digit UNIX timestamp.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1705285430445'], 'stop_city_list' => ['title' => '', 'description' => 'The three-letter IATA codes of stopover cities.', 'type' => 'string', 'example' => 'SEL,HKG', 'required' => false], 'marketing_airline' => ['title' => '', 'description' => 'The marketing airline.', 'type' => 'string', 'required' => true, 'example' => 'CZ'], 'operating_airline' => ['title' => '', 'description' => 'The operating airline.', 'type' => 'string', 'example' => 'CZ', 'required' => false], 'ticketing_airline' => ['title' => '', 'description' => 'The ticketing airline.', 'type' => 'string', 'example' => 'CZ', 'required' => false], 'marketing_flight_no' => ['title' => '', 'description' => 'The flight number.', 'type' => 'string', 'required' => true, 'example' => 'CZ616'], 'code_share' => ['title' => '', 'description' => 'Indicates whether the flight is a codeshare flight.', 'type' => 'boolean', 'required' => true, 'example' => 'true', 'default' => 'false'], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'example' => '', ], ], [ 'name' => 'x-acs-airticket-access-token', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'The access token.', 'type' => 'string', 'required' => true, 'example' => 'eyJhbGciOiJSUzI1NiIsImtpZCI6InN1ZXpfa2V5aWQifQ.eyJqdGkiOiJCQldMaWIzN0VxbC0xMjhhR2N5elJ3IiwiaWF0IjoxNjc3MDY2NTAxLCJleHAiOjE2NzcwNzM3MDEsIm5iZiI6MTY3NzA2NjQ0MX0.AF0DxsZK4Edyg0C6ObRQFUo36R1VYrb5IYmak25TmL1OfR5RkIUc3PpqFuQKNLKXf5fOtVQaKjaexzwodVeWZQDKEG_RPt_Ybb99EnEm6vPKs6e3pWFbKiBq71WleLHhVrdFb4YPowRKjc7bG0jyGUxiQ2iXy0RWDj9tIjfI-KEdzNp5oVnX7j4p3H12DwQrRPmd1nz3BciAQNINvDpzqusuIUw8JXyLFCz838Y0NhwB1_bYZyctxRLSzrGZuI5rrWtItgupqMsOlJ3RNy1QrIbQ2g6nPmzl-atOqcQ4Nw0HeDLR8dhM1OsIcFLbKXBUtwXofflhzAQrkDxhwYiXii'], ], [ 'name' => 'x-acs-airticket-language', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'The language. Defaults to the buyer account configuration.', 'type' => 'string', 'required' => false, 'example' => 'en_US'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'PopBaseRes, Object>', 'type' => 'object', 'properties' => [ 'status' => ['title' => '', 'description' => 'The HTTP status code. The value is always 200 for successful requests.', 'type' => 'integer', 'format' => 'int32', 'example' => '200'], 'error_code' => ['title' => '', 'description' => 'The business error code.', 'type' => 'string', 'example' => 'null'], 'error_msg' => ['title' => '', 'description' => 'The error message.', 'type' => 'string', 'example' => 'null'], 'success' => ['title' => '', 'description' => 'Indicates whether the request is successful.', 'type' => 'boolean', 'example' => 'true'], 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '51593418-8C73-5E47-8BA8-3F1D4A00CC0B'], 'data' => [ 'title' => '', 'description' => 'The data returned for a successful request.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'city_code' => ['title' => '', 'description' => 'The three-letter IATA code of the city.', 'type' => 'string', 'example' => 'BJS'], 'direct_type' => ['title' => '', 'description' => 'The luggage through-check rule type. Valid values:'."\n" .'- 0: luggage through-check is not supported.'."\n" .'- 1: luggage through-check is supported.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], ], 'description' => '', 'title' => '', 'example' => '', ], 'example' => '', ], 'error_data' => ['title' => '', 'description' => 'The data returned with the error response.', 'type' => 'any', 'example' => 'null'], ], 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"status\\": 200,\\n \\"error_code\\": \\"null\\",\\n \\"error_msg\\": \\"null\\",\\n \\"success\\": true,\\n \\"RequestId\\": \\"51593418-8C73-5E47-8BA8-3F1D4A00CC0B\\",\\n \\"data\\": [\\n {\\n \\"city_code\\": \\"BJS\\",\\n \\"direct_type\\": 1\\n }\\n ],\\n \\"error_data\\": \\"null\\"\\n}","type":"json"}]', 'title' => 'LuggageDirect', 'description' => 'Queries luggage through-check information for an itinerary. Provide itinerary information as input, and the API returns whether luggage through-check is supported for the itinerary. Luggage through-check applies to transfer and stopover scenarios.', 'changeSet' => [], ], 'OrderDetail' => [ 'summary' => 'Queries order details.', 'path' => '/airticket/v1/trade/order-detail', 'methods' => ['get'], 'schemes' => ['https', 'http'], 'security' => [ [ 'accessTokenAuth' => [], ], ], 'deprecated' => false, 'systemTags' => [], 'parameters' => [ [ 'name' => 'order_num', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The order number.', 'type' => 'integer', 'format' => 'int64', 'example' => '4966***617111', 'required' => false], ], [ 'name' => 'out_order_num', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The external order number.', 'type' => 'string', 'example' => 'x091-2023-0220-j-0001', 'required' => false], ], [ 'name' => 'x-acs-airticket-access-token', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'The access token.', 'type' => 'string', 'required' => true, 'example' => 'eyJhbGciOiJSUzI1NiIsImtpZCI6InN1ZXpfa2V5aWQifQ.eyJqdGkiOiJCQldMaWIzN0VxbC0xMjhhR2N5elJ3IiwiaWF0IjoxNjc3MDY2NTAxLCJleHAiOjE2NzcwNzM3MDEsIm5iZiI6MTY3NzA2NjQ0MX0.AF0DxsZK4Edyg0C6ObRQFUo36R1VYrb5IYmak25TmL1OfR5RkIUc3PpqFuQKNLKXf5fOtVQaKjaexzwodVeWZQDKEG_RPt_Ybb99EnEm6vPKs6e3pWFbKiBq71WleLHhVrdFb4YPowRKjc7bG0jyGUxiQ2iXy0RWDj9tIjfI-KEdzNp5oVnX7j4p3H12DwQrRPmd1nz3BciAQNINvDpzqusuIUw8JXyLFCz838Y0NhwB1_bYZyctxRLSzrGZuI5rrWtItgupqMsOlJ3RNy1QrIbQ2g6nPmzl-atOqcQ4Nw0HeDLR8dhM1OsIcFLbKXBUtwXofflhzAQrkDxhwYiXii'], ], [ 'name' => 'x-acs-airticket-language', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'The language. Defaults to the buyer account configuration.', 'type' => 'string', 'required' => false, 'example' => 'en_US'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'PopBaseRes', 'type' => 'object', 'properties' => [ 'status' => ['title' => '', 'description' => 'The HTTP status code. The value is always 200 for successful requests.', 'type' => 'integer', 'format' => 'int32', 'example' => '200'], 'error_code' => ['title' => '', 'description' => 'The business error code.', 'type' => 'string', 'example' => 'null'], 'error_msg' => ['title' => '', 'description' => 'The error message.', 'type' => 'string', 'example' => 'null'], 'success' => ['title' => '', 'description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'true'], 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '51593418-8C73-5E47-8BA8-3F1D4A00CC0B'], 'data' => [ 'title' => '', 'description' => 'The data returned for a successful request.', 'type' => 'object', 'properties' => [ 'refund_change_rule_map' => [ 'title' => '', 'description' => 'The mapping of passenger types to refund and change rules.', 'type' => 'object', 'additionalProperties' => [ 'type' => 'object', 'properties' => [ 'refund_rule_all_unused_list' => [ 'title' => '', 'description' => '全程未使用退票规则', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'type' => ['title' => '', 'description' => '该退票规则适用航程使用类型 0:全程未使用; 1:部分未使用', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'time_unit' => ['title' => '', 'description' => '时间单位:day/hour', 'type' => 'string', 'example' => 'hour'], 'rule_start_time' => ['title' => '', 'description' => '该退票规则适用于的退票时间区间开始时间,单位(天/小时)', 'type' => 'integer', 'format' => 'int32', 'example' => '36'], 'rule_end_time' => ['title' => '', 'description' => '该退票规则适用于的退票时间区间结束时间,单位(天/小时)', 'type' => 'integer', 'format' => 'int32', 'example' => '12'], 'can_refund' => ['title' => '', 'description' => '起飞前X-Y小时(天) 可否退票', 'type' => 'boolean', 'example' => 'true'], 'refund_fee' => ['title' => '', 'description' => '起飞前X-Y小时(天) 退票手续费', 'type' => 'number', 'format' => 'double', 'example' => '200'], 'can_return_all_tax' => ['title' => '', 'description' => '起飞前X-Y小时(天) 是否全额退税', 'type' => 'boolean', 'example' => 'true'], 'return_part_tax_fee' => ['title' => '', 'description' => '起飞前X-Y小时(天) 可部分退税金额', 'type' => 'number', 'format' => 'double', 'example' => '100'], ], 'description' => '元素', 'title' => '', 'example' => '', ], 'example' => '', ], 'refund_rule_part_unused_list' => [ 'title' => '', 'description' => '部分未使用退票规则', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'type' => ['title' => '', 'description' => '该退票规则适用航程使用类型 0:全程未使用; 1:部分未使用', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'time_unit' => ['title' => '', 'description' => '时间单位:day/hour', 'type' => 'string', 'example' => 'hour'], 'rule_start_time' => ['title' => '', 'description' => '该退票规则适用于的退票时间区间开始时间,单位(天/小时)', 'type' => 'integer', 'format' => 'int32', 'example' => '36'], 'rule_end_time' => ['title' => '', 'description' => '该退票规则适用于的退票时间区间结束时间,单位(天/小时)', 'type' => 'integer', 'format' => 'int32', 'example' => '12'], 'can_refund' => ['title' => '', 'description' => '起飞前X-Y小时(天) 可否退票', 'type' => 'boolean', 'example' => 'true'], 'refund_fee' => ['title' => '', 'description' => '起飞前X-Y小时(天) 退票手续费', 'type' => 'number', 'format' => 'double', 'example' => '200'], 'can_return_all_tax' => ['title' => '', 'description' => '起飞前X-Y小时(天) 是否全额退税', 'type' => 'boolean', 'example' => 'true'], 'return_part_tax_fee' => ['title' => '', 'description' => '起飞前X-Y小时(天) 可部分退税金额', 'type' => 'number', 'format' => 'double', 'example' => '100'], ], 'description' => '元素', 'title' => '', 'example' => '', ], 'example' => '', ], 'change_rule_in_unused_list' => [ 'title' => '', 'description' => '回程未使用改签规则', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'type' => ['title' => '', 'description' => '该改签规则适用航程使用类型 2:去程未使用; 3:回程未使用', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], 'time_unit' => ['title' => '', 'description' => '时间单位:day/hour', 'type' => 'string', 'example' => 'hour'], 'rule_start_time' => ['title' => '', 'description' => '该退票规则适用于的退票时间区间开始时间,单位(天/小时)', 'type' => 'integer', 'format' => 'int32', 'example' => '36'], 'rule_end_time' => ['title' => '', 'description' => '该退票规则适用于的退票时间区间结束时间,单位(天/小时)', 'type' => 'integer', 'format' => 'int32', 'example' => '12'], 'can_change' => ['title' => '', 'description' => '起飞前X-Y小时(天) 可否可以改签', 'type' => 'boolean', 'example' => 'true'], 'change_fee' => ['title' => '', 'description' => '起飞前X-Y小时(天) 改签费', 'type' => 'number', 'format' => 'double', 'example' => '100'], ], 'description' => '元素', 'title' => '', 'example' => '', ], 'example' => '', ], 'change_rule_out_unused_list' => [ 'title' => '', 'description' => '去程未使用改签规则', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'type' => ['title' => '', 'description' => '该改签规则适用航程使用类型 2:去程未使用; 3:回程未使用', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], 'time_unit' => ['title' => '', 'description' => '时间单位:day/hour', 'type' => 'string', 'example' => 'hour'], 'rule_start_time' => ['title' => '', 'description' => '该退票规则适用于的退票时间区间开始时间,单位(天/小时)', 'type' => 'integer', 'format' => 'int32', 'example' => '36'], 'rule_end_time' => ['title' => '', 'description' => '该退票规则适用于的退票时间区间结束时间,单位(天/小时)', 'type' => 'integer', 'format' => 'int32', 'example' => '12'], 'can_change' => ['title' => '', 'description' => '起飞前X-Y小时(天) 可否可以改签', 'type' => 'boolean', 'example' => 'true'], 'change_fee' => ['title' => '', 'description' => '起飞前X-Y小时(天) 改签费', 'type' => 'number', 'format' => 'double', 'example' => '100'], ], 'description' => '元素', 'title' => '', 'example' => '', ], 'example' => '', ], ], 'description' => '元素', 'title' => '', 'example' => '', ], 'example' => '', ], 'baggage_allowance_map' => [ 'title' => '', 'description' => 'The mapping of passenger types to baggage rules.', 'type' => 'object', 'additionalProperties' => [ 'type' => 'object', 'properties' => [ 'baggage_amount' => ['title' => '', 'description' => '托运行李件数', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'baggage_weight' => ['title' => '', 'description' => '托运行李重量', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], 'baggage_weight_unit' => ['title' => '', 'description' => '托运行李重量单位', 'type' => 'string', 'example' => 'KG'], 'is_all_weight' => ['title' => '', 'description' => '是否所有托运行李重量', 'type' => 'boolean', 'example' => 'true'], 'carry_on_amount' => ['title' => '', 'description' => '手提行李件数', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'carry_on_weight' => ['title' => '', 'description' => '手提行李重量', 'type' => 'integer', 'format' => 'int32', 'example' => '5'], 'carry_on_weight_unit' => ['title' => '', 'description' => '手提行李重量单位', 'type' => 'string', 'example' => 'KG'], 'is_all_carry_on_weight' => ['title' => '', 'description' => '是否所有手提行李重量', 'type' => 'boolean', 'example' => 'true'], ], 'description' => '元素', 'title' => '', 'example' => '', ], 'example' => '', ], 'solution' => [ 'title' => '', 'description' => 'The flight information.', 'type' => 'object', 'properties' => [ 'solution_id' => ['title' => '', 'description' => 'solution_id', 'type' => 'string', 'example' => 'eJwz8DeySEo0NjQ01TU3TUxxx'], 'adult_price' => ['title' => '', 'description' => 'The unit price for an adult.', 'type' => 'number', 'format' => 'double', 'example' => '300'], 'adult_tax' => ['title' => '', 'description' => 'The tax for an adult.', 'type' => 'number', 'format' => 'double', 'example' => '30'], 'child_price' => ['title' => '', 'description' => 'The unit price for a child.', 'type' => 'number', 'format' => 'double', 'example' => '200'], 'child_tax' => ['title' => '', 'description' => 'The tax for a child.', 'type' => 'number', 'format' => 'double', 'example' => '20'], 'infant_price' => ['title' => '', 'description' => 'The unit price for an infant.', 'type' => 'number', 'format' => 'double', 'example' => '100'], 'infant_tax' => ['title' => '', 'description' => 'The tax for an infant.', 'type' => 'number', 'format' => 'double', 'example' => '10'], 'refund_ticket_coupon_description' => ['title' => '', 'description' => 'The description of the refund ticket coupon.', 'type' => 'string', 'example' => 'description'], 'product_type_description' => ['title' => '', 'description' => 'The product type description.', 'type' => 'string', 'example' => 'description'], 'journey_list' => [ 'title' => '', 'description' => 'The journey list.', 'type' => 'array', 'items' => [ 'description' => 'journey', 'type' => 'object', 'properties' => [ 'transfer_count' => ['title' => '', 'description' => 'The number of transfers.', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'segment_list' => [ 'title' => '', 'description' => 'The segment information.', 'type' => 'array', 'items' => [ 'description' => 'segment', 'type' => 'object', 'properties' => [ 'segment_id' => ['title' => '', 'description' => 'The segment ID. Format: flight number + departure airport + arrival airport + departure date (MMdd).', 'type' => 'string', 'example' => 'HO1295-PVG-MFM-20230310'."\n"], 'departure_airport' => ['title' => '', 'description' => 'The three-letter IATA code of the departure airport (uppercase).', 'type' => 'string', 'example' => 'PVG'], 'arrival_airport' => ['title' => '', 'description' => 'The three-letter IATA code of the arrival airport (uppercase).', 'type' => 'string', 'example' => 'MFM'], 'departure_city' => ['title' => '', 'description' => 'The three-letter IATA code of the departure city (uppercase).', 'type' => 'string', 'example' => 'SHA'], 'arrival_city' => ['title' => '', 'description' => 'The three-letter IATA code of the arrival city (uppercase).', 'type' => 'string', 'example' => 'MFM'], 'marketing_flight_no' => ['title' => '', 'description' => 'The marketing flight number (for example, HO1295).', 'type' => 'string', 'example' => 'HO1295'], 'marketing_flight_no_int' => ['title' => '', 'description' => 'The numeric marketing flight number (for example, 1295).', 'type' => 'integer', 'format' => 'int32', 'example' => '1295'], 'marketing_airline' => ['title' => '', 'description' => 'The marketing airline code (for example, HO).', 'type' => 'string', 'example' => 'HO'], 'operating_flight_no' => ['title' => '', 'description' => 'The operating flight number (for example, CX601).', 'type' => 'string', 'example' => 'HO1295'], 'operating_airline' => ['title' => '', 'description' => 'The operating airline code (for example, CX).', 'type' => 'string', 'example' => 'HO'], 'departure_time' => ['title' => '', 'description' => 'The departure date and time in string format (yyyy-MM-dd HH:mm:ss).', 'type' => 'string', 'example' => '2023-03-10 07:55:00'], 'arrival_time' => ['title' => '', 'description' => 'The arrival date and time in string format (yyyy-MM-dd HH:mm:ss).', 'type' => 'string', 'example' => '2023-03-10 10:40:00'], 'code_share' => ['title' => '', 'description' => 'Indicates whether the flight is a codeshare flight.', 'type' => 'boolean', 'example' => 'false'], 'departure_terminal' => ['title' => '', 'description' => 'The departure terminal.', 'type' => 'string', 'example' => 'T2'], 'arrival_terminal' => ['title' => '', 'description' => 'The arrival terminal.', 'type' => 'string', 'example' => 'T1'], 'equip_type' => ['title' => '', 'description' => 'The aircraft type.', 'type' => 'string', 'example' => '32Q'], 'cabin' => ['title' => '', 'description' => 'The cabin.', 'type' => 'string', 'example' => 'V'], 'cabin_class' => ['title' => '', 'description' => 'The cabin class.', 'type' => 'string', 'example' => 'Y'], 'availability' => ['title' => '', 'description' => 'The number of remaining seats.', 'type' => 'string', 'example' => '7'], 'stop_city_list' => ['title' => '', 'description' => 'The list of stopover cities. This parameter has a value when stopQuantity is greater than 0. Multiple cities are separated by commas.', 'type' => 'string', 'example' => 'SEL,HKG'], 'stop_quantity' => ['title' => '', 'description' => 'The number of stopover cities.', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'flight_duration' => ['title' => '', 'description' => 'The flight duration. Unit: minutes.', 'type' => 'integer', 'format' => 'int32', 'example' => '165'], ], 'title' => '', 'example' => '', ], 'example' => '', ], ], 'title' => '', 'example' => '', ], 'example' => '', ], 'segment_baggage_mapping_list' => [ 'title' => '', 'description' => 'The complimentary baggage rules.', 'type' => 'array', 'items' => [ 'description' => 'The element.', 'type' => 'object', 'properties' => [ 'segment_id_list' => [ 'title' => '', 'description' => 'The list of segment IDs. These segments share the same complimentary baggage rule.', 'type' => 'array', 'items' => ['description' => 'segment_id', 'type' => 'string', 'example' => 'HO1295-PVG-MFM-20230310'."\n", 'title' => ''], 'example' => '', ], 'passenger_baggage_allowance_mapping' => [ 'title' => '', 'description' => 'The mapping of passenger types to complimentary baggage allowances.', 'type' => 'object', 'additionalProperties' => [ 'type' => 'object', 'properties' => [ 'baggage_amount' => ['title' => '', 'description' => '托运行李件数', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'baggage_weight' => ['title' => '', 'description' => '托运行李重量', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], 'baggage_weight_unit' => ['title' => '', 'description' => '托运行李重量单位', 'type' => 'string', 'example' => 'KG'], 'is_all_weight' => ['title' => '', 'description' => '是否所有托运行李重量', 'type' => 'boolean', 'example' => 'true'], 'carry_on_amount' => ['title' => '', 'description' => '手提行李件数', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'carry_on_weight' => ['title' => '', 'description' => '手提行李重量', 'type' => 'integer', 'format' => 'int32', 'example' => '5'], 'carry_on_weight_unit' => ['title' => '', 'description' => '手提行李重量单位', 'type' => 'string', 'example' => 'KG'], 'is_all_carry_on_weight' => ['title' => '', 'description' => '是否所有手提行李重量', 'type' => 'boolean', 'example' => 'true'], ], 'description' => '元素', 'title' => '', 'example' => '', ], 'example' => '', ], ], 'title' => '', 'example' => '', ], 'example' => '', ], 'segment_refund_change_rule_mapping_list' => [ 'title' => '', 'description' => 'The refund and change rules.', 'type' => 'array', 'items' => [ 'description' => 'The element.', 'type' => 'object', 'properties' => [ 'segment_id_list' => [ 'title' => '', 'description' => 'The list of segment IDs. These segments share the same refund and change rule.', 'type' => 'array', 'items' => ['description' => 'segment_id', 'type' => 'string', 'example' => 'HO1295-PVG-MFM-20230310', 'title' => ''], 'example' => '', ], 'refund_change_rule_map' => [ 'title' => '', 'description' => 'The mapping of passenger types to refund and change rules.', 'type' => 'object', 'additionalProperties' => [ 'type' => 'object', 'properties' => [ 'refund_rule_all_unused_list' => [ 'title' => '', 'description' => '全程未使用退票规则', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'type' => ['title' => '', 'description' => '该退票规则适用航程使用类型 0:全程未使用; 1:部分未使用', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'time_unit' => ['title' => '', 'description' => '时间单位:day/hour', 'type' => 'string', 'example' => 'hour'], 'rule_start_time' => ['title' => '', 'description' => '该退票规则适用于的退票时间区间开始时间,单位(天/小时)', 'type' => 'integer', 'format' => 'int32', 'example' => '36'], 'rule_end_time' => ['title' => '', 'description' => '该退票规则适用于的退票时间区间结束时间,单位(天/小时)', 'type' => 'integer', 'format' => 'int32', 'example' => '12'], 'can_refund' => ['title' => '', 'description' => '起飞前X-Y小时(天) 可否退票', 'type' => 'boolean', 'example' => 'true'], 'refund_fee' => ['title' => '', 'description' => '起飞前X-Y小时(天) 退票手续费', 'type' => 'number', 'format' => 'double', 'example' => '200'], 'can_return_all_tax' => ['title' => '', 'description' => '起飞前X-Y小时(天) 是否全额退税', 'type' => 'boolean', 'example' => 'true'], 'return_part_tax_fee' => ['title' => '', 'description' => '起飞前X-Y小时(天) 可部分退税金额', 'type' => 'number', 'format' => 'double', 'example' => '100'], ], 'description' => '元素', 'title' => '', 'example' => '', ], 'example' => '', ], 'refund_rule_part_unused_list' => [ 'title' => '', 'description' => '部分未使用退票规则', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'type' => ['title' => '', 'description' => '该退票规则适用航程使用类型 0:全程未使用; 1:部分未使用', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'time_unit' => ['title' => '', 'description' => '时间单位:day/hour', 'type' => 'string', 'example' => 'hour'], 'rule_start_time' => ['title' => '', 'description' => '该退票规则适用于的退票时间区间开始时间,单位(天/小时)', 'type' => 'integer', 'format' => 'int32', 'example' => '36'], 'rule_end_time' => ['title' => '', 'description' => '该退票规则适用于的退票时间区间结束时间,单位(天/小时)', 'type' => 'integer', 'format' => 'int32', 'example' => '12'], 'can_refund' => ['title' => '', 'description' => '起飞前X-Y小时(天) 可否退票', 'type' => 'boolean', 'example' => 'true'], 'refund_fee' => ['title' => '', 'description' => '起飞前X-Y小时(天) 退票手续费', 'type' => 'number', 'format' => 'double', 'example' => '200'], 'can_return_all_tax' => ['title' => '', 'description' => '起飞前X-Y小时(天) 是否全额退税', 'type' => 'boolean', 'example' => 'true'], 'return_part_tax_fee' => ['title' => '', 'description' => '起飞前X-Y小时(天) 可部分退税金额', 'type' => 'number', 'format' => 'double', 'example' => '100'], ], 'description' => '元素', 'title' => '', 'example' => '', ], 'example' => '', ], 'change_rule_in_unused_list' => [ 'title' => '', 'description' => '回程未使用改签规则', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'type' => ['title' => '', 'description' => '该改签规则适用航程使用类型 2:去程未使用; 3:回程未使用', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], 'time_unit' => ['title' => '', 'description' => '时间单位:day/hour', 'type' => 'string', 'example' => 'hour'], 'rule_start_time' => ['title' => '', 'description' => '该退票规则适用于的退票时间区间开始时间,单位(天/小时)', 'type' => 'integer', 'format' => 'int32', 'example' => '36'], 'rule_end_time' => ['title' => '', 'description' => '该退票规则适用于的退票时间区间结束时间,单位(天/小时)', 'type' => 'integer', 'format' => 'int32', 'example' => '12'], 'can_change' => ['title' => '', 'description' => '起飞前X-Y小时(天) 可否可以改签', 'type' => 'boolean', 'example' => 'true'], 'change_fee' => ['title' => '', 'description' => '起飞前X-Y小时(天) 改签费', 'type' => 'number', 'format' => 'double', 'example' => '100'], ], 'description' => '元素', 'title' => '', 'example' => '', ], 'example' => '', ], 'change_rule_out_unused_list' => [ 'title' => '', 'description' => '去程未使用改签规则', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'type' => ['title' => '', 'description' => '该改签规则适用航程使用类型 2:去程未使用; 3:回程未使用', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], 'time_unit' => ['title' => '', 'description' => '时间单位:day/hour', 'type' => 'string', 'example' => 'hour'], 'rule_start_time' => ['title' => '', 'description' => '该退票规则适用于的退票时间区间开始时间,单位(天/小时)', 'type' => 'integer', 'format' => 'int32', 'example' => '36'], 'rule_end_time' => ['title' => '', 'description' => '该退票规则适用于的退票时间区间结束时间,单位(天/小时)', 'type' => 'integer', 'format' => 'int32', 'example' => '12'], 'can_change' => ['title' => '', 'description' => '起飞前X-Y小时(天) 可否可以改签', 'type' => 'boolean', 'example' => 'true'], 'change_fee' => ['title' => '', 'description' => '起飞前X-Y小时(天) 改签费', 'type' => 'number', 'format' => 'double', 'example' => '100'], ], 'description' => '元素', 'title' => '', 'example' => '', ], 'example' => '', ], ], 'description' => '元素', 'title' => '', 'example' => '', ], 'example' => '', ], ], 'title' => '', 'example' => '', ], 'example' => '', ], 'segment_baggage_check_in_info_list' => [ 'title' => '', 'description' => 'The baggage through-check rules.', 'type' => 'array', 'items' => [ 'description' => 'The element.', 'type' => 'object', 'properties' => [ 'segment_id_list' => [ 'title' => '', 'description' => 'The list of segment IDs. These segments share the same baggage through-check rule.', 'type' => 'array', 'items' => ['description' => 'segment_id', 'type' => 'string', 'example' => 'HO1295-PVG-MFM-20230310'."\n", 'title' => ''], 'example' => '', ], 'luggage_direct_info_type' => ['title' => '', 'description' => 'The baggage through-check rule type. Valid values:'."\n" .'- 1: baggage is checked through between segments.'."\n" .'- 2: baggage must be rechecked between segments.'."\n" .'- 3: baggage is checked through at stopover cities.'."\n" .'- 4: baggage must be rechecked at stopover cities.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], ], 'title' => '', 'example' => '', ], 'example' => '', ], ], 'example' => '', ], 'flight_item_detail_list' => [ 'title' => '', 'description' => 'The flight ticket fulfillment details.', 'type' => 'array', 'items' => [ 'description' => 'The element.', 'type' => 'object', 'properties' => [ 'passenger' => [ 'title' => '', 'description' => 'The passenger information.', 'type' => 'object', 'properties' => [ 'last_name' => ['title' => '', 'description' => 'The last name.', 'type' => 'string', 'example' => 'ZHANG'], 'first_name' => ['title' => '', 'description' => 'The first name.', 'type' => 'string', 'example' => 'SAN'], 'birthday' => ['title' => '', 'description' => 'The date of birth in yyyyMMdd format.', 'type' => 'string', 'example' => '20020301'], 'type' => ['title' => '', 'description' => 'The passenger type. Valid values:'."\n" .'- 0: adult.'."\n" .'- 1: child.'."\n" .'- 8: infant.', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'mobile_phone_number' => ['title' => '', 'description' => 'The mobile phone number.', 'type' => 'string', 'example' => '183******96'], 'mobile_country_code' => ['title' => '', 'description' => 'The country code of the mobile phone number.', 'type' => 'string', 'example' => '86'], 'gender' => ['title' => '', 'description' => 'The gender. Valid values:'."\n" .'- 0: MALE.'."\n" .'- 1: FEMALE.', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'nationality' => ['title' => '', 'description' => 'The two-letter nationality code.', 'type' => 'string', 'example' => 'CN'], 'credential' => [ 'title' => '', 'description' => 'The credential information.', 'type' => 'object', 'properties' => [ 'cert_issue_place' => ['title' => '', 'description' => 'The place of issuance, represented as a two-letter code.', 'type' => 'string', 'example' => 'CN'], 'credential_num' => ['title' => '', 'description' => 'The credential number.', 'type' => 'string', 'example' => 'E1***5674'], 'expire_date' => ['title' => '', 'description' => 'The credential expiration date.', 'type' => 'string', 'example' => '20290101'], 'credential_type' => ['title' => '', 'description' => 'The credential type. Valid values:'."\n" .'- 0: ID card.'."\n" .'- 1: passport.'."\n" .'- 4: Home Return Permit.'."\n" .'- 5: Mainland Travel Permit for Taiwan Residents.'."\n" .'- 6: Exit-Entry Permit for Hong Kong and Macao Residents.'."\n" .'- 12: Taiwan Travel Permit.'."\n" .'- 19: no credential.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], ], 'example' => '', ], ], 'example' => '', ], 'flight_price' => [ 'title' => '', 'description' => 'The passenger price information.', 'type' => 'object', 'properties' => [ 'sell_price' => ['title' => '', 'description' => 'The selling price. Unit: CNY.', 'type' => 'number', 'format' => 'double', 'example' => '300'], 'tax' => ['title' => '', 'description' => 'The tax.', 'type' => 'number', 'format' => 'double', 'example' => '10'], ], 'example' => '', ], 'flight_segment_cabin_relation' => [ 'title' => '', 'description' => 'The list of segment-cabin information.', 'type' => 'array', 'items' => [ 'description' => 'The element.', 'type' => 'object', 'properties' => [ 'segment_id' => ['title' => '', 'description' => 'The segment ID.', 'type' => 'string', 'example' => 'HO1295-PVG-MFM-20230310'], 'cabin' => ['title' => '', 'description' => 'The cabin.', 'type' => 'string', 'example' => 'V'], 'cabin_quantity' => ['title' => '', 'description' => 'The number of available tickets.', 'type' => 'string', 'example' => 'A'], 'cabin_class' => ['title' => '', 'description' => 'The cabin class.', 'type' => 'string', 'example' => 'Y'], 'cabin_class_name' => ['title' => '', 'description' => 'The cabin class description.', 'type' => 'string', 'example' => 'economy class'], ], 'title' => '', 'example' => '', ], 'example' => '', ], 'ticket_nos' => [ 'title' => '', 'description' => 'The list of ticket numbers.', 'type' => 'array', 'items' => ['description' => 'ticketNo', 'type' => 'string', 'example' => '784-0000000001', 'title' => ''], 'example' => '', ], 'ticket_air_line' => ['title' => '', 'description' => 'The ticketing airline. Multiple ticketing airlines may be concatenated.', 'type' => 'string', 'example' => 'HO'], 'c_pnr_list' => [ 'title' => '', 'description' => 'The list of cPnr values.', 'type' => 'array', 'items' => ['description' => 'The element.', 'type' => 'string', 'example' => 'HY6P0A', 'title' => ''], 'example' => '', ], 'b_pnr_list' => [ 'title' => '', 'description' => 'The list of bPnr values.', 'type' => 'array', 'items' => ['description' => 'The element.', 'type' => 'string', 'example' => 'HY6P0A', 'title' => ''], 'example' => '', ], ], 'title' => '', 'example' => '', ], 'example' => '', ], 'ancillary_item_detail_list' => [ 'title' => '', 'description' => 'The ancillary product fulfillment details.', 'type' => 'array', 'items' => [ 'description' => 'The element.', 'type' => 'object', 'properties' => [ 'passenger' => [ 'title' => '', 'description' => 'The passenger information.', 'type' => 'object', 'properties' => [ 'last_name' => ['title' => '', 'description' => 'The last name.', 'type' => 'string', 'example' => 'ZHANG'], 'first_name' => ['title' => '', 'description' => 'The first name.', 'type' => 'string', 'example' => 'SAN'], 'birthday' => ['title' => '', 'description' => 'The date of birth in yyyyMMdd format.', 'type' => 'string', 'example' => '20020301'], 'type' => ['title' => '', 'description' => 'The passenger type. Valid values:'."\n" .'- 0: adult.'."\n" .'- 1: child.'."\n" .'- 8: infant.', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'mobile_phone_number' => ['title' => '', 'description' => 'The mobile phone number.', 'type' => 'string', 'example' => '183******96'], 'mobile_country_code' => ['title' => '', 'description' => 'The country code of the mobile phone number.', 'type' => 'string', 'example' => '86'], 'gender' => ['title' => '', 'description' => 'The gender. Valid values:'."\n" .'- 0: MALE.'."\n" .'- 1: FEMALE.', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'nationality' => ['title' => '', 'description' => 'The two-letter nationality code.', 'type' => 'string', 'example' => 'CN'], 'credential' => [ 'title' => '', 'description' => 'The credential information.', 'type' => 'object', 'properties' => [ 'cert_issue_place' => ['title' => '', 'description' => 'The place of issuance, represented as a two-letter code.', 'type' => 'string', 'example' => 'CN'], 'credential_num' => ['title' => '', 'description' => 'The credential number.', 'type' => 'string', 'example' => 'E1***5674'], 'expire_date' => ['title' => '', 'description' => 'The credential expiration date.', 'type' => 'string', 'example' => '20290101'], 'credential_type' => ['title' => '', 'description' => 'The credential type. Valid values:'."\n" .'- 0: ID card.'."\n" .'- 1: passport.'."\n" .'- 4: Home Return Permit.'."\n" .'- 5: Mainland Travel Permit for Taiwan Residents.'."\n" .'- 6: Exit-Entry Permit for Hong Kong and Macao Residents.'."\n" .'- 12: Taiwan Travel Permit.'."\n" .'- 19: no credential.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], ], 'example' => '', ], ], 'example' => '', ], 'segment_id_list' => [ 'title' => '', 'description' => 'The segment IDs to which the ancillary product applies.', 'type' => 'array', 'items' => ['description' => 'segment_id', 'type' => 'string', 'example' => 'HO1295-PVG-MFM-20230310', 'title' => ''], 'example' => '', ], 'ancillary' => [ 'title' => '', 'description' => 'The ancillary product details.', 'type' => 'object', 'properties' => [ 'ancillary_id' => ['title' => '', 'description' => 'The ancillary product ID.', 'type' => 'string', 'example' => 'MDY2NTAxLCJleHAiOjE2NxNzM3MDEsIm5ix'], 'ancillary_type' => ['title' => '', 'description' => 'The ancillary product type. Currently supported value: 4 (paid baggage).', 'type' => 'integer', 'format' => 'int32', 'example' => '4'], 'baggage_ancillary' => [ 'title' => '', 'description' => 'The baggage ancillary details.', 'type' => 'object', 'properties' => [ 'baggage_amount' => ['title' => '', 'description' => 'The number of baggage pieces. Valid values: 3, 2, 1, 0, and -2. A value of -2 indicates weight-based calculation.', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'baggage_weight' => ['title' => '', 'description' => 'The baggage weight, ranging from 0 to 50. When isAllWeight is set to true, this value represents the total weight of all pieces.', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'baggage_weight_unit' => ['title' => '', 'description' => 'The baggage weight unit.', 'type' => 'string', 'example' => 'KG'], 'is_all_weight' => ['title' => '', 'description' => 'Indicates whether the weight represents the total weight of all baggage pieces.', 'type' => 'boolean', 'example' => ''], 'price' => ['title' => '', 'description' => 'The total price.', 'type' => 'number', 'format' => 'double', 'example' => '10.0'], ], 'example' => '', ], ], 'example' => '', ], ], 'title' => '', 'example' => '', ], 'example' => '', ], 'order_num' => ['title' => '', 'description' => 'The order number.', 'type' => 'integer', 'format' => 'int64', 'example' => '4966***617111'], 'out_order_num' => ['title' => '', 'description' => 'The external order number.', 'type' => 'string', 'example' => 'x091-2023-0220-j-0001'], 'transaction_no' => ['title' => '', 'description' => 'The transaction number.', 'type' => 'string', 'example' => 'hkduendkd-2023-dj0'], 'order_status' => ['title' => '', 'description' => 'The order status. Valid values:'."\n" .'- 1: Booking in progress.'."\n" .'- 2: Booking succeeded.'."\n" .'- 3: Order paid.'."\n" .'- 4: Order succeeded.'."\n" .'- 5: Order closed.', 'type' => 'integer', 'format' => 'int32', 'example' => '4'], 'book_time' => ['title' => '', 'description' => 'The booking time (order creation time). The value is a 13-digit timestamp.', 'type' => 'integer', 'format' => 'int64', 'example' => '1677210784000'], 'succeed_time' => ['title' => '', 'description' => 'The ticketing time. The value is a 13-digit timestamp. This parameter has a value only after ticketing is complete.', 'type' => 'integer', 'format' => 'int64', 'example' => '1677210786000'], 'pay_time' => ['title' => '', 'description' => 'The payment time. The value is a 13-digit timestamp.', 'type' => 'integer', 'format' => 'int64', 'example' => '1677210788000'], 'total_price' => ['title' => '', 'description' => 'The total order price. Unit: CNY.', 'type' => 'number', 'format' => 'double', 'example' => '3000'], 'real_pay_price' => ['title' => '', 'description' => 'The actual payment amount. Unit: CNY.', 'type' => 'number', 'format' => 'double', 'example' => '3000'], 'promotion_price' => ['title' => '', 'description' => 'The discount amount. Unit: CNY.', 'type' => 'number', 'format' => 'double', 'example' => '10'], 'passenger_list' => [ 'title' => '', 'description' => 'The passenger list.', 'type' => 'array', 'items' => [ 'description' => 'The element.', 'type' => 'object', 'properties' => [ 'last_name' => ['title' => '', 'description' => 'The last name.', 'type' => 'string', 'example' => 'ZHANG'], 'first_name' => ['title' => '', 'description' => 'The first name.', 'type' => 'string', 'example' => 'SAN'], 'birthday' => ['title' => '', 'description' => 'The date of birth in yyyyMMdd format.', 'type' => 'string', 'example' => '20020301'], 'type' => ['title' => '', 'description' => 'The passenger type. Valid values:'."\n" .'- 0: adult.'."\n" .'- 1: child.'."\n" .'- 8: infant.', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'mobile_phone_number' => ['title' => '', 'description' => 'The mobile phone number.', 'type' => 'string', 'example' => '183******96'], 'mobile_country_code' => ['title' => '', 'description' => 'The country code of the mobile phone number.', 'type' => 'string', 'example' => '86'], 'gender' => ['title' => '', 'description' => 'The gender. Valid values:'."\n" .'- 0: MALE.'."\n" .'- 1: FEMALE.', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'nationality' => ['title' => '', 'description' => 'The two-letter nationality code.', 'type' => 'string', 'example' => 'CN'], 'credential' => [ 'title' => '', 'description' => 'The credential information.', 'type' => 'object', 'properties' => [ 'cert_issue_place' => ['title' => '', 'description' => 'The place of issuance, represented as a two-letter code.', 'type' => 'string', 'example' => 'CN'], 'credential_num' => ['title' => '', 'description' => 'The credential number.', 'type' => 'string', 'example' => 'E1***5674'], 'expire_date' => ['title' => '', 'description' => 'The credential expiration date.', 'type' => 'string', 'example' => '20290101'], 'credential_type' => ['title' => '', 'description' => 'The credential type. Valid values:'."\n" .'- 0: ID card.'."\n" .'- 1: passport.'."\n" .'- 4: Home Return Permit.'."\n" .'- 5: Mainland Travel Permit for Taiwan Residents.'."\n" .'- 6: Exit-Entry Permit for Hong Kong and Macao Residents.'."\n" .'- 12: Taiwan Travel Permit.'."\n" .'- 19: no credential.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], ], 'example' => '', ], ], 'title' => '', 'example' => '', ], 'example' => '', ], 'session_nick' => ['title' => '', 'description' => 'The buyer nickname.', 'type' => 'string', 'example' => 'nick'], 'pay_status' => ['title' => '', 'description' => 'The payment status. Valid values:'."\n" .'- 0: Initialized.'."\n" .'- 1: Created.'."\n" .'- 2: Payment succeeded.'."\n" .'- 4: Transaction closed.', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], ], 'example' => '', ], 'error_data' => ['title' => '', 'description' => 'The data returned with the error.', 'type' => 'any', 'example' => 'null'], ], 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"status\\": 200,\\n \\"error_code\\": \\"null\\",\\n \\"error_msg\\": \\"null\\",\\n \\"success\\": true,\\n \\"RequestId\\": \\"51593418-8C73-5E47-8BA8-3F1D4A00CC0B\\",\\n \\"data\\": {\\n \\"refund_change_rule_map\\": {\\n \\"key\\": {\\n \\"refund_rule_all_unused_list\\": [\\n {\\n \\"type\\": 0,\\n \\"time_unit\\": \\"hour\\",\\n \\"rule_start_time\\": 36,\\n \\"rule_end_time\\": 12,\\n \\"can_refund\\": true,\\n \\"refund_fee\\": 200,\\n \\"can_return_all_tax\\": true,\\n \\"return_part_tax_fee\\": 100\\n }\\n ],\\n \\"refund_rule_part_unused_list\\": [\\n {\\n \\"type\\": 0,\\n \\"time_unit\\": \\"hour\\",\\n \\"rule_start_time\\": 36,\\n \\"rule_end_time\\": 12,\\n \\"can_refund\\": true,\\n \\"refund_fee\\": 200,\\n \\"can_return_all_tax\\": true,\\n \\"return_part_tax_fee\\": 100\\n }\\n ],\\n \\"change_rule_in_unused_list\\": [\\n {\\n \\"type\\": 2,\\n \\"time_unit\\": \\"hour\\",\\n \\"rule_start_time\\": 36,\\n \\"rule_end_time\\": 12,\\n \\"can_change\\": true,\\n \\"change_fee\\": 100\\n }\\n ],\\n \\"change_rule_out_unused_list\\": [\\n {\\n \\"type\\": 2,\\n \\"time_unit\\": \\"hour\\",\\n \\"rule_start_time\\": 36,\\n \\"rule_end_time\\": 12,\\n \\"can_change\\": true,\\n \\"change_fee\\": 100\\n }\\n ]\\n }\\n },\\n \\"baggage_allowance_map\\": {\\n \\"key\\": {\\n \\"baggage_amount\\": 1,\\n \\"baggage_weight\\": 10,\\n \\"baggage_weight_unit\\": \\"KG\\",\\n \\"is_all_weight\\": true,\\n \\"carry_on_amount\\": 1,\\n \\"carry_on_weight\\": 5,\\n \\"carry_on_weight_unit\\": \\"KG\\",\\n \\"is_all_carry_on_weight\\": true\\n }\\n },\\n \\"solution\\": {\\n \\"solution_id\\": \\"eJwz8DeySEo0NjQ01TU3TUxxx\\",\\n \\"adult_price\\": 300,\\n \\"adult_tax\\": 30,\\n \\"child_price\\": 200,\\n \\"child_tax\\": 20,\\n \\"infant_price\\": 100,\\n \\"infant_tax\\": 10,\\n \\"refund_ticket_coupon_description\\": \\"description\\",\\n \\"product_type_description\\": \\"description\\",\\n \\"journey_list\\": [\\n {\\n \\"transfer_count\\": 0,\\n \\"segment_list\\": [\\n {\\n \\"segment_id\\": \\"HO1295-PVG-MFM-20230310\\\\n\\",\\n \\"departure_airport\\": \\"PVG\\",\\n \\"arrival_airport\\": \\"MFM\\",\\n \\"departure_city\\": \\"SHA\\",\\n \\"arrival_city\\": \\"MFM\\",\\n \\"marketing_flight_no\\": \\"HO1295\\",\\n \\"marketing_flight_no_int\\": 1295,\\n \\"marketing_airline\\": \\"HO\\",\\n \\"operating_flight_no\\": \\"HO1295\\",\\n \\"operating_airline\\": \\"HO\\",\\n \\"departure_time\\": \\"2023-03-10 07:55:00\\",\\n \\"arrival_time\\": \\"2023-03-10 10:40:00\\",\\n \\"code_share\\": false,\\n \\"departure_terminal\\": \\"T2\\",\\n \\"arrival_terminal\\": \\"T1\\",\\n \\"equip_type\\": \\"32Q\\",\\n \\"cabin\\": \\"V\\",\\n \\"cabin_class\\": \\"Y\\",\\n \\"availability\\": \\"7\\",\\n \\"stop_city_list\\": \\"SEL,HKG\\",\\n \\"stop_quantity\\": 0,\\n \\"flight_duration\\": 165\\n }\\n ]\\n }\\n ],\\n \\"segment_baggage_mapping_list\\": [\\n {\\n \\"segment_id_list\\": [\\n \\"HO1295-PVG-MFM-20230310\\\\n\\"\\n ],\\n \\"passenger_baggage_allowance_mapping\\": {\\n \\"key\\": {\\n \\"baggage_amount\\": 1,\\n \\"baggage_weight\\": 10,\\n \\"baggage_weight_unit\\": \\"KG\\",\\n \\"is_all_weight\\": true,\\n \\"carry_on_amount\\": 1,\\n \\"carry_on_weight\\": 5,\\n \\"carry_on_weight_unit\\": \\"KG\\",\\n \\"is_all_carry_on_weight\\": true\\n }\\n }\\n }\\n ],\\n \\"segment_refund_change_rule_mapping_list\\": [\\n {\\n \\"segment_id_list\\": [\\n \\"HO1295-PVG-MFM-20230310\\"\\n ],\\n \\"refund_change_rule_map\\": {\\n \\"key\\": {\\n \\"refund_rule_all_unused_list\\": [\\n {\\n \\"type\\": 0,\\n \\"time_unit\\": \\"hour\\",\\n \\"rule_start_time\\": 36,\\n \\"rule_end_time\\": 12,\\n \\"can_refund\\": true,\\n \\"refund_fee\\": 200,\\n \\"can_return_all_tax\\": true,\\n \\"return_part_tax_fee\\": 100\\n }\\n ],\\n \\"refund_rule_part_unused_list\\": [\\n {\\n \\"type\\": 0,\\n \\"time_unit\\": \\"hour\\",\\n \\"rule_start_time\\": 36,\\n \\"rule_end_time\\": 12,\\n \\"can_refund\\": true,\\n \\"refund_fee\\": 200,\\n \\"can_return_all_tax\\": true,\\n \\"return_part_tax_fee\\": 100\\n }\\n ],\\n \\"change_rule_in_unused_list\\": [\\n {\\n \\"type\\": 2,\\n \\"time_unit\\": \\"hour\\",\\n \\"rule_start_time\\": 36,\\n \\"rule_end_time\\": 12,\\n \\"can_change\\": true,\\n \\"change_fee\\": 100\\n }\\n ],\\n \\"change_rule_out_unused_list\\": [\\n {\\n \\"type\\": 2,\\n \\"time_unit\\": \\"hour\\",\\n \\"rule_start_time\\": 36,\\n \\"rule_end_time\\": 12,\\n \\"can_change\\": true,\\n \\"change_fee\\": 100\\n }\\n ]\\n }\\n }\\n }\\n ],\\n \\"segment_baggage_check_in_info_list\\": [\\n {\\n \\"segment_id_list\\": [\\n \\"HO1295-PVG-MFM-20230310\\\\n\\"\\n ],\\n \\"luggage_direct_info_type\\": 1\\n }\\n ]\\n },\\n \\"flight_item_detail_list\\": [\\n {\\n \\"passenger\\": {\\n \\"last_name\\": \\"ZHANG\\",\\n \\"first_name\\": \\"SAN\\",\\n \\"birthday\\": \\"20020301\\",\\n \\"type\\": 0,\\n \\"mobile_phone_number\\": \\"183******96\\",\\n \\"mobile_country_code\\": \\"86\\",\\n \\"gender\\": 0,\\n \\"nationality\\": \\"CN\\",\\n \\"credential\\": {\\n \\"cert_issue_place\\": \\"CN\\",\\n \\"credential_num\\": \\"E1***5674\\",\\n \\"expire_date\\": \\"20290101\\",\\n \\"credential_type\\": 1\\n }\\n },\\n \\"flight_price\\": {\\n \\"sell_price\\": 300,\\n \\"tax\\": 10\\n },\\n \\"flight_segment_cabin_relation\\": [\\n {\\n \\"segment_id\\": \\"HO1295-PVG-MFM-20230310\\",\\n \\"cabin\\": \\"V\\",\\n \\"cabin_quantity\\": \\"A\\",\\n \\"cabin_class\\": \\"Y\\",\\n \\"cabin_class_name\\": \\"economy class\\"\\n }\\n ],\\n \\"ticket_nos\\": [\\n \\"784-0000000001\\"\\n ],\\n \\"ticket_air_line\\": \\"HO\\",\\n \\"c_pnr_list\\": [\\n \\"HY6P0A\\"\\n ],\\n \\"b_pnr_list\\": [\\n \\"HY6P0A\\"\\n ]\\n }\\n ],\\n \\"ancillary_item_detail_list\\": [\\n {\\n \\"passenger\\": {\\n \\"last_name\\": \\"ZHANG\\",\\n \\"first_name\\": \\"SAN\\",\\n \\"birthday\\": \\"20020301\\",\\n \\"type\\": 0,\\n \\"mobile_phone_number\\": \\"183******96\\",\\n \\"mobile_country_code\\": \\"86\\",\\n \\"gender\\": 0,\\n \\"nationality\\": \\"CN\\",\\n \\"credential\\": {\\n \\"cert_issue_place\\": \\"CN\\",\\n \\"credential_num\\": \\"E1***5674\\",\\n \\"expire_date\\": \\"20290101\\",\\n \\"credential_type\\": 1\\n }\\n },\\n \\"segment_id_list\\": [\\n \\"HO1295-PVG-MFM-20230310\\"\\n ],\\n \\"ancillary\\": {\\n \\"ancillary_id\\": \\"MDY2NTAxLCJleHAiOjE2NxNzM3MDEsIm5ix\\",\\n \\"ancillary_type\\": 4,\\n \\"baggage_ancillary\\": {\\n \\"baggage_amount\\": 0,\\n \\"baggage_weight\\": 0,\\n \\"baggage_weight_unit\\": \\"KG\\",\\n \\"is_all_weight\\": false,\\n \\"price\\": 10\\n }\\n }\\n }\\n ],\\n \\"order_num\\": 0,\\n \\"out_order_num\\": \\"x091-2023-0220-j-0001\\",\\n \\"transaction_no\\": \\"hkduendkd-2023-dj0\\",\\n \\"order_status\\": 4,\\n \\"book_time\\": 1677210784000,\\n \\"succeed_time\\": 1677210786000,\\n \\"pay_time\\": 1677210788000,\\n \\"total_price\\": 3000,\\n \\"real_pay_price\\": 3000,\\n \\"promotion_price\\": 10,\\n \\"passenger_list\\": [\\n {\\n \\"last_name\\": \\"ZHANG\\",\\n \\"first_name\\": \\"SAN\\",\\n \\"birthday\\": \\"20020301\\",\\n \\"type\\": 0,\\n \\"mobile_phone_number\\": \\"183******96\\",\\n \\"mobile_country_code\\": \\"86\\",\\n \\"gender\\": 0,\\n \\"nationality\\": \\"CN\\",\\n \\"credential\\": {\\n \\"cert_issue_place\\": \\"CN\\",\\n \\"credential_num\\": \\"E1***5674\\",\\n \\"expire_date\\": \\"20290101\\",\\n \\"credential_type\\": 1\\n }\\n }\\n ],\\n \\"session_nick\\": \\"nick\\",\\n \\"pay_status\\": 2\\n },\\n \\"error_data\\": \\"null\\"\\n}","type":"json"}]', 'title' => 'Order details', 'changeSet' => [ ['createdAt' => '2025-11-18T06:20:04.000Z', 'description' => 'OpenAPI offline'], ['createdAt' => '2025-11-18T06:10:43.000Z', 'description' => 'OpenAPI offline'], ['createdAt' => '2025-11-12T04:01:07.000Z', 'description' => 'OpenAPI offline'], ['createdAt' => '2025-11-12T03:58:52.000Z', 'description' => 'OpenAPI offline'], ['createdAt' => '2025-11-12T03:58:45.000Z', 'description' => 'OpenAPI offline'], ['createdAt' => '2025-10-24T06:03:24.000Z', 'description' => 'OpenAPI offline'], ['createdAt' => '2025-10-24T05:51:47.000Z', 'description' => 'OpenAPI offline'], ], ], 'OrderList' => [ 'summary' => 'Queries the order list.', 'path' => '/airticket/v1/trade/order-list', 'methods' => ['get'], 'schemes' => ['https', 'http'], 'security' => [ [ 'accessTokenAuth' => [], ], ], 'deprecated' => false, 'parameters' => [ [ 'name' => 'book_time_start', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The query start time. The value is a 13-digit UNIX timestamp.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1677229005000'], ], [ 'name' => 'book_time_end', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The query end time. The value is a 13-digit UNIX timestamp.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1677229006000'], ], [ 'name' => 'status', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The order status. Valid values:'."\n" .'- 2: order creation succeeded.'."\n" .'- 3: order paid.'."\n" .'- 4: order succeeded.'."\n" .'- 5: order closed.', 'type' => 'integer', 'format' => 'int32', 'example' => '4', 'required' => false], ], [ 'name' => 'page_index', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The page index. The value starts from 1.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'required' => false], ], [ 'name' => 'page_size', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The page size.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'required' => false], ], [ 'name' => 'x-acs-airticket-access-token', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'The access_token.', 'type' => 'string', 'required' => true, 'example' => 'eyJhbGciOiJSUzI1NiIsImtpZCI6InN1ZXpfa2V5aWQifQ.eyJqdGkiOiJCQldMaWIzN0VxbC0xMjhhR2N5elJ3IiwiaWF0IjoxNjc3MDY2NTAxLCJleHAiOjE2NzcwNzM3MDEsIm5iZiI6MTY3NzA2NjQ0MX0.AF0DxsZK4Edyg0C6ObRQFUo36R1VYrb5IYmak25TmL1OfR5RkIUc3PpqFuQKNLKXf5fOtVQaKjaexzwodVeWZQDKEG_RPt_Ybb99EnEm6vPKs6e3pWFbKiBq71WleLHhVrdFb4YPowRKjc7bG0jyGUxiQ2iXy0RWDj9tIjfI-KEdzNp5oVnX7j4p3H12DwQrRPmd1nz3BciAQNINvDpzqusuIUw8JXyLFCz838Y0NhwB1_bYZyctxRLSzrGZuI5rrWtItgupqMsOlJ3RNy1QrIbQ2g6nPmzl-atOqcQ4Nw0HeDLR8dhM1OsIcFLbKXBUtwXofflhzAQrkDxhwYiXii'], ], [ 'name' => 'x-acs-airticket-language', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'The language. Default value: the language configured for the buyer account.', 'type' => 'string', 'required' => false, 'example' => 'en_US'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'PopBaseRes, Object>', 'type' => 'object', 'properties' => [ 'status' => ['title' => '', 'description' => 'The HTTP status code. The value is always 200 for successful requests.', 'type' => 'integer', 'format' => 'int32', 'example' => '200'], 'error_code' => ['title' => '', 'description' => 'The business error code.', 'type' => 'string', 'example' => 'null'], 'error_msg' => ['title' => '', 'description' => 'The error message.', 'type' => 'string', 'example' => 'null'], 'success' => ['title' => '', 'description' => 'Indicates whether the request is successful.', 'type' => 'boolean', 'example' => 'true'], 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '51593418-8C73-5E47-8BA8-3F1D4A00CC0B'], 'data' => [ 'title' => '', 'description' => 'The data returned for a successful request.', 'type' => 'object', 'properties' => [ 'list' => [ 'title' => '', 'description' => 'The data list.', 'type' => 'array', 'items' => [ 'description' => 'The paginated data.', 'type' => 'object', 'properties' => [ 'order_num' => ['title' => '', 'description' => 'The order number.', 'type' => 'integer', 'format' => 'int64', 'example' => '4966***617111'], 'out_order_num' => ['title' => '', 'description' => 'The external order number.', 'type' => 'string', 'example' => 'x091-2023-0220-j-0001'], 'transaction_no' => ['title' => '', 'description' => 'The transaction serial number.', 'type' => 'string', 'example' => 'hkduendkd-2023-dj0'], 'order_status' => ['title' => '', 'description' => 'The order status. Valid values:'."\n" .'- 2: order creation succeeded.'."\n" .'- 3: order paid.'."\n" .'- 4: order succeeded.'."\n" .'- 5: order closed.', 'type' => 'string', 'example' => '4'], 'book_time' => ['title' => '', 'description' => 'The booking time (order creation time). The value is a 13-digit UNIX timestamp.', 'type' => 'integer', 'format' => 'int64', 'example' => '1677210784000'], 'succeed_time' => ['title' => '', 'description' => 'The ticketing time. The value is a 13-digit UNIX timestamp.', 'type' => 'integer', 'format' => 'int64', 'example' => '1677210786000'], 'pay_time' => ['title' => '', 'description' => 'The payment time. The value is a 13-digit UNIX timestamp.', 'type' => 'integer', 'format' => 'int64', 'example' => '1677210788000'], 'total_price' => ['title' => '', 'description' => 'The total price of the order. Unit: yuan.', 'type' => 'number', 'format' => 'double', 'example' => '3000'], 'real_pay_price' => ['title' => '', 'description' => 'The actual payment amount. Unit: yuan.', 'type' => 'number', 'format' => 'double', 'example' => '3000'], 'promotion_price' => ['title' => '', 'description' => 'The discount amount. Unit: yuan.', 'type' => 'number', 'format' => 'double', 'example' => '10'], 'passenger_list' => [ 'title' => '', 'description' => 'The passenger list.', 'type' => 'array', 'items' => [ 'description' => 'The element.', 'type' => 'object', 'properties' => [ 'last_name' => ['title' => '', 'description' => 'The last name.', 'type' => 'string', 'example' => 'ZHANG'], 'first_name' => ['title' => '', 'description' => 'The first name.', 'type' => 'string', 'example' => 'SAN'], 'birthday' => ['title' => '', 'description' => 'The date of birth in the yyyyMMdd format.', 'type' => 'string', 'example' => '20020301'], 'type' => ['title' => '', 'description' => 'The passenger type. Valid values:'."\n" .'- 0: adult.'."\n" .'- 1: child.'."\n" .'- 8: infant.', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'mobile_phone_number' => ['title' => '', 'description' => 'The mobile phone number.', 'type' => 'string', 'example' => '183******96'], 'mobile_country_code' => ['title' => '', 'description' => 'The country code of the mobile phone number.', 'type' => 'string', 'example' => '86'], 'gender' => ['title' => '', 'description' => 'The gender. Valid values:'."\n" .'- 0: MALE.'."\n" .'- 1: FEMALE.', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'nationality' => ['title' => '', 'description' => 'The two-letter nationality code.', 'type' => 'string', 'example' => 'CN'], 'credential' => [ 'title' => '', 'description' => 'The credential information.', 'type' => 'object', 'properties' => [ 'cert_issue_place' => ['title' => '', 'description' => 'The place of issue, represented as a two-letter code.', 'type' => 'string', 'example' => 'CN'], 'credential_num' => ['title' => '', 'description' => 'The credential number.', 'type' => 'string', 'example' => 'E1***5674'], 'expire_date' => ['title' => '', 'description' => 'The credential expiration date.', 'type' => 'string', 'example' => '20290101'], 'credential_type' => ['title' => '', 'description' => 'The credential type. Valid values:'."\n" .'- 0: ID card.'."\n" .'- 1: passport.'."\n" .'- 2: student ID.'."\n" .'- 3: military ID.'."\n" .'- 4: Home Return Permit.'."\n" .'- 5: Taiwan Compatriot Permit.'."\n" .'- 6: Hong Kong and Macao Travel Permit.'."\n" .'- 7: international seafarer certificate.'."\n" .'- 8: Foreigner Permanent Residence Card.'."\n" .'- 10: police officer ID.'."\n" .'- 11: soldier ID.'."\n" .'- 12: Taiwan Travel Permit.'."\n" .'- 13: Taiwan Entry Permit.'."\n" .'- 14: household register.'."\n" .'- 15: birth certificate.'."\n" .'- 16: driver license.'."\n" .'- 17: Hong Kong and Macao Resident Residence Permit.'."\n" .'- 18: Taiwan Resident Residence Permit.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], ], 'example' => '', ], ], 'title' => '', 'example' => '', ], 'example' => '', ], 'session_nick' => ['title' => '', 'description' => 'The buyer nickname.', 'type' => 'string', 'example' => 'nick'], 'pay_status' => ['title' => '', 'description' => 'The payment status. Valid values:'."\n" .'- 0: initialized.'."\n" .'- 1: creation succeeded.'."\n" .'- 2: payment succeeded.'."\n" .'- 4: transaction closed.', 'type' => 'string', 'example' => '2'], ], 'title' => '', 'example' => '', ], 'example' => '', ], 'pagination' => [ 'title' => '', 'description' => 'The pagination information.', 'type' => 'object', 'properties' => [ 'total_count' => ['title' => '', 'description' => 'The total number of records.', 'type' => 'integer', 'format' => 'int32', 'example' => '5'], 'total_page' => ['title' => '', 'description' => 'The total number of pages.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'current_page' => ['title' => '', 'description' => 'The current page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'page_size' => ['title' => '', 'description' => 'The number of records per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], ], 'example' => '', ], ], 'example' => '', ], 'error_data' => ['title' => '', 'description' => 'The data returned with the error.', 'type' => 'any', 'example' => 'null'], ], 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"status\\": 200,\\n \\"error_code\\": \\"null\\",\\n \\"error_msg\\": \\"null\\",\\n \\"success\\": true,\\n \\"RequestId\\": \\"51593418-8C73-5E47-8BA8-3F1D4A00CC0B\\",\\n \\"data\\": {\\n \\"list\\": [\\n {\\n \\"order_num\\": 0,\\n \\"out_order_num\\": \\"x091-2023-0220-j-0001\\",\\n \\"transaction_no\\": \\"hkduendkd-2023-dj0\\",\\n \\"order_status\\": \\"4\\",\\n \\"book_time\\": 1677210784000,\\n \\"succeed_time\\": 1677210786000,\\n \\"pay_time\\": 1677210788000,\\n \\"total_price\\": 3000,\\n \\"real_pay_price\\": 3000,\\n \\"promotion_price\\": 10,\\n \\"passenger_list\\": [\\n {\\n \\"last_name\\": \\"ZHANG\\",\\n \\"first_name\\": \\"SAN\\",\\n \\"birthday\\": \\"20020301\\",\\n \\"type\\": 0,\\n \\"mobile_phone_number\\": \\"183******96\\",\\n \\"mobile_country_code\\": \\"86\\",\\n \\"gender\\": 0,\\n \\"nationality\\": \\"CN\\",\\n \\"credential\\": {\\n \\"cert_issue_place\\": \\"CN\\",\\n \\"credential_num\\": \\"E1***5674\\",\\n \\"expire_date\\": \\"20290101\\",\\n \\"credential_type\\": 1\\n }\\n }\\n ],\\n \\"session_nick\\": \\"nick\\",\\n \\"pay_status\\": \\"2\\"\\n }\\n ],\\n \\"pagination\\": {\\n \\"total_count\\": 5,\\n \\"total_page\\": 1,\\n \\"current_page\\": 1,\\n \\"page_size\\": 10\\n }\\n },\\n \\"error_data\\": \\"null\\"\\n}","type":"json"}]', 'title' => 'OrderList', 'changeSet' => [], ], 'Pricing' => [ 'summary' => 'Verifies seat availability and pricing. If the price has changed, the developer can proceed with Book at the updated price. If the price has not changed, the order is placed at the original price.', 'path' => '/airticket/v1/trade/action-pricing', 'methods' => ['post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'accessTokenAuth' => [], ], ], 'deprecated' => false, 'systemTags' => [], 'parameters' => [ [ 'name' => 'solution_id', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'solution_id.', 'type' => 'string', 'required' => true, 'example' => 'eJwz8DeySEo0NjQ01TU3TU7TNTFINNO1SE5O0jVKM0hKNjEwTElLNYwz0A32cNT1dfPVNTIwMjYwNjRQ8/A3NLI01Q0Ic0cRBwBVFxJJ'], ], [ 'name' => 'x-acs-airticket-access-token', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'access_token.', 'type' => 'string', 'required' => true, 'example' => 'eyJhbGciOiJSUzI1NiIsImtpZCI6InN1ZXpfa2V5aWQifQ.eyJqdGkiOiJCQldMaWIzN0VxbC0xMjhhR2N5elJ3IiwiaWF0IjoxNjc3MDY2NTAxLCJleHAiOjE2NzcwNzM3MDEsIm5iZiI6MTY3NzA2NjQ0MX0.AF0DxsZK4Edyg0C6ObRQFUo36R1VYrb5IYmak25TmL1OfR5RkIUc3PpqFuQKNLKXf5fOtVQaKjaexzwodVeWZQDKEG_RPt_Ybb99EnEm6vPKs6e3pWFbKiBq71WleLHhVrdFb4YPowRKjc7bG0jyGUxiQ2iXy0RWDj9tIjfI-KEdzNp5oVnX7j4p3H12DwQrRPmd1nz3BciAQNINvDpzqusuIUw8JXyLFCz838Y0NhwB1_bYZyctxRLSzrGZuI5rrWtItgupqMsOlJ3RNy1QrIbQ2g6nPmzl-atOqcQ4Nw0HeDLR8dhM1OsIcFLbKXBUtwXofflhzAQrkDxhwYiXii'], ], [ 'name' => 'x-acs-airticket-language', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'The language. Defaults to the buyer account configuration.', 'type' => 'string', 'required' => false, 'example' => 'en_US'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'PopBaseRes', 'type' => 'object', 'properties' => [ 'status' => ['title' => '', 'description' => 'The HTTP status code. The value is always 200 for successful HTTP requests.', 'type' => 'integer', 'format' => 'int32', 'example' => '200'], 'error_code' => ['title' => '', 'description' => 'The business error code.', 'type' => 'string', 'example' => 'null'], 'error_msg' => ['title' => '', 'description' => 'The error message.', 'type' => 'string', 'example' => 'null'], 'success' => ['title' => '', 'description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'true'], 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '51593418-8C73-5E47-8BA8-3F1D4A00CC0B'], 'data' => [ 'title' => '', 'description' => 'The data returned for a successful request.', 'type' => 'object', 'properties' => [ 'solution' => [ 'title' => '', 'description' => 'solution', 'type' => 'object', 'properties' => [ 'solution_id' => ['title' => '', 'description' => 'solution_id', 'type' => 'string', 'example' => 'eJwz8DeySEo0NjQ01TU3TU7TNTFINNO1SE5O0jVKM0hKNjEwTElLNYwz0A32cNT1dfPVNTIwMjYwNjRQ8/A3NLI01Q0Ic0cRBwBVFxJJ'], 'adult_price' => ['title' => '', 'description' => 'The unit price per adult.', 'type' => 'number', 'format' => 'double', 'example' => '300'], 'adult_tax' => ['title' => '', 'description' => 'The tax per adult.', 'type' => 'number', 'format' => 'double', 'example' => '30'], 'child_price' => ['title' => '', 'description' => 'The unit price per child.', 'type' => 'number', 'format' => 'double', 'example' => '200'], 'child_tax' => ['title' => '', 'description' => 'The tax per child.', 'type' => 'number', 'format' => 'double', 'example' => '20'], 'infant_price' => ['title' => '', 'description' => 'The unit price per infant.', 'type' => 'number', 'format' => 'double', 'example' => '200'], 'infant_tax' => ['title' => '', 'description' => 'The tax per infant.', 'type' => 'number', 'format' => 'double', 'example' => '10'], 'refund_ticket_coupon_description' => ['title' => '', 'description' => 'The description of the refund ticket coupon.', 'type' => 'string', 'example' => 'description'], 'product_type_description' => ['title' => '', 'description' => 'The product type description.', 'type' => 'string', 'example' => 'description'], 'journey_list' => [ 'title' => '', 'description' => 'The journey list.', 'type' => 'array', 'items' => [ 'description' => 'journey', 'type' => 'object', 'properties' => [ 'transfer_count' => ['title' => '', 'description' => 'The number of transfers.', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'segment_list' => [ 'title' => '', 'description' => 'The segment information.', 'type' => 'array', 'items' => [ 'description' => 'segment', 'type' => 'object', 'properties' => [ 'segment_id' => ['title' => '', 'description' => 'The segment ID in the format: flight number + departure airport + arrival airport + departure date (MMdd).', 'type' => 'string', 'example' => 'HO1295-PVG-MFM-20230310'], 'departure_airport' => ['title' => '', 'description' => 'The three-letter IATA code of the departure airport (uppercase).', 'type' => 'string', 'example' => 'PVG'], 'arrival_airport' => ['title' => '', 'description' => 'The three-letter IATA code of the arrival airport (uppercase).', 'type' => 'string', 'example' => 'MFM'], 'departure_city' => ['title' => '', 'description' => 'The three-letter IATA code of the departure city (uppercase).', 'type' => 'string', 'example' => 'SHA'], 'arrival_city' => ['title' => '', 'description' => 'The three-letter IATA code of the arrival city (uppercase).', 'type' => 'string', 'example' => 'MFM'], 'marketing_flight_no' => ['title' => '', 'description' => 'The marketing flight number (for example, KA5809).', 'type' => 'string', 'example' => 'HO1295'], 'marketing_flight_no_int' => ['title' => '', 'description' => 'The numeric marketing flight number (for example, 5809).', 'type' => 'integer', 'format' => 'int32', 'example' => '1295'], 'marketing_airline' => ['title' => '', 'description' => 'The marketing airline code (for example, KA).', 'type' => 'string', 'example' => 'HO'], 'operating_flight_no' => ['title' => '', 'description' => 'The operating flight number (for example, CX601).', 'type' => 'string', 'example' => 'HO1295'], 'operating_airline' => ['title' => '', 'description' => 'The operating airline code (for example, CX).', 'type' => 'string', 'example' => 'HO'], 'departure_time' => ['title' => '', 'description' => 'The departure date and time in string format (yyyy-MM-dd HH:mm:ss).', 'type' => 'string', 'example' => '2023-03-10 07:55:00'], 'arrival_time' => ['title' => '', 'description' => 'The arrival date and time in string format (yyyy-MM-dd HH:mm:ss).', 'type' => 'string', 'example' => '2023-03-10 10:40:00'], 'code_share' => ['title' => '', 'description' => 'Indicates whether the flight is a codeshare flight.', 'type' => 'boolean', 'example' => 'false'], 'departure_terminal' => ['title' => '', 'description' => 'The departure terminal.', 'type' => 'string', 'example' => 'T2'], 'arrival_terminal' => ['title' => '', 'description' => 'The arrival terminal.', 'type' => 'string', 'example' => 'T1'], 'equip_type' => ['title' => '', 'description' => 'The aircraft type.', 'type' => 'string', 'example' => '32Q'], 'cabin' => ['title' => '', 'description' => 'The cabin code.', 'type' => 'string', 'example' => 'V'], 'cabin_class' => ['title' => '', 'description' => 'The cabin class.', 'type' => 'string', 'example' => 'ALL_CABIN'], 'availability' => ['title' => '', 'description' => 'The number of remaining seats.', 'type' => 'string', 'example' => '7'], 'stop_city_list' => ['title' => '', 'description' => 'The list of stopover cities. This field has a value when stopQuantity is greater than 0. Multiple cities are separated by commas.', 'type' => 'string', 'example' => '""'], 'stop_quantity' => ['title' => '', 'description' => 'The number of stopover cities.', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'flight_duration' => ['title' => '', 'description' => 'The flight duration in minutes.', 'type' => 'integer', 'format' => 'int32', 'example' => '165'], ], 'title' => '', 'example' => '', ], 'example' => '', ], ], 'title' => '', 'example' => '', ], 'example' => '', ], 'segment_baggage_mapping_list' => [ 'title' => '', 'description' => 'The free baggage allowance rules.', 'type' => 'array', 'items' => [ 'description' => 'The element.', 'type' => 'object', 'properties' => [ 'segment_id_list' => [ 'title' => '', 'description' => 'The list of segment IDs that share the same free baggage allowance rule.', 'type' => 'array', 'items' => ['description' => 'segment_id', 'type' => 'string', 'example' => 'HO1295-PVG-MFM-20230310'."\n", 'title' => ''], 'example' => '', ], 'passenger_baggage_allowance_mapping' => [ 'title' => '', 'description' => 'The mapping between passenger types and free baggage allowances.', 'type' => 'object', 'additionalProperties' => [ 'type' => 'object', 'properties' => [ 'baggage_amount' => ['title' => '', 'description' => '托运行李件数', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'baggage_weight' => ['title' => '', 'description' => '托运行李重量', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], 'baggage_weight_unit' => ['title' => '', 'description' => '托运行李重量单位KG', 'type' => 'string', 'example' => 'KG'], 'is_all_weight' => ['title' => '', 'description' => '是否所有托运行李重量', 'type' => 'boolean', 'example' => 'true'], 'carry_on_amount' => ['title' => '', 'description' => '手提行李件数', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'carry_on_weight' => ['title' => '', 'description' => '手提行李重量', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], 'carry_on_weight_unit' => ['title' => '', 'description' => '手提行李重量单位KG', 'type' => 'string', 'example' => 'KG'], 'is_all_carry_on_weight' => ['title' => '', 'description' => '是否所有手提行李重量', 'type' => 'boolean', 'example' => 'true'], ], 'description' => '元素', 'title' => '', 'example' => '', ], 'example' => '', ], ], 'title' => '', 'example' => '', ], 'example' => '', ], 'segment_refund_change_rule_mapping_list' => [ 'title' => '', 'description' => 'The refund and change rules.', 'type' => 'array', 'items' => [ 'description' => 'The element.', 'type' => 'object', 'properties' => [ 'segment_id_list' => [ 'title' => '', 'description' => 'The list of segment IDs that share the same refund and change rule.', 'type' => 'array', 'items' => ['description' => 'segment_id', 'type' => 'string', 'example' => 'HO1295-PVG-MFM-20230310', 'title' => ''], 'example' => '', ], 'refund_change_rule_map' => [ 'title' => '', 'description' => 'The mapping between passenger types and refund and change rules.', 'type' => 'object', 'additionalProperties' => [ 'type' => 'object', 'properties' => [ 'refund_rule_all_unused_list' => [ 'title' => '', 'description' => '全程未使用退票规则', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'type' => ['title' => '', 'description' => '该退票规则适用航程使用类型 0:全程未使用; 1:部分未使用', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'time_unit' => ['title' => '', 'description' => '时间单位:day/hour', 'type' => 'string', 'example' => 'hour'], 'rule_start_time' => ['title' => '', 'description' => '该退票规则适用于的退票时间区间开始时间,单位(天/小时)', 'type' => 'integer', 'format' => 'int32', 'example' => '36'], 'rule_end_time' => ['title' => '', 'description' => '该退票规则适用于的退票时间区间结束时间,单位(天/小时)', 'type' => 'integer', 'format' => 'int32', 'example' => '12'], 'can_refund' => ['title' => '', 'description' => '起飞前X-Y小时(天) 可否退票', 'type' => 'boolean', 'example' => 'true'], 'refund_fee' => ['title' => '', 'description' => '起飞前X-Y小时(天) 退票手续费', 'type' => 'number', 'format' => 'double', 'example' => '10'], 'can_return_all_tax' => ['title' => '', 'description' => '起飞前X-Y小时(天) 是否全额退税', 'type' => 'boolean', 'example' => 'true'], 'return_part_tax_fee' => ['title' => '', 'description' => '起飞前X-Y小时(天) 可部分退税金额', 'type' => 'number', 'format' => 'double', 'example' => '10'], ], 'description' => '元素', 'title' => '', 'example' => '', ], 'example' => '', ], 'refund_rule_part_unused_list' => [ 'title' => '', 'description' => '部分未使用退票规则', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'type' => ['title' => '', 'description' => '该退票规则适用航程使用类型 0:全程未使用; 1:部分未使用', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'time_unit' => ['title' => '', 'description' => '时间单位:day/hour', 'type' => 'string', 'example' => 'hour'], 'rule_start_time' => ['title' => '', 'description' => '该退票规则适用于的退票时间区间开始时间,单位(天/小时)', 'type' => 'integer', 'format' => 'int32', 'example' => '36'], 'rule_end_time' => ['title' => '', 'description' => '该退票规则适用于的退票时间区间结束时间,单位(天/小时)', 'type' => 'integer', 'format' => 'int32', 'example' => '12'], 'can_refund' => ['title' => '', 'description' => '起飞前X-Y小时(天) 可否退票', 'type' => 'boolean', 'example' => 'true'], 'refund_fee' => ['title' => '', 'description' => '起飞前X-Y小时(天) 退票手续费', 'type' => 'number', 'format' => 'double', 'example' => '20'], 'can_return_all_tax' => ['title' => '', 'description' => '起飞前X-Y小时(天) 是否全额退税', 'type' => 'boolean', 'example' => 'false'], 'return_part_tax_fee' => ['title' => '', 'description' => '起飞前X-Y小时(天) 可部分退税金额', 'type' => 'number', 'format' => 'double', 'example' => '30'], ], 'description' => '元素', 'title' => '', 'example' => '', ], 'example' => '', ], 'change_rule_in_unused_list' => [ 'title' => '', 'description' => '回程未使用改签规则', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'type' => ['title' => '', 'description' => '该改签规则适用航程使用类型 2:去程未使用; 3:回程未使用', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], 'time_unit' => ['title' => '', 'description' => '时间单位:day/hour', 'type' => 'string', 'example' => 'hour'], 'rule_start_time' => ['title' => '', 'description' => '该退票规则适用于的退票时间区间开始时间,单位(天/小时)', 'type' => 'integer', 'format' => 'int32', 'example' => '36'], 'rule_end_time' => ['title' => '', 'description' => '该退票规则适用于的退票时间区间结束时间,单位(天/小时)', 'type' => 'integer', 'format' => 'int32', 'example' => '12'], 'can_change' => ['title' => '', 'description' => '起飞前X-Y小时(天) 可否可以改签', 'type' => 'boolean', 'example' => 'true'], 'change_fee' => ['title' => '', 'description' => '起飞前X-Y小时(天) 改签费', 'type' => 'number', 'format' => 'double', 'example' => '10'], ], 'description' => '元素', 'title' => '', 'example' => '', ], 'example' => '', ], 'change_rule_out_unused_list' => [ 'title' => '', 'description' => '去程未使用改签规则', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'type' => ['title' => '', 'description' => '该改签规则适用航程使用类型 2:去程未使用; 3:回程未使用', 'type' => 'integer', 'format' => 'int32', 'example' => '3'], 'time_unit' => ['title' => '', 'description' => '时间单位:day/hour', 'type' => 'string', 'example' => 'hour'], 'rule_start_time' => ['title' => '', 'description' => '该退票规则适用于的退票时间区间开始时间,单位(天/小时)', 'type' => 'integer', 'format' => 'int32', 'example' => '36'], 'rule_end_time' => ['title' => '', 'description' => '该退票规则适用于的退票时间区间结束时间,单位(天/小时)', 'type' => 'integer', 'format' => 'int32', 'example' => '12'], 'can_change' => ['title' => '', 'description' => '起飞前X-Y小时(天) 可否可以改签', 'type' => 'boolean', 'example' => 'true'], 'change_fee' => ['title' => '', 'description' => '起飞前X-Y小时(天) 改签费', 'type' => 'number', 'format' => 'double', 'example' => '10'], ], 'description' => '元素', 'title' => '', 'example' => '', ], 'example' => '', ], ], 'description' => '元素', 'title' => '', 'example' => '', ], 'example' => '', ], ], 'title' => '', 'example' => '', ], 'example' => '', ], 'segment_baggage_check_in_info_list' => [ 'title' => '', 'description' => 'The baggage through-check rules.', 'type' => 'array', 'items' => [ 'description' => 'The element.', 'type' => 'object', 'properties' => [ 'segment_id_list' => [ 'title' => '', 'description' => 'The list of segment IDs that share the same baggage through-check rule.', 'type' => 'array', 'items' => ['description' => 'segment_id', 'type' => 'string', 'example' => 'HO1295-PVG-MFM-20230310'."\n", 'title' => ''], 'example' => '', ], 'luggage_direct_info_type' => ['title' => '', 'description' => 'The baggage through-check rule type. Valid values: 1: baggage is checked through between segments. 2: baggage must be rechecked between segments. 3: baggage is checked through at stopover cities. 4: baggage must be rechecked at stopover cities.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], ], 'title' => '', 'example' => '', ], 'example' => '', ], ], 'example' => '', ], 'is_changed' => ['title' => '', 'description' => 'Indicates whether the price has changed.', 'type' => 'boolean', 'example' => 'true'], 'original_price_info' => [ 'title' => '', 'description' => 'The price information before the price change. This field has a value only when isChanged is true.', 'type' => 'object', 'properties' => [ 'adult_tax' => ['title' => '', 'description' => 'The tax per adult.', 'type' => 'number', 'format' => 'double', 'example' => '20'], 'child_tax' => ['title' => '', 'description' => 'The tax per child.', 'type' => 'number', 'format' => 'double', 'example' => '20'], 'infant_tax' => ['title' => '', 'description' => 'The tax per infant.', 'type' => 'number', 'format' => 'double', 'example' => '20'], 'adult_price' => ['title' => '', 'description' => 'The unit price per adult.', 'type' => 'number', 'format' => 'double', 'example' => '200'], 'child_price' => ['title' => '', 'description' => 'The unit price per child.', 'type' => 'number', 'format' => 'double', 'example' => '200'], 'infant_price' => ['title' => '', 'description' => 'The unit price per infant.', 'type' => 'number', 'format' => 'double', 'example' => '200'], ], 'example' => '', ], 'changed_price_info' => [ 'title' => '', 'description' => 'The price information after the price change.', 'type' => 'object', 'properties' => [ 'adult_tax' => ['title' => '', 'description' => 'The tax per adult.', 'type' => 'number', 'format' => 'double', 'example' => '10'], 'child_tax' => ['title' => '', 'description' => 'The tax per child.', 'type' => 'number', 'format' => 'double', 'example' => '10'], 'infant_tax' => ['title' => '', 'description' => 'The tax per infant.', 'type' => 'number', 'format' => 'double', 'example' => '10'], 'adult_price' => ['title' => '', 'description' => 'The unit price per adult.', 'type' => 'number', 'format' => 'double', 'example' => '100'], 'child_price' => ['title' => '', 'description' => 'The unit price per child.', 'type' => 'number', 'format' => 'double', 'example' => '100'], 'infant_price' => ['title' => '', 'description' => 'The unit price per infant.', 'type' => 'number', 'format' => 'double', 'example' => '100'], ], 'example' => '', ], 'remain_seats' => ['title' => '', 'description' => 'The number of remaining seats. A indicates more than 9. Values 0 through 9 represent the exact number.', 'type' => 'string', 'example' => 'A'], ], 'example' => '', ], 'error_data' => ['title' => '', 'description' => 'The data returned with the error.', 'type' => 'any', 'example' => 'null'], ], 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"status\\": 200,\\n \\"error_code\\": \\"null\\",\\n \\"error_msg\\": \\"null\\",\\n \\"success\\": true,\\n \\"RequestId\\": \\"51593418-8C73-5E47-8BA8-3F1D4A00CC0B\\",\\n \\"data\\": {\\n \\"solution\\": {\\n \\"solution_id\\": \\"eJwz8DeySEo0NjQ01TU3TU7TNTFINNO1SE5O0jVKM0hKNjEwTElLNYwz0A32cNT1dfPVNTIwMjYwNjRQ8/A3NLI01Q0Ic0cRBwBVFxJJ\\",\\n \\"adult_price\\": 300,\\n \\"adult_tax\\": 30,\\n \\"child_price\\": 200,\\n \\"child_tax\\": 20,\\n \\"infant_price\\": 200,\\n \\"infant_tax\\": 10,\\n \\"refund_ticket_coupon_description\\": \\"description\\",\\n \\"product_type_description\\": \\"description\\",\\n \\"journey_list\\": [\\n {\\n \\"transfer_count\\": 0,\\n \\"segment_list\\": [\\n {\\n \\"segment_id\\": \\"HO1295-PVG-MFM-20230310\\",\\n \\"departure_airport\\": \\"PVG\\",\\n \\"arrival_airport\\": \\"MFM\\",\\n \\"departure_city\\": \\"SHA\\",\\n \\"arrival_city\\": \\"MFM\\",\\n \\"marketing_flight_no\\": \\"HO1295\\",\\n \\"marketing_flight_no_int\\": 1295,\\n \\"marketing_airline\\": \\"HO\\",\\n \\"operating_flight_no\\": \\"HO1295\\",\\n \\"operating_airline\\": \\"HO\\",\\n \\"departure_time\\": \\"2023-03-10 07:55:00\\",\\n \\"arrival_time\\": \\"2023-03-10 10:40:00\\",\\n \\"code_share\\": false,\\n \\"departure_terminal\\": \\"T2\\",\\n \\"arrival_terminal\\": \\"T1\\",\\n \\"equip_type\\": \\"32Q\\",\\n \\"cabin\\": \\"V\\",\\n \\"cabin_class\\": \\"ALL_CABIN\\",\\n \\"availability\\": \\"7\\",\\n \\"stop_city_list\\": \\"\\\\\\"\\\\\\"\\",\\n \\"stop_quantity\\": 0,\\n \\"flight_duration\\": 165\\n }\\n ]\\n }\\n ],\\n \\"segment_baggage_mapping_list\\": [\\n {\\n \\"segment_id_list\\": [\\n \\"HO1295-PVG-MFM-20230310\\\\n\\"\\n ],\\n \\"passenger_baggage_allowance_mapping\\": {\\n \\"key\\": {\\n \\"baggage_amount\\": 1,\\n \\"baggage_weight\\": 10,\\n \\"baggage_weight_unit\\": \\"KG\\",\\n \\"is_all_weight\\": true,\\n \\"carry_on_amount\\": 1,\\n \\"carry_on_weight\\": 10,\\n \\"carry_on_weight_unit\\": \\"KG\\",\\n \\"is_all_carry_on_weight\\": true\\n }\\n }\\n }\\n ],\\n \\"segment_refund_change_rule_mapping_list\\": [\\n {\\n \\"segment_id_list\\": [\\n \\"HO1295-PVG-MFM-20230310\\"\\n ],\\n \\"refund_change_rule_map\\": {\\n \\"key\\": {\\n \\"refund_rule_all_unused_list\\": [\\n {\\n \\"type\\": 1,\\n \\"time_unit\\": \\"hour\\",\\n \\"rule_start_time\\": 36,\\n \\"rule_end_time\\": 12,\\n \\"can_refund\\": true,\\n \\"refund_fee\\": 10,\\n \\"can_return_all_tax\\": true,\\n \\"return_part_tax_fee\\": 10\\n }\\n ],\\n \\"refund_rule_part_unused_list\\": [\\n {\\n \\"type\\": 0,\\n \\"time_unit\\": \\"hour\\",\\n \\"rule_start_time\\": 36,\\n \\"rule_end_time\\": 12,\\n \\"can_refund\\": true,\\n \\"refund_fee\\": 20,\\n \\"can_return_all_tax\\": false,\\n \\"return_part_tax_fee\\": 30\\n }\\n ],\\n \\"change_rule_in_unused_list\\": [\\n {\\n \\"type\\": 2,\\n \\"time_unit\\": \\"hour\\",\\n \\"rule_start_time\\": 36,\\n \\"rule_end_time\\": 12,\\n \\"can_change\\": true,\\n \\"change_fee\\": 10\\n }\\n ],\\n \\"change_rule_out_unused_list\\": [\\n {\\n \\"type\\": 3,\\n \\"time_unit\\": \\"hour\\",\\n \\"rule_start_time\\": 36,\\n \\"rule_end_time\\": 12,\\n \\"can_change\\": true,\\n \\"change_fee\\": 10\\n }\\n ]\\n }\\n }\\n }\\n ],\\n \\"segment_baggage_check_in_info_list\\": [\\n {\\n \\"segment_id_list\\": [\\n \\"HO1295-PVG-MFM-20230310\\\\n\\"\\n ],\\n \\"luggage_direct_info_type\\": 1\\n }\\n ]\\n },\\n \\"is_changed\\": true,\\n \\"original_price_info\\": {\\n \\"adult_tax\\": 20,\\n \\"child_tax\\": 20,\\n \\"infant_tax\\": 20,\\n \\"adult_price\\": 200,\\n \\"child_price\\": 200,\\n \\"infant_price\\": 200\\n },\\n \\"changed_price_info\\": {\\n \\"adult_tax\\": 10,\\n \\"child_tax\\": 10,\\n \\"infant_tax\\": 10,\\n \\"adult_price\\": 100,\\n \\"child_price\\": 100,\\n \\"infant_price\\": 100\\n },\\n \\"remain_seats\\": \\"A\\"\\n },\\n \\"error_data\\": \\"null\\"\\n}","type":"json"}]', 'title' => 'Pricing', 'changeSet' => [ ['createdAt' => '2025-11-18T06:20:03.000Z', 'description' => 'OpenAPI offline'], ['createdAt' => '2025-11-18T06:10:43.000Z', 'description' => 'OpenAPI offline'], ['createdAt' => '2025-11-12T04:01:07.000Z', 'description' => 'OpenAPI offline'], ['createdAt' => '2025-11-12T03:58:52.000Z', 'description' => 'OpenAPI offline'], ['createdAt' => '2025-11-12T03:58:45.000Z', 'description' => 'OpenAPI offline'], ['createdAt' => '2025-10-24T06:03:24.000Z', 'description' => 'OpenAPI offline'], ['createdAt' => '2025-10-24T05:51:47.000Z', 'description' => 'OpenAPI offline'], ], ], 'RefundApply' => [ 'summary' => 'Submits a refund application for an air ticket.', 'path' => '/airticket/v1/refund/action-apply', 'methods' => ['post'], 'schemes' => ['https', 'http'], 'security' => [ [ 'accessTokenAuth' => [], ], ], 'deprecated' => false, 'systemTags' => [], 'parameters' => [ [ 'name' => 'order_num', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The order number.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '4966***617111'], ], [ 'name' => 'refund_type', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'The refund type. Attachments are required for involuntary refund applications.', 'type' => 'object', 'properties' => [ 'refund_type_id' => ['title' => '', 'description' => 'The refund type. Valid values:'."\n" .'- 2: Voluntary refund (change of travel plans or decision not to fly).'."\n" .'- 5: Involuntary refund due to airline reasons such as flight delay, cancellation, or schedule change.'."\n" .'- 6: Involuntary refund due to medical reasons with a certificate from a Grade II Class A hospital or above.'."\n" ."\n" .'Note: Attachments are not mandatory, but providing attachments for involuntary refunds can improve the success rate of the refund application.', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '2'], 'file' => [ 'title' => '', 'description' => 'The array of attachment file URLs. Upload files first by using the dedicated file upload operation to obtain the file URLs.', 'type' => 'array', 'items' => ['description' => 'The element.', 'type' => 'string', 'required' => false, 'example' => '["xxx","zzz"]', 'title' => ''], 'required' => false, 'example' => '[xxx,yyy]', ], 'remark' => ['title' => '', 'description' => 'The remarks.', 'type' => 'string', 'example' => 'remark desc', 'required' => false], ], 'required' => true, 'example' => '', ], ], [ 'name' => 'refund_passenger_list', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'The list of passengers for the refund application.', 'type' => 'array', 'items' => [ 'description' => 'The element.', 'type' => 'object', 'properties' => [ 'first_name' => ['title' => '', 'description' => 'The first name of the passenger.', 'type' => 'string', 'required' => true, 'example' => 'SAN'], 'last_name' => ['title' => '', 'description' => 'The last name of the passenger.', 'type' => 'string', 'required' => true, 'example' => 'ZHANG'], 'document' => ['title' => '', 'description' => 'The document number of the passenger.', 'type' => 'string', 'example' => '411***********4411', 'required' => false], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => true, 'example' => '', ], ], [ 'name' => 'refund_journeys', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'The journeys for the refund application.', 'type' => 'array', 'items' => [ 'description' => 'The element.', 'type' => 'object', 'properties' => [ 'segment_list' => [ 'title' => '', 'description' => 'The segment information.', 'type' => 'array', 'items' => [ 'description' => 'segment', 'type' => 'object', 'properties' => [ 'departure_airport' => ['title' => '', 'description' => 'The three-letter IATA code of the departure airport (uppercase).', 'type' => 'string', 'required' => true, 'example' => 'PVG'], 'arrival_airport' => ['title' => '', 'description' => 'The three-letter IATA code of the arrival airport (uppercase).', 'type' => 'string', 'required' => true, 'example' => 'MFM'], 'departure_city' => ['title' => '', 'description' => 'The three-letter IATA code of the departure city (uppercase).', 'type' => 'string', 'required' => true, 'example' => 'SHA'], 'arrival_city' => ['title' => '', 'description' => 'The three-letter IATA code of the arrival city (uppercase).', 'type' => 'string', 'required' => true, 'example' => 'MFM'], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => true, 'example' => '', ], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => true, 'example' => '', ], ], [ 'name' => 'x-acs-airticket-access-token', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'The access_token.', 'type' => 'string', 'required' => true, 'example' => 'eyJhbGciOiJSUzI1NiIsImtpZCI6InN1ZXpfa2V5aWQifQ.eyJqdGkiOiJCQldMaWIzN0VxbC0xMjhhR2N5elJ3IiwiaWF0IjoxNjc3MDY2NTAxLCJleHAiOjE2NzcwNzM3MDEsIm5iZiI6MTY3NzA2NjQ0MX0.AF0DxsZK4Edyg0C6ObRQFUo36R1VYrb5IYmak25TmL1OfR5RkIUc3PpqFuQKNLKXf5fOtVQaKjaexzwodVeWZQDKEG_RPt_Ybb99EnEm6vPKs6e3pWFbKiBq71WleLHhVrdFb4YPowRKjc7bG0jyGUxiQ2iXy0RWDj9tIjfI-KEdzNp5oVnX7j4p3H12DwQrRPmd1nz3BciAQNINvDpzqusuIUw8JXyLFCz838Y0NhwB1_bYZyctxRLSzrGZuI5rrWtItgupqMsOlJ3RNy1QrIbQ2g6nPmzl-atOqcQ4Nw0HeDLR8dhM1OsIcFLbKXBUtwXofflhzAQrkDxhwYiXii'], ], [ 'name' => 'x-acs-airticket-language', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'The language setting. Defaults to the buyer account configuration.', 'type' => 'string', 'required' => false, 'example' => 'en_US'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'PopBaseRes', 'type' => 'object', 'properties' => [ 'status' => ['title' => '', 'description' => 'The HTTP status code. The value is always 200 for successful requests.', 'type' => 'integer', 'format' => 'int32', 'example' => '200'], 'error_code' => ['title' => '', 'description' => 'The business error code.', 'type' => 'string', 'example' => 'null'], 'error_msg' => ['title' => '', 'description' => 'The error message.', 'type' => 'string', 'example' => 'null'], 'success' => ['title' => '', 'description' => 'Indicates whether the request is successful.', 'type' => 'boolean', 'example' => 'true'], 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '51593418-8C73-5E47-8BA8-3F1D4A00CC0B'], 'data' => [ 'title' => '', 'description' => 'The data returned for a successful request.', 'type' => 'object', 'properties' => [ 'order_num' => ['title' => '', 'description' => 'The order number.', 'type' => 'integer', 'format' => 'int64', 'example' => '4966***617111'], 'refund_results' => [ 'title' => '', 'description' => 'The list of refund application results.', 'type' => 'array', 'items' => [ 'description' => 'The element.', 'type' => 'object', 'properties' => [ 'refund_order_num' => ['title' => '', 'description' => 'The refund order number.', 'type' => 'integer', 'format' => 'int64', 'example' => '4966***617202'], 'status' => ['title' => '', 'description' => 'The refund order status. Valid values:'."\n" .'- 0: The refund order is created.'."\n" .'- 1: The refund order failed to be created.', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'fail_reason' => ['title' => '', 'description' => 'The reason for the refund application failure.', 'type' => 'string', 'example' => 'desc reason'], 'refund_passengers' => [ 'title' => '', 'description' => 'The list of passengers included in the refund order.', 'type' => 'array', 'items' => [ 'description' => 'The element.', 'type' => 'object', 'properties' => [ 'first_name' => ['title' => '', 'description' => 'The first name of the passenger.', 'type' => 'string', 'example' => 'SAN'], 'last_name' => ['title' => '', 'description' => 'The last name of the passenger.', 'type' => 'string', 'example' => 'ZHANG'], 'document' => ['title' => '', 'description' => 'The document number of the passenger.', 'type' => 'string', 'example' => '411***********4411'], ], 'title' => '', 'example' => '', ], 'example' => '', ], ], 'title' => '', 'example' => '', ], 'example' => '', ], ], 'example' => '', ], 'error_data' => ['title' => '', 'description' => 'The data returned with the error.', 'type' => 'any', 'example' => 'null'], ], 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"status\\": 200,\\n \\"error_code\\": \\"null\\",\\n \\"error_msg\\": \\"null\\",\\n \\"success\\": true,\\n \\"RequestId\\": \\"51593418-8C73-5E47-8BA8-3F1D4A00CC0B\\",\\n \\"data\\": {\\n \\"order_num\\": 0,\\n \\"refund_results\\": [\\n {\\n \\"refund_order_num\\": 0,\\n \\"status\\": 0,\\n \\"fail_reason\\": \\"desc reason\\",\\n \\"refund_passengers\\": [\\n {\\n \\"first_name\\": \\"SAN\\",\\n \\"last_name\\": \\"ZHANG\\",\\n \\"document\\": \\"411***********4411\\"\\n }\\n ]\\n }\\n ]\\n },\\n \\"error_data\\": \\"null\\"\\n}","type":"json"}]', 'title' => 'RefundApply', 'changeSet' => [], ], 'RefundDetail' => [ 'summary' => 'Retrieves the details of a refund order.', 'path' => '/airticket/v1/refund/detail', 'methods' => ['get'], 'schemes' => ['https', 'http'], 'security' => [ [ 'accessTokenAuth' => [], ], ], 'deprecated' => false, 'systemTags' => [], 'parameters' => [ [ 'name' => 'refund_order_num', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The refund order number.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '4966***617732'], ], [ 'name' => 'x-acs-airticket-access-token', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'The access_token.', 'type' => 'string', 'required' => true, 'example' => 'eyJhbGciOiJSUzI1NiIsImtpZCI6InN1ZXpfa2V5aWQifQ.eyJqdGkiOiJCQldMaWIzN0VxbC0xMjhhR2N5elJ3IiwiaWF0IjoxNjc3MDY2NTAxLCJleHAiOjE2NzcwNzM3MDEsIm5iZiI6MTY3NzA2NjQ0MX0.AF0DxsZK4Edyg0C6ObRQFUo36R1VYrb5IYmak25TmL1OfR5RkIUc3PpqFuQKNLKXf5fOtVQaKjaexzwodVeWZQDKEG_RPt_Ybb99EnEm6vPKs6e3pWFbKiBq71WleLHhVrdFb4YPowRKjc7bG0jyGUxiQ2iXy0RWDj9tIjfI-KEdzNp5oVnX7j4p3H12DwQrRPmd1nz3BciAQNINvDpzqusuIUw8JXyLFCz838Y0NhwB1_bYZyctxRLSzrGZuI5rrWtItgupqMsOlJ3RNy1QrIbQ2g6nPmzl-atOqcQ4Nw0HeDLR8dhM1OsIcFLbKXBUtwXofflhzAQrkDxhwYiXii'], ], [ 'name' => 'x-acs-airticket-language', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'The language. Defaults to the buyer account configuration.', 'type' => 'string', 'required' => false, 'example' => 'en_US'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'PopBaseRes', 'type' => 'object', 'properties' => [ 'status' => ['title' => '', 'description' => 'The HTTP status code. The value is always 200 for successful requests.', 'type' => 'integer', 'format' => 'int32', 'example' => '200'], 'error_code' => ['title' => '', 'description' => 'The business error code.', 'type' => 'string', 'example' => 'null'], 'error_msg' => ['title' => '', 'description' => 'The error message.', 'type' => 'string', 'example' => 'null'], 'success' => ['title' => '', 'description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'true'], 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '51593418-8C73-5E47-8BA8-3F1D4A00CC0B'], 'data' => [ 'title' => '', 'description' => 'The data returned for a successful request.', 'type' => 'object', 'properties' => [ 'refund_order_num' => ['title' => '', 'description' => 'The refund order number.', 'type' => 'integer', 'format' => 'int64', 'example' => '4966***617654'], 'order_num' => ['title' => '', 'description' => 'The order number.', 'type' => 'integer', 'format' => 'int64', 'example' => '4966***617111'], 'status' => ['title' => '', 'description' => 'The refund order status. Valid values:'."\n" .'- 0: refund requested.'."\n" .'- 1: refund being processed.'."\n" .'- 2: refund failed.'."\n" .'- 3: refund succeeded.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'refund_type' => ['title' => '', 'description' => 'The refund request type. Valid values:'."\n" .'- 2: voluntary request.'."\n" .'- 5: airline-initiated reasons such as flight delay, cancellation, or schedule change.'."\n" .'- 6: medical reasons with a certificate from a Grade II Class A hospital or above.'."\n" .'- 7: involuntary definitive emergency guidance.'."\n" .'- 100: involuntary non-definitive emergency.', 'type' => 'integer', 'format' => 'int32', 'example' => '5'], 'refund_reason' => ['title' => '', 'description' => 'The reason for the refund request.', 'type' => 'string', 'example' => 'desc reason'], 'refuse_reason' => ['title' => '', 'description' => 'The reason for rejecting the refund request.', 'type' => 'string', 'example' => 'refuse reason'], 'refund_attachment_urls' => [ 'title' => '', 'description' => 'The list of attachment URLs for medical refund requests.', 'type' => 'array', 'items' => ['description' => 'The element.', 'type' => 'string', 'example' => '["xxx","zzz"]', 'title' => ''], 'example' => '[zzz,yyy]', ], 'utc_create_time' => ['title' => '', 'description' => 'The creation time of the refund order, in UTC timestamp.', 'type' => 'integer', 'format' => 'int64', 'example' => '1677229002000'], 'pay_success_utc_time' => ['title' => '', 'description' => 'The actual refund time, in UTC timestamp.', 'type' => 'integer', 'format' => 'int64', 'example' => '1677229005000'], 'transaction_no' => ['title' => '', 'description' => 'The transaction serial number.', 'type' => 'string', 'example' => '1677229005000'], 'passenger_refund_details' => [ 'title' => '', 'description' => 'The list of passenger-level refund details.', 'type' => 'array', 'items' => [ 'description' => 'The element.', 'type' => 'object', 'properties' => [ 'passenger' => [ 'title' => '', 'description' => 'The passenger information for the refund.', 'type' => 'object', 'properties' => [ 'first_name' => ['title' => '', 'description' => 'The first name of the passenger.', 'type' => 'string', 'example' => 'SAN'], 'last_name' => ['title' => '', 'description' => 'The last name of the passenger.', 'type' => 'string', 'example' => 'ZHANG'], 'document' => ['title' => '', 'description' => 'The document number.', 'type' => 'string', 'example' => '411***********4411'], ], 'example' => '', ], 'refund_fee' => [ 'title' => '', 'description' => 'The refund fee breakdown.', 'type' => 'object', 'properties' => [ 'non_refundable_ticket_fee' => ['title' => '', 'description' => 'The non-refundable ticket amount, which is the ticket refund service fee.', 'type' => 'number', 'format' => 'double', 'example' => '30'], 'non_refundable_tax_fee' => ['title' => '', 'description' => 'The non-refundable tax amount, which is the tax refund service fee.', 'type' => 'number', 'format' => 'double', 'example' => '30'], 'already_used_total_fee' => ['title' => '', 'description' => 'The total price of already used tickets.', 'type' => 'number', 'format' => 'double', 'example' => '30'], 'non_refundable_change_service_fee' => ['title' => '', 'description' => 'The non-refundable rebooking service fee.', 'type' => 'number', 'format' => 'double', 'example' => '30'], 'non_refundable_change_upgrade_fee' => ['title' => '', 'description' => 'The non-refundable cabin upgrade service fee.', 'type' => 'number', 'format' => 'double', 'example' => '30'], 'refund_to_buyer_money' => ['title' => '', 'description' => 'The refundable amount to the buyer from the original ticket (ticket price + taxes - ticket refund service fee - tax refund service fee - total price of already used tickets).', 'type' => 'number', 'format' => 'double', 'example' => '30'], 'modify_refund_to_buyer_money' => ['title' => '', 'description' => 'The refundable amount to the buyer from rebooking.', 'type' => 'number', 'format' => 'double', 'example' => '30'], ], 'example' => '', ], ], 'title' => '', 'example' => '', ], 'example' => '', ], 'contain_multi_refund' => ['title' => '', 'description' => 'Indicates whether the refund contains a supplementary refund.', 'type' => 'boolean', 'example' => 'false'], 'multi_refund_details' => [ 'title' => '', 'description' => 'The list of supplementary refund details associated with the initial refund.', 'type' => 'array', 'items' => [ 'description' => 'The element.', 'type' => 'object', 'properties' => [ 'multi_refund_order_num' => ['title' => '', 'description' => 'The refund order number of the supplementary refund.', 'type' => 'integer', 'format' => 'int64', 'example' => '498843***6950'], 'multi_refund_transaction_no' => ['title' => '', 'description' => 'The transaction serial number of the supplementary refund.', 'type' => 'string', 'example' => '498843***6950'], 'passenger_multi_refund_details' => [ 'title' => '', 'description' => 'The passenger-level supplementary refund details.', 'type' => 'array', 'items' => [ 'description' => 'The element.', 'type' => 'object', 'properties' => [ 'passenger' => [ 'title' => '', 'description' => 'The passenger for the refund.', 'type' => 'object', 'properties' => [ 'first_name' => ['title' => '', 'description' => 'The first name of the passenger.', 'type' => 'string', 'example' => 'SAN'], 'last_name' => ['title' => '', 'description' => 'The last name of the passenger.', 'type' => 'string', 'example' => 'ZHANG'], 'document' => ['title' => '', 'description' => 'The document number.', 'type' => 'string', 'example' => '411***********4411'], ], 'example' => '', ], 'original_order_refund_fee' => ['title' => '', 'description' => 'The supplementary refund amount from the original order.', 'type' => 'number', 'format' => 'double', 'example' => '30'], 'change_order_refund_fee' => ['title' => '', 'description' => 'The supplementary refund amount from the rebooking order.', 'type' => 'number', 'format' => 'double', 'example' => '30'], ], 'title' => '', 'example' => '', ], 'example' => '', ], ], 'title' => '', 'example' => '', ], 'example' => '', ], 'refund_journeys' => [ 'title' => '', 'description' => 'The journeys included in the refund.', 'type' => 'array', 'items' => [ 'description' => 'The element.', 'type' => 'object', 'properties' => [ 'transfer_count' => ['title' => '', 'description' => 'The number of transfers.', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'segment_list' => [ 'title' => '', 'description' => 'The segment information.', 'type' => 'array', 'items' => [ 'description' => 'The element.', 'type' => 'object', 'properties' => [ 'segment_id' => ['title' => '', 'description' => 'The segment ID. Format: flight number + departure airport + arrival airport + departure date (MMdd).', 'type' => 'string', 'example' => 'HO1295-PVG-MFM-20230310'."\n"], 'departure_airport' => ['title' => '', 'description' => 'The three-letter IATA code of the departure airport (uppercase).', 'type' => 'string', 'example' => 'PVG'], 'arrival_airport' => ['title' => '', 'description' => 'The three-letter IATA code of the arrival airport (uppercase).', 'type' => 'string', 'example' => 'MFM'], 'departure_city' => ['title' => '', 'description' => 'The three-letter IATA code of the departure city (uppercase).', 'type' => 'string', 'example' => 'SHA'], 'arrival_city' => ['title' => '', 'description' => 'The three-letter IATA code of the arrival city (uppercase).', 'type' => 'string', 'example' => 'MFM'], 'marketing_flight_no' => ['title' => '', 'description' => 'The marketing flight number (such as HO1295).', 'type' => 'string', 'example' => 'HO1295'], 'marketing_flight_no_int' => ['title' => '', 'description' => 'The numeric marketing flight number (such as 1295).', 'type' => 'integer', 'format' => 'int32', 'example' => '1295'], 'marketing_airline' => ['title' => '', 'description' => 'The marketing airline code (such as HO).', 'type' => 'string', 'example' => 'HO'], 'operating_flight_no' => ['title' => '', 'description' => 'The operating flight number (such as CX601).', 'type' => 'string', 'example' => 'HO1295'], 'operating_airline' => ['title' => '', 'description' => 'The operating airline code (such as CX).', 'type' => 'string', 'example' => 'HO'], 'departure_time' => ['title' => '', 'description' => 'The departure date and time in string format (yyyy-MM-dd HH:mm:ss).', 'type' => 'string', 'example' => '2023-03-10 07:55:00'], 'arrival_time' => ['title' => '', 'description' => 'The arrival date and time in string format (yyyy-MM-dd HH:mm:ss).', 'type' => 'string', 'example' => '2023-03-10 10:40:00'], 'code_share' => ['title' => '', 'description' => 'Indicates whether the flight is a codeshare flight.', 'type' => 'boolean', 'example' => 'false'], 'departure_terminal' => ['title' => '', 'description' => 'The departure terminal.', 'type' => 'string', 'example' => 'T2'], 'arrival_terminal' => ['title' => '', 'description' => 'The arrival terminal.', 'type' => 'string', 'example' => 'T1'], 'equip_type' => ['title' => '', 'description' => 'The aircraft type.', 'type' => 'string', 'example' => '32Q'], 'cabin' => ['title' => '', 'description' => 'The cabin code.', 'type' => 'string', 'example' => 'V'], 'cabin_class' => ['title' => '', 'description' => 'The cabin class.', 'type' => 'string', 'example' => 'Y'], 'availability' => ['title' => '', 'description' => 'The number of remaining seats.', 'type' => 'string', 'example' => '7'], 'stop_city_list' => ['title' => '', 'description' => 'The list of stopover cities. This field has a value when stopQuantity is greater than 0. Multiple cities are separated by commas.', 'type' => 'string', 'example' => 'SEL,HKG'], 'stop_quantity' => ['title' => '', 'description' => 'The number of stopover cities.', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'flight_duration' => ['title' => '', 'description' => 'The flight duration, in minutes.', 'type' => 'integer', 'format' => 'int32', 'example' => '165'], ], 'title' => '', 'example' => '', ], 'example' => '', ], ], 'title' => '', 'example' => '', ], 'example' => '', ], ], 'example' => '', ], 'error_data' => ['title' => '', 'description' => 'The data returned with the error.', 'type' => 'any', 'example' => 'null'], ], 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"status\\": 200,\\n \\"error_code\\": \\"null\\",\\n \\"error_msg\\": \\"null\\",\\n \\"success\\": true,\\n \\"RequestId\\": \\"51593418-8C73-5E47-8BA8-3F1D4A00CC0B\\",\\n \\"data\\": {\\n \\"refund_order_num\\": 0,\\n \\"order_num\\": 0,\\n \\"status\\": 1,\\n \\"refund_type\\": 5,\\n \\"refund_reason\\": \\"desc reason\\",\\n \\"refuse_reason\\": \\"refuse reason\\",\\n \\"refund_attachment_urls\\": [\\n \\"[\\\\\\"xxx\\\\\\",\\\\\\"zzz\\\\\\"]\\"\\n ],\\n \\"utc_create_time\\": 1677229002000,\\n \\"pay_success_utc_time\\": 1677229005000,\\n \\"transaction_no\\": \\"1677229005000\\",\\n \\"passenger_refund_details\\": [\\n {\\n \\"passenger\\": {\\n \\"first_name\\": \\"SAN\\",\\n \\"last_name\\": \\"ZHANG\\",\\n \\"document\\": \\"411***********4411\\"\\n },\\n \\"refund_fee\\": {\\n \\"non_refundable_ticket_fee\\": 30,\\n \\"non_refundable_tax_fee\\": 30,\\n \\"already_used_total_fee\\": 30,\\n \\"non_refundable_change_service_fee\\": 30,\\n \\"non_refundable_change_upgrade_fee\\": 30,\\n \\"refund_to_buyer_money\\": 30,\\n \\"modify_refund_to_buyer_money\\": 30\\n }\\n }\\n ],\\n \\"contain_multi_refund\\": false,\\n \\"multi_refund_details\\": [\\n {\\n \\"multi_refund_order_num\\": 0,\\n \\"multi_refund_transaction_no\\": \\"498843***6950\\",\\n \\"passenger_multi_refund_details\\": [\\n {\\n \\"passenger\\": {\\n \\"first_name\\": \\"SAN\\",\\n \\"last_name\\": \\"ZHANG\\",\\n \\"document\\": \\"411***********4411\\"\\n },\\n \\"original_order_refund_fee\\": 30,\\n \\"change_order_refund_fee\\": 30\\n }\\n ]\\n }\\n ],\\n \\"refund_journeys\\": [\\n {\\n \\"transfer_count\\": 0,\\n \\"segment_list\\": [\\n {\\n \\"segment_id\\": \\"HO1295-PVG-MFM-20230310\\\\n\\",\\n \\"departure_airport\\": \\"PVG\\",\\n \\"arrival_airport\\": \\"MFM\\",\\n \\"departure_city\\": \\"SHA\\",\\n \\"arrival_city\\": \\"MFM\\",\\n \\"marketing_flight_no\\": \\"HO1295\\",\\n \\"marketing_flight_no_int\\": 1295,\\n \\"marketing_airline\\": \\"HO\\",\\n \\"operating_flight_no\\": \\"HO1295\\",\\n \\"operating_airline\\": \\"HO\\",\\n \\"departure_time\\": \\"2023-03-10 07:55:00\\",\\n \\"arrival_time\\": \\"2023-03-10 10:40:00\\",\\n \\"code_share\\": false,\\n \\"departure_terminal\\": \\"T2\\",\\n \\"arrival_terminal\\": \\"T1\\",\\n \\"equip_type\\": \\"32Q\\",\\n \\"cabin\\": \\"V\\",\\n \\"cabin_class\\": \\"Y\\",\\n \\"availability\\": \\"7\\",\\n \\"stop_city_list\\": \\"SEL,HKG\\",\\n \\"stop_quantity\\": 0,\\n \\"flight_duration\\": 165\\n }\\n ]\\n }\\n ]\\n },\\n \\"error_data\\": \\"null\\"\\n}","type":"json"}]', 'title' => 'RefundDetail', 'changeSet' => [], ], 'RefundDetailList' => [ 'summary' => 'Queries the details of refund orders.', 'path' => '/airticket/v1/refund/detail-list', 'methods' => ['get'], 'schemes' => ['https', 'http'], 'security' => [ [ 'accessTokenAuth' => [], ], ], 'deprecated' => false, 'systemTags' => [], 'parameters' => [ [ 'name' => 'order_num', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The order number.', 'type' => 'integer', 'format' => 'int64', 'example' => '49884*****950', 'required' => false], ], [ 'name' => 'refund_create_begin_time', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The start time for refund order creation. The value is a UTC timestamp.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1677229002000'], ], [ 'name' => 'refund_create_end_time', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The end time for refund order creation. The value is a UTC timestamp.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1677229005000'], ], [ 'name' => 'page_index', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The page index.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'required' => false], ], [ 'name' => 'page_size', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The page size.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'required' => false], ], [ 'name' => 'x-acs-airticket-access-token', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'The access_token.', 'type' => 'string', 'required' => true, 'example' => 'eyJhbGciOiJSUzI1NiIsImtpZCI6InN1ZXpfa2V5aWQifQ.eyJqdGkiOiJCQldMaWIzN0VxbC0xMjhhR2N5elJ3IiwiaWF0IjoxNjc3MDY2NTAxLCJleHAiOjE2NzcwNzM3MDEsIm5iZiI6MTY3NzA2NjQ0MX0.AF0DxsZK4Edyg0C6ObRQFUo36R1VYrb5IYmak25TmL1OfR5RkIUc3PpqFuQKNLKXf5fOtVQaKjaexzwodVeWZQDKEG_RPt_Ybb99EnEm6vPKs6e3pWFbKiBq71WleLHhVrdFb4YPowRKjc7bG0jyGUxiQ2iXy0RWDj9tIjfI-KEdzNp5oVnX7j4p3H12DwQrRPmd1nz3BciAQNINvDpzqusuIUw8JXyLFCz838Y0NhwB1_bYZyctxRLSzrGZuI5rrWtItgupqMsOlJ3RNy1QrIbQ2g6nPmzl-atOqcQ4Nw0HeDLR8dhM1OsIcFLbKXBUtwXofflhzAQrkDxhwYiXii'], ], [ 'name' => 'x-acs-airticket-language', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'The language. Defaults to the buyer account configuration.', 'type' => 'string', 'required' => false, 'example' => 'en_US'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'PopBaseRes, Object>', 'type' => 'object', 'properties' => [ 'status' => ['title' => '', 'description' => 'The HTTP status code. The value is always 200 for successful requests.', 'type' => 'integer', 'format' => 'int32', 'example' => '200'], 'error_code' => ['title' => '', 'description' => 'The business error code.', 'type' => 'string', 'example' => 'null'], 'error_msg' => ['title' => '', 'description' => 'The error message.', 'type' => 'string', 'example' => 'null'], 'success' => ['title' => '', 'description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'true'], 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '51593418-8C73-5E47-8BA8-3F1D4A00CC0B'], 'data' => [ 'title' => '', 'description' => 'The data returned for a successful request.', 'type' => 'object', 'properties' => [ 'list' => [ 'title' => '', 'description' => 'The data list.', 'type' => 'array', 'items' => [ 'description' => 'The element.', 'type' => 'object', 'properties' => [ 'refund_order_num' => ['title' => '', 'description' => 'The refund order number.', 'type' => 'integer', 'format' => 'int64', 'example' => '49884*****950'], 'order_num' => ['title' => '', 'description' => 'The order number.', 'type' => 'integer', 'format' => 'int64', 'example' => '49884*****2345'], 'refund_order_status' => ['title' => '', 'description' => 'The refund order status. Valid values:'."\n" .'- 0: refund requested.'."\n" .'- 1: refund being processed.'."\n" .'- 2: refund failed.'."\n" .'- 3: refund succeeded.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'transaction_no' => ['title' => '', 'description' => 'The transaction number.', 'type' => 'string', 'example' => '49884**tde-95za'], 'utc_create_time' => ['title' => '', 'description' => 'The creation time. The value is a UTC timestamp.', 'type' => 'integer', 'format' => 'int64', 'example' => '1677229002000'], 'is_multi_refund' => ['title' => '', 'description' => 'Indicates whether this is a supplementary refund order.', 'type' => 'boolean', 'example' => 'true'], 'related_refund_order_num' => ['title' => '', 'description' => 'The refund order number of the original order associated with this supplementary refund order. This field is returned only for supplementary refund orders and indicates the refund order ID of the associated original order.', 'type' => 'string', 'example' => '49884*****2387'], ], 'title' => '', 'example' => '', ], 'example' => '', ], 'pagination' => [ 'title' => '', 'description' => 'The pagination information.', 'type' => 'object', 'properties' => [ 'total_count' => ['title' => '', 'description' => 'The total number of records.', 'type' => 'integer', 'format' => 'int32', 'example' => '5'], 'total_page' => ['title' => '', 'description' => 'The total number of pages.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'current_page' => ['title' => '', 'description' => 'The current page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'page_size' => ['title' => '', 'description' => 'The number of records per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], ], 'example' => '', ], ], 'example' => '', ], 'error_data' => ['title' => '', 'description' => 'The data returned with the error.', 'type' => 'any', 'example' => 'null'], ], 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"status\\": 200,\\n \\"error_code\\": \\"null\\",\\n \\"error_msg\\": \\"null\\",\\n \\"success\\": true,\\n \\"RequestId\\": \\"51593418-8C73-5E47-8BA8-3F1D4A00CC0B\\",\\n \\"data\\": {\\n \\"list\\": [\\n {\\n \\"refund_order_num\\": 0,\\n \\"order_num\\": 0,\\n \\"refund_order_status\\": 1,\\n \\"transaction_no\\": \\"49884**tde-95za\\",\\n \\"utc_create_time\\": 1677229002000,\\n \\"is_multi_refund\\": true,\\n \\"related_refund_order_num\\": \\"49884*****2387\\"\\n }\\n ],\\n \\"pagination\\": {\\n \\"total_count\\": 5,\\n \\"total_page\\": 1,\\n \\"current_page\\": 1,\\n \\"page_size\\": 10\\n }\\n },\\n \\"error_data\\": \\"null\\"\\n}","type":"json"}]', 'title' => 'RefundDetailList', 'changeSet' => [], ], 'Search' => [ 'summary' => 'Searches for flight quotes and returns the lowest price across multiple flights. Note that the response of this operation does not include refund and change rules, free baggage allowance, or baggage through-check rules.', 'path' => '/airticket/v1/trade/action-search', 'methods' => ['post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'accessTokenAuth' => [], ], ], 'deprecated' => false, 'systemTags' => ['operationType' => 'none'], 'parameters' => [ [ 'name' => 'cabin_class', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The cabin class. Valid values: ALL_CABIN: all cabin classes. Y: economy class. FC: first class and business class. S: premium economy class. YS: economy class and premium economy class. YSC: economy class, premium economy class, and business class.', 'type' => 'string', 'example' => 'ALL_CABIN', 'required' => false], ], [ 'name' => 'air_legs', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'The journey array.', 'type' => 'array', 'items' => [ 'description' => 'The journey.', 'type' => 'object', 'properties' => [ 'departure_city' => ['title' => '', 'description' => 'The three-letter code of the departure city.', 'type' => 'string', 'required' => true, 'example' => 'SHA'], 'arrival_city' => ['title' => '', 'description' => 'The three-letter code of the arrival city.', 'type' => 'string', 'required' => true, 'example' => 'MFM'], 'departure_airport_list' => [ 'title' => '', 'description' => 'The list of three-letter codes of departure airports.', 'type' => 'array', 'items' => ['description' => 'The three-letter code of the departure airport.', 'type' => 'string', 'required' => false, 'example' => 'PVG', 'title' => ''], 'required' => false, 'example' => 'PVG', ], 'arrival_airport_list' => [ 'title' => '', 'description' => 'The list of three-letter codes of arrival airports.', 'type' => 'array', 'items' => ['description' => 'The three-letter code of the arrival airport.', 'type' => 'string', 'required' => false, 'example' => 'MFM', 'title' => ''], 'required' => false, 'example' => 'MFM', ], 'departure_date' => ['title' => '', 'description' => 'The departure date (for example, yyyyMMdd).', 'type' => 'string', 'required' => true, 'example' => '20230310'], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => true, 'example' => '', ], ], [ 'name' => 'adults', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The number of adult passengers. Valid values: 1 to 9.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'required' => false], ], [ 'name' => 'children', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The number of child passengers. Valid values: 0 to 9.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'required' => false], ], [ 'name' => 'infants', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The number of infant passengers. Valid values: 0 to 9.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'required' => false], ], [ 'name' => 'search_control_options', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'The search control options. This parameter is optional.', 'type' => 'object', 'properties' => [ 'airline_prefer_list' => [ 'title' => '', 'description' => 'The list of preferred airlines.', 'type' => 'array', 'items' => ['type' => 'string', 'example' => 'FD', 'description' => '', 'required' => false, 'title' => ''], 'required' => false, 'example' => 'FD', ], 'airline_excluded_list' => [ 'title' => '', 'description' => 'The list of excluded airlines.', 'type' => 'array', 'items' => ['type' => 'string', 'example' => 'AK', 'description' => '', 'required' => false, 'title' => ''], 'required' => false, 'example' => '7C', ], 'service_quality' => ['title' => '', 'description' => 'The service quality identifier.', 'type' => 'string', 'example' => 'A1', 'required' => false], ], 'required' => false, 'example' => '', ], ], [ 'name' => 'x-acs-airticket-access-token', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'The access token.', 'type' => 'string', 'required' => true, 'example' => 'eyJhbGciOiJSUzI1NiIsImtpZCI6InN1ZXpfa2V5aWQifQ.eyJqdGkiOiJCQldMaWIzN0VxbC0xMjhhR2N5elJ3IiwiaWF0IjoxNjc3MDY2NTAxLCJleHAiOjE2NzcwNzM3MDEsIm5iZiI6MTY3NzA2NjQ0MX0.AF0DxsZK4Edyg0C6ObRQFUo36R1VYrb5IYmak25TmL1OfR5RkIUc3PpqFuQKNLKXf5fOtVQaKjaexzwodVeWZQDKEG_RPt_Ybb99EnEm6vPKs6e3pWFbKiBq71WleLHhVrdFb4YPowRKjc7bG0jyGUxiQ2iXy0RWDj9tIjfI-KEdzNp5oVnX7j4p3H12DwQrRPmd1nz3BciAQNINvDpzqusuIUw8JXyLFCz838Y0NhwB1_bYZyctxRLSzrGZuI5rrWtItgupqMsOlJ3RNy1QrIbQ2g6nPmzl-atOqcQ4Nw0HeDLR8dhM1OsIcFLbKXBUtwXofflhzAQrkDxhwYiXii'], ], [ 'name' => 'x-acs-airticket-language', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'The language. The default value is the language configured for the buyer account.', 'type' => 'string', 'required' => false, 'example' => 'en_US'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'PopBaseRes', 'type' => 'object', 'properties' => [ 'status' => ['title' => '', 'description' => 'The HTTP status code. The value is always 200 for successful HTTP requests.', 'type' => 'integer', 'format' => 'int32', 'example' => '200'], 'error_code' => ['title' => '', 'description' => 'The business error code.', 'type' => 'string', 'example' => 'null'], 'error_msg' => ['title' => '', 'description' => 'The error message.', 'type' => 'string', 'example' => 'null'], 'success' => ['title' => '', 'description' => 'Indicates whether the request is successful.', 'type' => 'boolean', 'example' => 'true'], 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '2236993B-7BE7-5F92-B179-21FF08570165'], 'data' => [ 'title' => '', 'description' => 'The data returned for a successful request.', 'type' => 'object', 'properties' => [ 'solution_list' => [ 'title' => '', 'description' => 'The search quote results.', 'type' => 'array', 'items' => [ 'description' => 'solution', 'type' => 'object', 'properties' => [ 'solution_id' => ['title' => '', 'description' => 'solution_id', 'type' => 'string', 'example' => 'eJwz8DeySEo0NjQ01TU3TU7TNTFINNO1SE5O0jVKM0hKNjEwTElLNYwz0A32cNT1dfPVNTIwMjYwNjRQ8/A3NLI01Q0Ic0cRBwBVFxJJ'], 'adult_price' => ['title' => '', 'description' => 'The unit price for an adult.', 'type' => 'number', 'format' => 'double', 'example' => '600'], 'adult_tax' => ['title' => '', 'description' => 'The tax for an adult.', 'type' => 'number', 'format' => 'double', 'example' => '11'], 'child_price' => ['title' => '', 'description' => 'The unit price for a child.', 'type' => 'number', 'format' => 'double', 'example' => '500'], 'child_tax' => ['title' => '', 'description' => 'The tax for a child.', 'type' => 'number', 'format' => 'double', 'example' => '10'], 'infant_price' => ['title' => '', 'description' => 'The unit price for an infant.', 'type' => 'number', 'format' => 'double', 'example' => '400'], 'infant_tax' => ['title' => '', 'description' => 'The tax for an infant.', 'type' => 'number', 'format' => 'double', 'example' => '9'], 'refund_ticket_coupon_description' => ['title' => '', 'type' => 'string', 'example' => 'description', 'description' => ''], 'product_type_description' => ['title' => '', 'type' => 'string', 'example' => 'description', 'description' => ''], 'journey_list' => [ 'title' => '', 'description' => 'The journey.', 'type' => 'array', 'items' => [ 'description' => 'journey', 'type' => 'object', 'properties' => [ 'transfer_count' => ['title' => '', 'description' => 'The number of transfers.', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'segment_list' => [ 'title' => '', 'description' => 'The segment information.', 'type' => 'array', 'items' => [ 'description' => 'segment', 'type' => 'object', 'properties' => [ 'segment_id' => ['title' => '', 'description' => 'The segment ID. Format: flight number + departure airport + arrival airport + departure date (MMdd).', 'type' => 'string', 'example' => 'HO1295-PVG-MFM-20230310'], 'departure_airport' => ['title' => '', 'description' => 'The three-letter code of the departure airport (uppercase).', 'type' => 'string', 'example' => 'PVG'], 'arrival_airport' => ['title' => '', 'description' => 'The three-letter code of the arrival airport (uppercase).', 'type' => 'string', 'example' => 'MFM'], 'departure_city' => ['title' => '', 'description' => 'The three-letter code of the departure city (uppercase).', 'type' => 'string', 'example' => 'SHA'], 'arrival_city' => ['title' => '', 'description' => 'The three-letter code of the arrival city (uppercase).', 'type' => 'string', 'example' => 'MFM'], 'marketing_flight_no' => ['title' => '', 'description' => 'The marketing flight number (such as KA5809).', 'type' => 'string', 'example' => 'HO1295'], 'marketing_flight_no_int' => ['title' => '', 'description' => 'The numeric marketing flight number (such as 5809).', 'type' => 'integer', 'format' => 'int32', 'example' => '1259'], 'marketing_airline' => ['title' => '', 'description' => 'The marketing airline (such as KA).', 'type' => 'string', 'example' => 'HO'], 'operating_flight_no' => ['title' => '', 'description' => 'The operating flight number (such as CX601).', 'type' => 'string', 'example' => 'HO1295'], 'operating_airline' => ['title' => '', 'description' => 'The operating airline (such as CX).', 'type' => 'string', 'example' => 'HO'], 'departure_time' => ['title' => '', 'description' => 'The departure date and time in string format (yyyy-MM-dd HH:mm:ss).', 'type' => 'string', 'example' => '2023-03-10 07:55:00'], 'arrival_time' => ['title' => '', 'description' => 'The arrival date and time in string format (yyyy-MM-dd HH:mm:ss).', 'type' => 'string', 'example' => '2023-03-10 10:40:00'], 'code_share' => ['title' => '', 'description' => 'Indicates whether the flight is a codeshare flight.', 'type' => 'boolean', 'example' => 'false'], 'departure_terminal' => ['title' => '', 'description' => 'The departure terminal.', 'type' => 'string', 'example' => 'T2'], 'arrival_terminal' => ['title' => '', 'description' => 'The arrival terminal.', 'type' => 'string', 'example' => 'T1'], 'equip_type' => ['title' => '', 'description' => 'The aircraft type.', 'type' => 'string', 'example' => '32Q'], 'cabin' => ['title' => '', 'description' => 'The booking class.', 'type' => 'string', 'example' => 'V'], 'cabin_class' => ['title' => '', 'description' => 'The cabin class.', 'type' => 'string', 'example' => 'Y'], 'availability' => ['title' => '', 'description' => 'The number of remaining seats. Valid values: 1, 2, 3, 4, 5, 6, 7, 8, 9, and A. A indicates that more than 9 seats are available.', 'type' => 'string', 'example' => '7'], 'stop_city_list' => ['title' => '', 'description' => 'The list of stopover cities. This parameter has a value when stopQuantity is greater than 0. Multiple values are separated by commas.', 'type' => 'string', 'example' => 'MFM,PVG'], 'stop_quantity' => ['title' => '', 'description' => 'The number of stopover cities.', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'flight_duration' => ['title' => '', 'description' => 'The flight duration. Unit: minutes.', 'type' => 'integer', 'format' => 'int32', 'example' => '165'], ], 'title' => '', 'example' => '', ], 'example' => '', ], ], 'title' => '', 'example' => '', ], 'example' => '', ], 'segment_baggage_mapping_list' => [ 'title' => '', 'description' => 'The free baggage rules.', 'type' => 'array', 'items' => [ 'description' => 'The element.', 'type' => 'object', 'properties' => [ 'segment_id_list' => [ 'title' => '', 'description' => 'The list of segment IDs. These segments share the same free baggage rule.', 'type' => 'array', 'items' => ['description' => 'segment_id', 'type' => 'string', 'example' => 'HO1295-PVG-MFM-20230310', 'title' => ''], 'example' => '', ], 'passenger_baggage_allowance_mapping' => [ 'title' => '', 'description' => 'The mapping between passenger types and free baggage allowances.', 'type' => 'object', 'additionalProperties' => [ 'type' => 'object', 'properties' => [ 'baggage_amount' => ['title' => '', 'description' => '托运行李件数', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'baggage_weight' => ['title' => '', 'description' => '托运行李重量', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'baggage_weight_unit' => ['title' => '', 'description' => '托运行李重量单位KG', 'type' => 'string', 'example' => 'KG'], 'is_all_weight' => ['title' => '', 'description' => '是否所有托运行李重量', 'type' => 'boolean', 'example' => 'true'], 'carry_on_amount' => ['title' => '', 'description' => '手提行李件数', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'carry_on_weight' => ['title' => '', 'description' => '手提行李重量', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'carry_on_weight_unit' => ['title' => '', 'description' => '手提行李重量单位KG', 'type' => 'string', 'example' => 'KG'], 'is_all_carry_on_weight' => ['title' => '', 'description' => '是否所有手提行李重量', 'type' => 'boolean', 'example' => 'true'], ], 'description' => '免费行李额', 'title' => '', 'example' => '', ], 'example' => '', ], ], 'title' => '', 'example' => '', ], 'example' => '', ], 'segment_refund_change_rule_mapping_list' => [ 'title' => '', 'description' => 'The refund and change rules.', 'type' => 'array', 'items' => [ 'description' => 'The element.', 'type' => 'object', 'properties' => [ 'segment_id_list' => [ 'title' => '', 'description' => 'The list of segment IDs. These segments share the same refund and change rule.', 'type' => 'array', 'items' => ['description' => 'segment_id', 'type' => 'string', 'example' => 'HO1295-PVG-MFM-20230310', 'title' => ''], 'example' => '', ], 'refund_change_rule_map' => [ 'title' => '', 'description' => 'The mapping between passenger types and refund and change rules.', 'type' => 'object', 'additionalProperties' => [ 'type' => 'object', 'properties' => [ 'refund_rule_all_unused_list' => [ 'title' => '', 'description' => '全程未使用退票规则', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'type' => ['title' => '', 'description' => '该退票规则适用航程使用类型 0:全程未使用; 1:部分未使用', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'time_unit' => ['title' => '', 'description' => '时间单位:day/hour', 'type' => 'string', 'example' => 'hour'], 'rule_start_time' => ['title' => '', 'description' => '该退票规则适用于的退票时间区间开始时间,单位(天/小时)', 'type' => 'integer', 'format' => 'int32', 'example' => '36'], 'rule_end_time' => ['title' => '', 'description' => '该退票规则适用于的退票时间区间结束时间,单位(天/小时)', 'type' => 'integer', 'format' => 'int32', 'example' => '12'], 'can_refund' => ['title' => '', 'description' => '起飞前X-Y小时(天) 可否退票', 'type' => 'boolean', 'example' => 'true'], 'refund_fee' => ['title' => '', 'description' => '起飞前X-Y小时(天) 退票手续费', 'type' => 'number', 'format' => 'double', 'example' => '100'], 'can_return_all_tax' => ['title' => '', 'description' => '起飞前X-Y小时(天) 是否全额退税', 'type' => 'boolean', 'example' => 'true'], 'return_part_tax_fee' => ['title' => '', 'description' => '起飞前X-Y小时(天) 可部分退税金额', 'type' => 'number', 'format' => 'double', 'example' => '100'], ], 'description' => '元素', 'title' => '', 'example' => '', ], 'example' => '', ], 'refund_rule_part_unused_list' => [ 'title' => '', 'description' => '部分未使用退票规则', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'type' => ['title' => '', 'description' => '该退票规则适用航程使用类型 0:全程未使用; 1:部分未使用', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'time_unit' => ['title' => '', 'description' => '时间单位:day/hour', 'type' => 'string', 'example' => 'hour'], 'rule_start_time' => ['title' => '', 'description' => '该退票规则适用于的退票时间区间开始时间,单位(天/小时)', 'type' => 'integer', 'format' => 'int32', 'example' => '36'], 'rule_end_time' => ['title' => '', 'description' => '该退票规则适用于的退票时间区间结束时间,单位(天/小时)', 'type' => 'integer', 'format' => 'int32', 'example' => '12'], 'can_refund' => ['title' => '', 'description' => '起飞前X-Y小时(天) 可否退票', 'type' => 'boolean', 'example' => 'true'], 'refund_fee' => ['title' => '', 'description' => '起飞前X-Y小时(天) 退票手续费', 'type' => 'number', 'format' => 'double', 'example' => '200'], 'can_return_all_tax' => ['title' => '', 'description' => '起飞前X-Y小时(天) 是否全额退税', 'type' => 'boolean', 'example' => 'true'], 'return_part_tax_fee' => ['title' => '', 'description' => '起飞前X-Y小时(天) 可部分退税金额', 'type' => 'number', 'format' => 'double', 'example' => '20'], ], 'description' => '元素', 'title' => '', 'example' => '', ], 'example' => '', ], 'change_rule_in_unused_list' => [ 'title' => '', 'description' => '回程未使用改签规则', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'type' => ['title' => '', 'description' => '该改签规则适用航程使用类型 2:去程未使用; 3:回程未使用', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], 'time_unit' => ['title' => '', 'description' => '时间单位:day/hour', 'type' => 'string', 'example' => 'hour'], 'rule_start_time' => ['title' => '', 'description' => '该退票规则适用于的退票时间区间开始时间,单位(天/小时)', 'type' => 'integer', 'format' => 'int32', 'example' => '36'], 'rule_end_time' => ['title' => '', 'description' => '该退票规则适用于的退票时间区间结束时间,单位(天/小时)', 'type' => 'integer', 'format' => 'int32', 'example' => '12'], 'can_change' => ['title' => '', 'description' => '起飞前X-Y小时(天) 可否可以改签', 'type' => 'boolean', 'example' => 'true'], 'change_fee' => ['title' => '', 'description' => '起飞前X-Y小时(天) 改签费', 'type' => 'number', 'format' => 'double', 'example' => '200'], ], 'description' => '元素', 'title' => '', 'example' => '', ], 'example' => '', ], 'change_rule_out_unused_list' => [ 'title' => '', 'description' => '去程未使用改签规则', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'type' => ['title' => '', 'description' => '该改签规则适用航程使用类型 2:去程未使用; 3:回程未使用', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], 'time_unit' => ['title' => '', 'description' => '时间单位:day/hour', 'type' => 'string', 'example' => 'hour'], 'rule_start_time' => ['title' => '', 'description' => '该退票规则适用于的退票时间区间开始时间,单位(天/小时)', 'type' => 'integer', 'format' => 'int32', 'example' => '36'], 'rule_end_time' => ['title' => '', 'description' => '该退票规则适用于的退票时间区间结束时间,单位(天/小时)', 'type' => 'integer', 'format' => 'int32', 'example' => '12'], 'can_change' => ['title' => '', 'description' => '起飞前X-Y小时(天) 可否可以改签', 'type' => 'boolean', 'example' => 'true'], 'change_fee' => ['title' => '', 'description' => '起飞前X-Y小时(天) 改签费', 'type' => 'number', 'format' => 'double', 'example' => '200'], ], 'description' => '元素', 'title' => '', 'example' => '', ], 'example' => '', ], ], 'description' => '元素', 'title' => '', 'example' => '', ], 'example' => '', ], ], 'title' => '', 'example' => '', ], 'example' => '', ], 'segment_baggage_check_in_info_list' => [ 'title' => '', 'description' => 'The baggage through-check rules.', 'type' => 'array', 'items' => [ 'description' => 'The element.', 'type' => 'object', 'properties' => [ 'segment_id_list' => [ 'title' => '', 'description' => 'The list of segment IDs. These segments share the same baggage through-check rule.', 'type' => 'array', 'items' => ['description' => 'segment_id', 'type' => 'string', 'example' => 'HO1295-PVG-MFM-20230310'."\n", 'title' => ''], 'example' => '', ], 'luggage_direct_info_type' => ['title' => '', 'description' => 'The baggage through-check rule type. Valid values: 1: baggage is checked through between segments. 2: baggage must be rechecked between segments. 3: baggage is checked through at stopover cities. 4: baggage must be rechecked at stopover cities.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], ], 'title' => '', 'example' => '', ], 'example' => '', ], 'solution_attribute' => [ 'title' => '', 'description' => 'The quote attributes.', 'type' => 'object', 'properties' => [ 'supply_source_type' => ['title' => '', 'description' => 'The supply source type. Valid values: 1: self-operated. 2: agent. 3: flagship store.', 'type' => 'string', 'deprecated' => false, 'example' => '1'], ], 'example' => '', ], ], 'title' => '', 'example' => '', ], 'example' => '', ], ], 'example' => '', ], 'error_data' => ['title' => '', 'description' => 'The data returned with the error.', 'type' => 'any', 'example' => 'null'], ], 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"status\\": 200,\\n \\"error_code\\": \\"null\\",\\n \\"error_msg\\": \\"null\\",\\n \\"success\\": true,\\n \\"RequestId\\": \\"2236993B-7BE7-5F92-B179-21FF08570165\\",\\n \\"data\\": {\\n \\"solution_list\\": [\\n {\\n \\"solution_id\\": \\"eJwz8DeySEo0NjQ01TU3TU7TNTFINNO1SE5O0jVKM0hKNjEwTElLNYwz0A32cNT1dfPVNTIwMjYwNjRQ8/A3NLI01Q0Ic0cRBwBVFxJJ\\",\\n \\"adult_price\\": 600,\\n \\"adult_tax\\": 11,\\n \\"child_price\\": 500,\\n \\"child_tax\\": 10,\\n \\"infant_price\\": 400,\\n \\"infant_tax\\": 9,\\n \\"refund_ticket_coupon_description\\": \\"description\\",\\n \\"product_type_description\\": \\"description\\",\\n \\"journey_list\\": [\\n {\\n \\"transfer_count\\": 0,\\n \\"segment_list\\": [\\n {\\n \\"segment_id\\": \\"HO1295-PVG-MFM-20230310\\",\\n \\"departure_airport\\": \\"PVG\\",\\n \\"arrival_airport\\": \\"MFM\\",\\n \\"departure_city\\": \\"SHA\\",\\n \\"arrival_city\\": \\"MFM\\",\\n \\"marketing_flight_no\\": \\"HO1295\\",\\n \\"marketing_flight_no_int\\": 1259,\\n \\"marketing_airline\\": \\"HO\\",\\n \\"operating_flight_no\\": \\"HO1295\\",\\n \\"operating_airline\\": \\"HO\\",\\n \\"departure_time\\": \\"2023-03-10 07:55:00\\",\\n \\"arrival_time\\": \\"2023-03-10 10:40:00\\",\\n \\"code_share\\": false,\\n \\"departure_terminal\\": \\"T2\\",\\n \\"arrival_terminal\\": \\"T1\\",\\n \\"equip_type\\": \\"32Q\\",\\n \\"cabin\\": \\"V\\",\\n \\"cabin_class\\": \\"Y\\",\\n \\"availability\\": \\"7\\",\\n \\"stop_city_list\\": \\"MFM,PVG\\",\\n \\"stop_quantity\\": 0,\\n \\"flight_duration\\": 165\\n }\\n ]\\n }\\n ],\\n \\"segment_baggage_mapping_list\\": [\\n {\\n \\"segment_id_list\\": [\\n \\"HO1295-PVG-MFM-20230310\\"\\n ],\\n \\"passenger_baggage_allowance_mapping\\": {\\n \\"key\\": {\\n \\"baggage_amount\\": 1,\\n \\"baggage_weight\\": 1,\\n \\"baggage_weight_unit\\": \\"KG\\",\\n \\"is_all_weight\\": true,\\n \\"carry_on_amount\\": 1,\\n \\"carry_on_weight\\": 1,\\n \\"carry_on_weight_unit\\": \\"KG\\",\\n \\"is_all_carry_on_weight\\": true\\n }\\n }\\n }\\n ],\\n \\"segment_refund_change_rule_mapping_list\\": [\\n {\\n \\"segment_id_list\\": [\\n \\"HO1295-PVG-MFM-20230310\\"\\n ],\\n \\"refund_change_rule_map\\": {\\n \\"key\\": {\\n \\"refund_rule_all_unused_list\\": [\\n {\\n \\"type\\": 0,\\n \\"time_unit\\": \\"hour\\",\\n \\"rule_start_time\\": 36,\\n \\"rule_end_time\\": 12,\\n \\"can_refund\\": true,\\n \\"refund_fee\\": 100,\\n \\"can_return_all_tax\\": true,\\n \\"return_part_tax_fee\\": 100\\n }\\n ],\\n \\"refund_rule_part_unused_list\\": [\\n {\\n \\"type\\": 0,\\n \\"time_unit\\": \\"hour\\",\\n \\"rule_start_time\\": 36,\\n \\"rule_end_time\\": 12,\\n \\"can_refund\\": true,\\n \\"refund_fee\\": 200,\\n \\"can_return_all_tax\\": true,\\n \\"return_part_tax_fee\\": 20\\n }\\n ],\\n \\"change_rule_in_unused_list\\": [\\n {\\n \\"type\\": 2,\\n \\"time_unit\\": \\"hour\\",\\n \\"rule_start_time\\": 36,\\n \\"rule_end_time\\": 12,\\n \\"can_change\\": true,\\n \\"change_fee\\": 200\\n }\\n ],\\n \\"change_rule_out_unused_list\\": [\\n {\\n \\"type\\": 2,\\n \\"time_unit\\": \\"hour\\",\\n \\"rule_start_time\\": 36,\\n \\"rule_end_time\\": 12,\\n \\"can_change\\": true,\\n \\"change_fee\\": 200\\n }\\n ]\\n }\\n }\\n }\\n ],\\n \\"segment_baggage_check_in_info_list\\": [\\n {\\n \\"segment_id_list\\": [\\n \\"HO1295-PVG-MFM-20230310\\\\n\\"\\n ],\\n \\"luggage_direct_info_type\\": 1\\n }\\n ],\\n \\"solution_attribute\\": {\\n \\"supply_source_type\\": \\"1\\"\\n }\\n }\\n ]\\n },\\n \\"error_data\\": \\"null\\"\\n}","type":"json"}]', 'title' => 'Search', 'changeSet' => [ ['createdAt' => '2026-04-27T05:48:52.000Z', 'description' => 'OpenAPI offline'], ['createdAt' => '2026-04-22T03:46:26.000Z', 'description' => 'OpenAPI offline'], ['createdAt' => '2026-04-22T03:45:57.000Z', 'description' => 'OpenAPI offline'], ['createdAt' => '2025-10-24T06:03:24.000Z', 'description' => 'OpenAPI offline'], ['createdAt' => '2025-10-24T05:51:47.000Z', 'description' => 'OpenAPI offline'], ['createdAt' => '2025-10-23T09:38:47.000Z', 'description' => 'OpenAPI offline'], ['createdAt' => '2025-10-15T03:23:12.000Z', 'description' => 'OpenAPI offline'], ['createdAt' => '2025-10-15T03:22:26.000Z', 'description' => 'OpenAPI offline'], ['createdAt' => '2025-06-16T13:47:34.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2025-06-16T13:45:19.000Z', 'description' => 'OpenAPI offline'], ['createdAt' => '2025-06-16T13:20:00.000Z', 'description' => 'OpenAPI offline'], ['createdAt' => '2025-06-16T06:40:49.000Z', 'description' => 'OpenAPI offline'], ['createdAt' => '2025-06-16T04:09:49.000Z', 'description' => 'OpenAPI offline'], ['createdAt' => '2025-06-16T04:09:45.000Z', 'description' => 'OpenAPI offline'], ['createdAt' => '2025-06-16T04:09:44.000Z', 'description' => 'OpenAPI offline'], ['createdAt' => '2025-06-16T03:47:56.000Z', 'description' => 'OpenAPI offline'], ['createdAt' => '2025-06-16T01:54:11.000Z', 'description' => 'OpenAPI offline'], ['createdAt' => '2025-06-13T06:12:56.000Z', 'description' => 'OpenAPI offline'], ], ], 'StandardSearch' => [ 'summary' => 'Search and quote prices, currently providing the lowest price across multiple flights. Note that this API response includes refund/change rules, free baggage allowance, and baggage through-check rules.', 'path' => '/airticket/v1/trade/action-standardsearch', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'accessTokenAuth' => [], ], ], 'deprecated' => false, 'parameters' => [ [ 'name' => 'cabin_class', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'Defaults to ALL_CABIN if not specified. Cabin class ALL_CABIN: All cabin classes; Y: Economy class; FC: First class and Business class; S: Premium Economy class; YS: Economy class and Premium Economy class; YSC: Economy class, Premium Economy class, and Business class;', 'type' => 'string', 'example' => 'ALL_CABIN', 'required' => false], ], [ 'name' => 'air_legs', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'Journey array. At least one of departure_city and departure_airport_list must be non-empty; when departure_airport_list has values, they must belong to the same city. At least one of arrival_city and arrival_airport_list must be non-empty; when arrival_airport_list has values, they must belong to the same city.', 'type' => 'array', 'items' => [ 'description' => 'Journey array', 'type' => 'object', 'properties' => [ 'departure_city' => ['title' => '', 'description' => 'Departure city three-letter code', 'type' => 'string', 'example' => 'SHA', 'required' => false], 'arrival_city' => ['title' => '', 'description' => 'Arrival city three-letter code', 'type' => 'string', 'example' => 'MFM', 'required' => false], 'departure_airport_list' => [ 'title' => '', 'description' => 'Departure airport three-letter code', 'type' => 'array', 'items' => ['description' => 'Departure airport three-letter code', 'type' => 'string', 'required' => false, 'example' => 'PVG', 'title' => ''], 'required' => false, 'example' => 'PVG', ], 'arrival_airport_list' => [ 'title' => '', 'description' => 'Arrival airport three-letter code', 'type' => 'array', 'items' => ['description' => 'Arrival airport three-letter code', 'type' => 'string', 'required' => false, 'example' => 'MFM', 'title' => ''], 'required' => false, 'example' => 'MFM', ], 'departure_date' => ['title' => '', 'description' => 'Departure date (e.g.: yyyyMMdd)', 'type' => 'string', 'required' => true, 'example' => '20230320'], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => true, 'example' => '', ], ], [ 'name' => 'adults', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'Number of adult passengers, range 1-9', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'required' => false], ], [ 'name' => 'children', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'Number of child passengers, range 0-9', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'required' => false], ], [ 'name' => 'infants', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'Number of infant passengers, range 0-9', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'required' => false], ], [ 'name' => 'search_control_options', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'Search control options, optional', 'type' => 'object', 'properties' => [ 'airline_prefer_list' => [ 'title' => '', 'description' => 'Preferred airlines list', 'type' => 'array', 'items' => ['description' => 'Preferred airlines list', 'type' => 'string', 'required' => false, 'example' => 'FD', 'title' => ''], 'required' => false, 'example' => 'FD', ], 'airline_excluded_list' => [ 'title' => '', 'description' => 'Excluded airlines list', 'type' => 'array', 'items' => ['description' => 'Excluded airlines list', 'type' => 'string', 'required' => false, 'example' => 'AK', 'title' => ''], 'required' => false, 'example' => '7C', ], 'service_quality' => ['title' => '', 'description' => 'Ticketing service quality', 'type' => 'string', 'example' => 'A1', 'required' => false], ], 'required' => false, 'example' => '', ], ], [ 'name' => 'x-acs-airticket-access-token', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'access_token', 'type' => 'string', 'required' => true, 'example' => 'eyJhbGciOiJSUzI1NiIsImtpZCI6InN1ZXpfa2V5aWQifQ.eyJqdGkiOiJCQldMaWIzN0VxbC0xMjhhR2N5elJ3IiwiaWF0IjoxNjc3MDY2NTAxLCJleHAiOjE2NzcwNzM3MDEsIm5iZiI6MTY3NzA2NjQ0MX0.AF0DxsZK4Edyg0C6ObRQFUo36R1VYrb5IYmak25TmL1OfR5RkIUc3PpqFuQKNLKXf5fOtVQaKjaexzwodVeWZQDKEG_RPt_Ybb99EnEm6vPKs6e3pWFbKiBq71WleLHhVrdFb4YPowRKjc7bG0jyGUxiQ2iXy0RWDj9tIjfI-KEdzNp5oVnX7j4p3H12DwQrRPmd1nz3BciAQNINvDpzqusuIUw8JXyLFCz838Y0NhwB1_bYZyctxRLSzrGZuI5rrWtItgupqMsOlJ3RNy1QrIbQ2g6nPmzl-atOqcQ4Nw0HeDLR8dhM1OsIcFLbKXBUtwXofflhzAQrkDxhwYiXii'], ], [ 'name' => 'x-acs-airticket-language', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'Language setting, defaults to buyer account configuration', 'type' => 'string', 'required' => false, 'example' => 'en_US'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'PopBaseRes', 'type' => 'object', 'properties' => [ 'status' => ['title' => '', 'description' => 'When HTTP request is successful, status value is always 200', 'type' => 'integer', 'format' => 'int32', 'example' => '200'], 'error_code' => ['title' => '', 'description' => 'Business error code', 'type' => 'string', 'example' => 'null'], 'error_msg' => ['title' => '', 'description' => 'Error message', 'type' => 'string', 'example' => 'null'], 'success' => ['title' => '', 'description' => 'Whether the request is successful', 'type' => 'boolean', 'example' => 'true'], 'RequestId' => ['title' => '', 'description' => 'Request ID', 'type' => 'string', 'example' => '51593418-8C73-5E47-8BA8-3F1D4A00CC0B'], 'data' => [ 'title' => '', 'description' => 'Data returned on successful processing', 'type' => 'object', 'properties' => [ 'solution_list' => [ 'title' => '', 'description' => 'Search and quote results', 'type' => 'array', 'items' => [ 'description' => 'solution', 'type' => 'object', 'properties' => [ 'solution_id' => ['title' => '', 'description' => 'solution_id', 'type' => 'string', 'example' => 'eJwz8DeySEo0NjQ01TU3TUxxx'], 'adult_price' => ['title' => '', 'description' => 'Adult unit price', 'type' => 'number', 'format' => 'double', 'example' => '300'], 'adult_tax' => ['title' => '', 'description' => 'Adult tax', 'type' => 'number', 'format' => 'double', 'example' => '30'], 'child_price' => ['title' => '', 'description' => 'Child unit price', 'type' => 'number', 'format' => 'double', 'example' => '200'], 'child_tax' => ['title' => '', 'description' => 'Child tax', 'type' => 'number', 'format' => 'double', 'example' => '20'], 'infant_price' => ['title' => '', 'description' => 'Infant unit price', 'type' => 'number', 'format' => 'double', 'example' => '100'], 'infant_tax' => ['title' => '', 'description' => 'Infant tax', 'type' => 'number', 'format' => 'double', 'example' => '10'], 'journey_list' => [ 'title' => '', 'description' => 'Journey', 'type' => 'array', 'items' => [ 'description' => 'journey', 'type' => 'object', 'properties' => [ 'transfer_count' => ['title' => '', 'description' => 'Number of transfers', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'segment_list' => [ 'title' => '', 'description' => 'Segment information', 'type' => 'array', 'items' => [ 'description' => 'segment', 'type' => 'object', 'properties' => [ 'segment_id' => ['title' => '', 'description' => 'Segment ID, format: flight number + departure airport + arrival airport + departure date (MMdd)', 'type' => 'string', 'example' => 'HO1295-PVG-MFM-20230310'], 'departure_airport' => ['title' => '', 'description' => 'Flight departure airport three-letter code (uppercase)', 'type' => 'string', 'example' => 'PVG'], 'arrival_airport' => ['title' => '', 'description' => 'Flight arrival airport three-letter code (uppercase)', 'type' => 'string', 'example' => 'MFM'], 'departure_city' => ['title' => '', 'description' => 'Flight departure city three-letter code (uppercase)', 'type' => 'string', 'example' => 'SHA'], 'arrival_city' => ['title' => '', 'description' => 'Flight arrival city three-letter code (uppercase)', 'type' => 'string', 'example' => 'MFM'], 'marketing_flight_no' => ['title' => '', 'description' => 'Marketing flight number (e.g.: HO1295)', 'type' => 'string', 'example' => 'HO1295'], 'marketing_flight_no_int' => ['title' => '', 'description' => 'Marketing flight number in integer format (e.g.: 1295)', 'type' => 'integer', 'format' => 'int32', 'example' => '1295'], 'marketing_airline' => ['title' => '', 'description' => 'Marketing airline (e.g.: HO)', 'type' => 'string', 'example' => 'HO'], 'operating_flight_no' => ['title' => '', 'description' => 'Operating flight number (e.g.: CX601)', 'type' => 'string', 'example' => 'HO1295'], 'operating_airline' => ['title' => '', 'description' => 'Operating airline (e.g.: CX)', 'type' => 'string', 'example' => 'HO'], 'departure_time' => ['title' => '', 'description' => 'Flight departure date and time, string format (yyyy-MM-dd HH:mm:ss)', 'type' => 'string', 'example' => '2023-03-10 07:55:00'], 'arrival_time' => ['title' => '', 'description' => 'Flight arrival date and time, string format (yyyy-MM-dd HH:mm:ss)', 'type' => 'string', 'example' => '2023-03-10 10:40:00'], 'code_share' => ['title' => '', 'description' => 'Whether it is a codeshare flight', 'type' => 'boolean', 'example' => 'false'], 'departure_terminal' => ['title' => '', 'description' => 'Flight departure terminal', 'type' => 'string', 'example' => 'T2'], 'arrival_terminal' => ['title' => '', 'description' => 'Flight arrival terminal', 'type' => 'string', 'example' => 'T1'], 'equip_type' => ['title' => '', 'description' => 'Aircraft type', 'type' => 'string', 'example' => '32Q'], 'cabin' => ['title' => '', 'description' => 'Cabin', 'type' => 'string', 'example' => 'V'], 'cabin_class' => ['title' => '', 'description' => 'Cabin class', 'type' => 'string', 'example' => 'Y'], 'availability' => ['title' => '', 'description' => 'Remaining seat count. Value range: 1,2,3,4,5,6,7,8,9,A; A indicates more than 9 seats available.', 'type' => 'string', 'example' => '7'], 'stop_city_list' => ['title' => '', 'description' => 'Stopover city list, has values when stopQuantity > 0, multiple values separated by commas', 'type' => 'string', 'example' => 'SEL,HKG'], 'stop_quantity' => ['title' => '', 'description' => 'Number of stopover cities', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'flight_duration' => ['title' => '', 'description' => 'Flight duration, unit: minutes', 'type' => 'integer', 'format' => 'int32', 'example' => '165'], ], 'title' => '', 'example' => '', ], 'example' => '', ], ], 'title' => '', 'example' => '', ], 'example' => '', ], 'segment_baggage_mapping_list' => [ 'title' => '', 'description' => 'Free baggage allowance rules', 'type' => 'array', 'items' => [ 'description' => 'Element', 'type' => 'object', 'properties' => [ 'segment_id_list' => [ 'title' => '', 'description' => 'Segment ID list. These segment IDs share the same free baggage allowance rule', 'type' => 'array', 'items' => ['description' => 'segment_id', 'type' => 'string', 'example' => 'HO1295-PVG-MFM-20230310', 'title' => ''], 'example' => '', ], 'passenger_baggage_allowance_mapping' => [ 'title' => '', 'description' => 'Passenger type to free baggage allowance mapping. Key values: ADT: Adult; CHD: Child; INF: Infant', 'type' => 'object', 'additionalProperties' => [ 'type' => 'object', 'properties' => [ 'baggage_amount' => ['title' => '', 'description' => 'Number of checked baggage pieces', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'baggage_weight' => ['title' => '', 'description' => 'Checked baggage weight', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], 'baggage_weight_unit' => ['title' => '', 'description' => 'Checked baggage weight unit: KG', 'type' => 'string', 'example' => 'KG'], 'is_all_weight' => ['title' => '', 'description' => 'Whether it is the total checked baggage weight', 'type' => 'boolean', 'example' => 'true'], 'carry_on_amount' => ['title' => '', 'description' => 'Number of carry-on baggage pieces', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'carry_on_weight' => ['title' => '', 'description' => 'Carry-on baggage weight', 'type' => 'integer', 'format' => 'int32', 'example' => '5'], 'carry_on_weight_unit' => ['title' => '', 'description' => 'Carry-on baggage weight unit: KG', 'type' => 'string', 'example' => 'KG'], 'is_all_carry_on_weight' => ['title' => '', 'description' => 'Whether it is the total carry-on baggage weight', 'type' => 'boolean', 'example' => 'true'], 'carry_length' => ['title' => '', 'description' => 'Carry-on length (unit: cm)', 'type' => 'integer', 'format' => 'int32', 'example' => '55'], 'carry_width' => ['title' => '', 'description' => 'Carry-on width (unit: cm)', 'type' => 'integer', 'format' => 'int32', 'example' => '40'], 'carry_height' => ['title' => '', 'description' => 'Carry-on height (unit: cm)', 'type' => 'integer', 'format' => 'int32', 'example' => '20'], 'carry_sum_of_length_width_height' => ['title' => '', 'description' => 'Carry-on sum of three dimensions (unit: cm)', 'type' => 'integer', 'format' => 'int32', 'example' => '115'], 'length' => ['title' => '', 'description' => 'Checked baggage length (unit: cm)', 'type' => 'integer', 'format' => 'int32', 'example' => '60'], 'width' => ['title' => '', 'description' => 'Checked baggage width (unit: cm)', 'type' => 'integer', 'format' => 'int32', 'example' => '40'], 'height' => ['title' => '', 'description' => 'Checked baggage height (unit: cm)', 'type' => 'integer', 'format' => 'int32', 'example' => '60'], 'sum_of_length_width_height' => ['title' => '', 'description' => 'Checked baggage sum of three dimensions (unit: cm)', 'type' => 'integer', 'format' => 'int32', 'example' => '200'], ], 'description' => 'Passenger type to free baggage allowance mapping', 'title' => '', 'example' => '', ], 'example' => '', ], ], 'title' => '', 'example' => '', ], 'example' => '', ], 'segment_refund_change_rule_mapping_list' => [ 'title' => '', 'description' => 'Refund and change rules', 'type' => 'array', 'items' => [ 'description' => 'Element', 'type' => 'object', 'properties' => [ 'segment_id_list' => [ 'title' => '', 'description' => 'Segment ID list. These segment IDs share the same refund and change rule', 'type' => 'array', 'items' => ['description' => 'segment_id', 'type' => 'string', 'example' => 'HO1295-PVG-MFM-20230310', 'title' => ''], 'example' => '', ], 'refund_change_rule_map' => [ 'title' => '', 'description' => 'Passenger type to refund and change rule mapping. Key values: ADT: Adult; CHD: Child; INF: Infant', 'type' => 'object', 'additionalProperties' => [ 'type' => 'object', 'properties' => [ 'refund_rule_all_unused_list' => [ 'title' => '', 'description' => 'Refund rules for entirely unused tickets', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'type' => ['title' => '', 'description' => 'Usage type applicable to this refund rule. 0: Entirely unused; 1: Partially unused', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'time_unit' => ['title' => '', 'description' => 'Time unit: day/hour', 'type' => 'string', 'example' => 'hour'], 'rule_start_time' => ['title' => '', 'description' => 'Start time of the refund time range applicable to this refund rule, unit (day/hour)', 'type' => 'integer', 'format' => 'int32', 'example' => '36'], 'rule_end_time' => ['title' => '', 'description' => 'End time of the refund time range applicable to this refund rule, unit (day/hour)', 'type' => 'integer', 'format' => 'int32', 'example' => '12'], 'can_refund' => ['title' => '', 'description' => 'Whether refund is allowed X-Y hours (days) before departure', 'type' => 'boolean', 'example' => 'true'], 'refund_fee' => ['title' => '', 'description' => 'Refund fee X-Y hours (days) before departure', 'type' => 'number', 'format' => 'double', 'example' => '200'], 'can_return_all_tax' => ['title' => '', 'description' => 'Whether full tax refund is available X-Y hours (days) before departure', 'type' => 'boolean', 'example' => 'true'], 'return_part_tax_fee' => ['title' => '', 'description' => 'Partial tax refund amount X-Y hours (days) before departure', 'type' => 'number', 'format' => 'double', 'example' => '100'], ], 'description' => '', 'title' => '', 'example' => '', ], 'example' => '', ], 'refund_rule_part_unused_list' => [ 'title' => '', 'description' => 'Refund rules for partially unused tickets', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'type' => ['title' => '', 'description' => 'Usage type applicable to this refund rule. 0: Entirely unused; 1: Partially unused', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'time_unit' => ['title' => '', 'description' => 'Time unit: day/hour', 'type' => 'string', 'example' => 'hour'], 'rule_start_time' => ['title' => '', 'description' => 'Start time of the refund time range applicable to this refund rule, unit (day/hour)', 'type' => 'integer', 'format' => 'int32', 'example' => '36'], 'rule_end_time' => ['title' => '', 'description' => 'End time of the refund time range applicable to this refund rule, unit (day/hour)', 'type' => 'integer', 'format' => 'int32', 'example' => '12'], 'can_refund' => ['title' => '', 'description' => 'Whether refund is allowed X-Y hours (days) before departure', 'type' => 'boolean', 'example' => 'true'], 'refund_fee' => ['title' => '', 'description' => 'Refund fee X-Y hours (days) before departure', 'type' => 'number', 'format' => 'double', 'example' => '200'], 'can_return_all_tax' => ['title' => '', 'description' => 'Whether full tax refund is available X-Y hours (days) before departure', 'type' => 'boolean', 'example' => 'true'], 'return_part_tax_fee' => ['title' => '', 'description' => 'Partial tax refund amount X-Y hours (days) before departure', 'type' => 'number', 'format' => 'double', 'example' => '100'], ], 'description' => '', 'title' => '', 'example' => '', ], 'example' => '', ], 'change_rule_in_unused_list' => [ 'title' => '', 'description' => 'Change rules for unused return trip', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'type' => ['title' => '', 'description' => 'Usage type applicable to this change rule. 2: Outbound unused; 3: Return unused', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], 'time_unit' => ['title' => '', 'description' => 'Time unit: day/hour', 'type' => 'string', 'example' => 'hour'], 'rule_start_time' => ['title' => '', 'description' => 'Start time of the refund time range applicable to this refund rule, unit (day/hour)', 'type' => 'integer', 'format' => 'int32', 'example' => '36'], 'rule_end_time' => ['title' => '', 'description' => 'End time of the refund time range applicable to this refund rule, unit (day/hour)', 'type' => 'integer', 'format' => 'int32', 'example' => '12'], 'can_change' => ['title' => '', 'description' => 'Whether change is allowed X-Y hours (days) before departure', 'type' => 'boolean', 'example' => 'true'], 'change_fee' => ['title' => '', 'description' => 'Change fee X-Y hours (days) before departure', 'type' => 'number', 'format' => 'double', 'example' => '100'], ], 'description' => '', 'title' => '', 'example' => '', ], 'example' => '', ], 'change_rule_out_unused_list' => [ 'title' => '', 'description' => 'Change rules for unused outbound trip', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'type' => ['title' => '', 'description' => 'Usage type applicable to this change rule. 2: Outbound unused; 3: Return unused', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], 'time_unit' => ['title' => '', 'description' => 'Time unit: day/hour', 'type' => 'string', 'example' => 'hour'], 'rule_start_time' => ['title' => '', 'description' => 'Start time of the refund time range applicable to this refund rule, unit (day/hour)', 'type' => 'integer', 'format' => 'int32', 'example' => '36'], 'rule_end_time' => ['title' => '', 'description' => 'End time of the refund time range applicable to this refund rule, unit (day/hour)', 'type' => 'integer', 'format' => 'int32', 'example' => '12'], 'can_change' => ['title' => '', 'description' => 'Whether change is allowed X-Y hours (days) before departure', 'type' => 'boolean', 'example' => 'true'], 'change_fee' => ['title' => '', 'description' => 'Change fee X-Y hours (days) before departure', 'type' => 'number', 'format' => 'double', 'example' => '100'], ], 'description' => '', 'title' => '', 'example' => '', ], 'example' => '', ], ], 'description' => 'Passenger type to refund and change rule mapping', 'title' => '', 'example' => '', ], 'example' => '', ], ], 'title' => '', 'example' => '', ], 'example' => '', ], 'segment_baggage_check_in_info_list' => [ 'title' => '', 'description' => 'Baggage through-check rules', 'type' => 'array', 'items' => [ 'description' => 'Element', 'type' => 'object', 'properties' => [ 'segment_id_list' => [ 'title' => '', 'description' => 'Segment ID list. These segment IDs share the same baggage through-check rule', 'type' => 'array', 'items' => ['description' => 'segment_id', 'type' => 'string', 'example' => 'HO1295-PVG-MFM-20230310', 'title' => ''], 'example' => '', ], 'luggage_direct_info_type' => ['title' => '', 'description' => 'Baggage through-check rule type. 1: Baggage direct transfer between segments; 2: Baggage re-check between segments; 3: Baggage direct transfer at stopover city; 4: Baggage re-check at stopover city', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], ], 'title' => '', 'example' => '', ], 'example' => '', ], 'solution_attribute' => [ 'title' => '', 'description' => 'Quote attributes', 'type' => 'object', 'properties' => [ 'supply_source_type' => ['title' => '', 'description' => 'Supply source type. 1: Self-operated; 2: Agent; 3: Flagship store', 'type' => 'string', 'example' => '1'], 'issue_time_info' => [ 'title' => '', 'description' => 'Ticketing time information', 'type' => 'object', 'properties' => [ 'issue_time_limit' => ['title' => '', 'description' => 'Estimated ticketing duration, unit: minutes', 'type' => 'integer', 'format' => 'int32', 'example' => '60'], 'issue_ticket_type' => ['title' => '', 'description' => 'Ticketing type. 1: After payment; 2: Before departure; -1: Unknown', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], ], 'example' => '', ], ], 'example' => '', ], ], 'title' => '', 'example' => '', ], 'example' => '', ], ], 'example' => '', ], 'error_data' => ['title' => '', 'description' => 'Data carried with error handling', 'type' => 'any', 'example' => 'null'], ], 'example' => '', ], ], ], 'title' => 'StandardSearch', 'changeSet' => [], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"status\\": 200,\\n \\"error_code\\": \\"null\\",\\n \\"error_msg\\": \\"null\\",\\n \\"success\\": true,\\n \\"RequestId\\": \\"51593418-8C73-5E47-8BA8-3F1D4A00CC0B\\",\\n \\"data\\": {\\n \\"solution_list\\": [\\n {\\n \\"solution_id\\": \\"eJwz8DeySEo0NjQ01TU3TUxxx\\",\\n \\"adult_price\\": 300,\\n \\"adult_tax\\": 30,\\n \\"child_price\\": 200,\\n \\"child_tax\\": 20,\\n \\"infant_price\\": 100,\\n \\"infant_tax\\": 10,\\n \\"journey_list\\": [\\n {\\n \\"transfer_count\\": 0,\\n \\"segment_list\\": [\\n {\\n \\"segment_id\\": \\"HO1295-PVG-MFM-20230310\\",\\n \\"departure_airport\\": \\"PVG\\",\\n \\"arrival_airport\\": \\"MFM\\",\\n \\"departure_city\\": \\"SHA\\",\\n \\"arrival_city\\": \\"MFM\\",\\n \\"marketing_flight_no\\": \\"HO1295\\",\\n \\"marketing_flight_no_int\\": 1295,\\n \\"marketing_airline\\": \\"HO\\",\\n \\"operating_flight_no\\": \\"HO1295\\",\\n \\"operating_airline\\": \\"HO\\",\\n \\"departure_time\\": \\"2023-03-10 07:55:00\\",\\n \\"arrival_time\\": \\"2023-03-10 10:40:00\\",\\n \\"code_share\\": false,\\n \\"departure_terminal\\": \\"T2\\",\\n \\"arrival_terminal\\": \\"T1\\",\\n \\"equip_type\\": \\"32Q\\",\\n \\"cabin\\": \\"V\\",\\n \\"cabin_class\\": \\"Y\\",\\n \\"availability\\": \\"7\\",\\n \\"stop_city_list\\": \\"SEL,HKG\\",\\n \\"stop_quantity\\": 0,\\n \\"flight_duration\\": 165\\n }\\n ]\\n }\\n ],\\n \\"segment_baggage_mapping_list\\": [\\n {\\n \\"segment_id_list\\": [\\n \\"HO1295-PVG-MFM-20230310\\"\\n ],\\n \\"passenger_baggage_allowance_mapping\\": {\\n \\"key\\": {\\n \\"baggage_amount\\": 1,\\n \\"baggage_weight\\": 10,\\n \\"baggage_weight_unit\\": \\"KG\\",\\n \\"is_all_weight\\": true,\\n \\"carry_on_amount\\": 1,\\n \\"carry_on_weight\\": 5,\\n \\"carry_on_weight_unit\\": \\"KG\\",\\n \\"is_all_carry_on_weight\\": true,\\n \\"carry_length\\": 55,\\n \\"carry_width\\": 40,\\n \\"carry_height\\": 20,\\n \\"carry_sum_of_length_width_height\\": 115,\\n \\"length\\": 60,\\n \\"width\\": 40,\\n \\"height\\": 60,\\n \\"sum_of_length_width_height\\": 200\\n }\\n }\\n }\\n ],\\n \\"segment_refund_change_rule_mapping_list\\": [\\n {\\n \\"segment_id_list\\": [\\n \\"HO1295-PVG-MFM-20230310\\"\\n ],\\n \\"refund_change_rule_map\\": {\\n \\"key\\": {\\n \\"refund_rule_all_unused_list\\": [\\n {\\n \\"type\\": 0,\\n \\"time_unit\\": \\"hour\\",\\n \\"rule_start_time\\": 36,\\n \\"rule_end_time\\": 12,\\n \\"can_refund\\": true,\\n \\"refund_fee\\": 200,\\n \\"can_return_all_tax\\": true,\\n \\"return_part_tax_fee\\": 100\\n }\\n ],\\n \\"refund_rule_part_unused_list\\": [\\n {\\n \\"type\\": 0,\\n \\"time_unit\\": \\"hour\\",\\n \\"rule_start_time\\": 36,\\n \\"rule_end_time\\": 12,\\n \\"can_refund\\": true,\\n \\"refund_fee\\": 200,\\n \\"can_return_all_tax\\": true,\\n \\"return_part_tax_fee\\": 100\\n }\\n ],\\n \\"change_rule_in_unused_list\\": [\\n {\\n \\"type\\": 2,\\n \\"time_unit\\": \\"hour\\",\\n \\"rule_start_time\\": 36,\\n \\"rule_end_time\\": 12,\\n \\"can_change\\": true,\\n \\"change_fee\\": 100\\n }\\n ],\\n \\"change_rule_out_unused_list\\": [\\n {\\n \\"type\\": 2,\\n \\"time_unit\\": \\"hour\\",\\n \\"rule_start_time\\": 36,\\n \\"rule_end_time\\": 12,\\n \\"can_change\\": true,\\n \\"change_fee\\": 100\\n }\\n ]\\n }\\n }\\n }\\n ],\\n \\"segment_baggage_check_in_info_list\\": [\\n {\\n \\"segment_id_list\\": [\\n \\"HO1295-PVG-MFM-20230310\\"\\n ],\\n \\"luggage_direct_info_type\\": 1\\n }\\n ],\\n \\"solution_attribute\\": {\\n \\"supply_source_type\\": \\"1\\",\\n \\"issue_time_info\\": {\\n \\"issue_time_limit\\": 60,\\n \\"issue_ticket_type\\": 1\\n }\\n }\\n }\\n ]\\n },\\n \\"error_data\\": \\"null\\"\\n}","type":"json"}]', ], 'Ticketing' => [ 'summary' => 'Pays for and issues a ticket.', 'path' => '/airticket/v1/trade/action-ticketing', 'methods' => ['post'], 'schemes' => ['https', 'http'], 'security' => [ [ 'accessTokenAuth' => [], ], ], 'deprecated' => false, 'parameters' => [ [ 'name' => 'order_num', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The order number.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '496***2617111'], ], [ 'name' => 'x-acs-airticket-access-token', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'access_token.', 'type' => 'string', 'required' => true, 'example' => 'eyJhbGciOiJSUzI1NiIsImtpZCI6InN1ZXpfa2V5aWQifQ.eyJqdGkiOiJCQldMaWIzN0VxbC0xMjhhR2N5elJ3IiwiaWF0IjoxNjc3MDY2NTAxLCJleHAiOjE2NzcwNzM3MDEsIm5iZiI6MTY3NzA2NjQ0MX0.AF0DxsZK4Edyg0C6ObRQFUo36R1VYrb5IYmak25TmL1OfR5RkIUc3PpqFuQKNLKXf5fOtVQaKjaexzwodVeWZQDKEG_RPt_Ybb99EnEm6vPKs6e3pWFbKiBq71WleLHhVrdFb4YPowRKjc7bG0jyGUxiQ2iXy0RWDj9tIjfI-KEdzNp5oVnX7j4p3H12DwQrRPmd1nz3BciAQNINvDpzqusuIUw8JXyLFCz838Y0NhwB1_bYZyctxRLSzrGZuI5rrWtItgupqMsOlJ3RNy1QrIbQ2g6nPmzl-atOqcQ4Nw0HeDLR8dhM1OsIcFLbKXBUtwXofflhzAQrkDxhwYiXii'], ], [ 'name' => 'x-acs-airticket-language', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'The language. The buyer account configuration is used by default.', 'type' => 'string', 'required' => false, 'example' => 'en_US'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'PopBaseRes', 'type' => 'object', 'properties' => [ 'status' => ['title' => '', 'description' => 'The HTTP status code. The value is always 200 for successful requests.', 'type' => 'integer', 'format' => 'int32', 'example' => '200'], 'error_code' => ['title' => '', 'description' => 'The business error code.', 'type' => 'string', 'example' => 'null'], 'error_msg' => ['title' => '', 'description' => 'The error message.', 'type' => 'string', 'example' => 'null'], 'success' => ['title' => '', 'description' => 'Indicates whether the request is successful.', 'type' => 'boolean', 'example' => 'true'], 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '51593418-8C73-5E47-8BA8-3F1D4A00CC0B'], 'data' => [ 'title' => '', 'description' => 'The data returned for a successful request.', 'type' => 'object', 'properties' => [ 'order_num' => ['title' => '', 'description' => 'The order number.', 'type' => 'integer', 'format' => 'int64', 'example' => '496***2617111'."\n"], 'transaction_no' => ['title' => '', 'description' => 'The transaction number.', 'type' => 'string', 'example' => 'hkduendkd-2023-dj0'], ], 'example' => '', ], 'error_data' => ['title' => '', 'description' => 'The data returned for a failed request.', 'type' => 'any', 'example' => 'null'], ], 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"status\\": 200,\\n \\"error_code\\": \\"null\\",\\n \\"error_msg\\": \\"null\\",\\n \\"success\\": true,\\n \\"RequestId\\": \\"51593418-8C73-5E47-8BA8-3F1D4A00CC0B\\",\\n \\"data\\": {\\n \\"order_num\\": 0,\\n \\"transaction_no\\": \\"hkduendkd-2023-dj0\\"\\n },\\n \\"error_data\\": \\"null\\"\\n}","type":"json"}]', 'title' => 'Ticketing', 'changeSet' => [ ['createdAt' => '2025-09-29T07:26:39.000Z', 'description' => 'OpenAPI offline'], ], ], 'TicketingCheck' => [ 'summary' => 'Performs a pre-ticketing check. This operation is optional.', 'path' => '/airticket/v1/trade/action-ticketing-check', 'methods' => ['post'], 'schemes' => ['https', 'http'], 'security' => [ [ 'accessTokenAuth' => [], ], ], 'deprecated' => false, 'parameters' => [ [ 'name' => 'order_num', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The order number.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '496***2617111'], ], [ 'name' => 'x-acs-airticket-access-token', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'access_token.', 'type' => 'string', 'required' => true, 'example' => 'eyJhbGciOiJSUzI1NiIsImtpZCI6InN1ZXpfa2V5aWQifQ.eyJqdGkiOiJCQldMaWIzN0VxbC0xMjhhR2N5elJ3IiwiaWF0IjoxNjc3MDY2NTAxLCJleHAiOjE2NzcwNzM3MDEsIm5iZiI6MTY3NzA2NjQ0MX0.AF0DxsZK4Edyg0C6ObRQFUo36R1VYrb5IYmak25TmL1OfR5RkIUc3PpqFuQKNLKXf5fOtVQaKjaexzwodVeWZQDKEG_RPt_Ybb99EnEm6vPKs6e3pWFbKiBq71WleLHhVrdFb4YPowRKjc7bG0jyGUxiQ2iXy0RWDj9tIjfI-KEdzNp5oVnX7j4p3H12DwQrRPmd1nz3BciAQNINvDpzqusuIUw8JXyLFCz838Y0NhwB1_bYZyctxRLSzrGZuI5rrWtItgupqMsOlJ3RNy1QrIbQ2g6nPmzl-atOqcQ4Nw0HeDLR8dhM1OsIcFLbKXBUtwXofflhzAQrkDxhwYiXii'], ], [ 'name' => 'x-acs-airticket-language', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'The language. Defaults to the buyer account configuration.', 'type' => 'string', 'required' => false, 'example' => 'en_US'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'PopBaseRes', 'type' => 'object', 'properties' => [ 'status' => ['title' => '', 'description' => 'The HTTP status code. The value is always 200 for successful requests.', 'type' => 'integer', 'format' => 'int32', 'example' => '200'], 'error_code' => ['title' => '', 'description' => 'The business error code.', 'type' => 'string', 'example' => 'null'], 'error_msg' => ['title' => '', 'description' => 'The error message.', 'type' => 'string', 'example' => 'null'], 'success' => ['title' => '', 'description' => 'Indicates whether the request is successful.', 'type' => 'boolean', 'example' => 'true'], 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '51593418-8C73-5E47-8BA8-3F1D4A00CC0B'], 'data' => [ 'title' => '', 'description' => 'The data returned for a successful request.', 'type' => 'object', 'properties' => [ 'order_num' => ['title' => '', 'description' => 'The order number.', 'type' => 'integer', 'format' => 'int64', 'example' => '496***2617111'], ], 'example' => '', ], 'error_data' => ['title' => '', 'description' => 'The data returned for a failed request.', 'type' => 'any', 'example' => 'null'], ], 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"status\\": 200,\\n \\"error_code\\": \\"null\\",\\n \\"error_msg\\": \\"null\\",\\n \\"success\\": true,\\n \\"RequestId\\": \\"51593418-8C73-5E47-8BA8-3F1D4A00CC0B\\",\\n \\"data\\": {\\n \\"order_num\\": 0\\n },\\n \\"error_data\\": \\"null\\"\\n}","type":"json"}]', 'title' => 'TicketingCheck', 'description' => 'Performs a pre-ticketing check. This operation is optional.', 'changeSet' => [], ], 'TransitVisa' => [ 'summary' => 'Queries transit visa requirements for a flight itinerary. You provide flight information, and the API returns whether a transit visa is required for the itinerary. Only transfer or stopover segments are valid input parameters (transfers or stopovers passing through a third country). The supported passenger type defaults to Chinese mainland travelers.', 'path' => '/airticket/v1/flight-data/transit-visa', 'methods' => ['get'], 'schemes' => ['https', 'http'], 'security' => [ [ 'accessTokenAuth' => [], ], ], 'deprecated' => false, 'parameters' => [ [ 'name' => 'flight_segment_param_list', 'in' => 'query', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'The list of flight segments that constitute an itinerary. Maximum size: 2.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'departure_airport' => ['title' => '', 'description' => 'The three-letter IATA code of the departure airport.', 'type' => 'string', 'required' => true, 'example' => 'HGH'], 'arrival_airport' => ['title' => '', 'description' => 'The three-letter IATA code of the arrival airport.', 'type' => 'string', 'required' => true, 'example' => 'SIN'], 'departure_terminal' => ['title' => '', 'description' => 'The departure terminal.', 'type' => 'string', 'example' => 'T1', 'required' => false], 'arrival_terminal' => ['title' => '', 'description' => 'The arrival terminal.', 'type' => 'string', 'example' => 'T1', 'required' => false], 'departure_time' => ['title' => '', 'description' => 'The departure time. A 13-digit UNIX timestamp.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1705285430445'], 'arrival_time' => ['title' => '', 'description' => 'The arrival time. A 13-digit UNIX timestamp.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1705285430445'], 'stop_city_list' => ['title' => '', 'description' => 'The three-letter IATA codes of stopover cities.', 'type' => 'string', 'example' => 'SEL,HKG', 'required' => false], 'marketing_airline' => ['title' => '', 'description' => 'The marketing airline.', 'type' => 'string', 'required' => true, 'example' => 'CZ'], 'operating_airline' => ['title' => '', 'description' => 'The operating airline.', 'type' => 'string', 'example' => 'CZ', 'required' => false], 'ticketing_airline' => ['title' => '', 'description' => 'The ticketing airline.', 'type' => 'string', 'example' => 'CZ', 'required' => false], 'marketing_flight_no' => ['title' => '', 'description' => 'The flight number.', 'type' => 'string', 'required' => true, 'example' => 'CZ616'], 'code_share' => ['title' => '', 'description' => 'Indicates whether the flight is a codeshare flight.', 'type' => 'boolean', 'required' => true, 'example' => 'true', 'default' => 'false'], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'example' => '', ], ], [ 'name' => 'x-acs-airticket-access-token', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'The access token.', 'type' => 'string', 'required' => true, 'example' => 'eyJhbGciOiJSUzI1NiIsImtpZCI6InN1ZXpfa2V5aWQifQ.eyJqdGkiOiJCQldMaWIzN0VxbC0xMjhhR2N5elJ3IiwiaWF0IjoxNjc3MDY2NTAxLCJleHAiOjE2NzcwNzM3MDEsIm5iZiI6MTY3NzA2NjQ0MX0.AF0DxsZK4Edyg0C6ObRQFUo36R1VYrb5IYmak25TmL1OfR5RkIUc3PpqFuQKNLKXf5fOtVQaKjaexzwodVeWZQDKEG_RPt_Ybb99EnEm6vPKs6e3pWFbKiBq71WleLHhVrdFb4YPowRKjc7bG0jyGUxiQ2iXy0RWDj9tIjfI-KEdzNp5oVnX7j4p3H12DwQrRPmd1nz3BciAQNINvDpzqusuIUw8JXyLFCz838Y0NhwB1_bYZyctxRLSzrGZuI5rrWtItgupqMsOlJ3RNy1QrIbQ2g6nPmzl-atOqcQ4Nw0HeDLR8dhM1OsIcFLbKXBUtwXofflhzAQrkDxhwYiXii'], ], [ 'name' => 'x-acs-airticket-language', 'in' => 'header', 'schema' => ['title' => '', 'description' => 'The language. Defaults to the buyer account configuration.', 'type' => 'string', 'required' => false, 'example' => 'en_US'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'PopBaseRes, Object>', 'type' => 'object', 'properties' => [ 'status' => ['title' => '', 'description' => 'The HTTP status code. The value is always 200 for successful HTTP requests.', 'type' => 'integer', 'format' => 'int32', 'example' => '200'], 'error_code' => ['title' => '', 'description' => 'The business error code.', 'type' => 'string', 'example' => 'null'], 'error_msg' => ['title' => '', 'description' => 'The error message.', 'type' => 'string', 'example' => 'null'], 'success' => ['title' => '', 'description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'true'], 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '51593418-8C73-5E47-8BA8-3F1D4A00CC0B'], 'data' => [ 'title' => '', 'description' => 'The data returned for a successful request.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'city_code' => ['title' => '', 'description' => 'The three-letter IATA code of the stopover or transfer city.', 'type' => 'string', 'example' => 'HGH'], 'visa_type' => ['title' => '', 'description' => 'The transit visa type. Valid values:'."\n" .'- 0: no transit visa required.'."\n" .'- 1: transit visa required.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], ], 'description' => '', 'title' => '', 'example' => '', ], 'example' => '', ], 'error_data' => ['title' => '', 'description' => 'The data returned with an error response.', 'type' => 'any', 'example' => 'null'], ], 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"status\\": 200,\\n \\"error_code\\": \\"null\\",\\n \\"error_msg\\": \\"null\\",\\n \\"success\\": true,\\n \\"RequestId\\": \\"51593418-8C73-5E47-8BA8-3F1D4A00CC0B\\",\\n \\"data\\": [\\n {\\n \\"city_code\\": \\"HGH\\",\\n \\"visa_type\\": 1\\n }\\n ],\\n \\"error_data\\": \\"null\\"\\n}","type":"json"}]', 'title' => 'TransitVisa', 'description' => 'Queries transit visa requirements for a flight itinerary. You provide flight information, and the API returns whether a transit visa is required for the itinerary. Only transfer or stopover segments are valid input parameters (transfers or stopovers passing through a third country). The supported passenger type defaults to Chinese mainland travelers.', 'changeSet' => [], ], ], 'endpoints' => [], 'errorCodes' => [], 'changeSet' => [ [ 'apis' => [ ['description' => 'OpenAPI offline', 'api' => 'Search'], ], 'createdAt' => '2026-04-27T05:48:52.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'OpenAPI offline', 'api' => 'Search'], ], 'createdAt' => '2026-04-22T03:46:26.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'OpenAPI offline', 'api' => 'Pricing'], ['description' => 'OpenAPI offline', 'api' => 'OrderDetail'], ['description' => 'OpenAPI offline', 'api' => 'Search'], ], 'createdAt' => '2025-11-18T06:20:03.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'OpenAPI offline', 'api' => 'Pricing'], ['description' => 'OpenAPI offline', 'api' => 'OrderDetail'], ], 'createdAt' => '2025-11-18T06:10:43.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'OpenAPI offline', 'api' => 'Pricing'], ['description' => 'OpenAPI offline', 'api' => 'OrderDetail'], ], 'createdAt' => '2025-11-12T04:01:07.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'OpenAPI offline', 'api' => 'Pricing'], ['description' => 'OpenAPI offline', 'api' => 'OrderDetail'], ], 'createdAt' => '2025-11-12T03:58:52.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'OpenAPI offline', 'api' => 'Pricing'], ['description' => 'OpenAPI offline', 'api' => 'OrderDetail'], ], 'createdAt' => '2025-11-12T03:58:45.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'OpenAPI offline', 'api' => 'Enrich'], ], 'createdAt' => '2025-11-06T09:10:48.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'OpenAPI offline', 'api' => 'Enrich'], ['description' => 'OpenAPI offline', 'api' => 'Enrich'], ], 'createdAt' => '2025-11-06T03:52:32.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'OpenAPI offline', 'api' => 'Enrich'], ], 'createdAt' => '2025-11-04T11:41:35.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'OpenAPI offline', 'api' => 'Enrich'], ['description' => 'OpenAPI offline', 'api' => 'Search'], ['description' => 'OpenAPI offline', 'api' => 'OrderDetail'], ['description' => 'OpenAPI offline', 'api' => 'Pricing'], ['description' => 'OpenAPI offline', 'api' => 'Enrich'], ['description' => 'OpenAPI offline', 'api' => 'Pricing'], ['description' => 'OpenAPI offline', 'api' => 'OrderDetail'], ['description' => 'OpenAPI offline', 'api' => 'Search'], ['description' => 'OpenAPI offline', 'api' => 'Enrich'], ], 'createdAt' => '2025-10-24T05:51:47.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'OpenAPI offline', 'api' => 'Enrich'], ['description' => 'OpenAPI offline', 'api' => 'Search'], ['description' => 'OpenAPI offline', 'api' => 'OrderDetail'], ['description' => 'OpenAPI offline', 'api' => 'Pricing'], ['description' => 'OpenAPI offline', 'api' => 'Enrich'], ['description' => 'OpenAPI offline', 'api' => 'Pricing'], ['description' => 'OpenAPI offline', 'api' => 'OrderDetail'], ['description' => 'OpenAPI offline', 'api' => 'Search'], ['description' => 'OpenAPI offline', 'api' => 'Enrich'], ], 'createdAt' => '2025-10-24T05:51:47.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'OpenAPI offline', 'api' => 'ChangeConfirm'], ['description' => 'OpenAPI offline', 'api' => 'Ticketing'], ['description' => 'OpenAPI offline', 'api' => 'Book'], ['description' => 'OpenAPI offline', 'api' => 'Enrich'], ['description' => 'OpenAPI offline', 'api' => 'Search'], ['description' => 'OpenAPI offline', 'api' => 'Enrich'], ['description' => 'OpenAPI offline', 'api' => 'Search'], ['description' => 'OpenAPI offline', 'api' => 'Enrich'], ['description' => 'OpenAPI offline', 'api' => 'Enrich'], ['description' => 'OpenAPI offline', 'api' => 'Search'], ], 'createdAt' => '2025-09-29T07:26:39.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'OpenAPI offline', 'api' => 'ChangeConfirm'], ['description' => 'OpenAPI offline', 'api' => 'Ticketing'], ['description' => 'OpenAPI offline', 'api' => 'Book'], ['description' => 'OpenAPI offline', 'api' => 'Enrich'], ['description' => 'OpenAPI offline', 'api' => 'Search'], ['description' => 'OpenAPI offline', 'api' => 'Enrich'], ['description' => 'OpenAPI offline', 'api' => 'Search'], ['description' => 'OpenAPI offline', 'api' => 'Enrich'], ['description' => 'OpenAPI offline', 'api' => 'Enrich'], ['description' => 'OpenAPI offline', 'api' => 'Search'], ], 'createdAt' => '2025-09-29T07:26:39.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'OpenAPI offline', 'api' => 'Enrich'], ], 'createdAt' => '2025-07-08T02:11:20.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'OpenAPI offline', 'api' => 'Enrich'], ], 'createdAt' => '2025-07-08T02:10:43.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Response parameters changed', 'api' => 'Enrich'], ['description' => 'Response parameters changed', 'api' => 'Search'], ], 'createdAt' => '2025-06-16T13:47:34.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Response parameters changed', 'api' => 'Enrich'], ['description' => 'Response parameters changed', 'api' => 'Search'], ], 'createdAt' => '2025-06-16T13:47:33.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'OpenAPI offline', 'api' => 'Search'], ['description' => 'OpenAPI offline', 'api' => 'Enrich'], ], 'createdAt' => '2025-06-16T13:45:19.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'OpenAPI offline', 'api' => 'Search'], ['description' => 'OpenAPI offline', 'api' => 'Enrich'], ], 'createdAt' => '2025-06-16T13:45:19.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'OpenAPI offline', 'api' => 'Enrich'], ['description' => 'OpenAPI offline', 'api' => 'Search'], ], 'createdAt' => '2025-06-16T13:20:00.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'OpenAPI offline', 'api' => 'Enrich'], ['description' => 'OpenAPI offline', 'api' => 'Search'], ], 'createdAt' => '2025-06-16T13:20:00.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'OpenAPI offline', 'api' => 'Search'], ['description' => 'OpenAPI offline', 'api' => 'Enrich'], ], 'createdAt' => '2025-06-16T06:40:49.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'OpenAPI offline', 'api' => 'Enrich'], ['description' => 'OpenAPI offline', 'api' => 'Search'], ], 'createdAt' => '2025-06-16T04:09:49.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'OpenAPI offline', 'api' => 'Enrich'], ['description' => 'OpenAPI offline', 'api' => 'Search'], ], 'createdAt' => '2025-06-16T04:09:45.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'OpenAPI offline', 'api' => 'Enrich'], ['description' => 'OpenAPI offline', 'api' => 'Search'], ], 'createdAt' => '2025-06-16T04:09:45.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'OpenAPI offline', 'api' => 'Enrich'], ['description' => 'OpenAPI offline', 'api' => 'Search'], ], 'createdAt' => '2025-06-16T04:09:44.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'OpenAPI offline', 'api' => 'Enrich'], ['description' => 'OpenAPI offline', 'api' => 'Search'], ], 'createdAt' => '2025-06-16T04:09:44.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'OpenAPI offline', 'api' => 'Search'], ['description' => 'OpenAPI offline', 'api' => 'Enrich'], ], 'createdAt' => '2025-06-16T03:47:56.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'OpenAPI offline', 'api' => 'Search'], ['description' => 'OpenAPI offline', 'api' => 'Enrich'], ], 'createdAt' => '2025-06-16T01:54:11.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'OpenAPI offline', 'api' => 'Search'], ], 'createdAt' => '2025-06-13T06:12:56.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'OpenAPI offline', 'api' => 'ChangeApply'], ], 'createdAt' => '2025-05-08T09:47:18.000Z', 'description' => '', ], ], ];