> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://catena.ferndocs.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://catena.ferndocs.com/_mcp/server.

# Hos daily log modified

POST 

Emitted when an HOS daily log is modified in our database.

e.g. The record fetched from the TSP is different from what we had stored in our database and it prompted us to update the existing record.

Reference: https://catena.ferndocs.com/api-reference/notifications/webhook-events/hos-daily-log-modified

## Request

### Payload

- `version` (string, required) — Version of the schema used for this event
- `data` (list of BaseHosDailyLog, required) — The event payload, with one or more records of the specified type
- `webhook_id` (string, required) — Unique identifier for the webhook subscription that triggered this delivery
- `event_name` (string, optional, default: hos_daily_log.modified)
- `timestamp` (datetime, optional, nullable) — ISO 8601 timestamp when the event occurred
- `id` (string, optional, nullable) — Unique identifier for this specific event instance (UUID v7 for time-ordered sorting)
- `delivery_attempt` (integer, optional, default: 0) — The number of times the event has been attempted to be delivered

## Types

### BaseHosDailyLog

Base class for HOS daily logs.

- `id` (string, required) — Internal unique identifier for the telematics event record (Catena PK).
- `fleet_id` (string, required) — The Catena fleet this record belongs to (multi-tenant scope).
- `fleet_ref` (string, required, nullable) — The reference of the fleet in the partner system
- `source_name` (enum, required) — The underlying telematics platform that provided this data (e.g., `samsara`, `motive`, `hos247`). Note: Some platforms like `hos247` offer white-labeling, so multiple TSPs may share the same source_name — use `tsp_id` or `tsp_slug` to identify the specific ELD provider.
  - Allowed values: `ada`, `ai_eld`, `air_eld`, `alfa_eld`, `alpha_eld`, `als`, `anytrek_pro`, `anytrek_classic`, `apex_eld`, `apollo`, `apollocloud`, `ascend`, `att`, `awaregps`, `azuga`, `bigroad`, `bluehorse_eld`, `blueinktech`, `bouncie`, `budgetgps`, `catena_simulator`, `captain_eld`, `carrier_lynx`, `chronos`, `club_eld`, `cogo_eld`, `counting_trucks_eld`, `cyntrx`, `digital_eld`, `dragon_eld`, `dreyev`, `drive_hos`, `drive_hos_v2`, `driver_tech`, `dsg_elogs`, `dynamic_eld`, `eighteighteight_eld`, `eld_88`, `eld_books`, `eld_mandate`, `eld_mandate_prime`, `eroad`, `eva_eld`, `evo_eld`, `expressway_eld`, `extreme_eld`, `ezlogz`, `ez_lynk`, `factor_eld`, `firstgate`, `fleetcomplete`, `fleetcompletehub`, `fleethunt`, `fleetpulse`, `fleetsharp`, `fleetup`, `fm`, `fordpro`, `forwardthinking`, `forza_eld`, `geotab`, `gpsinsight`, `gpstab`, `gpstrackit`, `grand_eld`, `greenlight`, `groundhog`, `hcss`, `hos247`, `hutch`, `intellishift`, `ironman_eld`, `isaac`, `jjkeller`, `kinexaiot`, `knight_eld`, `konexial`, `lioneight`, `linxup`, `loop_eld`, `lucid_eld`, `luna_eld`, `lytx`, `lytxv3`, `mapon`, `matrack`, `maven`, `mdm_eld`, `michelin_connected_fleet`, `mobilefleet`, `moonlight_eld`, `motion_eld`, `motive`, `my_drivebook`, `my_logs_eld`, `nero`, `netradyne`, `new_eld_world`, `nextgen_eld`, `nextraq`, `nexus_eld`, `omnitracs`, `1sew_eld`, `onestep`, `ontime_eld`, `optima`, `optimus_tracker`, `orbcomm`, `orient_eld`, `ozod_eld`, `panda_eld`, `patriot_eld`, `payd`, `peak_eld`, `pedigree`, `peoplenet`, `phillips_connect`, `phoenix`, `pop_eld`, `prologs`, `proride_eld`, `qualitylogs_eld`, `randmcnally`, `rastrac`, `raven`, `redfox`, `regulog_eld`, `ridehub`, `rigbot`, `roadeazy`, `roadready`, `rock_eld`, `rollingtrans`, `routemate`, `route_one_eld`, `royal_eld`, `safelane`, `samsara`, `selectivedrive`, `simba_eld`, `skybitz`, `smart_elds`, `sparkle_eld`, `spireon`, `sts_eld`, `sun_eld`, `surfsight`, `swift`, `switchboard`, `synergy_eld`, `teletracnavman`, `teletracnavman_director`, `telogis`, `tenna`, `teslemetry`, `thermo_king`, `think`, `tive`, `topcompliance_eld`, `traccar`, `trackease_eld`, `trackpro`, `traclog`, `transflo`, `trimac`, `trimble`, `truckford`, `truckspy`, `truckx`, `trueroad_eld`, `tt`, `txt_eld`, `us_fast_eld`, `verizon_connect`, `vista_eld`, `vistracks`, `vlog_eld`, `vulcansols_eld`, `wialon`, `webfleet`, `wizefleet_eld`, `xplore_eld`, `zigzag_eld`, `zms_eld`, `zonar`, `zubie`
