POST /checkin

This API is used to check a passenger into a flight.


Verb URI Description
POST /checkin/{ver}/{airline}/{depDate}/{flightNumber}
/{depAirport}/{eTicket}/{lastName}/{firstName}
Check a passenger into a flight.

Notes:
  1. This API will both check a passenger in and generate the boarding pass data. It is possible that the check in succeeds but the boarding pass printing is inhibited by the DCS for other reasons. In this case, the API response will be success=false, but the passenger will still be checked in. Generally this is caused by the passenger not having the correct API data entered.
  2. This API can generate and distribute a mobile boarding pass to the passenger (if the route is valid for mobile boarding). The boarding pass will be sent to the email and mobile phone number in the passenger PNR.
  3. If not using mobile boarding pass, the calling application is responsible for formatting the barcodeData and printing a boarding pass for the passenger.
  4. Multiple passengers being checked in together must all check in successfully on a given leg. If one or more passengers fail or are put on standby, all passengers are failed or put on standby by SDCS on that leg. On ‘check through’ scenarios, passengers remain checked in only on those legs were check in was successful

Path Parameters

Path Parameter Notes Example
ver API Version number v1
airline 2 character IATA code. MH
depDate Departure date of flight, in yyyy-MM-dd format 2013-03-11
flightNumber Airline flight number 0004
depAirport Departure airport LHR
eTicket eTicketNumber 2322400928866
lastName Passenger’s last name OSULLIVAN
firstName Passenger’s first name KEVIN

Query Parameters

Query Parameter Notes Example
mobileBoardingPass Set to true to issue a mobile boarding pass to the passenger on successful check in. Defaults to false. If set to true, the flight must be a valid flight for mobile boarding. false
email The email address that the boarding pass will be sent to. johnsmyth@gmail.com
mobileNumber The mobile phone number that boarding pass will be sent to.
Format is: +{country code}{phone number}
+447771234567
hasInfantOnLap Set to true if the passenger you are checking in has an infant with them. The default value is false. true
infantLastName Last name of the infant being checked in. Smyth
infantFirstName Last name of the infant being checked in. James
infantETicketNumber The eTicket number for the infant. 2322400928867
agentSine Agent sign-in code. If ‘agentSine’ is not passed in the request parameters then the default value of ‘agentSine’ will be used. 91/4536F

POST Data

Not applicable

Response Data

The response data is the same as the response data to the GET /checkin/passengers API, with addition of the boarding pass data in the passenger/flight section in an element called barcodeData. See below for an example of this. The barcodeData is a PECTAB/ATB Boarding Pass Message. Specifications for this message are available for purchase from http://www.aea.be/research/specs/


