Service Description
asrv.aero
Bag Data Request Service version 1.0
Namespace: http://www.asrv.aero/webservices/1.0/BagDataRequestService
Document revisions
Date | Description | Author |
|---|---|---|
| 27.06.2024 | This document describes Avinors Bag Data Request Service (BDRS). BDRS replaces the existing BiA-IQ Service found here: BiA IQ - BiA - Bagasje i Avinor - Avinor Wiki. One relevant difference is that BDRS is supported by a REST API, while BiA-IQ is supported by a SOAP API. | Andreas Wallin |
| 27.08.2025 | Bag State Data extended with fields bagBhsBatchId, bagLoadUnitId, bagLoadUnitSequenceNumber | Terje Landa |
1. Service facts
-
Name: BagDataRequestService
-
Operations, see Service operations.
- REST based service. Operations are accessed using HTTP GET.
- Service security: Decided by implementation.
-
Standard return codes are described here: Service error response
2. Introduction
2.1. Overview
This service description defines one service with a set of operations designed to support the need airports have for bag related state information from baggage handling systems (BHS)
-
- The overall state of bags for a spesific flight
- The state of individual bags for a spesific flight and/or airport
- All events for a spesific bag for a spesific flight
The state data is aggregated based on events (raw data) collected in BiA, through an application called BiA State Factory.
A set of use cases are described here: Avinor use cases
2.2. Implementation considerations
Any implementation of this service MUST use the XSD files provided here: XSDs
It is however up to the service provider which data elements to support.
Any service provider should make available documentation about the actual implementation, including:
-
- the address of the service.
- any limitations in the implementation.
2.3. Purpose of this service description
This service description has the following purpose:
-
-
- Describe of service in enough detail for a service provider to implement it.
- Describe the service so that a client (of this service) developer can use it.
- Make available the XSD files necessary to implement and use the service.
- Make it possible for relevant people at airports, airlines, handlers and other aviation partners to understand the available functionality and then to decide if to implement/use it or not.
-
2.4. Intended readership
-
- IT architects
- Developers
- Business architects
- Interested parties in the aviation community
3. Service operations
3.1. Operations
- The detailed transactions related to one bag - BagDetailsQuery
- The bag related state of one arrival - BagFlightArrivalStateQuery
- The bag related state of one departure - BagFlightDepartureStateQuery
- The "state" of one bag - BagStateQuery
3.2. Service error response
| name | comment |
|---|---|
| status | HTTP status code, like 400 |
| error | HTTP status message, like "Bad request" |
| message | Additional information about the error |
| timestamp | Time when the error occurred |
4. Data entities
4.1. BagDetailsResponse
|
name |
ADD Term |
Comment |
|---|---|---|
| bagDetailsData | List |
4.2. BagFlightArrivalStateResponse
| name | ADD Term | comment |
|---|---|---|
| bagFlightArrivalStateData | BagFlightArrivalStateData | List |
4.3. BagFlightDepartureStateResponse
| name | ADD Term | comment |
|---|---|---|
| bagFlightDepartureStateData | BagFlightDepartureStateData | List |
4.4. BagStateResponse
| name | ADD Term | comment |
|---|---|---|
| bagStateData | BagStateData | List |
|
name |
ADD Term |
Comment |
|---|---|---|
| sourceOrganization |
|
|
| sourceSystem | SourceSystem |
|
| sourceInterface | SourceTimestamp |
|
| sourceTimestamp | SourceTimestamp |
|
| bagTagNumber | BagTagNumber |
|
| bagCanBeLoaded | BagCanBeLoaded |
|
| bagCanBeTransported | BagCanBeTransported |
|
| passengerHasBoarded | PassengerHasBoarded |
|
| passengerHasPassedSecurity | PassengerHasPassedSecurity |
|
| bagEventCode | BagEventCode |
|
| bagEventErrorCode | BagEventErrorCode |
|
| bagEventDate | DateUTC |
|
| bagEventTimestamp | BagEventTimestamp |
|
| bagEventDescription | BagEventDescription |
|
| bagEventAirportIATA | BagEventAirportIATA |
|
| bagEventLocation | BagEventLocation |
|
| bagPreviousAirportIATA | BagPreviousAirportIATA |
|
| bagNextAirportIATA | BagTagNumber |
|
| bagFinalAirportIATA | FinalAirportIATA |
|
| bagDepartureFlightId | BagDepartureFlightId |
|
| bagDepartureSOBT | BagDepartureSOBT |
|
| bagArrivalFlightId | BagArrivalFlightId |
|
| bagArrivalSOBT | BagSOBT |
|
| bagTypeIndicator | BagTypeIndicator |
|
| bagSizeIndicator | BagSizeIndicator |
|
| bagLostIrregularityCode | BagLostIrregularityCode |
|
| bagLostAirportIATA | BagLostAirportIATA |
|
| bagLostDate | BagLostDate |
|
| bagLostFlightId | BagLostFlightId |
|
| bagLostAdditionalData | BagLostAdditionalData |
|
| bagWeight | BagWeight |
|
| bagLength | BagLength |
|
| bagWidth | BagWidth |
|
| bagHeight | BagHeight |
|
| bagCategory | BagCategory |
|
| bagIsPrio | BagIsPriority |
|
| bagIsRush | BagIsRush |
|
| bagIsCrew | BagIsCrew |
|
| bagAdditionalInfoCodes | BagAdditionalInfoCode |
|
| bagPlannedBin | BagPlannedBin |
|
| bebft | BEBFT |
|
| bagImages | BagImage | List, see also BagImage |
| bagSegments | BagSegment | List |
| name | ADD Term | Comment |
|---|---|---|
| classOfTravel | BookingClass |
|
| operatingAirlineIATA | OperatingAirlineIATA |
|
| flightId | FlightId |
|
| flightDepartureDate | FlightDepartureDate |
|
| departureAirportIATA | DepartureAirportIATA |
|
| arrivalAirportIATA | ArrivalAirportIATA |
|
| sobt | SOBT |
|
| sibt | SIBT |
|
| name | ADD Term | comment |
|---|---|---|
| arrivalFlightLegIdentifier | FlightLegIdentifier |
|
| sibt | SIBT |
|
| bagTagsActive | BagTagsActive |
|
| bagsToTransfer | Count |
|
| bagsLoaded | BagsLoaded |
|
| bagsDelivered | Count |
|
| bagFlightArrivalTransferState | BagFlightArrivalTransferStateData | List |
| name | ADD Term | comment |
|---|---|---|
| departureFlightLegIdentifier | FlightLegIdentifier |
|
| bagsLoaded | Count |
|
| bagsActive | Count |
|
| name | ADD Term | comment |
|---|---|---|
| departureFlightLegIdentifier | FlightLegIdentifier |
|
| soft | SOBT |
|
| bagTagsGenerated | BagTagsGenerated |
|
| bagTagsGeneratedLocal | BagTagsGeneratedLocal |
|
| bagTagsGeneratedNet | BagTagsGeneratedNet |
|
| bagTagsActive | BagTagsActive |
|
| bagsCheckedIn | BagsCheckedIn |
|
| bagsFromLocal | BagsFromLocal |
|
| bagsFromLocalLoaded | BagsFromLocalLoaded |
|
| bagsFromLocalDeliveredToBhsFlightBin | BagsFromLocalDeliveredToBhsFlightBin |
|
| bagsFromTransfer | BagsFromTransfer |
|
| bagsFromTransferLoaded | BagsFromTransferLoaded |
|
| bagsSeenInBHS | BagsSeenInBHS |
|
| bagsDeliveredToBhsFlightBin | BagsDeliveredToBhsFlightBin |
|
| bagsDeliveredToBhsProblemBin | BagsDeliveredToBhsProblemBin |
|
| bagCanBeLoadedCount | BagCanBeLoadedCount |
|
| bagCanBeTransportedCount | BagCanBeTransportedCount |
|
| baggageCountLoaded | BaggageCountLoaded |
|
| bagLoadedInAircraftCount | BagLoadedInAircraftCount |
|
| bagLoadedInContainerCount | BagLoadedInContainerCount |
|
| bagNonConveyableCount | BagNonConveyableCount |
|
| bagOversizeCount | BagOversizeCount |
|
| bagFlightDepartureTransferState | BagFlightDepartureTransferStateData | List |
| bagFlightDepartureBhsBinStateData | BagFlightDepartureBhsBinStateData | List |
|
name |
ADD Term |
comment |
|---|---|---|
| arrivalFlightLegIdentifier | FlightLegIdentifier |
|
| bagsLoaded | BaggageCount |
|
| bagsActive | Count |
|
| bagTagGeneratedNet | Count |
|
| bagLoadedInContainerCount | BaggageCount |
|
| bagCanBeLoadedCount | BagCanBeLoadedCount |
|
| bagLoadedInAircraftCount | BaggageCount |
|
| name | ADD Term | comment |
|---|---|---|
| bagBhsBinName | Bin |
|
| bagsDeliveredToBhsFlightBin | BagsDeliveredToBhsFlightBin |
|
| bagsDeliveredToBhsFlightProblemBin | BagsDeliveredToBhsProblemBin |
|
| name | ADD Term | comment |
|---|---|---|
| bagStateAirportIATA | AirportIATA |
|
| bagStateDate | DateUTC |
|
| bagTagNumberGDPR | BagTagNumberGDPR |
|
| bagTagNumber | BagTagNumber |
|
| bagTagLeadingDigit | BagTagLeadingDigit |
|
| bagTagIssuerCode | BagTagIssuerCode |
|
| bagTagSerialNumber | BagTagSerialNumber |
|
| bagTagStatus | BagTagStatus |
|
| bagCategory | BagCategory |
|
| bagPnrCode | BagPnrCode |
|
| bagPnrCodeGDPR | BagPnrCodeGDPR |
|
| passengerHasPassedSecurity | PassengerHasPassedSecurity |
|
| passengerHasBoarded | PassengerHasBoarded |
|
| bagPreviousAirportIATA | BagPreviousAirportIATA |
|
| bagArrivalFlightId | BagArrivalFlightId |
|
| bagArrivalOperatingAirportlineIATA | BagArrivalOperatingAirlineIATA | TBA |
| bagNextAirportIATA | BagNextAirportIATA |
|
| bagDepartureFlightId | BagDepartureFlightId |
|
| bagDepartureOperatingAirlineIATA | BagDepartureOperatingAirlineIATA | TBA |
| bagHandlerCodeArrival | BagHandlerCodeArrival | TBA |
| bagHandlerCodeDeparture | BagHandlerCodeDeparture | TBA |
| bagTypeIndicator | BagTypeIndicator |
|
| bagSizeIndicator | BagSizeIndicator |
|
| bagWeight | Kilo |
|
| bagIsPrio | BagIsPriority |
|
| bagIsRush | BagIsRush |
|
| bagIsCrew | BagIsCrew |
|
| bagCanBeLoaded | BagCanBeLoaded |
|
| bagCanBeTransported | BagCanBeTransported |
|
| bagNewTagNumber | BagNewTagNumber | TBA |
| bagPreviousTagNumber | BagPreviousTagNumber | TBA |
| bagTotalTimeInBhs | BagTotalTimeInBhs |
|
| bagNetTimeInBhs | BagNetTimeInBhs |
|
| bagTotalTimeInMcs | BagTotalTimeInMcs |
|
| bagTotalTimeAtSecScreen | BagTotalTimeAtSecScreen |
|
| bagTimeAtAutSecScreen | BagTimeAtAutSecScreen |
|
| bagTimeAtManSecScreen | BagTimeAtManSecScreen |
|
| bagTotalTimeInEbs | BagTotalTimeInEbs |
|
| bagBhsDeliveryAttemptsTime | BagBhsDeliveryAttemptsTime |
|
| bagBhsTransportTime | BagBhsTransportTime |
|
| bagBhsTimeExceededBy | BagBhsTimeExceededBy | TBA |
| bagBhsTimeExceededGroup | BagBhsTimeExceededGroup | TBA |
| bagFinalAirportIATA | BagFinalAirportIATA |
|
| bagBhsTransportTime | BagBhsTransportTime |
|
| bagEventCount | BagEventCount |
|
| bagInfoMsgCount | BagInfoMsgCount |
|
| bagToMcsCount | BagToMcsCount |
|
| bagBhsBinDeliveryAttempts | BagBhsBinDeliveryAttempts |
|
| btgrt | BTGRT |
|
| bagTagPrintedLocation | BagTagPrintedLocation |
|
| bfcat | BFCAT |
|
| bagFirstRejectReason | BagFirstRejectReason |
|
| bacit | BACIT |
|
| bagCheckinType | BagCheckinType |
|
| bagCheckinLocation | BagCheckinLocation |
|
| babbt | BABBT |
|
| btfst | BTFST |
|
| btast | BTAST |
|
| btmst | BTMST |
|
| btl1t | BTL1T |
|
| btl2t | BTL2T |
|
| btl3t | BTL3T |
|
| btl4t | BTL4T |
|
| btl5t | BTL5T |
|
| bftSt | BFLST |
|
| bfast | BFAST |
|
| bfmst | BFMST |
|
| bfl1t | BFL1T |
|
| bfl2t | BFL2T |
|
| bfl3t | BFL3T |
|
| bfl4t | BFL4T |
|
| bfl5t | BFL5T |
|
| btmct | BTMCT |
|
| bfmct | BFMCT |
|
| btebt | BTEBT |
|
| bfebt | BFEBT |
|
| bebft | BEBFT |
|
| btbbt | BTBBT |
|
| bagPlannedBin | BagPlannedBin |
|
| bagActualBin | BagActualBin |
|
| bfbbt | BFBBT |
|
| bloat | BLOAT |
|
| bunlt | BUNLT |
|
| btott | BTOTT |
|
| baobt | BAOBT |
|
| btpate | BTPATE |
|
| btpat | BTPAT |
|
| sobt | SOBT |
|
| aobt | AOBT |
|
| sibt | SIBT |
|
| aibt | AIBT |
|
| bagWasRejected | BagWasRejected |
|
| bagWasDeliveredToBhsInTime | BagWasDeliveredToBhsInTime |
|
| bagWasDeliveredToBhsLate | BagWasDeliveredToBhsLate |
|
| bagWasDeliveredToBhsTooLate | BagWasDeliveredToBhsTooLate |
|
| bagWasDeliveredFromBhsInTime | BagWasDeliveredFromBhsInTime |
|
| bagWasDeliveredFromBhsLate | BagWasDeliveredFromBhsLate |
|
| bagWasDeliveredFromBhsTooLate | BagWasDeliveredFromBhsTooLate |
|
| bagWasSentToMcs | BagWasSentToMcs |
|
| bagWasSentToProblemBin | BagWasSentToProblemBin |
|
| bagBsmWasProblem | BagBsmWasProblem |
|
| bagTagWasNotSeenInBhs | BagTagWasNotSeenInBhs |
|
| bagHasLoadedEvent | BagHasLoadedEvent |
|
| bagWasLost | BagWasLost |
|
| bagLostIrregularityCode | BagLostIrregularityCode |
|
| bagLostAirportIATA | BagLostAirportIATA |
|
| bagLostDate | BagLostDate |
|
| bagLostFlightId | BagLostFlightId |
|
| bagLostAdditionalData | BagLostAdditionalData |
|
|
bagBhsBatchId |
BhsBatchId |
|
| bagLoadUnitId | LoadUnitId |
|
| bagLoadUnitSequenceNumber | BagLoadSequenceNumber |
|
5. Avinor use cases
6. Overview
This section describes how Avinor suggest to use this service to get bag state data for spesific flights. Others might use the service in a different way.
7. Use cases
1 GetBagFlightDepartureState
Get the overall bag state for a departing flight (1SK930) from OSL on 20th of may 2024
HTTP GET https://services.avinor.no/BIAIQService/v1/api/flight-departure-state?flightId=1SK0930&departureAirportIATA=OSL&flightDepartureDate=2024-05-30
This will return a BagFlightDepartureStateResponse object
Get the state for all bags for a departing flight (1SK930) from OSL on 20th of may 2024
HTTP GET https://services.avinor.no/BIAIQService/v1/api/bag-state?airportIATA=OSL&startTime=2024-05-30T07:00:00Z&endTime=2024-05-30T19:00:00Z&flightId=1SK0930
This will return a BagStateResponse object
Get all events for a specific bag on OSL on 20th of may 2024
HTTP GET https://services.avinor.no/BIAIQService/v1/api/bag-details?bagTagNumber=0000110082&airportIATA=OSL&startTime=2024-05-30T00:00:00Z&endTime=2024-05-31T00:00:00Z
This will return a BagDetailsResponse object
8. XSDs
| File | Created | Comment |
|---|---|---|
| 2024-05-29 10:43 |