- `connection_id` (string, required) — The specific fleet↔TSP connection through which this record was sourced.
- `source_id` (string, required) — The ID of the record in the TSP or a deterministic ID/Hash generated from a composite unique key
- `created_at` (datetime, required) — Immutable: first time this record was ingested into our system.
- `updated_at` (datetime, required) — Last time we modified this record in our system.
- `occurred_at` (datetime, required) — When the underlying event/observation occurred, as reported by the TSP, or the moment it was ingested by us if not available.
- `tsp_id` (string, optional, nullable) — Unique identifier of the TSP at Catena Telematics from which this record was ingested.
- `tsp_slug` (string, optional, nullable) — Human readable slug of the TSP at Catena Telematics from which this record was ingested.
- `deleted_at` (datetime, optional, nullable) — Logical delete marker: when the TSP stopped reporting this record.
- `execution_id` (string, optional, nullable) — Identifier for the ingestion execution that processed this record (for tracing).
- `schedule_id` (string, optional, nullable) — Identifier for the ingestion schedule that triggered this record's processing (for tracing).
- `extras` (map from string to any, optional, nullable) — Additional data available in the TSP (e.g., we may have `external_id`, `provider_resource_id`, etc. — this field captures all those extra attributes in a flexible way).
- `source_driver_id` (string, optional, nullable) — External source system driver identifier (from the TSP).
- `driver_id` (string, optional, nullable) — Internal driver identifier (Catena FK).
- `source_vehicle_id` (string, optional, nullable) — External source system vehicle identifier (from the TSP).
- `vehicle_id` (string, optional, nullable) — Internal vehicle identifier (Catena FK).
- `log_date` (date, optional, nullable) — Local calendar date this daily log covers (RODS date).
- `hos_ruleset_code` (enum, optional, nullable) — Driver's HOS cycle ruleset code for the day (normalized; see ref_hos_ruleset_codes).
  - Allowed values: `US_INT_PROP_60_7`, `US_INT_PROP_60_7_BIG`, `US_INT_PROP_60_7_BIG_SLP`, `US_INT_PROP_60_7_NORST`, `US_INT_PROP_60_7_NORST_SLP`, `US_INT_PROP_60_7_NOBRK`, `US_INT_PROP_60_7_NOBRK_BIG`, `US_INT_PROP_60_7_NOBRK_BIG_SLP`, `US_INT_PROP_60_7_NOBRK_SLP`, `US_INT_PROP_60_7_SH`, `US_INT_PROP_60_7_SH_NORST`, `US_INT_PROP_70_8`, `US_INT_PROP_70_8_BIG`, `US_INT_PROP_70_8_BIG_SLP`, `US_INT_PROP_70_8_NORST`, `US_INT_PROP_70_8_NORST_SLP`, `US_INT_PROP_70_8_NOBRK`, `US_INT_PROP_70_8_NOBRK_BIG`, `US_INT_PROP_70_8_NOBRK_BIG_SLP`, `US_INT_PROP_70_8_NOBRK_SLP`, `US_INT_PROP_70_8_SH`, `US_INT_PROP_70_8_SH_14H`, `US_INT_PROP_70_8_SH_NORST`, `US_INT_PROP_SH_14H`, `US_INT_PAX_60_7`, `US_INT_PAX_60_7_SH`, `US_INT_PAX_70_8`, `US_INT_PAX_70_8_SH`, `US_INT_SALESP`, `US_INT_SALESP_NCDL_SH`, `US_INT_OILTR_60_7`, `US_INT_OILTR_70_8`, `US_INT_OILWL_60_7`, `US_INT_OILWL_70_8`, `US_INT_RAIL_EX`, `US_INT_PROP_SLPVAR`, `US_INT_PROP_60_7_SLPVAR`, `US_INT_PROP_70_8_SLPVAR`, `US_INT_CARRIER_EX`, `US_INT_NOHOS_7`, `US_INT_NOHOS_8`, `US_TX_INTRA_PROP_70_7`, `US_TX_INTRA_SH_70_7`, `US_TX_INTRA_SH_70_8`, `US_CA_INTRA_PROP_80_8`, `US_CA_INTRA_PAX_80_8`, `US_CA_INTRA_FARM_112_8`, `US_CA_INTRA_FARM_BRK`, `US_CA_INTRA_FLAM_80_8`, `US_CA_INTRA_FLAM_BRK`, `US_CA_INTRA_SCH_80_8`, `US_CA_INTRA_SCH_BRK`, `US_AK_INTRA_PROP_70_7`, `US_AK_INTRA_PROP_80_8`, `US_AK_INTRA_PAX_70_7`, `US_AK_INTRA_PAX_80_8`, `US_AK_INTRA_PROP_70_7_SLP`, `US_AK_INTRA_PROP_80_8_SLP`, `US_FL_INTRA_PROP_70_7`, `US_FL_INTRA_PROP_80_8`, `US_FL_INTRA_SH_70_7`, `US_FL_INTRA_SH_80_8`, `US_OR_INTRA_PROP_70_7`, `US_OR_INTRA_PROP_80_8`, `US_MD_INTRA_SH_70_7`, `US_MD_INTRA_SH_80_8`, `US_NE_INTRA_PROP_70_7`, `US_NE_INTRA_PROP_80_8`, `US_NC_INTRA_PROP_70_7`, `US_NC_INTRA_PROP_80_8`, `US_ND_INTRA_PROP_70_7`, `US_ND_INTRA_SH_70_7`, `US_SC_INTRA_PROP_70_7`, `US_SC_INTRA_PROP_80_8`, `US_WA_INTRA_PROP_70_7`, `US_WA_INTRA_PROP_80_8`, `US_WI_INTRA_PROP_70_7`, `US_WI_INTRA_PROP_80_8`, `CA_FED_C1_70_7`, `CA_FED_C2_120_14`, `CA_FED_C1_TEAM`, `CA_FED_C2_TEAM`, `CA_FED_NOHOS`, `CA_N60_C1_80_7`, `CA_N60_C2_120_14`, `CA_N60_C1_TEAM`, `CA_N60_C2_TEAM`, `CA_N60_NOHOS`, `CA_N60_OIL`, `CA_N60_OIL_TEAM`, `CA_AB_PROV_PROP_70_7`, `CA_SK_PROV_PROP_70_7`, `CA_SK_PROV_FERT_EX`, `CA_BC_PROV_LOG`, `CA_S60_OIL`, `CA_OIL_TEAM`, `US_INT_OILTR_60_7_BIG`, `US_INT_OILTR_60_7_BIG_SLP`, `US_INT_OILTR_60_7_SLP`, `US_INT_OILTR_70_8_BIG`, `US_INT_OILTR_70_8_BIG_SLP`, `US_INT_OILTR_70_8_SLP`, `US_CA_INTRA_OILTR_80_8`, `US_CA_INTRA_OILTR_PROP`, `US_INT_OILTR_60_7_NOBRK`, `US_INT_OILTR_60_7_NOBRK_BIG`, `US_INT_OILTR_60_7_NOBRK_BIG_SLP`, `US_INT_OILTR_60_7_NOBRK_SLP`, `US_INT_OILTR_70_8_NOBRK`, `US_INT_OILTR_70_8_NOBRK_BIG`, `US_INT_OILTR_70_8_NOBRK_BIG_SLP`, `US_INT_OILTR_70_8_NOBRK_SLP`, `US_INT_OILTR_SH_12H`, `US_INT_OILTR_SH_14H`, `US_INT_OILTR_70_8_SH_12H`, `US_INT_OILTR_70_8_SH_14H`, `US_TX_INTRA_OILTR_70_7`, `US_INT_OILWL_60_7_BIG`, `US_INT_OILWL_60_7_BIG_SLP`, `US_INT_OILWL_60_7_SLP`, `US_INT_OILWL_70_8_BIG`, `US_INT_OILWL_70_8_BIG_SLP`, `US_INT_OILWL_70_8_SLP`, `US_CA_INTRA_OILWL_80_8`, `US_CA_INTRA_OILWL_PROP`, `US_INT_OILWL_60_7_NOBRK`, `US_INT_OILWL_60_7_NOBRK_BIG`, `US_INT_OILWL_60_7_NOBRK_BIG_SLP`, `US_INT_OILWL_60_7_NOBRK_SLP`, `US_INT_OILWL_70_8_NOBRK`, `US_INT_OILWL_70_8_NOBRK_BIG`, `US_INT_OILWL_70_8_NOBRK_BIG_SLP`, `US_INT_OILWL_70_8_NOBRK_SLP`, `US_TX_INTRA_OILWL_70_7`
