post
/api/v2/traffic/harsh-events
Python SDK method:
client.traffic.harsh_events_per_segment(params).run()

Start harsh events per segment job

Creates a job to generate a harsh events per segment analysis. Returns harsh driving event counts (braking, acceleration, cornering) per road segment for the supplied date/time range and vehicle filters.

Altitude Help Center — getHarshEventsPerSegment

Request Body

Analysis parameters.

application/json: object

NameTypeInput ShapeValuesDescriptionValue Required
dateFromstring (date)--First date of the analysis range, formatted as yyyy-mm-dd. A minimum span of 5 days is required after applying daysOfWeek filters.Y
dateTostring (date)--Last date of the analysis range (inclusive), formatted as yyyy-mm-dd.Y
daysOfWeekarray<integer>--Days of the week to include (1=Sunday … 7=Saturday). An empty array includes all days.N
excludeLocalRoadsboolean--When true, local road categories (residential, living_street, service, unclassified, road) are excluded from results. Only applied when roadTypes is omitted or empty. Defaults to true when omitted.N
isDirectionalboolean--When true, one record is returned per direction of travel; when false, results are averaged across both directions.Y
isMetricboolean--When true, segment lengths are returned in kilometres; when false, in miles. Defaults to the unit setting in your user profile when omitted.N
magnitudeBinsarray<number>--Upper bounds (inclusive, m/s²) of harsh event magnitude bins. The lowest bin starts at 0; the final bin extends to +inf. For example [2.32, 3.54] creates bins (0,2.32], (2.32,3.54], (3.54,+inf).N
magnitudeMaxnumber--Maximum magnitude (m/s²) for a harsh event to be included. Must be > 0 and ≥ magnitudeMin. Defaults to +inf when omitted.N
magnitudeMinnumber--Minimum magnitude (m/s²) for a harsh event to be included. Must be ≥ 0. Defaults to 0 when omitted.N
roadTypesarray<string>-living_street, motorway, motorway_link, primary, primary_link, residential, road, secondary, secondary_link, service, tertiary, tertiary_link, trunk, trunk_link, unclassifiedRoad types to include. An empty array includes all road types. When set, excludeLocalRoads is ignored.N
vehicleClassIdsarray<string>--Vehicle class filter IDs from GET /api/v2/filters/vehicle-classes. IDs must use the scheme_vehicleClassIndex_categoryIndex format and share one scheme; IDs that do not name a known vehicle class are rejected. An empty array includes all vehicle classes.N
vehicleClassSchemeIdinteger-1, 2, 3, 4, 5, 6Vehicle classification scheme: 1 = VIUS, 2 = GVWR (FHWA), 3 = Truck Weight Classes, 4 = CARB, 5 = Gross Weight Group (custom scheme), 6 = Expansion Factors (custom scheme). Defaults to 2 when omitted. See GET /api/v2/filters/vehicle-class-schemes.N
vehicleClassesarray<object>vehicleType: string (values: Truck, Passenger, MPV, Bus, Limo, Other, n/a); weightClass: string (values: *, Class 1, Class 2, Class 3, Class 4, Class 5, Class 6, Class 7, Class 8, Class A, Class B, Class C, Class D, Class E, Class F, Class G, Class H)-Vehicle class filters. Use an empty array to include all vehicle classes.N
zoneIdsarray<string>--Zones to include, as encoded zone IDs. Provide exactly one of zoneIds or zones (not both).N
zonesarray<object>code: string; iso_3166_2: string; type: string (values: State, County, City, FSA, ZIP, TAZ, CTR, Custom, Segment)-Zones to include, each identified by a code, a zone type and a state or province code (iso_3166_2). Provide exactly one of zones or zoneIds (not both).N

Examples

County harsh events request

Translated from the v1 getHarshEventsPerSegment sample.

{
  "dateFrom": "2026-01-01",
  "dateTo": "2026-01-07",
  "isDirectional": true,
  "isMetric": false,
  "roadTypes": [
    "motorway"
  ],
  "zones": [
    {
      "code": "32003",
      "iso_3166_2": "US-NV",
      "type": "County"
    }
  ]
}

Success Responses

202 response: object

Job accepted and queued for processing. Poll the location header URL to check status.

NameTypeDescription
errorobjectDetails about why the job failed (RFC 7807 format), or null if it succeeded.
idstringUnique job identifier.
linksobjectNavigation URLs for polling and result retrieval.
statusstringCurrent job lifecycle state: PENDING, QUEUED, RUNNING, DONE, FAILED, CANCELED, or NOT_FOUND.

Response Errors

HTTP Status CodeReason
400The request body or parameters are invalid.
401Authentication is required or the provided credentials are invalid.
403The authenticated user lacks permission to perform this operation.
409The operation conflicts with the current state of the resource.
422The request is syntactically valid but semantically cannot be processed.
429The request rate limit has been exceeded.
500An unexpected server error occurred.