Ink API v1.8
Ink API v1.8
Ink API v1.8
INK AVIATION
aviation.ink
info@aviation.ink
linkedin.aviation.ink
Basic Authentication
DOMAIN
If you are having connection problems, as an initial troubleshooting test please verify connectivity with a bootstrapped Web
Services client like Postman, which can be effortlessly installed into Chrome without the complexity of your full application
stack.
PROTOCOL
{domain} in the development environment is staging.inkcloud.io. This will be api.inkcloud.io in the production
environment.
API VERSION
The current API version is 1.8. See the Changelog.
Ink will maintain backwards compatibility to avoid impacting dependent services. It is imperative that you allow for and
expect extra data fields to be added at any time. Field ordering in the result data may change so your parsing should be
tolerant of this. The nesting structure to any particular element will be preserved and not unexpectedly deepen. However,
new nested elements may be added at any part of the structure. e.g.
{
"path": [
{
"to": [
{
"nested_element": "will not change or deepen",
"new_element": "may be added"
}
]
}
],
"another_new_element": "may be added anywhere in the structure"
}
DATA FORMAT
flight_number carrier code + numeric part (up to four digits) e.g: IN1010
DATA OPTIONS
aci ADULT
CHILD
INFANT
gender MALE
FEMALE
M
F
ticket_type ETICKET
PAPER
STATUSES
Possible status values are shown in the table below.
passenger_status NOT_YET_CHECKED_IN
CHECKED_IN
NO_SHOW_CHECK_IN
BOARDED
NO_SHOW_BOARDING
FLOWN
flight_status OPEN
CLOSED
FLOWN
CANCELLED
apis_status OK
NOT_OK
WAITING_RESPONSE
checkin_status OPEN
CLOSED
ERRORS
Possible error codes are shown in the table below.
000 ERR_VERSION_NOT_SUPPORTED
001 ERR_METHOD_NOT_SUPPORTED
002 ERR_OBJECT_NOT_SUPPORTED
003 ERR_MANDATORY_PARAMETER_EMPTY
004 ERR_IATA_CODE_INVALID
005 ERR_DATE_FORMAT_INVALID
006 ERR_OBJECT_NOT_ALLOWED
007 ERR_PARAMETER_VALIDATION_FAILED
008 ERR_PARAMETERS_NOT_ENOUGH
009 ERR_CONDITIONAL_PARAMETER_EMPTY
010 ERR_DATE_RANGE_INVALID
011 ERR_PASSENGER_NOT_CHECKED_IN
012 ERR_CHECKIN_CLOSED_FOR_PRINTING_WARNING
013 ERR_CHECKIN_CLOSED
014 ERR_BAG_INFANT_PAX
015 ERR_BAG_NOT_CREATED
016 ERR_BAG_NOT_FOUND
017 ERR_BAG_ALLOWANCE_EXCEEDED
018 ERR_BAG_CREATE_CANCEL
020 ERR_BAG_ALREADY_EXISTS
021 ERR_AUTHENTICATION_FAILED
022 ERR_NOT_ASSOCIATED_STATION
023 ERR_NOT_ASSOCIATED_CARRIER
025 ERR_BAG_NOT_UPDATED
026 ERR_PAX_NOT_FOUND
027 ERR_BAG_WEIGHT_CANNOT_EXCEED
028 ERR_REQUEST_BODY_VALIDATION_FAILED
029 ERR_FLIGHT_CREATION_FAILED
030 ERR_FLIGHT_UPDATE_SEAT_PLAN_FAILED
031 ERR_FLIGHT_ADD_PASSENGERS_FAILED
032 ERR_PAX_INVALID_PASSENGER
033 ERR_PAX_UPDATE_FAILED
034 ERR_PAX_DELETE_FAILED
035 ERR_PAX_STATUS_INVALID
036 ERR_FLIGHT_NOT_FOUND
037 ERR_AIRPLANE_MODEL_NOT_FOUND
038 ERR_CABIN_NOT_FOUND
039 ERR_SEAT_PLAN_NOT_AVAILABLE
040 ERR_CARRIER_NOT_FOUND
041 ERR_FLIGHT_FLOWN
042 ERR_FLIGHT_CLOSED
043 ERR_BAG_WEIGHT_EXCEEDED
044 ERR_UNABLE_DEACTIVATE_BAG_TAG
045 ERR_INVALID_COUNTRY_CODE
046 ERR_FLIGHT_LOCKED
047 ERR_PAX_ALREADY_UNCHECKED_IN
048 ERR_PAX_NOT_UNCHECKED_IN
049 ERR_PAX_NOT_CHECKED_IN
050 ERR_PAX_ALREADY_CHECKED_IN
051 ERR_PAX_SEAT_NOT_ASSIGNED
052 ERR_PASSBOOK_NOT_GENERATED
053 ERR_PAX_NOT_BOARDED
055 ERR_PAX_DATA_PASSENGER_NAME_FORMAT
056 ERR_PAX_DATA_ACI_NOT_FOUND
057 ERR_PAX_DATA_GENDER_NOT_FOUND
058 ERR_PAX_DATA_DATE_FORMAT
059 ERR_PAX_DATA_COUNTRY_NOT_FOUND
060 ERR_PAX_DATA_COUNTRY_INVALID_FORMAT
061 ERR_PAX_DATA_DOCUMENT_TYPE_NOT_FOUND
062 ERR_PAX_DATA_FARE_CODE_NOT_FOUND
063 ERR_PAX_DATA_FARE_CODE_INVALID
064 ERR_PAX_DATA_PHONE_INVALID_FORMAT
065 ERR_PAX_DATA_EMAIL_INVALID_FORMAT
066 ERR_PAX_DATA_TICKET_TYPE_NOT_FOUND
067 ERR_PAX_DATA_LENGTH_NAME
068 ERR_PAX_DATA_LENGTH_BOOKING
069 ERR_PAX_DATA_LENGTH_GROUP_CODE
070 ERR_PAX_DATA_INVALID_SEQUENCE
071 ERR_PAX_DATA_INVALID_ID_NUMBER
072 ERR_PAX_DATA_INVALID_TICKET_NUMBER
073 ERR_PAX_DATA_INVALID_EXTERNAL_PAX_ID
074 ERR_PAX_DATA_INVALID_DISEMBARK_STATION
075 ERR_PAX_DATA_INVALID_ITINERARY
076 ERR_PAX_DATA_INVALID_SSR
077 ERR_PAX_DATA_INVALID_ONWARD
078 ERR_PAX_DATA_INVALID_INBOUND
079 ERR_PAX_DATA_INVALID_INFANT
080 ERR_PAX_DATA_INVALID_SEAT_NUMBER
081 ERR_INVALID_OR_INSUFFICIENT_PARAMETERS
082 ERR_PAX_STATUS_NOT_SUPPORT_ACTION
083 ERR_INFANT_WITHOUT_PARENT
085 ERR_CANNOT_CHANGE_ACI_TO_PARENT
086 ERR_CANNOT_ASSOCIATE_INFANTS_TO_CHILD
087 ERR_INVALID_SEAT_NUMBER_FOR_CLASS
088 ERR_ADVISE_PAX_NOT_FOUND
089 ERR_ADVICE_PAX_NOT_FOUND_IN_FLIGHT
090 ERR_ADVICE_PAX_DELETE_FAILED
091 ERR_ADVICE_DCS_SERVICE_FAILED
092 ERR_BOARDING_GATE_NOT_FOUND
093 ERR_PAX_WRONG_TERMINAL
094 ERR_TIME_FORMAT_INVALID
095 ERR_DATETIME_FORMAT_INVALID
096 ERR_JSON_FORMAT_INVALID
{protocol}://{domain}/api/{version}/flight/get_list?station_iata={station_iata}&flight_status={fl
ight_status}&start_date={start_date}&end_date={end_date}
station_iata Mandatory
flight_status Optional
start_date Optional
end_date Optional
Example Request
/flight/get_list?station_iata=LGW&flight_status=OPEN&start_date=2020-05-13&end_date=2020-05-14
Example Response
Status: 200 OK
{
"flight_list" : [
{
"carrier_name": "Ink Trial",
{protocol}://{domain}/api/{version}/flight/get_flight_details?station_iata={station_iata}&flight_
date={flight_date}&flight_number={flight_number}
station_iata Mandatory
flight_date Mandatory
flight_number Mandatory
Example Request
/flight/get_flight_details?station_iata=INK&flight_date=2019-10-01&flight_number=IN1212
¶¶¶¶¶
Example Response
Status: 200 OK
{protocol}://{domain}/api/{version}/flight/empty_flights?station_iata={station_iata}&start_date={
start_date}&end_date={end_date}
station_iata Mandatory
start_date Optional
end_date Optional
Example Request
flight/empty_flights?station_iata=INK&start_date=2016-05-16&end_date=2016-05-16
Example Response
Status: 200 OK
{
"empty_flights": [
{
"carrier_name": "Ink Aviation",
"flight_number": "IN1333",
"schedule_number": "73-2492",
{protocol}://{domain}/api/{version}/flight/get_manifest?station_iata={station_iata}&flight_number
={flight_number}&scheduled_departure_date={date}
station_iata Mandatory
flight_number Mandatory
scheduled_departure_date Mandatory date
include_transit Optional integer
Example Request
flight/get_manifest?station_iata=INK&flight_number=IN1212&scheduled_departure_date=2018-08-15
flight/get_manifest?station_iata=INK&flight_number=IN1212&scheduled_departure_date=2018-08-15&inc
lude_transit=1
Example Response
Status: 200 OK
{
"passengers": [
{
"passenger_name": "HARRISON\/AUDREYMRS",
"ink_passenger_identifier": "624D7762-6F455054-5A50654A-7A555769-75576C4D-6E413D3D",
"itinerary": [
{
"flight_number": "IN9023",
"scheduled_departure_date": "2018-11-01",
"scheduled_departure_time": "11:00:00",
"station_iata": "CPH",
"sector_identifier": "",
"flight_status": "OPEN",
"booking_reference": "2N3XTJ",
"ticket_number": "",
"passenger_status": "NOT_YET_CHECKED_IN",
"seat_number": "25F",
{protocol}://{domain}/api/{version}/flight/get_audit_data?station_iata={station_iata}&flight_numb
er={flight_number}&scheduled_departure_date={date}
station_iata Mandatory
flight_number Mandatory
scheduled_departure_date Mandatory Date
Example Request
flight/get_audit_data?station_iata=INK&flight_number=IN1212&scheduled_departure_date=2018-08-15
Status: 200 OK
{
"data": [
{
"passenger_name": "SMITH/JOHN",
"ink_passenger_identifier": "46644E35-76502B35-53664144-43615A73-7178734B-43513D3D",
"audit_trail": [
{
"date": "22-FEB-19",
"time": "18:54:04.615 GMT+0",
"description": "Seat Change (15F) (127.0.0.1)",
"user": "molly.harrison"
},
{
"date": "22-FEB-19",
"time": "18:54:04.542 GMT+0",
"description": "(127.0.0.1) PNR viewed in Departure Control",
"user": "molly.harrison"
},
{
"date": "22-FEB-19",
"time": "18:54:00.121 GMT+0",
"description": "Added (Manual) (127.0.0.1)",
"user": "molly.harrison"
}
]
}
]
}
{protocol}://{domain}/api/{version}/flight/advise_change
Example Request
flight/advise_change
Example Response
Status: 200 OK
{
"operation_result": "SUCCESS"
{protocol}://{domain}/api/{version}/flight/block_seats?station_iata={station_iata}&flight_number=
{flight_number}&scheduled_departure_date={date}&seats={seat_numbers}
station_iata Mandatory
flight_number Mandatory
scheduled_departure_date Mandatory Date
seats Optional Seat numbers separated by commas
Example Request
flight/block_seats?station_iata=INK&flight_number=IN1212&scheduled_departure_date=2018-08-15&seat
s=2A,3B,21F
Example Response
Status: 200 OK
{
"result": "OK"
}
{protocol}://{domain}/api/{version}/flight/unblock_seats?station_iata={station_iata}&flight_numbe
r={flight_number}&scheduled_departure_date={date}&seats={seat_numbers}
station_iata Mandatory
flight_number Mandatory
scheduled_departure_date Mandatory Date
seats Optional Seat numbers separated by commas
Example Request
flight/unblock_seats?station_iata=INK&flight_number=IN1212&scheduled_departure_date=2018-08-15&se
ats=2A,3B,21F
Example Response
Status: 200 OK
{protocol}://{domain}/api/{version}/baggage_tag/add
ink_passenger_identifier Mandatory
license_plate Optional If license_plate not supplied, one will be generated
baggage_tag_weight_kg Mandatory
baggage_tag_status Mandatory INACTIVE|ACTIVE
bag_destination_iata Optional
special_baggage_code Optional
checkin_method Optional desk|kiosk|web|thru|api
Example Request
/baggage_tag/add
{
"ink_passenger_identifier": "87654321",
"license_plate": "1234098765",
"baggage_tag_weight_kg": "13",
"baggage_tag_status": "ACTIVE",
"bag_destination_iata": "OSL",
"special_baggage_code": "BIKE"
}
Example Response
In this example, passenger travelling from Origin to GEN > OSL and the bag is tagged to OSL.
Status: 200 OK
{
"operation_result": "SUCCESS",
"license_plate" : "1234098765",
"ink_passenger_identifier": "6D754D4B-4F56724B-3931784D-61375936-55383744-55673D3D",
"passenger_name": "SMITH/JOHN",
"baggage_tag_status": "CANCELLED",
"baggage_tag_weight_kg": "13",
"special_baggage_code": "BIKE",
"itinerary": [
{
Tags can only be activated for open flights. Only inactive tags can be activated or cancelled. Only active tags can be
cancelled or have their weights updated.
{protocol}://{domain}/api/{version}/baggage_tag/update
ink_passenger_identifier Mandatory
license_plate Mandatory
baggage_tag_weight_kg Optional
baggage_tag_status Mandatory ACTIVE|CANCEL|INACTIVE
checkin_method Optional desk|kiosk|web|thru|api
Example Request
/baggage_tag/update
{
"ink_passenger_identifier": "6D754D4B-4F56724B-3931784D-61375936-55383744-55673D3D",
"license_plate": "1234098765",
"baggage_tag_status": "ACTIVE"
}
Example Response
Status: 200 OK
{
"operation_result": "SUCCESS",
"license_plate" : "1234098765",
"ink_passenger_identifier": "6D754D4B-4F56724B-3931784D-61375936-55383744-55673D3D",
"passenger_name": "SMITH/JOHN",
{protocol}://{domain}/api/{version}/baggage_tag/view?license_plate={license_plate}
license_plate Mandatory
Example Request
/baggage_tag/view?license_plate=1234098765
Example Response
Status: 200 OK
{
"license_plate" : "1234098765",
"ink_passenger_identifier": "6D754D4B-4F56724B-3931784D-61375936-55383744-55673D3D",
"passenger_name": "SMITH/JOHN",
"baggage_tag_status": "ACTIVE",
"baggage_tag_weight_kg": "13",
"special_baggage_code": "BIKE",
"itinerary": [
{
"flight_number": "IK124",
"flight_date": "2020-05-13",
"station_iata": "OSL",
"stops_before_bag_destination": "0"
{protocol}://{domain}/api/{version}/baggage_tag/get_special_baggage
Example Request
/baggage_tag/get_special_baggage
Example Response
Status: 200 OK
{
"AMMUNITION": "Ammunition",
"ARCHERY": "Archery",
"BAGGAGE_IN_SEAT": "Baggage in Seat",
"BIKE": "Bike",
"BULK": "Bulk (Oversized)",
"CANOE": "Canoe / Kayak",
"FIREARMS": "Firearms",
"FISHING": "Fishing Gear",
"GATE_TAG": "Gate Tag",
"GOLF": "Golf",
Although they are all optional, either the booking_reference, ticket_number or name_filter must be given. There must be at
least one criteria with which to find the passenger(s).
{protocol}://{domain}/api/{version}/passenger/search?station_iata={station_iata}&booking_referenc
e={booking_reference}&flight_number={flight_number}&ticket_number={ticket_number}&name_filter={na
me_filter}&sequence={sequence}&license_plate={license_plate}&terminal_identifier={terminal_identi
fier}&flight_date={flight_date}
station_iata Mandatory
flight_number Optional
booking_reference Optional
ticket_number Optional
name_filter Optional (must have flight_number as well)
license_plate Optional
sequence Optional (must have flight_number as well)
terminal_identifier Optional
flight_date Optional
Example Request
/passenger/search?booking_reference=EJH7UK&flight_number=AA123
/passenger/search?ticket_number=123456789012
/passenger/search?name_filter=SMITH&flight_number=AA123
/passenger/search?name_filter=SMITH&terminal_identifier=6D754D4B-4F56724B-3931784D-61375936-55383
744-55674G4B
Example Response
Status: 200 OK
{
"passenger_results" : [
{
"passenger_name": "SMITH/JOHN",
"ink_passenger_identifier": "6D754D4B-4F56724B-3931784D-61375936-55383744-55673D3D",
"flight_number": "AB111",
"scheduled_departure_date": "2020-05-13",
"booking_reference": "ERY77JK",
"passenger_status": "CHECKED_IN",
"sequence": "234",
"itinerary_summary": "KRP-CPH"
{protocol}://{domain}/api/{version}/passenger/get_detail?station_iata={station_iata}&ink_passenge
r_identifier={ink_passenger_identifier,ink_passenger_identifier,...,ink_passenger_identifier}
{protocol}://{domain}/api/{version}/passenger/get_detail?station_iata={station_iata}&flight_numbe
r={flight_number}&bcbp={bcbp}
station_iata Mandatory
flight_number Optional Mandatory if using ink_passenger_identifier
ink_passenger_identifier Optional Unique identifier
bcbp Optional URL encoded 2D BCBP string
Example Request
/passenger/get_detail?flight_number=AB123&ink_passenger_identifier=87654321
Example Response
Status: 200 OK
{
"passengers" : [
{
"passenger_name": "SMITH/JOHN",
"ink_passenger_identifier": "87654321",
"itinerary": [
{
"station_iata": "LGW",
"flight_number": "AB123",
"scheduled_departure_date": "2020-05-13",
"scheduled_departure_time": "12:34",
"sector_identifier": "12345678",
"flight_status": "OPEN",
{protocol}://{domain}/api/{version}/passenger/check_in?station_iata={station_iata}&flight_number=
{flight_number}&ink_passenger_identifier={ink_passenger_identifier}
station_iata Mandatory
flight_number Mandatory
Example Request
/passenger/check_in?station_iata=KRP&flight_number=AB123&ink_passenger_identifier=6D754D4B-4F5672
4B-3931784D-61375936-55383744-55673D3D&seat_number=1A
Example Response
Status: 200 OK
{
"passenger_name": "SMITH/JOHN",
"ink_passenger_identifier": "6D754D4B-4F56724B-3931784D-61375936-55383744-55673D3D",
"flight_number": "IN123",
"scheduled_departure_date": "2020-05-13",
"booking_reference": "ERY77JK",
"passenger_status": "CHECKED_IN",
"sequence": "234",
"itinerary_summary": "KRP-CPH",
"seat_number": "1A",
"apis_status": "OK"
}
/passenger/check_in?station_iata=KRP&flight_number=AB123&ink_passenger_identifier=6D754D4B-4F5672
4B-3931784D-61375936-55383744-55673D3D,7531574F-42756B78-2B705A78-64507439-30637258-2F413D3D
Status: 200 OK
{
"passenger_results": [
{
"passenger_name": "JOHN/SMITH",
"ink_passenger_identifier": "4D327879-304D3441-3347306E-41713765-5A545768-41673D3D",
"flight_number": "IN2409",
"scheduled_departure_date": "2019-10-29",
"booking_reference": "ASF6315",
"passenger_status": "CHECKED_IN",
"sequence": "141",
{protocol}://{domain}/api/{version}/passenger/offload?station_iata={station_iata}&flight_number={
flight_number}&ink_passenger_identifier={ink_passenger_identifier}
station_iata Mandatory
flight_number Mandatory
ink_passenger_identifier Mandatory Unique identifier
Example Request
/passenger/offload?station_iata=KRP&flight_number=AB123&ink_passenger_identifier=6D754D4B-4F56724
B-3931784D-61375936-55383744-55673D3D
Example Response
Status: 200 OK
{
"passenger_name": "SMITH/JOHN",
"ink_passenger_identifier": "6D754D4B-4F56724B-3931784D-61375936-55383744-55673D3D",
{protocol}://{domain}/api/{version}/passenger/board?station_iata={station_iata}&flight_number={fl
ight_number}&flight_date={flight_date}&sequence={sequence}
station_iata Mandatory
flight_number Mandatory
flight_date Mandatory
sequence Optional Unique identifier
bcbp Optional URL encoded 2D BCBP string
ink_passenger_identifier Optional
Example Request
/passenger/board?station_iata=KRP&flight_number=AB123&flight_date=2020-05-13&sequence=234
Example Response
Status: 200 OK
{
"passenger_name": "SMITH/JOHN",
"ink_passenger_identifier": "6D754D4B-4F56724B-3931784D-61375936-55383744-55673D3D",
"flight_number": "AB123",
"scheduled_departure_date": "2020-05-13",
"booking_reference": "ERY77JK",
"passenger_status": "BOARDED",
"sequence": "234",
"itinerary_summary": "KRP-CPH"
}
{protocol}://{domain}/api/{version}/passenger/assign_seat?station_iata={station_iata}&ink_passeng
er_identifier={ink_passenger_identifier}&seat_number={seat_number}&flight_number={flight_number}
Example Request
/passenger/assign_seat?staion_iata=KRP&&ink_passenger_identifier=6D754D4B-4F56724B-3931784D-61375
936-55383744-55673D3D&seat_number=14F&flight_number=IN7898
Example Response
Status: 200 OK
{
"seat_number": "14F",
}
{protocol}://{domain}/api/{version}/passenger/update_apis?station_iata={station_iata}flight_numbe
r={flight_number}
station_iata Mandatory
flight_number Mandatory
ink_passenger_identifier Mandatory Unique identifier
id_document_type Optional
surname Optional
first_name Optional
middle_name Optional
id_issuing_country Optional Three letter ISO format
id_number Optional
citizen_country Optional Three letter ISO format
residence_country Optional
date_of_birth Optional
id_expiry_date Optional
gender Optional M|F
destination_address Optional
destination_city_town Optional
destination_state Optional
destination_postcode Optional
emergency_contact_telephone Optional
Example Request
/passenger/update_apis?station_iata=INK&flight_number=IN6666
Example Response
Status: 200 OK
{
"result": "OK"
}
/passenger/update_apis?station_iata=INK&flight_number=IN6666
{
"passengers": [
{
"ink_passenger_identifier":"6F4E7132-42366774-6162334C-437A6632-54673974-71413D3D",
"first_name": "JOHN",
"id_issuing_country": "ALB",
"id_number": "246578",
"id_expiry_date": "2020-05-01",
"gender ": "M",
"surname" : "SMITH",
"date_of_birth" : "2000-05-01",
"citizen_country" : "ESP",
"id_document_type" : "D"
},
{
"ink_passenger_identifier":"6F4E7132-42366774-6162334C-437A6632-54673974-71413D3D",
"first_name": "JEFF",
"id_issuing_country": "ALB",
"id_number": "246578",
"id_expiry_date": "2020-05-01",
"gender ": "M",
"surname" : "SMITH",
"date_of_birth" : "2000-05-01",
"citizen_country" : "ESP",
"id_document_type" : "P"
Status: 200 OK
{
"result": [
{
"operation_result": "SUCCESS",
"ink_passenger_identifier": "6F4E7132-42366774-6162334C-437A6632-54673974-71413D3D"
},
{
"operation_result": "SUCCESS",
"ink_passenger_identifier": "6F4E7132-42366774-6162334C-437A6632-54673974-71413D3D"
}
]
}
{protocol}://{domain}/api/{version}/passenger/advise_passenger_change?station_iata={station_iata}
&external_passenger_identifier={string}&external_flight_id={string}
station_iata Mandatory
external_passenger_identifier Mandatory Unique identifier used in external systems
external_flight_id Mandatory Unique identifier used in external systems
Example Request
/passenger/advise_passenger_change?station_iata=INK&external_passenger_identifier=8X7654321&exter
nal_flight_id=1234546745X234
Example Response
Status: 200 OK
{
"passenger":"OK"
}
Method always returns the latest issued boarding pass issued to the passenger. Note that reprints could result in a newer
boarding pass being issued to the passenger after this call.
{protocol}://{domain}/api/{version}/boarding_pass/issue
ink_passenger_identifier Mandatory
Example Request
/boarding_pass/issue
{
"passengers" : [
{ "ink_passenger_identifier": "6D754D4B-4F56724B-3931784D-61375936-55383744-55673D3D"},
{ "ink_passenger_identifier": "6D754D4B-4F56724B-3931784D-61375936-55383744-55673D3X"}
]
}
Example Response
Status: 200 OK
{
"boarding_passes" : [
{
"ink_passenger_identifier": "6D754D4B-4F56724B-3931784D-61375936-55383744-55673D3X",
"apis_status":"OK",
"passenger_name": "SMITH\/JOHN",
"flight_number": "IK2222",
"scheduled_departure_date": "2020-05-13",
"booking_reference": "JHS7EF",
"passenger_status": "NOT_YET_CHECKED_IN",
"itinerary_summary": "KRP-OSL",
"booking_reference": "ABC123",
"passenger_class": "economy",
"fare_code": "Y",
"seat_number": "10A",
"sequence": "14",
"selectee":false,
"boarding_pass_number": "2100000293",
"2d_string": "M1SMITH\/JOHN ZELX3Y AALCPHDY 0971 318T003F0009 341> 003B 1 000 210000029
4",
{protocol}://{domain}/api/{version}/boarding_pass/passbook?station_iata={station_iata}&ink_passen
ger_identifier={ink_passenger_identifier}&flight_number={flight_number}
station_iata Mandatory
flight_number Mandatory
ink_passenger_identifier Mandatory Unique identifier
Example Request
/boarding_pass/passbook?staion_iata=KRP&ink_passenger_identifier=6D754D4B-4F56724B-3931784D-61375
936-55383744-55673D3D&flight_number=IN7898
Example Response
Status: 200 OK
{
"apis_status":"OK",
"selectee":false,
"base64_pkpass":"UEsDBBQAAAAIAKWoL0xMBdXeRQkAAPEMAAAJAAAAc2lnbmF0dXJlzZZ9..."
}
{protocol}://{domain}/api/{version}/seat_plan/get_seat_plan?station_iata={station_iata}&flight_nu
mber={flight_number}&departure_date={departure_date}
station_iata Mandatory
flight_number Mandatory
departure_date Mandatory
Example Request
/seat_plan/get_seat_plan?station_iata=CPH&flight_number=IK124&departure_date=2020-05-13
Example Response
Status: 200 OK
{
"carrier_name":"Ink Trial",
"carrier_code":"IK",
"airplane_model":"A318",
"cabin_configuration":"148Y-DUALCLASS",
"seat_plan_class":[
{protocol}://{domain}/api/{version}/seat_plan/get_seat_occupancy?station_iata={station_iata}&flig
ht_number={flight_number}&departure_date={departure_date}
station_iata Mandatory
flight_number Mandatory
departure_date Mandatory
/seat_plan/get_seat_occupancy?station_iata=CPH&flight_number=IK124&departure_date=2020-05-13
Example Response
Status: 200 OK
{
"flight_number":"IK124",
"departure_date":"2020-05-13",
"origin_station_iata":"CPH",
"destination_station_iata":"MAD",
"row":[
{
"row_number":"1",
"seat":[
{
"seat_number":"1A",
"status":"blocked"
},
{
"seat_number":"1B",
"status":"available"
},
{
"seat_number":"1C",
"status":"occupied"
},
{
"seat_number":"1D",
"status":"available"
}
]
},
{
"row_number":"2",
"seat":[
{
"seat_number":"2A",
"status":"allocated"
},
{
"seat_number":"2B",
"status":"available"
},
{
"seat_number":"2C",
"status":"occupied"
},
{
{protocol}://{domain}/api/{version}/passenger/add
Example Request
/passenger/add
{
"flight_number": "IN6655",
"scheduled_departure_date": "2017-11-27",
"origin_station_iata": "INK",
"itinerary": "INK-ALC-CPH",
"passengers": [
{
"ALC": [
{
"passenger_name_iata": "SMITH/JOHN",
"first_name": "JOHN",
"middle_name": "",
"surname": "SMITH",
"booking_reference": "ABC123",
"group_code": "A1",
"seat_number": "2A",
"aci": "ADULT",
"gender": "MALE",
"date_of_birth": "1985-12-11",
"residence_country": "SWE",
"citizen_country": "SWE",
"id_issuing_country": "SWE",
"id_document_type": "P",
"id_number": "1234567",
"id_expiry_date": "2020-02-10",
"fare_code": "Y",
"phone_number": "1234567890",
"email": "john.smith@smith.com",
"ticket_number": "123456789012",
"ticket_type": "ETICKET",
"infants":[
"first_name": "JJ",
"middle_name": "",
"surname": "SMITH",
"booking_reference": "ABC123",
"gender": "MALE",
"date_of_birth": "2015-10-01",
"residence_country": "SWE",
"citizen_country": "SWE",
"id_issuing_country": "SWE",
"id_document_type": "P",
"id_number": "76543432",
"id_expiry_date": "2030-02-10",
"fare_code": "Y"
}
],
"ssrs": [
{
"short_code": "TKNE",
"note": "HK1 2439704684092/1"
}
]
},
{
"passenger_name_iata": "SMITH/JAMES",
"first_name": "JAMES",
"middle_name": "",
"surname": "SMITH",
"booking_reference": "ABC124",
"group_code": "A2",
"seat_number": "4A",
"gender": "MALE",
"date_of_birth": "1987-02-11",
"residence_country": "SWE",
"citizen_country": "SWE",
"id_issuing_country": "SWE",
"id_document_type": "P",
"id_number": "67890123",
"id_expiry_date": "2020-06-20",
"fare_code": "Y",
"phone_number": "23456",
"email": "james.smith@smith.com",
"ticket_number": "123456786153",
"ticket_type": "ETICKET",
"ssrs": [
{
"short_code": "TKNE",
"note": "HK1 2145702234092/1"
}
],
Example Response
Status: 200 OK
{
"passenger_results" : [
{
"passenger_name_iata": "SMITH/JOHN",
"ink_passenger_identifier": "6D754D4B-4F56724B-3931784D-61375936-55383744-55673D3D",
"external_passenger_id": "123456789ASDF",
"result": "ADDED",
{protocol}://{domain}/api/{version}/passenger/edit
passengers Mandatory
ink_passenger_identifier Mandatory
passenger_name_iata Optional
first_name Optional
middle_name Optional
surname Optional
booking_reference Optional
group_code Optional
aci Optional
gender Optional
date_of_birth Optional
residence_country Optional
citizen_country Optional
id_issuing_country Optional
id_document_type Optional
id_number Optional
id_expiry_date Optional
fare_code Optional
seat_number Optional
phone_number Optional
email Optional
ticket_number Optional
ticket_type Optional
ssrs Optional
short_code Mandatory
note Mandatory
inbound Optional
onward Optional
sequence Optional forces the check-in of the passenger
Example Request
/passenger/edit
{
"passengers": [
{
"ink_passenger_identifier":"5174614E-68512F52-737A7038-47484844-4A2F4678-42413D3D",
"inbound":[
{
"fare_code":"Y",
"flight_number":"IN2002",
"flight_date":"2018-04-08",
Example Response
Status: 200 OK
{
"passenger_results":[
{
"operation_result":"SUCCESS",
"data":{
"ink_passenger_identifier":"5174614E-68512F52-737A7038-47484844-4A2F4678-42413D3D",
"onward":[
{
"fare_code":"Y",
"flight_number":"IN3002",
"flight_date":"2018-04-09",
"origin_station_iata":"BRE",
"destination_station_iata":"EWR"
},
{
"fare_code":"Y",
"flight_number":"IN3003",
"flight_date":"2018-04-09",
"origin_station_iata":"EWR",
"destination_station_iata":"CDG"
},
{
"fare_code":"Y",
"flight_number":"IN3004",
"flight_date":"2018-04-09",
"origin_station_iata":"CDG",
"destination_station_iata":"ABZ"
}
],
"inbound":[
]
},
"checkin_error": {
"error_code": "050",
"error_message": "Passenger already checked-in"
}
},
{
"operation_result":"SUCCESS",
"data":{
"ink_passenger_identifier":"4C444445-34727261-4D6B514C-7139326B-56517472-36673D3D",
"onward":[
{
"fare_code":"Y",
"flight_number":"IN3012",
"flight_date":"2018-04-09",
"origin_station_iata":"BRE",
"destination_station_iata":"ABZ"
}
],
"inbound":{
"fare_code":"Y",
"flight_number":"IN2012",
"flight_date":"2018-04-08",
"origin_station_iata":"CPH",
"destination_station_iata":"INK"
{protocol}://{domain}/api/{version}/passenger/delete
station_iata Mandatory
passengers Mandatory
ink_passenger_identifier Mandatory
Example Request
/passenger/delete
{
"passengers": [
{
"ink_passenger_identifier": "6D754D4B-4F56724B-3931784D-61375936-55383744-55674G4B"
}
]
}
Example Response
Status: 200 OK
{
"passenger_results": [
{
"operation_result": "SUCCESS",
"ink_passenger_identifier": "6D754D4B-4F56724B-3931784D-61375936-55383744-55674G4B"
}
]
}
station_iata Mandatory
date_from_filter Mandatory
date_to_filter Mandatory
carrier_iata_code Mandatory
offset Optional Default 0
limit Optional Default 100
hide_partial_payments Optional Default 0
Show_taxes Optional
Example Request
/station/get_sales_report?station_iata=INK&date_from_filter=2020-12-20&date_to_filter=2020-12-21&
carrier_iata_code=IN
Example Response
Status: 200 OK
{
"station_iata":"INK",
"date_from_filter":"2018-12-18",
"date_to_filter":"2018-12-21",
"carrier_iata_code":"IN",
"offset": 0,
"limit": "100",
"found": 2,
"fetch": 2,
"ancillary_report":[
{
"flight":"IN123",
"date":"2018-12-18",
"booking":"ABC123",
"passenger_name":"SMITH/JHON",
"calculated_amount":25000,
"collected_amount":22000,
"not_collected_amounT":3000,
"currency" : "USD",
"ancillary_items":[
{
"SSR": "XBAG1",
"description":"1Bag -XBAG1 - (1)",
"calculated_amount":"10000",
"Collected":true,
},
{
"description":"Excess Baggage",
"calculated_amount":"15000",
{protocol}://{domain}/api/{version}/passenger/unboard?station_iata={station_iata}&flight_number={
flight_number}&flight_date={flight_date}&ink_passenger_identifier={ink_passenger_identifier}
station_iata Mandatory
flight_number Mandatory
flight_date Mandatory
ink_passenger_identifier Mandatory
Example Request
/passenger/board?staion_iata=KRP&flight_number=AB123&flight_date=2020-05-13&ink_passenger_identif
ier=6D754D4B-4F56724B-3931784D-61375936-55383744-55674G4B
Example Response
Status: 200 OK
{
"passenger_results": [
{
"operation_result": "SUCCESS",
"ink_passenger_identifier": "6D754D4B-4F56724B-3931784D-61375936-55383744-55674G4B"
}
]
}
{protocol}://{domain}/api/{version}/station/get_terminals?station_iata={station_iata}
station_iata Mandatory
/station/get_terminals?station_iata=INK
Example Response
Status: 200 OK
{
"station_iata":"INK",
"terminals":[
{
"name" : "Domestic",
"terminal_identifier":"6D754D4B-4F56724B-3931784D-61375936-55383744-55674G4B"
},
{
"name" : "International",
"terminal_identifier":"6D754D4B-4F56724B-3121784D-61375936-55383744-55674G4B"
}]
}
{protocol}://{domain}/api/{version}/station/get_boarding_gates?station_iata={station_iata}
station_iata Mandatory
Example Request
/station/get_boarding_gates?station_iata=INK
Example Response
Status: 200 OK
{
"station_iata":"INK",
"terminals":[
{
"name" : "Domestic",
"terminal_identifier":"6D754D4B-4F56724B-3931784D-61375936-55383744-55674A1B",
"boarding_gates":[
{
"name": "A1",
"gate_identifier":"6D754D4B-4F56724B-3931784D-61375936-55383744-55674G4B"
{protocol}://{domain}/api/{version}/station/open_boarding?station_iata={station_iata}&flight_numb
er={flight_number}&flight_date={flight_date}&gate_identifier={gate_identifier}
station_iata Mandatory
flight_number Mandatory
flight_date Mandatory
gate_identifier Mandatory
Example Request
/station/open_boarding?station_iata=KRP&flight_number=AB123&flight_date=2020-05-13&gate_identifie
r=6D754D4B-4F56724B-3121784D-61375936-55383744-55674G4B
Example Response
Status: 200 OK
{
"operation_result": "SUCCESS",
"boarding_status": "OPEN"
}
station_iata Mandatory
flight_number Mandatory
flight_date Mandatory
Example Request
/station/close_boarding?station_iata=KRP&flight_number=AB123&flight_date=2020-05-13
Example Response
Status: 200 OK
{
"operation_result": "SUCCESS",
"boarding_status": "CLOSED"
}
{protocol}://{domain}/api/{version}/carrier/get_ssrs
Example Request
/carrier/get_ssrs
Example Response
Status: 200 OK
{
"Ink Aviation":[
"AVIH - Animal in hold",
"AVML - Asian vegetarian meal",
"BBML - Infant\/baby food",
"BIKE - Bicycle",
"BLML - Bland\/soft meal",
"BLND - Blind passenger",
"BSCT - Bassinet\/carrycot\/baby basket",
"BULK - Bulky baggage",
"CBBG - Cabin baggage with paid extra seat",
"CHKD - Checked-in Information",
"CHLD - Child",
"CHML - Child's meal",
{protocol}://{domain}/api/{version}/passenger/modify_passenger
Example Request
/passenger/modify_passenger
{
"Param": {
"Flight": {
"FlightCheckInStatus": "OPEN",
"MarketingAirlineCode": "FN ",
"MarketingFlightNumber": "1214",
"BoardingTime": "2019-10-05T10:00:00",
"BoardingGate": "",
"ArrivalGate": "",
"FlightDate": "2019-10-05T00:00:00",
"BoardDate": "2019-10-05T00:00:00",
"Origin": "VFA",
"Destination": "JNB",
"OperatingFlightNumber": "1214",
"Carrier": "FN",
"SeatConfigId": 2,
"FlightStatus": "OPEN",
"ScheduledDepartTime": "2019-10-05T10:00:00",
"EstimatedDepartTime": "2019-10-05T10:00:00",
Example Response
Status: 200 OK
{
"result": "SUCCESS"
}
{protocol}://{domain}/api/{version}/train/add_passengers
/train/add_passengers
{
"train_name": "VIA0002",
"scheduled_departure_date": "2020-01-17",
"origin_station_code": "0BA",
"passengers": [
{
"passenger_name": "AASHIMA/TRAVELLER",
"booking": "GTB1000250",
"gender": "M",
"aci": "A",
"itinerary": [
{
"destination_station_code": "0CA",
"class_code": "Y",
"rail_car": "Car1",
"seat": "1C",
"accommodation": {
"hotel_code": "H01"
}
},
{
"destination_station_code": "0VA",
"class_code": "Y",
"rail_car": "Car1",
"seat": "3A",
"accommodation": null
}
]
}
]
}
Example Response
Status: 200 OK
{
"result": "SUCCESS"
}
{protocol}://{domain}/api/{version}/train/search_passenger
station_code Mandatory
train_name Optional
booking Optional
Name Optional (must have train_name as well)
license_plate Optional
sequence Optional (must have train_name as well)
terminal_identifier Optional
Example Request
/train/search_passenger?booking=EJH7UK&train_name=AA123
/train/search_passenger?name=SMITH&train_name=AA123
/train/search_passenger?name=SMITH&terminal_identifier=6D754D4B-4F56724B-3931784D-61375936-553837
44-55674G4B
Example Response
Status: 200 OK
{
"passengers" : [
{
"passenger_name": "SMITH/JOHN",
"ink_passenger_identifier": "6D754D4B-4F56724B-3931784D-61375936-55383744-55673D3D",
"train_name": "VIA111",
"scheduled_departure_date": "2020-05-13",
"booking": "ERY77JK",
"status": "CHECKED_IN",
"sequence": "234",
"itinerary_summary": "KRP-CPH"
},
{
"passenger_name": "SMITHSON/JOHNSON",
"ink_passenger_identifier": "6D754D4B-4F56724B-3931784D-61375936-55383744-55673D3D",
"train_name": "VIA2222",
"scheduled_departure_date": "2020-05-13",
"booking": "JHS7EF",
"status": "NOT_YET_CHECKED_IN",
"itinerary_summary": "KRP-OSL"
}
]
}
{protocol}://{domain}/api/{version}/train/edit_passengers
Example Request
/train/edit_passengers
{
"train_name": "VIA0002",
"scheduled_departure_date": "2020-01-17",
"origin_station_code": "0BA",
"passengers": [
{
"ink_passenger_identifier":"4C444445-34727261-4D6B514C-7139326B-56517472-36673D3D",
"passenger_name": "AASHIMA/TRAVELLER",
"booking": "GTB1000250",
"gender": "M",
"aci": "A",
"itinerary": [
{
"destination_station_code": "0CA",
"class_code": "Y",
"rail_car": "Car1",
"seat": "1C",
"accommodation": {
"hotel_code": "H01"
}
},
{
"destination_station_code": "0VA",
Example Response
Status: 200 OK
{
"result": "SUCCESS"
}
{protocol}://{domain}/api/{version}/train/delete_passengers
passengers Mandatory
ink_passenger_identifier Mandatory
Example Request
/train/delete_passengers
{
"passengers": [
{
"ink_passenger_identifier": "6D754D4B-4F56724B-3931784D-61375936-55383744-55674G4B"
}
]
}
Example Response
Status: 200 OK
{
"result": "SUCCESS"
{protocol}://{domain}/api/{version}/train/add_passengers_xml
Example Response
Status: 200 OK
{
"result": "SUCCESS"
}