export type LogisticsIdentifierTypeEnum = 'AIR_WAYBILL' | 'BILL_OF_LADING' | 'HOUSE_BILL_OF_LADING' | 'BOOKING_NUMBER' | 'CARRIER_IATA' | 'CARRIER_ICAO' | 'CARRIER_NAME' | 'CARRIER_SCAC' | 'FFW_SCAC' | 'NVOCC_SCAC' | 'NVOCC_NAME' | 'FFW_NAME' | 'FFW_MASTER_ID' | 'NVOCC_MASTER_ID' | 'CONTAINER_ID' | 'CUSTOMER_REFERENCE' | 'DELIVERY_NUMBER' | 'EXTERNAL' | 'FLIGHT_NUMBER' | 'ORDER' | 'PICKUP' | 'PRO' | 'PURCHASE_ORDER' | 'RAIL_CAR_ID' | 'RAIL_WAYBILL' | 'TRACKING_NUMBER' | 'TRAILER_ID' | 'UNKNOWN' | 'VESSEL_IMO' | 'VESSEL_NAME' | 'WAYBILL' | 'VESSEL_CALL_SIGN' | 'VESSEL_MMSI' | 'CARRIER_US_DOT_NUMBER' | 'CARRIER_MC_NUMBER' | 'SUBSCRIPTION_ID' | 'HOUSE_AIR_WAYBILL' | 'SALES_ORDER' | 'WAREHOUSE_MOVEMENT_ORDER' | 'ADVANCED_SHIPMENT_NOTICE' | 'DRIVER_MOBILE_PHONE_NUMBER' | 'VEHICLE_ID' | 'LICENSE_PLATE' | 'TRAILER_LICENSE_PLATE' | 'SENSITECH_DEVICE_ID' | 'EMERSON_DEVICE_ID' | 'TIVE_DEVICE_ID' | 'ZILLION_DEVICE_ID' | 'VOYAGE_NUMBER' | 'CARRIER_MASTER_ID' | 'CARRIER_NMC_ID' | 'CONTAINER_TYPE' | 'TRAIN_NUMBER' | 'WAGON_ID' | 'TRAIN_ID' | 'CAPACITY_PROVIDER_ACCOUNT_GROUP' | 'CAPACITY_PROVIDER_ACCOUNT_CODE' | 'SERIAL_NUMBER' | 'VEHICLE_IDENTIFICATION_NUMBER' | 'REFERENCE_NUMBER' | 'CONTAINER_PIN' | 'VESSEL_P44_ID' | 'EXPORT_CUSTOMS_BROKER' | 'IMPORT_CUSTOMS_BROKER' | 'POL_QUALITY_CONTROL_PROVIDER' | 'POD_QUALITY_CONTROL_PROVIDER' | 'AIRCRAFT_ICAO' | 'AIRLINE_NAME' | 'SEAL_NUMBER' | 'DRAYAGE_CARRIER_SCAC' | 'EXPORT_DRAYAGE_CARRIER_SCAC' | 'IMPORT_DRAYAGE_CARRIER_SCAC' | 'INBOUND_VOYAGE_NUMBER'; export type LogisticsIdentifier = {type?: LogisticsIdentifierTypeEnum | undefined, value?: string | undefined}; export type Currency = 'USD' | 'CAD' | 'MXN' | 'EUR'; export type MonetaryValue = {amount?: number | undefined, currency?: Currency | undefined}; export type TrackedShipmentCost = {identifiers?: Array | undefined, type?: ('UNKNOWN' | 'EXPORT_DEMURRAGE' | 'EXPORT_DETENTION' | 'IMPORT_DEMURRAGE' | 'IMPORT_DETENTION') | undefined, totalCost?: MonetaryValue | undefined, tier?: ('UNKNOWN' | 'FREE_PERIOD' | 'FIRST_PERIOD' | 'SECOND_PERIOD' | 'THEREAFTER_PERIOD') | undefined}; export type ShipmentContent = {minTemperatureThreshold?: number | undefined, maxTemperatureThreshold?: number | undefined, productCategory?: ('UNKNOWN' | 'FROZEN_FOOD' | 'REFRIGERATED_FOOD' | 'HOT_PREPARED_FOODS' | 'FRESH_MEAT_AND_POULTRY' | 'FROZEN_MEAT_AND_SEAFOOD' | 'FRESH_SEAFOOD' | 'DAIRY_PRODUCTS' | 'FROZEN_DAIRY' | 'FRESH_PRODUCE' | 'TROPICAL_FRUITS_AND_VEGETABLES' | 'ROOT_VEGETABLES' | 'WATERMELONS_AND_CUCUMBERS' | 'VACCINES_AND_BIOLOGICS' | 'ULTRA_COLD_STORAGE_VACCINES' | 'BLOOD_AND_PLASMA_PRODUCTS' | 'STERILE_INJECTABLE_MEDICATIONS' | 'DIAGNOSTIC_KITS_AND_MEDICAL_TESTING_EQUIPMENT' | 'LITHIUM_ION_BATTERIES' | 'SEMICONDUCTORS_AND_MICROCHIPS' | 'RUBBER_AND_POLYMER_BASED_AUTO_PARTS' | 'FRESH_CUT_FLOWERS' | 'TROPICAL_FLOWERS') | undefined, shipperTemperatureSetPoint?: number | undefined, truckloadZones?: (Array<'UNKNOWN' | 'ZONE1' | 'ZONE2' | 'ZONE3' | 'ZONE4'>) | undefined, thresholdDurationMinutes?: number | undefined}; export type TrackedShipmentDateTime = {dateTime?: string | undefined, endDateTime?: string | undefined, id?: string | undefined, lastModifiedDateTime?: string | undefined, source?: ('UNKNOWN' | 'CARRIER' | 'BROKER' | 'FFW' | 'USER' | 'CONTRACT' | 'GEOFENCE' | 'FACILITY' | 'P44' | 'NVOCC') | undefined, sourceIdentifiers?: Array | undefined, selected?: boolean | undefined, sequence?: number | undefined, type?: ('UNKNOWN' | 'PLANNED' | 'ACTUAL' | 'ESTIMATE') | undefined}; export type DocumentEventDetails = {documentType?: ('UNKNOWN' | 'BILL_OF_LADING' | 'HOUSE_BILL_OF_LADING' | 'AIRWAY_BILL' | 'COMMERCIAL_INVOICE' | 'CUSTOMS_DOCUMENTS' | 'PACKING_SLIP' | 'PACK_SLIP' | 'CERTIFICATE_OF_ORIGIN' | 'PROOF_OF_DELIVERY' | 'DELIVERY_RECEIPT' | 'ECMR' | 'WEIGHT_CERTIFICATE' | 'INSPECTION_CERTIFICATE' | 'LETTER_OF_AUTHORIZATION' | 'LUMPER_CERTIFICATE' | 'INVOICE' | 'HAZMAT_DOCUMENT' | 'SHIPPING_LABEL' | 'OTHER' | 'MISCELLANEOUS') | undefined, fileFormat?: ('UNKNOWN' | 'PDF' | 'TIF' | 'PNG' | 'GIF' | 'JPEG') | undefined, scope?: ('UNKNOWN' | 'SHIPPER' | 'CARRIER' | 'DRIVER') | undefined, url?: string | undefined, version?: number | undefined}; export type MobileTrackingEventDetails = {code?: ('UNKNOWN' | 'DRIVER_ACCEPTED_TERMS_AND_CONDITIONS' | 'DRIVER_INITIATED_APP_SIGNUP' | 'DRIVER_LOADED_ASSIGNED_SHIPMENT_IN_APP' | 'DRIVER_DELETED_ACCOUNT' | 'DRIVER_CLAIMED_SHIPMENT' | 'SHIPMENT_ASSIGNED_INVALID_PHONE_NUMBER' | 'DRIVER_OPENED_INVITATION_LINK' | 'DRIVER_ENTERED_INVALID_VERIFICATION_CODE' | 'DRIVER_CONFIRMED_PHONE_NUMBER' | 'DRIVER_COMPLETED_SHIPMENT_MANUALLY' | 'DRIVER_REJECTED_SHIPMENT_MANUALLY' | 'DRIVER_COMPLETED_SETUP' | 'DRIVER_PROVIDED_INSUFFICIENT_LOCATION_PERMISSION' | 'SHIPMENT_ASSIGNED_VOIP_NUMBER') | undefined}; export type OceanEventDetails = {code?: ('UNKNOWN' | 'GATE_OUT_EMPTY_CONTAINER_AT_TERMINAL' | 'BOOKING_CONFIRMED_BY_FFW' | 'BOOKING_CONFIRMED_BY_OCEAN_CARRIER' | 'BOOKING_CANCELLED' | 'ARRIVAL_OF_EMPTY_CONTAINER_AT_ORIGIN' | 'FULL_CONTAINER_READY_FOR_PICK_UP_AT_ORIGIN' | 'PICKED_UP_FULL_CONTAINER_AT_ORIGIN' | 'ARRIVAL_AT_EXPORT_WAREHOUSE' | 'PICKED_UP_AT_ORIGIN' | 'DEPARTURE_FROM_EXPORT_WAREHOUSE' | 'ARRIVAL_AT_ORIGIN_CFS' | 'LOAD_INTO_CONTAINER_AT_ORIGIN_CFS' | 'DEPARTURE_OF_CONTAINER_FROM_ORIGIN_CFS' | 'ARRIVAL_OF_FULL_CONTAINER_AT_INLAND_EXPORT_TERMINAL' | 'DISCHARGE_FULL_CONTAINER_AT_INLAND_EXPORT_TERMINAL' | 'LOAD_FULL_CONTAINER_AT_INLAND_EXPORT_TERMINAL' | 'DEPARTURE_FULL_CONTAINER_FROM_INLAND_EXPORT_TERMINAL' | 'GATE_IN_FULL_CONTAINER_AT_PORT_OF_LOADING' | 'EXPORT_CUSTOMS_DOCS_FILING' | 'EXPORT_CUSTOMS_HOLD' | 'EXPORT_CUSTOMS_CLEARANCE' | 'LOAD_FULL_CONTAINER_ONTO_VESSEL_AT_PORT_OF_LOADING' | 'VESSEL_DEPARTURE_FROM_PORT_OF_LOADING' | 'SHORT_SHIPPED_AT_PORT_OF_LOADING' | 'VESSEL_ARRIVAL_AT_TRANSSHIPMENT_PORT' | 'DISCHARGE_FULL_CONTAINER_FROM_VESSEL_AT_TRANSSHIPMENT_PORT' | 'LOAD_FULL_CONTAINER_ONTO_VESSEL_AT_TRANSSHIPMENT_PORT' | 'VESSEL_DEPARTURE_FROM_TRANSSHIPMENT_PORT' | 'SHORT_SHIPPED_AT_TRANSSHIPMENT_PORT' | 'ARRIVAL_AT_TRANSSHIPMENT_CFS' | 'DISCHARGE_AT_TRANSSHIPMENT_CFS' | 'LOAD_INTO_CONTAINER_AT_TRANSSHIPMENT_CFS' | 'DEPARTURE_FROM_TRANSSHIPMENT_CFS' | 'VESSEL_ARRIVAL_AT_PORT_OF_DISCHARGE' | 'DISCHARGE_FULL_CONTAINER_FROM_VESSEL_AT_PORT_OF_DISCHARGE' | 'CARRIER_HOLD_AT_PORT_OF_DISCHARGE' | 'CARRIER_RELEASE_AT_PORT_OF_DISCHARGE' | 'SHORT_SHIPPED_AT_PORT_OF_DISCHARGE' | 'IMPORT_CUSTOMS_DOCS_FILING' | 'IMPORT_CUSTOMS_HOLD' | 'IMPORT_CUSTOMS_CLEARANCE' | 'GATE_OUT_FULL_CONTAINER_AT_PORT_OF_DISCHARGE' | 'ARRIVAL_FULL_CONTAINER_AT_INLAND_IMPORT_TERMINAL' | 'DEPARTURE_OF_FULL_CONTAINER_FROM_INLAND_IMPORT_TERMINAL' | 'DISCHARGE_FULL_CONTAINER_AT_INLAND_IMPORT_TERMINAL' | 'LOAD_FULL_CONTAINER_AT_INLAND_IMPORT_TERMINAL' | 'ARRIVAL_OF_FULL_CONTAINER_AT_INLAND_IMPORT_TERMINAL' | 'ARRIVAL_AT_DESTINATION_CFS' | 'STRIP_AT_DESTINATION_CFS' | 'DEPARTURE_FROM_DESTINATION_CFS' | 'ARRIVAL_AT_IMPORT_WAREHOUSE' | 'DEPARTURE_FROM_IMPORT_WAREHOUSE' | 'PROOF_OF_DELIVERY' | 'GATE_OUT_EMPTY_CONTAINER_AT_DESTINATION' | 'ARRIVAL_OF_FULL_CONTAINER_AT_CONSIGNEE' | 'HANDOVER_TO_THIRD_PARTY' | 'READY_FOR_PICKUP_EMPTY_CONTAINER_AT_CONSIGNEE_LOCATION' | 'PICKED_UP_EMPTY_CONTAINER_FROM_CONSIGNEE' | 'GATE_IN_EMPTY_CONTAINER_AT_TERMINAL' | 'CONTAINER_ROLLED_AT_PORT_OF_LOADING' | 'CONTAINER_ROLLED_AT_TRANSSHIPMENT_PORT' | 'CONSIGNEE_NOTIFY' | 'EXPORT_HOLD' | 'EXPORT_AVAILABLE' | 'IMPORT_HOLD' | 'IMPORT_AVAILABLE' | 'PENDING_UPDATE' | 'SCHEDULED' | 'READY_FOR_PICK_UP_AT_ORIGIN' | 'ARRIVAL_AT_ORIGIN_CFS_OR_WAREHOUSE' | 'LOAD_AT_ORIGIN_CFS_OR_WAREHOUSE' | 'DEPARTURE_FROM_ORIGIN_CFS_OR_WAREHOUSE' | 'ARRIVAL_AT_INLAND_EXPORT_TERMINAL' | 'DISCHARGE_AT_INLAND_EXPORT_TERMINAL' | 'LOAD_AT_INLAND_EXPORT_TERMINAL' | 'DEPARTURE_FROM_INLAND_EXPORT_TERMINAL' | 'GATE_IN_FULL_AT_PORT_OF_LOADING' | 'LOAD_ONTO_VESSEL_AT_PORT_OF_LOADING' | 'DISCHARGE_FROM_VESSEL_AT_TRANSSHIPMENT_PORT' | 'LOAD_ONTO_VESSEL_AT_TRANSSHIPMENT_PORT' | 'DISCHARGE_FROM_VESSEL_AT_PORT_OF_DISCHARGE' | 'GATE_OUT_FULL_AT_PORT_OF_DISCHARGE' | 'ARRIVAL_AT_INLAND_IMPORT_TERMINAL' | 'DISCHARGE_AT_INLAND_IMPORT_TERMINAL' | 'LOAD_AT_INLAND_IMPORT_TERMINAL' | 'DEPARTURE_FROM_INLAND_IMPORT_TERMINAL' | 'ARRIVAL_AT_DESTINATION_CFS_OR_WAREHOUSE' | 'STRIP_AT_DESTINATION_CFS_OR_WAREHOUSE' | 'DEPARTURE_FROM_DESTINATION_CFS_OR_WAREHOUSE') | undefined}; export type QualityControlEventDetails = {code?: ('UNKNOWN' | 'SURVEY' | 'HELD' | 'DAMAGE_HELD' | 'PLANT_HELD' | 'QUALITY_CAMPAIGN_HELD' | 'CUSTOMS_HELD' | 'POWER_WASH_HELD' | 'OTHER_HELD' | 'QUALITY_CONTROL_HELD' | 'IMPORT_HELD' | 'RELEASE' | 'AVAILABLE' | 'EXPORT_SURVEY') | undefined}; export type RolloverDetails = Record; export type TrackedShipmentEventDetails = {documentDetails?: DocumentEventDetails | undefined, mobileTracking?: MobileTrackingEventDetails | undefined, ocean?: OceanEventDetails | undefined, qualityControl?: QualityControlEventDetails | undefined, rolloverDetails?: RolloverDetails | undefined}; export type TrackedShipmentEvent = {dateTime?: string | undefined, description?: string | undefined, dateTimes?: Array | undefined, details?: TrackedShipmentEventDetails | undefined, estimateDateTime?: string | undefined, estimateLastCalculatedDateTime?: string | undefined, id?: string | undefined, plannedDateTime?: string | undefined, plannedEndDateTime?: string | undefined, receivedDateTime?: string | undefined, routeSegmentId?: string | undefined, stopId?: string | undefined, type?: ('UNKNOWN' | 'TRACKING_INITIATE' | 'TRACKING_START' | 'ARRIVAL_AT_STOP' | 'DEPARTURE_FROM_STOP' | 'LOAD_ONTO_VEHICLE' | 'UNLOAD_FROM_VEHICLE' | 'TRACKING_END_DUE_TO_TIMEOUT' | 'TRACKING_END_BY_USER' | 'TRACKING_COMPLETE' | 'GATE_IN' | 'GATE_OUT' | 'FLIGHT_BOOKING' | 'MANIFEST' | 'RECEIVE_FROM_SHIPPER' | 'CONSIGNEE_NOTIFY' | 'DELIVERY' | 'WARNING' | 'EXCEPTION' | 'TRACKING_STOP' | 'EXCEPTION_LATE_DEPARTURE' | 'EXCEPTION_MISSED_CONNECTION' | 'GATE_IN_FULL' | 'GATE_IN_EMPTY' | 'GATE_OUT_EMPTY' | 'GATE_OUT_FULL' | 'LOAD' | 'DISCHARGE' | 'EXCEPTION_DELAYED' | 'EXCEPTION_DELIVERY_MISSED' | 'EXCEPTION_HELD' | 'EXCEPTION_PICKUP_MISSED' | 'AVAILABLE' | 'ENTERED_GEOFENCE' | 'EXITED_GEOFENCE' | 'INFO' | 'OUT_FOR_DELIVERY' | 'PICKED_UP' | 'RETURN_TO_SENDER' | 'TRACKING_FAILED' | 'UNAUTHORIZED' | 'PICKUP_MISSED' | 'SURVEY' | 'HELD' | 'CLEAN_TRUCK_FEE_CLEARANCE' | 'CLEAN_TRUCK_FEE_HOLD' | 'OTHER_HOLD' | 'OTHER_HOLD_CLEARANCE' | 'TERMINAL_CLEARANCE' | 'TERMINAL_HOLD' | 'TRAFFIC_MITIGATION_FEE_CLEARANCE' | 'TRAFFIC_MITIGATION_FEE_HOLD' | 'RELEASE' | 'DELAYED' | 'DELIVERY_MISSED' | 'ENTERED_INNER_GEOFENCE' | 'EXITED_INNER_GEOFENCE' | 'ENTERED_OUTER_GEOFENCE' | 'EXITED_OUTER_GEOFENCE' | 'ENTERED_FINAL_GEOFENCE' | 'EXITED_FINAL_GEOFENCE' | 'IDLE' | 'DRIVER_DENY_TRACKING' | 'UNKNOWN_EQUIPMENT_IDENTIFIER' | 'MISSING_EQUIPMENT_IDENTIFIER' | 'DISPATCH' | 'CUSTOMS_HOLD' | 'CUSTOMS_CLEARANCE' | 'CUSTOMS_DOCS_FILING' | 'CUSTOMS_TRANSIT_DOCS_ISSUED' | 'CUSTOMS_TRANSIT_DOCS_CLOSED' | 'CARRIER_HOLD' | 'RECEIVE_FROM_CARRIER' | 'ISSUE_FREIGHT_BILL' | 'FREIGHT_ON_HAND' | 'READY_FOR_CARRIAGE' | 'LAST_FREE_DAY' | 'MISSING_CARRIER' | 'STUFF' | 'STRIP' | 'SEAL_INSPECTION' | 'SEAL_REMOVAL' | 'SEAL_RESEAL' | 'HANDOVER' | 'DOCUMENT_ADD' | 'DOCUMENT_REMOVE' | 'REMOVE_FROM_BOOKING' | 'COST_UPDATE' | 'SHARING_STOPPED' | 'ROLLED_OVER' | 'BAD_ORDER' | 'BAD_ORDER_RELEASE') | undefined}; export type FlightInformation = {flightNumber?: string | undefined}; export type AirFlightDetails = {flightDetails?: Array | undefined}; export type PreviousOceanBooking = {bookingNumber?: string | undefined, lastSeenDateTime?: string | undefined}; export type OceanBookingUpdateDetails = {numberOfPreviousOceanBookings?: number | undefined, previousOceanBookings?: Array | undefined}; export type ProductCategoryBreachDetails = {breachStartDateTime?: string | undefined, productCategory?: ('UNKNOWN' | 'FROZEN_FOOD' | 'REFRIGERATED_FOOD' | 'HOT_PREPARED_FOODS' | 'FRESH_MEAT_AND_POULTRY' | 'FROZEN_MEAT_AND_SEAFOOD' | 'FRESH_SEAFOOD' | 'DAIRY_PRODUCTS' | 'FROZEN_DAIRY' | 'FRESH_PRODUCE' | 'TROPICAL_FRUITS_AND_VEGETABLES' | 'ROOT_VEGETABLES' | 'WATERMELONS_AND_CUCUMBERS' | 'VACCINES_AND_BIOLOGICS' | 'ULTRA_COLD_STORAGE_VACCINES' | 'BLOOD_AND_PLASMA_PRODUCTS' | 'STERILE_INJECTABLE_MEDICATIONS' | 'DIAGNOSTIC_KITS_AND_MEDICAL_TESTING_EQUIPMENT' | 'LITHIUM_ION_BATTERIES' | 'SEMICONDUCTORS_AND_MICROCHIPS' | 'RUBBER_AND_POLYMER_BASED_AUTO_PARTS' | 'FRESH_CUT_FLOWERS' | 'TROPICAL_FLOWERS') | undefined}; export type TemperatureSensorDetails = {productCategoryBreachDetails?: Array | undefined}; export type ExceptionDetail = {airFlightDetails?: AirFlightDetails | undefined, oceanBookingUpdateDetails?: OceanBookingUpdateDetails | undefined, temperatureSensorDetails?: TemperatureSensorDetails | undefined}; export type ShipmentExceptionInstance = {description?: string | undefined, detail?: ExceptionDetail | undefined, endDateTime?: string | undefined, id?: string | undefined, startDateTime?: string | undefined}; export type ShipmentException = {category?: ('UNKNOWN' | 'NO_TRACKING_METHOD' | 'RUNNING_LATE' | 'HOLD' | 'ROUTING' | 'ASSET' | 'DELIVERY' | 'TRACKING' | 'VISIBILITY_FREIGHT_FORWARDER' | 'VISIBILITY_AIRLINE' | 'VISIBILITY_GEOPOSITION_AGGREGATOR' | 'SENSOR' | 'TRANSPORTATION' | 'WEATHER' | 'NATURAL_DISASTER' | 'REGULATION' | 'STRIKE' | 'PUBLIC_SAFETY' | 'ACCIDENT' | 'CYBER' | 'INFRASTRUCTURE' | 'HAZARD' | 'GEOPOLITICAL' | 'WAR' | 'HEALTH' | 'HOLIDAYS' | 'PRODUCTION' | 'VISIBILITY_NO_TRACKING_METHODS' | 'VISIBILITY_API_PUSH' | 'VISIBILITY_API_PULL' | 'VISIBILITY_TELEMATICS' | 'VISIBILITY_APP' | 'DWELL' | 'TRANSIT_TIME') | undefined, definitionId?: string | undefined, namespace?: ('UNKNOWN' | 'TRUCKLOAD_TRACKING' | 'P44_DETECTED' | 'CARRIER_REPORTED' | 'ROOT_CAUSE_ANALYSIS' | 'DISRUPTION') | undefined, reason?: ('UNKNOWN' | 'MISSING_EQUIPMENT_IDENTIFIER' | 'TRACKING_METHOD_IDENTIFIER_MISMATCH' | 'UNKNOWN_VEHICLE_IDENTIFIER' | 'INVALID_EQUIPMENT_IDENTIFIER' | 'INVALID_PHONE_NUMBER' | 'ALL_SHORT' | 'REFUSED_DELIVERY' | 'BAD_ORDER' | 'CONTAINER_ROLLED' | 'SPLIT_FLIGHT' | 'SHIPMENT_HELD' | 'LATE_TO_CARRIER_PLANNED' | 'BOOKING_UPDATED' | 'MISSED_CONNECTION' | 'UNKNOWN_EQUIPMENT_IDENTIFIER' | 'FFW_NOT_SUPPORTED' | 'FFW_AUTHENTICATION_ERROR' | 'FFW_API_UNAVAILABLE' | 'UNSUPPORTED_AIRLINE' | 'INVALID_FLIGHT_NUMBER' | 'UNABLE_TO_SELECT_FLIGHT' | 'NO_POSITION_DATA_FOR_FLIGHT' | 'MULTIHOP_FLIGHT_UNKNOWN_LOCATION' | 'NO_DATA_FOR_AWB' | 'INVALID_HAWB' | 'FFW_NOT_ENABLED_FOR_TENANT' | 'TEMPERATURE_BREACHED' | 'TRANSPORTATION_RISK' | 'WEATHER_ALERT' | 'NATURAL_DISASTER_ALERT' | 'REGULATORY_RISK' | 'WORKER_STRIKE' | 'PUBLIC_SAFETY_RISK' | 'ACCIDENT_ALERT' | 'CYBER_RISK' | 'INFRA_RISK' | 'FIRE_AND_HAZARD' | 'POLITICAL_RISK' | 'WAR_RISK' | 'HEALTH_AND_DISEASE' | 'HOLIDAY_DELAYS' | 'SHUTDOWN_RISK' | 'CARRIER_DOES_NOT_HAVE_CONFIGURED_TRACKING_METHODS' | 'MISSING_PHONE_NUMBER' | 'SHIPMENT_INITIATION_FAILED' | 'CARRIER_NOT_ONBOARDED_FOR_TENANT' | 'DRIVER_ONBOARDING_INCOMPLETE' | 'UNSUCCESSFUL_SHIPMENT_FETCH_USING_APP' | 'LOCATION_ACCESS_INSUFFICIENT' | 'ONBOARDING_VERIFICATION_SMS_FAILED' | 'SHIPMENT_INVITE_SMS_FAILED' | 'VOIP_PHONE_NUMBER_ASSIGNED' | 'DRIVER_DENIED_TERMS_AND_CONDITIONS' | 'DRIVER_UNSUBSCRIBED_SMS_NOTIFICATION' | 'DRIVER_DENIED_LOCATION_ACCESS' | 'APP_CONFIRM_CODE_INVALID' | 'DWELL_AT_STOP' | 'VEHICLE_NEVER_ENTERED_GEOFENCE' | 'VEHICLE_NOT_FOUND' | 'NO_STATUS_UPDATES' | 'NO_TRACKING_DATA_FROM_VEHICLE' | 'IDENTIFIER_TYPE_MISMATCH_FOR_ONBOARDED_CARRIER' | 'NO_HISTORICAL_CARRIER_TRACKING' | 'NO_CARRIER_TRACKING_USING_API_FOR_TENANT' | 'NO_CARRIER_TRACKING_USING_API' | 'IMPORT_DWELL_TIME' | 'IMPORT_DEMURRAGE_RISK' | 'IMPORT_DETENTION_RISK') | undefined, status?: string | undefined, transportationMode?: ('AIR' | 'OCEAN' | 'RAIL' | 'UNKNOWN' | 'TRUCKLOAD' | 'PARCEL' | 'LTL' | 'BARGE') | undefined, timeline?: Array | undefined}; export type TrackedShipmentPosition = {dateTime?: string | undefined, latitude?: number | undefined, longitude?: number | undefined, receivedDateTime?: string | undefined, routeSegmentId?: string | undefined}; export type CustomAttribute = {name?: string | undefined, value?: string | undefined, values?: Array | undefined}; export type AccessGroup = {id?: string | undefined}; export type Exclusion = Record; export type PlannedVesselRouteSegment = {fromStopId?: string | undefined, toStopId?: string | undefined, transportationMode?: ('AIR' | 'OCEAN' | 'RAIL' | 'UNKNOWN' | 'TRUCKLOAD' | 'PARCEL' | 'LTL' | 'BARGE') | undefined, vesselName?: string | undefined, vesselImo?: string | undefined, vesselMmsi?: string | undefined}; export type VesselTrackingConfig = {enabled?: boolean | undefined, plannedVesselRouteSegments?: Array | undefined}; export type ShipmentPlan = {expectedTransportationModes?: (Array<'AIR' | 'OCEAN' | 'RAIL' | 'UNKNOWN' | 'TRUCKLOAD' | 'PARCEL' | 'LTL' | 'BARGE'>) | undefined, exclusions?: Array | undefined, vesselTracking?: VesselTrackingConfig | undefined}; export type WeightUnit = 'LB' | 'KG'; export type WeightMeasurement = {unit?: WeightUnit | undefined, value?: number | undefined}; export type WeightPerDistanceUnit = 'KG_PER_KM'; export type WeightPerDistanceMeasurement = {unit?: WeightPerDistanceUnit | undefined, value?: number | undefined}; export type DistanceUnit = 'FT' | 'M' | 'MI' | 'KM'; export type DistanceMeasurement = {unit?: DistanceUnit | undefined, value?: number | undefined}; export type VehicleType = {enumValue?: ('UNKNOWN' | 'AIR_FREIGHTER' | 'AIR_BELLY_FREIGHT' | 'AIR_UNKNOWN' | 'INLAND_WATERWAY_MOTOR_VESSEL_LT_650T' | 'INLAND_WATERWAY_MOTOR_VESSEL_650T_TO_1000T' | 'INLAND_WATERWAY_MOTOR_VESSEL_1000T_TO_2000T' | 'INLAND_WATERWAY_MOTOR_VESSEL_2000T_TO_3000T' | 'INLAND_WATERWAY_COUPLED_CONVOY' | 'INLAND_WATERWAY_PUSHED_CONVOY_2_TO_3_BARGES' | 'INLAND_WATERWAY_PUSHED_CONVOY_4_TO_5_BARGES' | 'INLAND_WATERWAY_PUSHED_CONVOY_6_BARGES' | 'INLAND_WATERWAY_TANKER_VESSELS' | 'INLAND_WATERWAY_CONTAINER_VESSELS_110M' | 'INLAND_WATERWAY_CONTAINER_VESSELS_135M' | 'INLAND_WATERWAY_CONTAINER_VESSELS_COUPLED_CONVOY' | 'RAIL_AVERAGE_MIXED' | 'RAIL_CONTAINER' | 'RAIL_CARS' | 'RAIL_CHEMICALS' | 'RAIL_COAL_STEEL' | 'RAIL_BUILDING_MATERIALS' | 'RAIL_MANUFACTURED_PRODUCTS' | 'RAIL_CEREALS' | 'RAIL_TRUCK_AND_TRAILER' | 'RAIL_TRAILER_ONLY' | 'ROAD_NA_VAN' | 'ROAD_NA_GENERAL' | 'ROAD_NA_AUTO_CARRIER' | 'ROAD_NA_DRAY' | 'ROAD_NA_EXPEDITED' | 'ROAD_NA_FLATBED' | 'ROAD_NA_HEAVY_BULK' | 'ROAD_NA_LTL_DRY_VAN' | 'ROAD_NA_MIXED' | 'ROAD_NA_MOVING' | 'ROAD_NA_PACKAGE' | 'ROAD_NA_REFRIGERATED' | 'ROAD_NA_SPECIALIZED' | 'ROAD_NA_TANKER' | 'ROAD_NA_TL_DRY_VAN' | 'ROAD_GLOBAL_VAN_LT_3500KG' | 'ROAD_GLOBAL_RIGID_TRUCK_3500KG_TO_7500KG' | 'ROAD_GLOBAL_RIGID_TRUCK_7500KG_TO_12T_GVW' | 'ROAD_GLOBAL_RIGID_TRUCK_12T_20T_GVW' | 'ROAD_GLOBAL_RIGID_TRUCK_20T_TO_26T_GVW' | 'ROAD_GLOBAL_RIGID_TRUCK_26T_TO_32T_GVW' | 'ROAD_GLOBAL_ARTIC_TRUCK_UP_TO_34T_GVW' | 'ROAD_GLOBAL_ARTIC_TRUCK_UP_TO_40T_GVW' | 'ROAD_GLOBAL_ARTIC_TRUCK_UP_TO_40T_GVW_SI_ENGINE' | 'ROAD_GLOBAL_ARTIC_TRUCK_UP_TO_40T_GVW_HPDI' | 'ROAD_GLOBAL_ARTIC_TRUCK_40T_GVW_LIGHTWEIGHT_TRAILER' | 'ROAD_GLOBAL_ARTIC_TRUCK_UP_TO_44T_GVW' | 'ROAD_GLOBAL_ARTIC_TRUCK_UP_TO_60T_GVW' | 'ROAD_GLOBAL_ARTIC_TRUCK_UP_TO_72T_GVW' | 'OCEAN_BULK_CARRIER_0_TO_9999_DWT' | 'OCEAN_BULK_CARRIER_10000_TO_34999_DWT' | 'OCEAN_BULK_CARRIER_35000_TO_59999_DWT' | 'OCEAN_BULK_CARRIER_60000_TO_99999_DWT' | 'OCEAN_BULK_CARRIER_100000_TO_199999_DWT' | 'OCEAN_BULK_CARRIER_200000_AND_UP_DWT' | 'OCEAN_CHEMICAL_TANKER_0_TO_4999_DWT' | 'OCEAN_CHEMICAL_TANKER_5000_TO_9999_DWT' | 'OCEAN_CHEMICAL_TANKER_10000_TO_19999_DWT' | 'OCEAN_CHEMICAL_TANKER_20000_TO_39999_DWT' | 'OCEAN_CHEMICAL_TANKER_40000_AND_UP_DWT' | 'OCEAN_GENERAL_CARGO_0_TO_4999_DWT' | 'OCEAN_GENERAL_CARGO_5000_TO_9999_DWT' | 'OCEAN_GENERAL_CARGO_10000_TO_19999_DWT' | 'OCEAN_GENERAL_CARGO_20000_AND_UP_DWT' | 'OCEAN_LNG_TANKER_0_TO_49999_CBM' | 'OCEAN_LNG_TANKER_50000_TO_99999_CBM' | 'OCEAN_LNG_TANKER_100000_TO_199999_CBM' | 'OCEAN_LNG_TANKER_200000_AND_UP_CBM' | 'OCEAN_OIL_TANKER_0_TO_4999_DWT' | 'OCEAN_OIL_TANKER_5000_TO_9999_DWT' | 'OCEAN_OIL_TANKER_10000_TO_19999_DWT' | 'OCEAN_OIL_TANKER_20000_TO_59999_DWT' | 'OCEAN_OIL_TANKER_60000_TO_79999_DWT' | 'OCEAN_OIL_TANKER_80000_TO_119999_DWT' | 'OCEAN_OIL_TANKER_120000_TO_199999_DWT' | 'OCEAN_OIL_TANKER_200000_AND_UP_DWT' | 'OCEAN_OTHER_LIQUIDS_TANKER_0_TO_999_DWT' | 'OCEAN_OTHER_LIQUIDS_TANKER_1000_AND_UP_DWT' | 'OCEAN_FERRY_ROPAX_0_TO_1999_GT' | 'OCEAN_FERRY_ROPAX_2000_TO_4999_GT' | 'OCEAN_FERRY_ROPAX_5000_TO_9999_GT' | 'OCEAN_FERRY_ROPAX_10000_TO_19999_GT' | 'OCEAN_FERRY_ROPAX_20000_AND_UP_GT' | 'OCEAN_REFRIGERATED_BULK_0_TO_1999_DWT' | 'OCEAN_REFRIGERATED_BULK_2000_TO_5999_DWT' | 'OCEAN_REFRIGERATED_BULK_6000_TO_9999_DWT' | 'OCEAN_REFRIGERATED_BULK_10000_AND_UP_DWT' | 'OCEAN_CONTAINER_AVERAGE') | undefined}; export type VehicleInfo = {type?: VehicleType | undefined, weight?: WeightMeasurement | undefined}; export type EmissionData = {cargoWeight?: WeightMeasurement | undefined, co2EmissionIntensity?: WeightPerDistanceMeasurement | undefined, distance?: DistanceMeasurement | undefined, loadFactor?: number | undefined, totalCO2Emissions?: WeightMeasurement | undefined, vehicleInfo?: VehicleInfo | undefined}; export type TrackedShipmentRouteSegment = {emissions?: EmissionData | undefined, fromStopId?: string | undefined, id?: string | undefined, identifiers?: Array | undefined, toStopId?: string | undefined, transportationMode?: ('AIR' | 'OCEAN' | 'RAIL' | 'UNKNOWN' | 'TRUCKLOAD' | 'PARCEL' | 'LTL' | 'BARGE') | undefined}; export type CountryCode = 'US' | 'CA' | 'MX' | 'AG' | 'BB' | 'BS' | 'BZ' | 'CR' | 'CU' | 'DM' | 'DO' | 'GD' | 'GT' | 'HN' | 'HT' | 'JM' | 'KN' | 'LC' | 'NI' | 'PA' | 'SV' | 'TT' | 'VC' | 'AI' | 'AW' | 'BL' | 'BM' | 'BQ' | 'CW' | 'GL' | 'GP' | 'KY' | 'MF' | 'MQ' | 'MS' | 'PM' | 'PR' | 'SX' | 'TC' | 'UM' | 'VG' | 'VI' | 'AT' | 'BE' | 'BG' | 'CY' | 'CZ' | 'DK' | 'DE' | 'EE' | 'ES' | 'FI' | 'FR' | 'GB' | 'GR' | 'HR' | 'HU' | 'IE' | 'IT' | 'LT' | 'LU' | 'LV' | 'MT' | 'NL' | 'PL' | 'PT' | 'RO' | 'SE' | 'SK' | 'SI' | 'CH' | 'IS' | 'LI' | 'NO' | 'AL' | 'ME' | 'MK' | 'RS' | 'TR' | 'AD' | 'AX' | 'BA' | 'BV' | 'BY' | 'FO' | 'GG' | 'GI' | 'IM' | 'IO' | 'JE' | 'MC' | 'MD' | 'SJ' | 'SM' | 'TF' | 'UA' | 'VA' | 'AE' | 'AF' | 'AM' | 'AZ' | 'BD' | 'BH' | 'BN' | 'BT' | 'CN' | 'GE' | 'HK' | 'ID' | 'IL' | 'IN' | 'IQ' | 'IR' | 'JO' | 'JP' | 'KG' | 'KH' | 'KP' | 'KR' | 'KW' | 'KZ' | 'LA' | 'LB' | 'LK' | 'MM' | 'MN' | 'MO' | 'MV' | 'MY' | 'NP' | 'OM' | 'PH' | 'PK' | 'PS' | 'QA' | 'RU' | 'SA' | 'SG' | 'SY' | 'TH' | 'TJ' | 'TL' | 'TM' | 'TW' | 'UZ' | 'VN' | 'YE' | 'AO' | 'BF' | 'BI' | 'BJ' | 'BW' | 'CD' | 'CF' | 'CG' | 'CI' | 'CM' | 'CV' | 'DJ' | 'DZ' | 'EG' | 'EH' | 'ER' | 'ET' | 'GA' | 'GH' | 'GM' | 'GN' | 'GQ' | 'GW' | 'HM' | 'KE' | 'KM' | 'LR' | 'LS' | 'LY' | 'MA' | 'MG' | 'ML' | 'MR' | 'MU' | 'MW' | 'MZ' | 'NA' | 'NE' | 'NG' | 'RE' | 'RW' | 'SC' | 'SD' | 'SH' | 'SL' | 'SN' | 'SO' | 'SS' | 'ST' | 'SZ' | 'TD' | 'TG' | 'TN' | 'TZ' | 'UG' | 'YT' | 'ZA' | 'ZM' | 'ZW' | 'AR' | 'BO' | 'BR' | 'CL' | 'CO' | 'EC' | 'FK' | 'GF' | 'GS' | 'GY' | 'PE' | 'PY' | 'SR' | 'UY' | 'VE' | 'AS' | 'AU' | 'CC' | 'CK' | 'CX' | 'FJ' | 'FM' | 'GU' | 'KI' | 'MH' | 'MP' | 'NC' | 'NF' | 'NR' | 'NU' | 'NZ' | 'PF' | 'PG' | 'PN' | 'PW' | 'SB' | 'TK' | 'TO' | 'TV' | 'VU' | 'WF' | 'WS' | 'AQ' | 'EL' | 'UK' | 'XK' | 'XS' | 'XI'; export type Address = {addressLines?: Array | undefined, city?: string | undefined, country?: CountryCode | undefined, postalCode?: string | undefined, state?: string | undefined}; export type GeoCoordinates = {latitude?: number | undefined, longitude?: number | undefined}; export type TrackedShipmentStopLocationIdentifier = {type?: ('AIRPORT_IATA' | 'AIRPORT_ICAO' | 'EXTERNAL' | 'LOCODE' | 'NAME' | 'PORT_UN_LOCODE' | 'FACILITY_ID' | 'RAIL_SPLC' | 'RAIL_UIC' | 'RAIL_EU_PLC' | 'UNKNOWN') | undefined, value?: string | undefined}; export type TrackedShipmentStopLocation = {address?: Address | undefined, coordinates?: GeoCoordinates | undefined, id?: string | undefined, identifiers?: Array | undefined, masterLocationId?: string | undefined, name?: string | undefined, timeZone?: string | undefined}; export type TrackedShipmentStop = {id?: string | undefined, location?: TrackedShipmentStopLocation | undefined, type?: ('UNKNOWN' | 'ORIGIN' | 'DESTINATION' | 'TRANSFER' | 'OTHER' | 'PORT_OF_LOADING' | 'TRANSSHIPMENT_PORT' | 'PORT_OF_DISCHARGE' | 'PICKUP' | 'DELIVERY' | 'RETURN' | 'WAREHOUSE' | 'HUB' | 'AIRPORT' | 'ORIGIN_CFS' | 'DESTINATION_CFS') | undefined}; export type ShipmentRouteInfo = {routeSegments?: Array | undefined, stops?: Array | undefined}; export type SimpleTrackedShipment = {attributes?: Array | undefined, accessGroups?: Array | undefined, createdDateTime?: string | undefined, id?: string | undefined, identifiers?: Array | undefined, lastModifiedDateTime?: string | undefined, plan?: ShipmentPlan | undefined, shipmentShareLink?: string | undefined}; export type TrackedShipment = {attributes?: Array | undefined, accessGroups?: Array | undefined, createdDateTime?: string | undefined, id?: string | undefined, identifiers?: Array | undefined, lastModifiedDateTime?: string | undefined, plan?: ShipmentPlan | undefined, routeInfo?: ShipmentRouteInfo | undefined, relatedShipments?: Array | undefined, shipmentShareLink?: string | undefined}; export type TrackedShipmentState = {endDateTime?: string | undefined, routeSegmentId?: string | undefined, startDateTime?: string | undefined, stopId?: string | undefined, type?: ('UNKNOWN' | 'AT_STOP' | 'IN_TRANSIT_AIRCRAFT' | 'IN_TRANSIT_VESSEL' | 'IN_TRANSIT_RAIL' | 'CUSTOMS_HOLD' | 'IN_TRANSIT' | 'COMPLETED' | 'SCHEDULED' | 'IDLE' | 'ACTION_REQUIRED') | undefined}; export type DataOriginator = {tenantUuid?: string | undefined, tenantName?: string | undefined, tenantId?: number | undefined, tenantRegion?: ('NA12' | 'EU12') | undefined}; export type DataRecipient = {tenantUuid?: string | undefined, tenantName?: string | undefined, tenantId?: number | undefined, tenantRegion?: ('NA12' | 'EU12') | undefined}; export type SharingContext = {dataOriginators?: Array | undefined, recipients?: Array | undefined}; export type SensorReadingTypeWithUnit = {sensorReadingType?: ('UNKNOWN' | 'ZONE1_DOOR' | 'ZONE2_DOOR' | 'ZONE3_DOOR' | 'ZONE4_DOOR' | 'ZONE1_RETURN_AIR_TEMPERATURE' | 'ZONE2_RETURN_AIR_TEMPERATURE' | 'ZONE3_RETURN_AIR_TEMPERATURE' | 'ZONE4_RETURN_AIR_TEMPERATURE' | 'ZONE1_AMBIENT_AIR_TEMPERATURE' | 'ZONE2_AMBIENT_AIR_TEMPERATURE' | 'ZONE3_AMBIENT_AIR_TEMPERATURE' | 'ZONE4_AMBIENT_AIR_TEMPERATURE' | 'ZONE1_SETPOINT_TEMPERATURE' | 'ZONE2_SETPOINT_TEMPERATURE' | 'ZONE3_SETPOINT_TEMPERATURE' | 'ZONE4_SETPOINT_TEMPERATURE') | undefined, unit?: ('UNKNOWN' | 'CELSIUS' | 'NO_UNIT') | undefined}; export type SensorContext = {availableSensorTypesWithUnits?: Array | undefined}; export type TrackedShipmentHistory = {costs?: Array | undefined, contents?: Array | undefined, events?: Array | undefined, exceptions?: Array | undefined, positions?: Array | undefined, shipment?: TrackedShipment | undefined, states?: Array | undefined, sharingContext?: SharingContext | undefined, sensorContext?: SensorContext | undefined}; export type CreateApiWebhookEndpointPathArgs = {webhook_endpoint_path: string, body: TrackedShipmentHistory}; export type CreateApiWebhookEndpointPathOptions = {baseUrl?: string | undefined, fetch?: typeof fetch | undefined}; /** * Example of shipment webhook payload. * * POST /{webhook_endpoint_path} */ export const createApiWebhookEndpointPath = async (args: CreateApiWebhookEndpointPathArgs, options?: CreateApiWebhookEndpointPathOptions) => { const {baseUrl = "https://webhook.example.com", fetch: fetchFn = fetch} = options ?? {} const query = new URLSearchParams() const headers = new Headers() headers.set('content-type', "application/json") const url = `${baseUrl.replace(/\/+$/, '')}/${encodeURIComponent(String(args.webhook_endpoint_path))}${query.size > 0 ? `?${query}` : ''}` const res = await fetchFn(url, {method: "POST", headers, body: JSON.stringify(args.body)}) if (!res.ok) throw new Error(`Request failed with status ${res.status}`, {cause: {status: res.status, body: await res.text()}}) return undefined };