---
title: "-"
method: POST
path: "/webhook-schema"
---

# -

`POST /webhook-schema`

## Request

- Base URL: `https://na12.api.project44.com`
- URL: `https://na12.api.project44.com/webhook-schema`
- Auth: OAuth 2
  - Client credentials
  - Token URL: `/api/v4/oauth2/token`
- TypeScript: <https://skmtc.dev/project44/apis/project44-rest-api/docs/webhook-schema/post.ts> (a function with typed inputs; its response is checked against the schema)

Example of how the webhook payload looks like.

## Request body

- UnifiedWebhookMessage
  - `createdDateTime` string, date-time: The date and time when the event was created in ISO format.
  - `context` UnifiedWebhookContext
    - `route` UnifiedWebhookRouteContext
      - `routeSegments` TrackedShipmentRouteSegment[]
        - `emissions` EmissionData: Describes emission data.
          - `cargoWeight` WeightMeasurement: A measure of weight with a value and unit
            - `unit` 'LB' | 'KG', enum: Weight measurement units (default: 'LB').
            - `value` number: Numeric value of a measurement
          - `co2EmissionIntensity` WeightPerDistanceMeasurement: A measure of weight per distance with a value and unit
            - `unit` 'KG_PER_KM', enum: Weight per distance measurement units (linear density)
            - `value` number: Numeric value of a measurement
          - `distance` DistanceMeasurement: A measure of distance with a value and unit
            - `unit` 'FT' | 'M' | 'MI' | 'KM', enum: Physical unit of measurement
            - `value` number: Numeric value of a measurement
          - `loadFactor` number, float: Ratio of weight or volume of cargo in the shipment to the vehicle's capacity.
          - `totalCO2Emissions` WeightMeasurement: A measure of weight with a value and unit
            - `unit` 'LB' | 'KG', enum: Weight measurement units (default: 'LB').
            - `value` number: Numeric value of a measurement
          - `vehicleInfo` VehicleInfo: Describes vehicle information used to compute emissions.
            - `type` VehicleType
              - …
            - `weight` WeightMeasurement: A measure of weight with a value and unit
              - …
        - `fromStopId` string, uuid: The starting stop of this route segment. Will always be populated on response.
        - `id` string, uuid: The id of this route segment. Will always be populated on response.
        - `identifiers` LogisticsIdentifier[]: Identifiers that are not part of the overall shipment but are relevant to this route segment.
          - `type` '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': The standard which defines who assigns the identifier and what it identifies. Required field.
          - `value` string: The value of this identifier. Required field.
        - `toStopId` string, uuid: The ending stop of this route segment. Will always be populated on response.
        - `transportationMode` 'AIR' | 'OCEAN' | 'RAIL' | 'UNKNOWN' | 'TRUCKLOAD' | 'PARCEL' | 'LTL' | 'BARGE': The mode of transportation on which the shipment was traveling. Will always be populated on response.
      - `stops` TrackedShipmentStop[]
        - `id` string, uuid: The id of this stop. Will always be populated on response.
        - `location` TrackedShipmentStopLocation: The location of the stop.
          - `address` Address: A postal address.
            - `addressLines` string[]: Street name, number, direction, PO box, etc. Only three address lines are currently permitted.
            - `city` string: Name of city, town, etc.
            - `country` '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', enum: Abbreviation of country (using ISO 3166 standards). (default: 'US')
            - `postalCode` string: The ZIP or postal code.
            - `state` string: Abbreviation of state, province, district, etc.
          - `coordinates` GeoCoordinates
            - `latitude` number, float: The approximate geographic latitude of a location, using the WGS84 coordinate system.
            - `longitude` number, float: The approximate geographic longitude of a location, using the WGS84 coordinate system.
          - `id` string, uuid: The id of the location.
          - `identifiers` TrackedShipmentStopLocationIdentifier[]: List of standard identifiers associated with this location.
            - `type` 'AIRPORT_IATA' | 'AIRPORT_ICAO' | 'EXTERNAL' | 'LOCODE' | 'NAME' | 'PORT_UN_LOCODE' | 'FACILITY_ID' | 'RAIL_SPLC' | 'RAIL_UIC' | 'RAIL_EU_PLC' | 'UNKNOWN': The type of identifier and authority who assigns these identifiers.
            - `value` string: The value of the identifier.
          - `masterLocationId` string, uuid: The master location id of the location.
          - `name` string: The name of the location.
          - `timeZone` string: TZ database identifier of the time zone at the stop (https://www.iana.org/time-zones)
        - `type` 'UNKNOWN' | 'ORIGIN' | 'DESTINATION' | 'TRANSFER' | 'OTHER' | 'PORT_OF_LOADING' | 'TRANSSHIPMENT_PORT' | 'PORT_OF_DISCHARGE' | 'PICKUP' | 'DELIVERY' | 'RETURN' | 'WAREHOUSE' | 'HUB' | 'AIRPORT' | 'ORIGIN_CFS' | 'DESTINATION_CFS': The type of stop.
    - `relatedShipments` UnifiedWebhookRelatedShipmentsContext
      - `relatedShipments` string[]
    - `shipment` UnifiedWebhookShipmentContext
      - `attributes` CustomAttribute[]
        - `name` string: The key (name) for the custom attribute. Must be unique.
        - `value` string
        - `values` string[]: The values for the custom attribute.
      - `createdDateTime` string, date-time: The date and time when the shipment was created in ISO format.
      - `identifiers` LogisticsIdentifier[]
        - `type` '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': The standard which defines who assigns the identifier and what it identifies. Required field.
        - `value` string: The value of this identifier. Required field.
      - `lastModifiedDateTime` string, date-time: The date and time when the shipment was last modified in ISO format.
      - `shipmentId` string: The unique identifier for the shipment.
      - `shipmentShareLink` string: A URL link to view the shipment details.
  - `dataType` string: The type of data contained in the payload.
  - `data` object
    - `eventNotification` UnifiedWebhookEventChangeNotification
      - `event` TrackedShipmentEvent: An event is something that occurs at a point in time for a shipment.
        - `dateTime` string, date-time: The time when this event occurred. If relevant, the offset will be relative to where the event occurred, otherwise will be in UTC. Will only be populated for events that have already happened.
        - `description` string: A human readable description of this event. Optional response field.
        - `dateTimes` TrackedShipmentDateTime[]: A list of times retrieved from different sources.
          - `dateTime` string, date-time: The time that this event occurred or will occur. If accompanied by endDateTime, this value denotes the start time of the resulting window.
          - `endDateTime` string, date-time: The end time of the window in which the event occurred or will occur.
          - `id` string, uuid: An identifier for the underlying record this dateTime was derived from. This is not unique per dateTime: dateTimes derived from the same underlying record carry the same value. Only populated when the providing source supplies one.
          - `lastModifiedDateTime` string, date-time: Denotes when the provided dateTime was last modified.
          - `source` 'UNKNOWN' | 'CARRIER' | 'BROKER' | 'FFW' | 'USER' | 'CONTRACT' | 'GEOFENCE' | 'FACILITY' | 'P44' | 'NVOCC': The source of the provided dateTime.<br><br>UNKNOWN - The source of the provided dateTime is unknown.<br>CARRIER -The dateTime is provided by CARRIER.<br>BROKER - The dateTime is provided by BROKER.<br>FFW - The dateTime is provided by FFW.<br>USER - The dateTime is provided by USER. Can only provide this value in POST/PUT. <br>CONTRACT - Contractually defined dateTime. <br>GEOFENCE - The dateTime is provided by GEOFENCE logic.<br>FACILITY - The dateTime is provided by a facility (e.g. terminal, airport, container depot, cross-dock station).<br>P44 - The dateTime is calculated by other P44 services.
          - `sourceIdentifiers` LogisticsIdentifier[]: An optional list of standardized 3rd party identifiers which provide more detail about the source of this dateTime. Can indicate a specific device, vehicle, carrier, or other freight entity.
            - `type` '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': The standard which defines who assigns the identifier and what it identifies. Required field.
            - `value` string: The value of this identifier. Required field.
          - `selected` boolean: Denotes whether this dateTime is the one used as the top level dateTime of the event.
          - `sequence` integer: A number that indicates the order in which dateTimes of the same type and source were received.
          - `type` 'UNKNOWN' | 'PLANNED' | 'ACTUAL' | 'ESTIMATE': The type of the dateTime provided.<br><br>PLANNED - Denotes that a dateTime is planned or scheduled to occur.<br>ACTUAL - Denotes that a dateTime actually occurred.<br>ESTIMATE - Denotes that a dateTime is a calculated estimate.
        - `details` TrackedShipmentEventDetails: Optional extended details of an event.
          - `documentDetails` DocumentEventDetails: Details of an event related to document handling
            - `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': Type of document
            - `fileFormat` 'UNKNOWN' | 'PDF' | 'TIF' | 'PNG' | 'GIF' | 'JPEG': Format of the document file
            - `scope` 'UNKNOWN' | 'SHIPPER' | 'CARRIER' | 'DRIVER': Scope of the document
            - `url` string: URL to access the document
            - `version` integer: Version number of the document
          - `mobileTracking` MobileTrackingEventDetails: Details of an event related to a mobile tracking
            - `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': ${MobileTrackingEventDetails.apiModel.code.value}
          - `ocean` OceanEventDetails: ${OceanEventDetails.apiModel.class.value}
            - `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': ${OceanEventDetails.apiModel.code.value}
          - `qualityControl` QualityControlEventDetails: Details of an event related to a quality control
            - `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': ${QualityControlEventDetails.apiModel.code.value}
          - `rolloverDetails` RolloverDetails: Describes details about rollover events
        - `estimateDateTime` string, date-time: The estimated time that this event is likely to occur. Only populated if event has not occurred yet.
        - `estimateLastCalculatedDateTime` string, date-time: The time when project44 last calculated the estimate for this event. Only populated if event has not occurred yet.
        - `id` string, uuid: The unique identifier of the event. Might not be provided for shipments created in 2024 and earlier.
        - `plannedDateTime` string, date-time: The planned time when this event is scheduled to occur. If plannedEndDateTime is set, this is the start of the planned window of time for the event.
        - `plannedEndDateTime` string, date-time: The end of the planned window of time for the event.
        - `receivedDateTime` string, date-time: The time when project44 received or calculated this event. Will only be populated for events that have already happened.
        - `routeSegmentId` string, uuid: If relevant, this will be populated with the id of a route segment on which this event occurred. This can be used to associate the event with a specific vehicle.
        - `stopId` string, uuid: If relevant, this will be populated with the id of the stop to which this event relates.
        - `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': The type of event that occurred. Will always be populated.
    - `stateNotification` UnifiedWebhookStateChangeNotification
      - `state` TrackedShipmentState: A state is some condition that the shipment was in between a start and end time. States are always started and ended by an event.
        - `endDateTime` string, date-time: The time that this state ended. May not be populated if the shipment is still in this state.
        - `routeSegmentId` string, uuid: If relevant, this will be populated with the id of a route segment on which this state occurred.
        - `startDateTime` string, date-time: The time that this state began. May not be populated if the shipment is not yet in this state or if we do not have data for when this state began.
        - `stopId` string, uuid: If relevant, this will be populated with the id of the stop to which this state relates
        - `type` 'UNKNOWN' | 'AT_STOP' | 'IN_TRANSIT_AIRCRAFT' | 'IN_TRANSIT_VESSEL' | 'IN_TRANSIT_RAIL' | 'CUSTOMS_HOLD' | 'IN_TRANSIT' | 'COMPLETED' | 'SCHEDULED' | 'IDLE' | 'ACTION_REQUIRED': The specific type of state that the shipment was in. Will always be populated.
    - `routeInfoNotification` UnifiedWebhookRouteInfoChangeNotification
      - `routeSegments` TrackedShipmentRouteSegment[]
        - `emissions` EmissionData: Describes emission data.
          - `cargoWeight` WeightMeasurement: A measure of weight with a value and unit
            - `unit` 'LB' | 'KG', enum: Weight measurement units (default: 'LB').
            - `value` number: Numeric value of a measurement
          - `co2EmissionIntensity` WeightPerDistanceMeasurement: A measure of weight per distance with a value and unit
            - `unit` 'KG_PER_KM', enum: Weight per distance measurement units (linear density)
            - `value` number: Numeric value of a measurement
          - `distance` DistanceMeasurement: A measure of distance with a value and unit
            - `unit` 'FT' | 'M' | 'MI' | 'KM', enum: Physical unit of measurement
            - `value` number: Numeric value of a measurement
          - `loadFactor` number, float: Ratio of weight or volume of cargo in the shipment to the vehicle's capacity.
          - `totalCO2Emissions` WeightMeasurement: A measure of weight with a value and unit
            - `unit` 'LB' | 'KG', enum: Weight measurement units (default: 'LB').
            - `value` number: Numeric value of a measurement
          - `vehicleInfo` VehicleInfo: Describes vehicle information used to compute emissions.
            - `type` VehicleType
              - …
            - `weight` WeightMeasurement: A measure of weight with a value and unit
              - …
        - `fromStopId` string, uuid: The starting stop of this route segment. Will always be populated on response.
        - `id` string, uuid: The id of this route segment. Will always be populated on response.
        - `identifiers` LogisticsIdentifier[]: Identifiers that are not part of the overall shipment but are relevant to this route segment.
          - `type` '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': The standard which defines who assigns the identifier and what it identifies. Required field.
          - `value` string: The value of this identifier. Required field.
        - `toStopId` string, uuid: The ending stop of this route segment. Will always be populated on response.
        - `transportationMode` 'AIR' | 'OCEAN' | 'RAIL' | 'UNKNOWN' | 'TRUCKLOAD' | 'PARCEL' | 'LTL' | 'BARGE': The mode of transportation on which the shipment was traveling. Will always be populated on response.
      - `stops` TrackedShipmentStop[]
        - `id` string, uuid: The id of this stop. Will always be populated on response.
        - `location` TrackedShipmentStopLocation: The location of the stop.
          - `address` Address: A postal address.
            - `addressLines` string[]: Street name, number, direction, PO box, etc. Only three address lines are currently permitted.
            - `city` string: Name of city, town, etc.
            - `country` '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', enum: Abbreviation of country (using ISO 3166 standards). (default: 'US')
            - `postalCode` string: The ZIP or postal code.
            - `state` string: Abbreviation of state, province, district, etc.
          - `coordinates` GeoCoordinates
            - `latitude` number, float: The approximate geographic latitude of a location, using the WGS84 coordinate system.
            - `longitude` number, float: The approximate geographic longitude of a location, using the WGS84 coordinate system.
          - `id` string, uuid: The id of the location.
          - `identifiers` TrackedShipmentStopLocationIdentifier[]: List of standard identifiers associated with this location.
            - `type` 'AIRPORT_IATA' | 'AIRPORT_ICAO' | 'EXTERNAL' | 'LOCODE' | 'NAME' | 'PORT_UN_LOCODE' | 'FACILITY_ID' | 'RAIL_SPLC' | 'RAIL_UIC' | 'RAIL_EU_PLC' | 'UNKNOWN': The type of identifier and authority who assigns these identifiers.
            - `value` string: The value of the identifier.
          - `masterLocationId` string, uuid: The master location id of the location.
          - `name` string: The name of the location.
          - `timeZone` string: TZ database identifier of the time zone at the stop (https://www.iana.org/time-zones)
        - `type` 'UNKNOWN' | 'ORIGIN' | 'DESTINATION' | 'TRANSFER' | 'OTHER' | 'PORT_OF_LOADING' | 'TRANSSHIPMENT_PORT' | 'PORT_OF_DISCHARGE' | 'PICKUP' | 'DELIVERY' | 'RETURN' | 'WAREHOUSE' | 'HUB' | 'AIRPORT' | 'ORIGIN_CFS' | 'DESTINATION_CFS': The type of stop.
    - `exceptionNotification` UnifiedWebhookExceptionChangeNotification
      - `exceptions` 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': To represent buckets of exceptions within a category. These will be visible in the UI when we display aggregated exceptions.
        - `definitionId` string, uuid: A reference to the definition of the exception. Every ExceptionDefinition contains a logic which determines how the exception would be derived.
        - `namespace` 'UNKNOWN' | 'TRUCKLOAD_TRACKING' | 'P44_DETECTED' | 'CARRIER_REPORTED' | 'ROOT_CAUSE_ANALYSIS' | 'DISRUPTION': Represents different classes of exceptions
        - `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': A code to identify the actual unit exception. This is the most granular enumeration to identify an exception.
        - `status` string: Represents current state of an exception. <br><br>ACTIVE- The shipment currently matches the exception criteria <br>RESOLVED- The exception was active on this shipment and has been resolved.
        - `transportationMode` 'AIR' | 'OCEAN' | 'RAIL' | 'UNKNOWN' | 'TRUCKLOAD' | 'PARCEL' | 'LTL' | 'BARGE': Transportation Mode on which the exception is assigned to
        - `timeline` ShipmentExceptionInstance[]: The timeline of the exception being applicable on the shipment. This object timeframes the status transitions.
          - `description` string: A human-readable understanding of the exception
          - `detail` ExceptionDetail: Detail of the exception
            - `airFlightDetails` AirFlightDetails
              - …
            - `oceanBookingUpdateDetails` OceanBookingUpdateDetails
              - …
            - `temperatureSensorDetails` TemperatureSensorDetails
              - …
          - `endDateTime` string, date-time: DateTime when the shipment exited out of the exception matching criteria.
          - `id` string, uuid: ID of the exception instance.
          - `startDateTime` string, date-time: DateTime when the shipment started matching the exception criteria.
    - `deletedShipment` UnifiedWebhookShipmentIdNotification
      - `shipmentId` string
  - `eventId` string: A unique identifier for the event.
  - `eventType` string: The type of event that triggered the webhook.

## Response `200`

OK

---

[API](https://skmtc.dev/project44/apis/project44-rest-api.md) - [All operations](https://skmtc.dev/project44/apis/project44-rest-api/llms.txt) - [OpenAPI document](https://skmtc.dev/project44/apis/project44-rest-api/revisions/cdf9675e2294?raw)
