openapi: "3.0.0" info: version: 1.0.1 title: APMT Track and Trace - Import Availability description: APMT Track and Trace - Import Availability API termsOfService: https://developer.apmterminals.com/terms contact: name: APM Terminals API Management Team email: api.support@apmterminals.com url: https://developer.apmterminals.com servers: - url: https://api.apmterminals.com/ description: Production API - url: https://api-sandbox.apmterminals.com/ description: Sandbox API paths: /import-availability: get: description: Returns Import Availability by container ID(s) operationId: getImportAvailabilityByContainerIdOrBlNumber parameters: - in: query schema: type: string name: assetId description: Either single or multiple Container IDs or Bill of Lading numbers seperated by commas (E.G. ABCD1234567,EFGH1234567,IJKL1234567, etc) required: true - in: query schema: type: string pattern: '^[A-Z]{3}$' name: facilityCode description: The Terminal UN Location Code to search for (USLAX for Los Angeles etc). Only accepts a single Terminal Code. Possible values are USLAX (Los Angeles, US), USMOB (Mobile, US), USNWK (Port Elizabeth, US), SEGOT (Gothenburg, Sweden), ITVDL (Vado, Italy)NGAPP (Apapa, Nigeria),BHKBS (Bahrain), ARBUE (Buenos Aires, Argentina) ESALG (Algeciras, Spain) NLRTM (Rotterdam Maasvlakte II), USMIA (Miami, US), MAPTM (Tangier, Morocco), INNSA (Mumbai, India), INPAV (Pipavav, India), JOAQB (Aqaba, Jordan), DKAAR (Aarhus, Denmark), GTPRQ (Puerto Quetzal,Guatemala) and ESBCN (Barcelona, Spain). required: true responses: '200': description: Successfully returned import availability data. content: application/json: schema: #type: array #items: $ref: '#/components/schemas/ImportAvailability' '400': description: Bad Request. content: application/json: schema: $ref: '#/components/schemas/ApiError' '401': description: The user is not authenticated in the system content: application/json: schema: $ref: '#/components/schemas/ApiError' '403': description: The user does not have permissions to access this endpoint content: application/json: schema: $ref: '#/components/schemas/ApiError' '404': description: Bad URL. content: application/json: schema: $ref: '#/components/schemas/ApiError' '500': description: Internal server error. content: application/json: schema: $ref: '#/components/schemas/ApiError' #default: # description: Sorry, an error has occured. # content: # application/json: # schema: # $ref: '#/components/schemas/ApiError' components: #securitySchemes: # oAuth2: # type: oauth2 # description: This API uses OAuth 2 with the implicit grant flow. [More info](https://api.example.com/docs/auth) # flows: # clientCredentials: # tokenUrl: "" # scopes: {} schemas: ImportAvailability: type: object properties: containerId: description: The unique identifier for the equipment, which should follow the BIC ISO Container Identification Number. type: string example: CARX4812090 billOfLading: description: Bill of Lading is the legal document issued to the customer, which confirms the carrier's receipt of the cargo from the customer acknowledging goods being shipped and specifying the terms of delivery. type: string example: 855230418 readyForDelivery: description: Advises if equipment is ready for delivery. type: boolean example: false containerState: description: Indicates which of the 8 different states is associated to the container. type: string enum: - ADVISED - INBOUND - ECIN - YARD - ECOUT - LOADED - DEPARTED - RETIRED dischargeDateTimeLocal: description: Date and local time with UTC offset, where equipment discharged from the vessel. type: string format: date-time example: '2019-12-06T00:00:00-07:00' yardLocation: description: Current location of the equipment in the yard. type: string example: COMMUNITY - OUT, Yard Wheeled (83639) containerHolds: description: String list of none more elements all container HOLDs including freight and customs HOLDs type: string example : '77, 78' storagePaidThroughDate: description: The last free day, charges will start occuring after this date type: string format: date-time example: '2019-12-06' demurrageOwed: description: Dollar amount owed to pickup the container. type: string example: '37975.00' sizeTypeHeight: description: Size-Type-Height of the container. type: string example: '40/GP/96' containerIsoCode: description: ISO code of the container. type: string example: '4500' containerGrossWeightKilos: description: Gross weight in kilos of the container. type: string example: '11940' containerGrossWeightPounds: description: Gross weight in pounds of the container. type: string example: '26323' hazardous: description: This field will identify if the specified container is considered hazardous by providing the hazardous class. type: string example: '8 1830' facilityOutDateTimeLocal: description: Date and local time with UTC offset, where the container gates out of the facility. type: string format: date-time example: '2019-11-30T10:23:02.053-07:00' vesselName: description: Name of vessel that the container will be discharging from. type: string example: 'MAERSK ENPING' vesselEtaDateTimeLocal: description: An estimated date and local time with UTC offset, where the associated vessel will arrive at port. type: string format: date-time example: '2019-11-27T08:00:00-07:00' shippingLine: description: The name of the shipper or container operator. type: string example: 'Maersk Line' appointment: description: Advises if equipment appointment has been set to pick up container. type: boolean example: false appointmentDateTimeLocal: description: Date and local time with UTC offset, that's been set to pick up container. type: string format: date-time example: '2019-11-02T15:45:37.627-07:00' holdsDescription: description: The description regarding container holds. type: string example: 'Clean Truck Fee,TMF Hold - Call Dispatcher' trainId: description: When the onward journey is by train - train Id (Gothenburg only). type: string example: 'GEN_TRUCK' trainLocation: description: When the onward journey is by train - position on the train (Gothenburg only). type: string example: 'GEN_TRUCKr' trainDestination: description: When the onward journey is by train - final destination (Gothenburg only). type: string example: 'SEGOT' trainPositionSlot: description: When the onward journey is by train - position on the rail car (Gothenburg only). type: string example: '' ApiError: type: object required: - method - requestUri - status - timestamp - message - debugMessage properties: method: type: string description: The request method type example: GET requestUri: type: string description: The request URI. status: type: string description: The textual representation of the response status. example: OK timestamp: type: string format: date-time description: The date and time the error occured. message: type: string description: High level error message. debugMessage: type: string description: Detailed error message. subErrors: type: array items: $ref: '#/components/schemas/ApiValidationError' description: The list of invalid fields in the request. ApiValidationError: type: object required: - field - rejectedValue - message properties: field: type: string description: The field that has failed validation. rejectedValue: type: string description: The value that has failed validation. message: type: string description: The reason and advice for failed validation. securitySchemes: oauth2: type: oauth2 description: APMT IAM OAuth 2.0 with client credentials only. flows: clientCredentials: tokenUrl: https://api.apmterminals.com/oauth/client_credential/accesstoken?grant_type=client_credentials scopes: client_write: Write data