---
title: "Get coaching sessions."
method: GET
path: "/coaching/sessions/stream"
tags: ["Coaching"]
---

# Get coaching sessions.

`GET /coaching/sessions/stream`

## Request

- Base URL: `https://api.samsara.com`
- URL: `https://api.samsara.com/coaching/sessions/stream`
- Auth: HTTP bearer

This endpoint will return coaching sessions for your organization based on the time parameters passed in. Results are paginated by sessions. If you include an endTime, the endpoint will return data up until that point. If you don’t include an endTime, you can continue to poll the API real-time with the pagination cursor that gets returned on every call.

 <b>Rate limit:</b> 5 requests/sec (learn more about rate limits <a href="https://developers.samsara.com/docs/rate-limits" target="_blank">here</a>).

To use this endpoint, select **Read Coaching** under the Coaching category when creating or editing an API token. <a href="https://developers.samsara.com/docs/authentication#scopes-for-api-tokens" target="_blank">Learn More.</a>
 

 **Submit Feedback**: Likes, dislikes, and API feature requests should be filed as feedback in our <a href="https://forms.gle/zkD4NCH7HjKb7mm69" target="_blank">API feedback form</a>. If you encountered an issue or noticed inaccuracies in the API documentation, please <a href="https://www.samsara.com/help" target="_blank">submit a case</a> to our support team.

## Query parameters

- `driverIds` string[]
- `coachIds` string[]
- `sessionStatuses` string[]
- `includeCoachableEvents` boolean
- `startTime` string, date-time, required
- `endTime` string, date-time
- `after` string
- `includeExternalIds` boolean

## Response `200`

OK response.

- CoachingSessionsGetCoachingSessionsResponseBody
  - `data` CoachingSessionsResponseResponseBody[], required: List of coaching sessions objects.
    - `assignedCoachId` string: Unique user ID for a coaching session. Returned when a coaching session status is “incomplete”.
    - `behaviors` BehaviorResponseBody[], required: Object references for the behaviors within the session.
      - `coachableBehaviorType` 'acceleration' | 'braking' | 'cameraObstruction' | 'crash' | 'defensiveDriving' | 'didNotYield' | 'drinkPolicy' | 'drowsy' | 'eatingDrinking' | 'event' | 'falsePositive' | 'foodPolicy' | 'forwardCollisionWarning' | 'genericDistraction' | 'harshTurn' | 'hosViolation' | 'idling' | 'laneDeparture' | 'lateResponse' | 'maskPolicy' | 'maxSpeed' | 'mobileUsage' | 'nearCollison' | 'noSeatbelt' | 'obstructedCamera' | 'outwardObstruction' | 'passengerPolicy' | 'ranRedLight' | 'rollingRailroadCrossing' | 'rollingStop' | 'rollingStop' | 'rollover' | 'rolloverProtection' | 'rolloverProtectionBrakeControlActivated' | 'rolloverProtectionEngineControlActivated' | 'severeSpeeding' | 'smoking' | 'speeding' | 'tailgating' | 'unknown' | 'yawControl' | 'yawControlBrakeControlActivated' | 'yawControlEngineControlActivated', required: Coachable behavior type for the behavior in the coaching session. Valid values: `acceleration`, `braking`, `cameraObstruction`, `crash`, `defensiveDriving`, `didNotYield`, `drinkPolicy`, `drowsy`, `eatingDrinking`, `event`, `falsePositive`, `foodPolicy`, `forwardCollisionWarning`, `genericDistraction`, `harshTurn`, `hosViolation`, `idling`, `laneDeparture`, `lateResponse`, `maskPolicy`, `maxSpeed`, `mobileUsage`, `nearCollison`, `noSeatbelt`, `obstructedCamera`, `outwardObstruction`, `passengerPolicy`, `ranRedLight`, `rollingRailroadCrossing`, `rollingStop`, `rollingStop`, `rollover`, `rolloverProtection`, `rolloverProtectionBrakeControlActivated`, `rolloverProtectionEngineControlActivated`, `severeSpeeding`, `smoking`, `speeding`, `tailgating`, `unknown`, `yawControl`, `yawControlBrakeControlActivated`, `yawControlEngineControlActivated`
      - `coachableEvents` CoachableEventResponseBody[]: Object references for the coachableEvents within the behavior. Returned when includeCoachableEvents is 'true'. Capped at 100 coachable events per Coaching session. For sessions where coachable events exceed 100, please visit the Samsara dashboard to address this coaching session. Corresponds to the following unique identifiers: Non-Speeding Safety events - unique Samsara ID of the safety event as 'vehicleId - eventMS'. Speeding events - unique UUID of the event. Day of HOS Violations - unique Samsara ID of the day of violations as '{driverId},{date}'. Idling events - unique UUID of the event.
        - `id` string, required: Unique ID for an event within the item in a coaching session.
        - `linkage` CoachableEventLinkageResponseBody: Join key with upstream data source.
          - `sourceId` string, required: Unique identifier to the upstream data source. For safety events, this is the event uuid.
          - `sourceType` 'safetyEvent' | 'hosViolation' | 'idling', required: Upstream data source backing this coachable event. Valid values: `safetyEvent`, `hosViolation`, `idling`
      - `id` string, required: Unique ID for the coaching behavior.
      - `lastCoachedTime` string, date-time, required: Time of last coached date for the same behavior label.
      - `note` string: Associated note for the coaching behavior. Returned when present.
      - `updatedAtTime` string, date-time, required: Time of coaching behavior update in UTC.
    - `coachingType` 'fullySharedWithManager' | 'selfCoaching' | 'unknown' | 'unshared' | 'withManager', required: Coaching type for the coaching session. Valid values: `fullySharedWithManager`, `selfCoaching`, `unknown`, `unshared`, `withManager`
    - `completedAtTime` string, date-time: Time coaching session is completed in UTC. Returned when a coaching session status is “completed”.
    - `completedCoachId` string: Unique user ID for a completed coaching session. Returned when a coaching session status is “completed”.
    - `driver` DriverWithExternalIdObjectResponseBody, required: A driver object with an id and map of external ids.
      - `driverId` string, required: Samsara ID of the driver.
      - `externalIds` object: A map of external ids
    - `dueAtTime` string, date-time, required: Time coaching session is due in UTC.
    - `id` string, required: Unique ID for the coaching session.
    - `sessionNote` string: Associated note for the coaching session. Returned when present.
    - `sessionStatus` 'unknown' | 'upcoming' | 'completed' | 'deleted', required: Status for the coaching session. Valid values: `unknown`, `upcoming`, `completed`, `deleted`
    - `updatedAtTime` string, date-time, required: Time coaching session was updated in UTC.
  - `pagination` GoaPaginationResponseResponseBody, required: Pagination parameters.
    - `endCursor` string, required: Cursor identifier representing the last element in the response. This value should be used in conjunction with a subsequent request's 'after' query parameter. This may be an empty string if there are no more pages left to view.
    - `hasNextPage` boolean, required: True if there are more pages of results immediately available after this endCursor.

## Other responses

- `401`: Unauthorized response.
- `404`: Not Found response.
- `405`: Method Not Allowed response.
- `413`: Content Too Large response.
- `429`: Too Many Requests response.
- `500`: Internal Server Error response.
- `501`: Not Implemented response.
- `502`: Bad Gateway response.
- `503`: Service Unavailable response.
- `504`: Gateway Timeout response.
- `default`: Bad Request response.

---

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