{
  "processingDurationMillis": 5662,
  "authorisedAPI": false,
  "success": true,
  "airline": "MH",
  "flightLegInfos": [
    {
      "flightNumber": "1133",
      "departureAirport": {
        "code": "PEN",
        "name": "Penang Intl",
        "city": "Penang",
        "country": "Malaysia",
        "lat": 5.297139,
        "lng": 100.276864,
        "terminal": null,
        "gate": null,
        "timezone": "Asia/Kuala_Lumpur"
      },
      "arrivalAirport": {
        "code": "KUL",
        "name": "Kuala Lumpur Intl",
        "city": "Kuala Lumpur",
        "country": "Malaysia",
        "lat": 2.745578,
        "lng": 101.709917,
        "terminal": null,
        "gate": null,
        "timezone": "Asia/Kuala_Lumpur"
      },
      "marketingAirline": null,
      "operatingAirline": "MH",
      "equipment": "734",
      "flightRPH": 1,
      "comments": [],
      "depScheduled": "2013-07-18T06:40:00.000+08:00",
      "arrScheduled": "2013-07-18T07:35:00.000+08:00",
      "depEstimated": "2013-07-18T06:40:00.000+08:00",
      "depActual": null,
      "arrEstimated": null,
      "arrActual": null,
      "flightStatus": null,
      "boardingDateTime": "2013-07-18T06:10:00.000+08:00",
      "dcsFlightStatus": 1,
      "frequentFlyerNbr": null,
      "frequentFlyerProgram": null,
      "frequentFlyerLevel": null,
      "checkedInStatus": 0,
      "resBookDesigCode": null,
      "cabinClassName": null,
      "apiRequired": false,
      "barcodeData": null,
      "flightSequenceNumber": null,
      "passengerSequenceNumber": null,
      "closed": true,
      "seatNumber": null,
      "checkedIn": false,
      "boarded": false,
      "minutesToScheduledFlightDeparture": 486
    }
  ],
  "passengers": [
    {
      "paxRPH": 1,
      "namePrefix": "MR",
      "firstName": "ADTONE",
      "middleName": null,
      "lastName": "OSULLIVAN",
      "gender": null,
      "onwardFlight": false,
      "bookingReference": null,
      "groupReference": "",
      "bagCount": 0,
      "flights": [
        {
          "flightNumber": "1133",
          "departureAirport": {
            "code": "PEN",
            "name": "Penang Intl",
            "city": "Penang",
            "country": "Malaysia",
            "lat": 5.297139,
            "lng": 100.276864,
            "terminal": null,
            "gate": null,
            "timezone": "Asia/Kuala_Lumpur"
          },
          "arrivalAirport": {
            "code": "KUL",
            "name": "Kuala Lumpur Intl",
            "city": "Kuala Lumpur",
            "country": "Malaysia",
            "lat": 2.745578,
            "lng": 101.709917,
            "terminal": null,
            "gate": null,
            "timezone": "Asia/Kuala_Lumpur"
          },
          "marketingAirline": null,
          "operatingAirline": "MH",
          "equipment": "734",
          "flightRPH": 1,
          "comments": [],
          "depScheduled": "2013-07-18T06:40:00.000+08:00",
          "arrScheduled": "2013-07-18T07:35:00.000+08:00",
          "depEstimated": "2013-07-18T06:40:00.000+08:00",
          "depActual": null,
          "arrEstimated": null,
          "arrActual": null,
          "flightStatus": null,
          "boardingDateTime": "2013-07-18T06:10:00.000+08:00",
          "dcsFlightStatus": 1,
          "frequentFlyerNbr": null,
          "frequentFlyerProgram": null,
          "frequentFlyerLevel": null,
          "checkedInStatus": 2,
          "resBookDesigCode": "L",
          "cabinClassName": "ECONOMY",
          "apiRequired": false,
          "barcodeData": "[CP#2C01#01W#02PEN#03KUL#043198#05OSULLIVAN/ADTONE MR#06MH #071133
           #08L#09199#0B17A #121    #130#141#151#1622:33#191  #6FOSULLIVAN/ADTONE MR#76PENANG 
           #77KUALA LUMPUR      #78OSULLIVAN/ADTONE MR#79MH#7A18JUL#7C0640#7E  17A#80   
           #8106:10#8217A  #83XXX#871133#88L#93TKNE#942322400949042C1#]",
          "flightSequenceNumber": null,
          "passengerSequenceNumber": "001",
          "closed": true,
          "seatNumber": "17A",
          "checkedIn": true,
          "boarded": false,
          "minutesToScheduledFlightDeparture": 486
        }
      ],
      "parentPassengerRPH": -1,
      "infantOnLap": null,
      "eTicketNumber": null,
      "apiInfo": null,
      "comments": [],
      "infant": false,
      "apistatus": "7",
      "child": false
    }
  ],
  "Errors": [],
  "Warnings": [
    {
      "type": "1",
      "message": "INCOMPLETE SECURITY DATA"
    },
    {
      "type": "1",
      "message": "DOB REQUIRED FOR WATCH LIST CHECK"
    }
  ]
}  

This API will return success=true if the passenger was successfully checked in, and boarding pass data generated.

Errors

"message": "UNABLE TO LOCATE PASSENGER NAME"

"message": "COUPON OUT OF SEQUENCE OSULLIVAN/ADTTWO"

"message": "504 - INFANT COUNT CONFLICT"