- `deferral_status` (string, optional, nullable) — Canadian deferral status, if applicable (e.g., DAY1, DAY2).
- `deferral_minutes` (integer, optional, nullable) — Minutes deferred under Canadian deferral rules, if applicable.
- `is_adverse_driving_exempt` (boolean, optional, nullable) — Whether the adverse driving exemption was claimed for the day.
- `is_short_haul_exempt` (boolean, optional, nullable) — Whether the short-haul exemption was claimed for the day.
- `is_wait_time_exempt` (boolean, optional, nullable) — Whether the wait-time exemption was claimed for the day.
- `is_24_hour_restart_exempt` (boolean, optional, nullable) — Whether the 24-hour restart exemption was claimed for the day.
- `is_8_hour_break_exempt` (boolean, optional, nullable) — Whether the 8-hour break exemption was claimed for the day.
- `duration_off_duty_seconds` (integer, optional, nullable) — Total off-duty time for the local day (integer seconds).
- `duration_sleeper_berth_seconds` (integer, optional, nullable) — Total sleeper-berth time for the local day (integer seconds).
- `duration_on_duty_seconds` (integer, optional, nullable) — Total on-duty (not driving) time for the local day (integer seconds).
- `duration_driving_seconds` (integer, optional, nullable) — Total driving time for the local day (integer seconds).
- `duration_personal_conveyance_seconds` (integer, optional, nullable) — Total personal conveyance (PC) time for the local day (integer seconds).
- `duration_yard_move_seconds` (integer, optional, nullable) — Total yard move (YM) time for the local day (integer seconds).
- `duration_waiting_seconds` (integer, optional, nullable) — Total waiting time for the local day (integer seconds), if separately reported by the TSP.
- `duration_active_seconds` (integer, optional, nullable) — Total active time for the local day (integer seconds), if separately reported by the TSP.
- `duration_deferral_seconds` (integer, optional, nullable) — Total deferred time for the local day (integer seconds), if applicable.
- `distance_driving_meters` (double, optional, nullable) — Total driving distance for the local day (meters).
- `distance_personal_conveyance_meters` (double, optional, nullable) — Total personal conveyance distance for the local day (meters).
- `distance_yard_move_meters` (double, optional, nullable) — Total yard move distance for the local day (meters).
- `is_certified` (boolean, optional, nullable) — Whether the driver has certified/attested to this day's log.
- `driver_certified_at` (datetime, optional, nullable) — Timestamp when the driver certified/attested to this record (UTC).
- `shipping_docs` (string, optional, nullable) — Shipping document reference(s) for the day, as reported by the TSP.
- `trailer_info` (string, optional, nullable) — Trailer identifier(s) used during the day, as reported by the TSP.