May 2023 Minor Release - Status Alerts Marketing & Codeshare information

With this release, it is now possible to track marketing and codeshare information in Status Alerts.

Today's release adds the following features to status alerts:

  • Identify if the flight update is for an operating flight, or a marketing flight, via the use of a boolean field.
  • Show the carrier code and flight number of the operating flight, if the flight update is for a marketing flight number.
  • Show the carrier codes and flight numbers of related marketing flights, irrespective of whether the flight update is for a marketing flight or an operating flight.

This will allow customers benefits such as being able to tie several flight numbers together for one flight update, if they are related to each other via a codeshare agreement. Here are the new data fields:

  "scheduleInstanceKey" : "c4ad07a29026301d7cd2e4c693d02e15d0401bed4924119c2ed7c02480239bc3",
"isOperating" : false,
  "codeshare" : {
   "operatingFlight" : {
      "scheduleInstanceKey" : "c88ee136be3e3cc46174feedfa56af6ac99e4620b09a6b41d72d1c6abee596f8",
      "flightNumber" : 612,
      "carrierCode" : {
        "iata" : "HX",
        "icao" : "CRK"
      }
    },
    "marketingFlights" : [ {
      "scheduleInstanceKey" : "32ab30167095c4f755763c3f1a730ab0a524b45f69d71c1fb6ffb655fdd3c617",
      "flightNumber" : 7698,
      "carrierCode" : {
        "iata" : "CX",
        "icao" : "CPA"
      }
    }, {
      "scheduleInstanceKey" : "74ecfd1050e3648d33cb2196bb5116a7ba6a879fa062831800a977d74c3c1aa9",
      "flightNumber" : 7200,
      "carrierCode" : {
        "iata" : "JL",
        "icao" : "JAL"
      }
    }, {
      "scheduleInstanceKey" : "88878415398c72bf6f5736c2e52c7cd8d225f3a97ac83005f5ab0991a9079e41",
      "flightNumber" : 4437,
      "carrierCode" : {
        "iata" : "B6",
        "icao" : "JBU"
      }
    }, {
      "scheduleInstanceKey" : "f14404b92b35c6b44970a40b5f3a8ef6456ccd65d49ac5842817bf70d7d65843",
      "flightNumber" : 6009,
      "carrierCode" : {
        "iata" : "G3",
        "icao" : "GLO"
      }
    } ]
  },

 

Marketing flight logic

The status data appears differently depending if the event in question is an update for a marketing flight, or an operating flight. Generally, updates for marketing flights are largely identifcal duplicates of updates for operating flights, because only updates are sent by the carrier for the operating flight. However, we will amend the data to make it clearer for our users what exactly they are looking at.

Let us use two fictional flights as an example: XX1, which is the operator, and YY2 and ZZ3, which are marketing flights codeshared on XX1.

If the event is for an operating flight number (XX1):

  • carrierCode= 'XX'
  • flightNumber=1
  • isOperating=true
  • scheduleInstanceKey value will be the schedules ID of the operating flight (XX1)
  • statusKey value will be the status ID of the operating flight (XX1)
  • codeshare>operatingFlight object would not appear
  • codeshare>marketingFlights will contain data for the marketing flights (YY2 + ZZ3)

Example (condensed sample with unnecessary information removed):

"documentType" : "FlightStatus",
  "flightType" : "Scheduled",
  "state" : "Scheduled",
"flightNumber" : 1,
  "carrierCode" : {
  "iata" : "XX"
  },
"scheduleInstanceKey" : "45445cd3352c5208f558f55def6425840243b98e6227123c3c19d1bd02245b34"
"statusKey" : "3d948ecb7a712c9f2b0facd4c8f70df3611bace77a3f2612b4aa9ce88c22f4b1",
"isOperating" : true,
  "codeshare" : {
    "marketingFlights" : [ {
      "scheduleInstanceKey" : "32ab30167095c4f755763c3f1a730ab0a524b45f69d71c1fb6ffb655fdd3c617",
    "flightNumber" : 2,
      "carrierCode" : {
      "iata" : "YY"
      }
  }, {
      "scheduleInstanceKey" : "f14404b92b35c6b44970a40b5f3a8ef6456ccd65d49ac5842817bf70d7d65843",
    "flightNumber" : 3,
      "carrierCode" : {
      "iata" : "ZZ"
      }
    } ]
  },

If the event is for a marketing flight number (YY1):

  • carrierCode= 'YY'
  • flightNumber=2
  • isOperating=false
  • scheduleInstanceKey value will be the schedules ID of the marketing flight (YY1)
  • statusKey value will be the status ID of the operating flight (XX1)
  • codeshare>operatingFlight object will contain data for the operating flight (XX1)
  • codeshare>marketingFlights will contain data for other marketing flights (if there are more than one), except for the flight in question (YY1) as this data is duplicated in the event. Essentially, the data will show ZZ3.

Example (condensed sample with unnecessary information removed):

"documentType" : "FlightStatus",
  "flightType" : "Scheduled",
  "state" : "Scheduled",
"flightNumber" : 2,
  "carrierCode" : {
  "iata" : "YY"
  },
"scheduleInstanceKey" : "32ab30167095c4f755763c3f1a730ab0a524b45f69d71c1fb6ffb655fdd3c617"
"statusKey" : "3d948ecb7a712c9f2b0facd4c8f70df3611bace77a3f2612b4aa9ce88c22f4b1",
"isOperating" : false,
  "codeshare" : {
   "operatingFlight" : {
    "scheduleInstanceKey" : "45445cd3352c5208f558f55def6425840243b98e6227123c3c19d1bd02245b34",
    "flightNumber" : 1,
      "carrierCode" : {
      "iata" : "XX"
      }
    },
  "marketingFlights" : [ {
      "scheduleInstanceKey" : "f14404b92b35c6b44970a40b5f3a8ef6456ccd65d49ac5842817bf70d7d65843",
    "flightNumber" : 3,
      "carrierCode" : {
      "iata" : "ZZ"
      }
    } ]
  },

Field Deprecation

Please note that as a result of this release, the following fields will be planned for deprecation in the future:

  • operatingInstanceKey
  • marketingInstancesKeys

The reason for deprecation is that these fields' data is now duplcated in the new fields above and is therefore unnecessary to exist by themselves.