import type * as Samsara from "../../../../index.js"; /** * @example * { * startTime: "startTime" * } */ export interface GetSafetyEventsV2StreamRequest { /** RFC 3339 timestamp that indicates when to begin receiving data. Value is compared against `updatedAtTime` or the event detection time (`startMs`) depending on the `queryByTimeField` parameter. */ startTime: string; /** RFC 3339 timestamp. If not provided and filtering by `updatedAtTime` then the endpoint behaves as an unending feed of changes. If endTime is set the same as startTime, the most recent data point before that time will be returned per asset. Value is compared against `updatedAtTime` or the event detection time (`startMs`) depending on the `queryByTimeField` parameter. */ endTime?: string; /** Optional string that decides which timestamp to compare against the provided time range. `updatedAtTime` filters by when the Safety Event was last updated in Samsara. `createdAtTime` filters by when the Safety Event was detected (`startMs` in the response). Valid values: `updatedAtTime`, `createdAtTime` */ queryByTimeField?: Samsara.GetSafetyEventsV2StreamRequestQueryByTimeField; /** Optional string of comma separated asset IDs. If asset ID is present, events for the specified asset(s) will be returned. Limit of 2000 asset IDs. */ assetIds?: string | string[]; /** Optional string of comma separated driver IDs. If driver ID is present, events for the specified driver(s) will be returned. Limit of 2000 driver IDs. */ driverIds?: string | string[]; /** Optional string of comma separated tag IDs. If tag ID is present, events for the specified tag(s) will be returned. Limit of 2000 tag IDs. */ tagIds?: string | string[]; /** Optional string of comma separated coach IDs to filter events assigned to a particular coach. Limit of 2000 coach IDs. */ assignedCoaches?: string | string[]; /** Optional string of comma separated values to filter behavior labels. Valid values: `Acceleration`, `AggressiveDriving`, `BluetoothHeadset`, `Braking`, `ContextConstructionOrWorkZone`, `ContextSnowyOrIcy`, `ContextVulnerableRoadUser`, `ContextWet`, `Crash`, `DefensiveDriving`, `DidNotYield`, `Drinking`, `Drowsy`, `Eating`, `EatingDrinking`, `EdgeDistractedDriving`, `EdgeRailroadCrossingViolation`, `FollowingDistance`, `FollowingDistanceModerate`, `FollowingDistanceSevere`, `ForwardCollisionWarning`, `GenericDistraction`, `GenericTailgating`, `HarshImpact`, `HarshTurn`, `HeavySpeeding`, `HosViolation`, `Idling`, `Invalid`, `LaneDeparture`, `LateResponse`, `LeftTurn`, `LightSpeeding`, `MaxSpeed`, `MobileUsage`, `ModerateSpeeding`, `NearCollison`, `NearPedestrianCollision`, `NoSeatbelt`, `ObstructedCamera`, `OtherViolation`, `Passenger`, `PolicyViolationMask`, `ProtectiveEquipment`, `RanRedLight`, `Reversing`, `RollingStop`, `RolloverProtection`, `SevereSpeeding`, `Smoking`, `Speeding`, `UTurn`, `UnsafeManeuver`, `UnsafeParking`, `VulnerableRoadUserCollisionWarning`, `YawControl` */ behaviorLabels?: string | string[]; /** Optional string of comma separated values to filter event states. Valid values: `needsReview`, `reviewed`, `needsCoaching`, `coached`, `dismissed`, `needsRecognition`, `recognized` */ eventStates?: string | string[]; /** Indicates whether or not to return expanded “asset” data */ includeAsset?: boolean; /** Indicates whether or not to return expanded “driver” data */ includeDriver?: boolean; /** Indicates whether or not to return events that are captured by devices with only a Vehicle Gateway (VG) installed. */ includeVgOnlyEvents?: boolean; /** If specified, this should be the endCursor value from the previous page of results. When present, this request will return the next page of results that occur immediately after the previous page of results. */ after?: string; }