---
title: "Retrieve (via POST) driver analytics"
method: POST
path: "/shipping/drivers/stats/v1/{driver_id}"
tags: ["/shipping/drivers"]
---

# Retrieve (via POST) driver analytics

`POST /shipping/drivers/stats/v1/{driver_id}`

Retrieves driver analytics for a time window. Daily rows are clipped to the requested UTC window; task-group rows include full in-progress mileage for task groups whose in-progress interval overlaps the requested window. | authz: allowed_org_types=[provider], min_org_role=operator | (DriverStatsReq) -> (DriverStatsRes)

## Path parameters

- `driver_id` string, required

## Request body

- DriverStatsReq
  - `start_timestamp` string, date-time, required
  - `end_timestamp` string, date-time, required

## Response `200`

Successful Response

- DriverStatsRes
  - `driver_analytics_days` DriverAnalyticsDay[]
    - `day` string, date, required
    - `observed_mileage_order_in_progress_deduped` number, required — Observed GPS mileage from same-day driver ping segments fetched inside merged task-group in-progress intervals. Cross-interval and cross-midnight segments are dropped.
    - `observed_mileage_order_not_in_progress` number, required — Observed GPS mileage remaining after subtracting order in-progress mileage from total on this UTC day. Includes off-clock segments and cross-interval boundary segments.
    - `observed_mileage_total` number, required — Total observed GPS mileage from all same-day driver ping segments on this UTC day. Cross-midnight segments are dropped.
    - `self_reported_hours_and_mileage` DriverSelfReportedHoursAndMileage1
      - `schema_version` 1, required
      - `driver_id` string, required
      - `date` string, date, required
      - `hours_worked` number, nullable
      - `miles_driven` number, nullable
      - `org_id` string, required — Must be a string starting with `org_`
      - `created_at_timestamp` string, date-time, required
      - `created_by_user_id` string, required — Must be a string starting with `user_`
      - `updated_at` string, date-time, required
      - `_id` string, required
  - `driver_analytics_task_groups` DriverAnalyticsTaskGroup[]
    - `task_group` TaskGroup1, required
      - `schema_version` 1, required
      - `_id` string, required
      - `order_id` string, required
      - `order_short_id` string, required
      - `order_off_chrt_reference_id` string, nullable — Must be a URL-safe string of 1-64 characters. Allowed characters: A-Z, a-z, 0-9, '.', '_', '~', '-' (RFC 3986 unreserved).
      - `task_ids` string[]
      - `created_by_user_id` string, nullable — Must be a string starting with `user_`
      - `created_by_org_id` string, required — Must be a string starting with `org_`
      - `shipper_org_id` string, nullable — Must be a string starting with `org_`
      - `off_chrt_shipper_org_data_id` string, nullable
      - `coordinator_org_id` string, nullable — Must be a string starting with `org_`
      - `executor_org_id` string, nullable — Must be a string starting with `org_`
      - `off_chrt_executor_org_data_id` string, nullable
      - `driver_id` string, nullable
      - `task_group_s3_object_metadata_ids` string[]
      - `status` 'draft' | 'staged' | 'in_progress' | 'completed' | 'skipped' | 'cancelled' | 'exception'
      - `draft_started_at_timestamp` string, date-time, required
      - `staged_at_timestamp` string, date-time, nullable
      - `in_progress_at_timestamp` string, date-time, nullable
      - `completed_at_timestamp` string, date-time, nullable
      - `skipped_at_timestamp` string, date-time, nullable
      - `cancelled_at_timestamp` string, date-time, nullable
      - `exception_at_timestamp` string, date-time, nullable
      - `task_group_type` 'chrt_ground_provider' | 'cargo_on_flight' | 'onboard_courier', required
      - `vehicle_type` 'sedan' | 'suv' | 'cargo_van' | 'box_truck' | 'flatbed' | 'semi_truck' | 'airplane'
      - `coordinator_setup_notes` string, nullable
      - `flight_setup_notes` string, nullable
      - `mileage_estimated` number, nullable
      - `wait_time_total_minutes` number, nullable
      - `flight_leg_ids` string[]
      - `messages` TaskGroupMessage1[]
        - `message` string, required
        - `user_id` string, required — Must be a string starting with `user_`
        - `org_id` string, required — Must be a string starting with `org_`
        - `timestamp` string, date-time, required
    - `observed_mileage_order_in_progress` number, required — Observed GPS mileage for this task group from tracking.task_group_by_driver_timeseries across the full task-group in-progress interval, excluding outlier points. This can include mileage outside the requested analytics window when the task group overlaps the window but starts before it or ends after it.

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.dev/chrt/apis/chrt-fastapi.md) · [All operations](https://skmtc.dev/chrt/apis/chrt-fastapi/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/chrt/chrt-fastapi/revisions/ea04e157edb3/schema)
