openapi: 3.0.1 info: description: Gain greater visibility by connecting your fleets, equipment, sites, and people. title: Samsara Logs API version: '2024-11-18' servers: - url: https://api.samsara.com/ - url: https://api.eu.samsara.com/ security: - AccessTokenHeader: [] tags: - name: Logs paths: /fleet/hos/daily-logs: get: description: "Get summarized daily Hours of Service charts for the specified drivers.\n\nThe time range for a log is defined by the `driver`'s `eldDayStartHour`. This value is configurable per driver.\n\nThe `startDate` and `endDate` parameters indicate the date range you'd like to retrieve daily logs for. A daily log will be returned if its `startTime` is on any of the days within in this date range (inclusive of `startDate` and `endDate`).\n\n**Note:** If data is still being uploaded from the Samsara Driver App, it may not be completely reflected in the response from this endpoint. The best practice is to wait a couple of days before querying this endpoint to make sure that all data from the Samsara Driver App has been uploaded.\n\nIf you are using the legacy version of this endpoint and looking for its documentation, you can find it [here](https://www.samsara.com/api-legacy#operation/getFleetDriversHosDailyLogs).\n\n Rate limit: 5 requests/sec (learn more about rate limits here).\n\nTo use this endpoint, select **Read ELD Compliance Settings (US)** under the Compliance category when creating or editing an API token. Learn More.\n \n\n **Submit Feedback**: Likes, dislikes, and API feature requests should be filed as feedback in our API feedback form. If you encountered an issue or noticed inaccuracies in the API documentation, please submit a case to our support team." operationId: getHosDailyLogs parameters: - description: ' A filter on the data based on this comma-separated list of driver IDs and externalIds. Example: `driverIds=1234,5678,payroll:4841`' explode: false in: query name: driverIds schema: items: type: string type: array style: form - description: ' A start date in YYYY-MM-DD. This is a date only without an associated time. Example: `2019-06-13`. This is a required field' in: query name: startDate schema: type: string - description: ' An end date in YYYY-MM-DD. This is a date only without an associated time. Must be greater than or equal to the start date. Example: `2019-07-21`. This is a required field' in: query name: endDate schema: type: string - description: ' A filter on the data based on this comma-separated list of tag IDs. Example: `tagIds=1234,5678`' in: query name: tagIds schema: type: string - description: ' A filter on the data based on this comma-separated list of parent tag IDs, for use by orgs with tag hierarchies. Specifying a parent tag will implicitly include all descendent tags of the parent tag. Example: `parentTagIds=345,678`' in: query name: parentTagIds schema: type: string - description: 'If value is `deactivated`, only drivers that are deactivated will appear in the response. This parameter will default to `active` if not provided (fetching only active drivers). Valid values: `active`, `deactivated`' in: query name: driverActivationStatus schema: default: active enum: - active - deactivated type: string - description: ' 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.' in: query name: after schema: type: string - description: 'Expands the specified value(s) in the response object. Expansion populates additional fields in an object, if supported. Unsupported fields are ignored. To expand multiple fields, input a comma-separated list. Valid value: `vehicle` Valid values: `vehicle`' in: query name: expand schema: enum: - vehicle type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/HosDailyLogsGetHosDailyLogsResponseBody' description: OK response. '401': content: application/json: schema: $ref: '#/components/schemas/HosDailyLogsGetHosDailyLogsUnauthorizedErrorResponseBody' description: Unauthorized response. '404': content: application/json: schema: $ref: '#/components/schemas/HosDailyLogsGetHosDailyLogsNotFoundErrorResponseBody' description: Not Found response. '405': content: application/json: schema: $ref: '#/components/schemas/HosDailyLogsGetHosDailyLogsMethodNotAllowedErrorResponseBody' description: Method Not Allowed response. '429': content: application/json: schema: $ref: '#/components/schemas/HosDailyLogsGetHosDailyLogsTooManyRequestsErrorResponseBody' description: Too Many Requests response. '500': content: application/json: schema: $ref: '#/components/schemas/HosDailyLogsGetHosDailyLogsInternalServerErrorResponseBody' description: Internal Server Error response. '501': content: application/json: schema: $ref: '#/components/schemas/HosDailyLogsGetHosDailyLogsNotImplementedErrorResponseBody' description: Not Implemented response. '502': content: application/json: schema: $ref: '#/components/schemas/HosDailyLogsGetHosDailyLogsBadGatewayErrorResponseBody' description: Bad Gateway response. '503': content: application/json: schema: $ref: '#/components/schemas/HosDailyLogsGetHosDailyLogsServiceUnavailableErrorResponseBody' description: Service Unavailable response. '504': content: application/json: schema: $ref: '#/components/schemas/HosDailyLogsGetHosDailyLogsGatewayTimeoutErrorResponseBody' description: Gateway Timeout response. default: content: application/json: schema: $ref: '#/components/schemas/HosDailyLogsGetHosDailyLogsBadRequestErrorResponseBody' description: Bad Request response. summary: Get All Driver HOS Daily Logs tags: - Logs /fleet/routes/audit-logs/feed: get: description: "Subscribes to a feed of immutable, append-only updates for routes. The initial request to this feed endpoint returns a cursor, which can be used on the next request to fetch updated routes that have had state changes since that request.\n\nThe legacy version of this endpoint can be found at [samsara.com/api-legacy](https://www.samsara.com/api-legacy#operation/fetchAllRouteJobUpdates).\n\n Rate limit: 5 requests/sec (learn more about rate limits here).\n\nTo use this endpoint, select **Read Routes** under the Driver Workflow category when creating or editing an API token. Learn More.\n \n\n **Submit Feedback**: Likes, dislikes, and API feature requests should be filed as feedback in our API feedback form. If you encountered an issue or noticed inaccuracies in the API documentation, please submit a case to our support team." operationId: getRoutesFeed parameters: - description: ' 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.' in: query name: after schema: type: string - description: 'Expands the specified value(s) in the response object. Expansion populates additional fields in an object, if supported. Unsupported fields are ignored. To expand multiple fields, input a comma-separated list. Valid value: `route` Valid values: `route`' in: query name: expand schema: enum: - route type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/RoutesGetRoutesFeedResponseBody' description: OK response. '401': content: application/json: schema: $ref: '#/components/schemas/RoutesGetRoutesFeedUnauthorizedErrorResponseBody' description: Unauthorized response. '404': content: application/json: schema: $ref: '#/components/schemas/RoutesGetRoutesFeedNotFoundErrorResponseBody' description: Not Found response. '405': content: application/json: schema: $ref: '#/components/schemas/RoutesGetRoutesFeedMethodNotAllowedErrorResponseBody' description: Method Not Allowed response. '429': content: application/json: schema: $ref: '#/components/schemas/RoutesGetRoutesFeedTooManyRequestsErrorResponseBody' description: Too Many Requests response. '500': content: application/json: schema: $ref: '#/components/schemas/RoutesGetRoutesFeedInternalServerErrorResponseBody' description: Internal Server Error response. '501': content: application/json: schema: $ref: '#/components/schemas/RoutesGetRoutesFeedNotImplementedErrorResponseBody' description: Not Implemented response. '502': content: application/json: schema: $ref: '#/components/schemas/RoutesGetRoutesFeedBadGatewayErrorResponseBody' description: Bad Gateway response. '503': content: application/json: schema: $ref: '#/components/schemas/RoutesGetRoutesFeedServiceUnavailableErrorResponseBody' description: Service Unavailable response. '504': content: application/json: schema: $ref: '#/components/schemas/RoutesGetRoutesFeedGatewayTimeoutErrorResponseBody' description: Gateway Timeout response. default: content: application/json: schema: $ref: '#/components/schemas/RoutesGetRoutesFeedBadRequestErrorResponseBody' description: Bad Request response. summary: Get Route Updates tags: - Logs /hos/daily-logs/log-meta-data: patch: description: "Update the shippingDocs field of an existing assignment.\n\n Rate limit: 5 requests/sec (learn more about rate limits here).\n\nTo use this endpoint, select **Write ELD Hours of Service (US)** under the Compliance category when creating or editing an API token. Learn More.\n \n\n **Submit Feedback**: Likes, dislikes, and API feature requests should be filed as feedback in our API feedback form. If you encountered an issue or noticed inaccuracies in the API documentation, please submit a case to our support team." operationId: updateShippingDocs parameters: - description: A start date in yyyy-mm-dd format. Required. in: query name: hosDate required: true schema: type: string - description: ID of the driver for whom the duty status is being set. in: query name: driverID required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/HosDailyLogsUpdateShippingDocsRequestBody' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/HosDailyLogsUpdateShippingDocsResponseBody' description: OK response. '401': content: application/json: schema: $ref: '#/components/schemas/HosDailyLogsUpdateShippingDocsUnauthorizedErrorResponseBody' description: Unauthorized response. '404': content: application/json: schema: $ref: '#/components/schemas/HosDailyLogsUpdateShippingDocsNotFoundErrorResponseBody' description: Not Found response. '405': content: application/json: schema: $ref: '#/components/schemas/HosDailyLogsUpdateShippingDocsMethodNotAllowedErrorResponseBody' description: Method Not Allowed response. '429': content: application/json: schema: $ref: '#/components/schemas/HosDailyLogsUpdateShippingDocsTooManyRequestsErrorResponseBody' description: Too Many Requests response. '500': content: application/json: schema: $ref: '#/components/schemas/HosDailyLogsUpdateShippingDocsInternalServerErrorResponseBody' description: Internal Server Error response. '501': content: application/json: schema: $ref: '#/components/schemas/HosDailyLogsUpdateShippingDocsNotImplementedErrorResponseBody' description: Not Implemented response. '502': content: application/json: schema: $ref: '#/components/schemas/HosDailyLogsUpdateShippingDocsBadGatewayErrorResponseBody' description: Bad Gateway response. '503': content: application/json: schema: $ref: '#/components/schemas/HosDailyLogsUpdateShippingDocsServiceUnavailableErrorResponseBody' description: Service Unavailable response. '504': content: application/json: schema: $ref: '#/components/schemas/HosDailyLogsUpdateShippingDocsGatewayTimeoutErrorResponseBody' description: Gateway Timeout response. default: content: application/json: schema: $ref: '#/components/schemas/HosDailyLogsUpdateShippingDocsBadRequestErrorResponseBody' description: Bad Request response. summary: '[beta] Update the ShippingDocs Field of an Existing Assignment.' tags: - Logs x-codegen-request-body-name: UpdateShippingDocsRequestBody /v1/fleet/hos_authentication_logs: get: description: "\n\n\nThis endpoint is still on our legacy API.\n\n\n\nGet the HOS (hours of service) signin and signout logs for the specified driver. The response includes 4 fields that are now deprecated.\n\n**Note:** If data is still being uploaded from the Samsara Driver App, it may not be completely reflected in the response from this endpoint. The best practice is to wait a couple of days before querying this endpoint to make sure that all data from the Samsara Driver App has been uploaded. \n\n **Submit Feedback**: Likes, dislikes, and API feature requests should be filed as feedback in our API feedback form. If you encountered an issue or noticed inaccuracies in the API documentation, please submit a case to our support team.\n\nTo use this endpoint, select **Read ELD Hours of Service (US)** under the Compliance category when creating or editing an API token. Learn More." operationId: V1getFleetHosAuthenticationLogs parameters: - description: Driver ID to query. in: query name: driverId required: true schema: format: int64 type: integer - description: Beginning of the time range, specified in milliseconds UNIX time. in: query name: startMs required: true schema: format: int64 type: integer - description: End of the time range, specified in milliseconds UNIX time. in: query name: endMs required: true schema: format: int64 type: integer responses: '200': content: application/json: schema: $ref: '#/components/schemas/V1HosAuthenticationLogsResponse' description: HOS authentication logs for the specified driver. default: content: application/json: schema: $ref: '#/components/schemas/V1ErrorResponse' description: Unexpected error. summary: Get HOS Signin and Signout tags: - Logs components: schemas: RoutesGetRoutesFeedServiceUnavailableErrorResponseBody: description: Service unavailable properties: message: description: Message of error example: context deadline exceeded type: string requestId: description: The request ID; used when reaching out to support for issues with requests. example: 8916e1c1 type: string required: - message - requestId type: object HosDailyLogsUpdateShippingDocsTooManyRequestsErrorResponseBody: description: Too many requests properties: message: description: Message of error example: Exceeded rate limit. type: string requestId: description: The request ID; used when reaching out to support for issues with requests. example: 8916e1c1 type: string required: - message - requestId type: object V1ErrorResponse: description: Error message describing why the request failed. type: string HosDailyLogsGetHosDailyLogsBadGatewayErrorResponseBody: description: Bad Gateway properties: message: description: Message of error example: 'rpc error: code = Unknown desc = connection refused' type: string requestId: description: The request ID; used when reaching out to support for issues with requests. example: 8916e1c1 type: string required: - message - requestId type: object HosDailyLogsGetHosDailyLogsNotImplementedErrorResponseBody: description: Requested endpoint is not yet implemented properties: message: description: Message of error example: Not implemented. type: string requestId: description: The request ID; used when reaching out to support for issues with requests. example: 8916e1c1 type: string required: - message - requestId type: object baseRouteResponseObjectResponseBody: properties: actualRouteEndTime: description: Actual end time, if it exists, for the route in RFC 3339 format. example: '2019-06-13T19:08:25Z' format: date-time type: string actualRouteStartTime: description: Actual start time, if it exists, for the route in RFC 3339 format. example: '2019-06-13T19:08:25Z' format: date-time type: string driver: $ref: '#/components/schemas/GoaDriverTinyResponseResponseBody' externalIds: additionalProperties: type: string description: A map of external ids type: object id: description: ID of the route example: '342341' type: string name: description: Route name example: Bid 123 type: string notes: description: Notes for the route example: These are my notes type: string recurringRouteLiveSharingLinks: description: List of shareable, non-expired 'By recurring Route' Live Sharing Links. items: $ref: '#/components/schemas/LiveSharingLinkResponseObjectResponseBody' type: array scheduledRouteEndTime: description: Scheduled end time, if it exists, for the route in RFC 3339 format. example: '2019-06-13T19:08:25Z' format: date-time type: string scheduledRouteStartTime: description: Scheduled start time, if it exists, for the route in RFC 3339 format. example: '2019-06-13T19:08:25Z' format: date-time type: string settings: $ref: '#/components/schemas/RouteSettingsResponseBody' stops: description: List of stops along the route items: $ref: '#/components/schemas/RoutesStopResponseObjectResponseBody' minItems: 2 type: array vehicle: $ref: '#/components/schemas/GoaVehicleTinyResponseResponseBody' required: - id type: object HosDailyLogsGetHosDailyLogsNotFoundErrorResponseBody: description: Resource not found properties: message: description: Message of error example: Object not found. type: string requestId: description: The request ID; used when reaching out to support for issues with requests. example: 8916e1c1 type: string required: - message - requestId type: object RoutesGetRoutesFeedInternalServerErrorResponseBody: description: An internal server error occurred properties: message: description: Message of error example: Failed to execute GraphQL query. type: string requestId: description: The request ID; used when reaching out to support for issues with requests. example: 8916e1c1 type: string required: - message - requestId type: object VehicleResponseResponseBody: description: A vehicle object properties: assetType: description: 'The type of the asset. Valid values: `uncategorized`, `trailer`, `equipment`, `unpowered`, `vehicle`' enum: - uncategorized - trailer - equipment - unpowered - vehicle example: vehicle type: string externalIds: additionalProperties: type: string description: A map of external ids type: object id: description: ID of the vehicle example: '494123' type: string licensePlate: description: The license plate of the vehicle. example: 6SAM123 type: string name: description: Name of the vehicle example: 'Fleet Truck #1' type: string vehicleVin: description: The VIN of the vehicle. example: 1GBJ6P1B2HV112765 type: string type: object HosDailyLogsGetHosDailyLogsTooManyRequestsErrorResponseBody: description: Too many requests properties: message: description: Message of error example: Exceeded rate limit. type: string requestId: description: The request ID; used when reaching out to support for issues with requests. example: 8916e1c1 type: string required: - message - requestId type: object HosDailyLogsGetHosDailyLogsResponseBody: properties: data: description: List of drivers and their HOS daily logs data. items: $ref: '#/components/schemas/HosDailyLogsObjectResponseBody' type: array pagination: $ref: '#/components/schemas/GoaPaginationResponseResponseBody' required: - data - pagination type: object RoutesGetRoutesFeedTooManyRequestsErrorResponseBody: description: Too many requests properties: message: description: Message of error example: Exceeded rate limit. type: string requestId: description: The request ID; used when reaching out to support for issues with requests. example: 8916e1c1 type: string required: - message - requestId type: object DriverWithTimezoneEldSettingsObjectResponseBody: description: The driver the log applies to. properties: eldSettings: $ref: '#/components/schemas/EldSettingsObjectResponseBody' externalIds: additionalProperties: type: string description: A map of external ids type: object id: description: ID of the driver example: '45646' type: string name: description: Name of the driver example: Driver Bob type: string timezone: default: America/Los_Angeles description: Home terminal timezone, in order to indicate what time zone should be used to calculate the ELD logs. Driver timezones use [IANA timezone database](https://www.iana.org/time-zones) keys (e.g. `America/Los_Angeles`, `America/New_York`, `Europe/London`, etc.). You can find a mapping of common timezone formats to IANA timezone keys [here](https://unicode.org/cldr/charts/latest/supplemental/zone_tzid.html). example: America/Los_Angeles type: string required: - id - name type: object RouteChangesResponseBody: description: A diff of the changes for a route update. properties: after: $ref: '#/components/schemas/MinimalRouteAuditLogsResponseBody' before: $ref: '#/components/schemas/MinimalRouteAuditLogsResponseBody' required: - after - before type: object HosDailyLogsUpdateShippingDocsServiceUnavailableErrorResponseBody: description: Service unavailable properties: message: description: Message of error example: context deadline exceeded type: string requestId: description: The request ID; used when reaching out to support for issues with requests. example: 8916e1c1 type: string required: - message - requestId type: object GoaPaginationResponseResponseBody: description: Pagination parameters. properties: endCursor: description: 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. example: MjkY type: string hasNextPage: description: True if there are more pages of results immediately available after this endCursor. example: true type: boolean required: - endCursor - hasNextPage type: object RoutesGetRoutesFeedBadGatewayErrorResponseBody: description: Bad Gateway properties: message: description: Message of error example: 'rpc error: code = Unknown desc = connection refused' type: string requestId: description: The request ID; used when reaching out to support for issues with requests. example: 8916e1c1 type: string required: - message - requestId type: object HosDailyLogsUpdateShippingDocsRequestBody: description: Update the shippingDocs field. properties: shippingDocs: description: ShippingDocs associated with the driver for the day. example: ShippingID1, ShippingID2 type: string required: - shippingDocs type: object HosDailyLogsGetHosDailyLogsInternalServerErrorResponseBody: description: An internal server error occurred properties: message: description: Message of error example: Failed to execute GraphQL query. type: string requestId: description: The request ID; used when reaching out to support for issues with requests. example: 8916e1c1 type: string required: - message - requestId type: object V1HosAuthenticationLogsResponse_authenticationLogs: properties: actionType: description: The log type - one of 'signin' or 'signout' example: signin type: string address: description: 'DEPRECATED: THIS FIELD MAY NOT BE POPULATED' example: THIS FIELD MAY NOT BE POPULATED type: string addressName: description: 'DEPRECATED: THIS FIELD MAY NOT BE POPULATED' example: THIS FIELD MAY NOT BE POPULATED type: string city: description: 'DEPRECATED: THIS FIELD MAY NOT BE POPULATED' example: THIS FIELD MAY NOT BE POPULATED type: string happenedAtMs: description: The time at which the event was recorded in UNIX milliseconds. example: 1462881998034 format: int64 type: integer state: description: 'DEPRECATED: THIS FIELD MAY NOT BE POPULATED' example: THIS FIELD MAY NOT BE POPULATED type: string type: object RouteSettingsResponseBody: description: An optional dictionary, only necessary to override the defaults for route start and end conditions. properties: routeCompletionCondition: default: arriveLastStop description: "Defaults to 'arriveLastStop' which ends the route upon arriving at the final stop. The condition 'departLastStop' \nends the route upon departing the last stop. If 'arriveLastStop' is set, then the departure time of the final stop should not be set. Valid values: `arriveLastStop`, `departLastStop`" enum: - arriveLastStop - departLastStop example: arriveLastStop type: string routeStartingCondition: default: departFirstStop description: "Defaults to 'departFirstStop' which starts the route upon departing the first stop in the route.\n The condition 'arriveFirstStop' starts the route upon arriving at the first stop in the route. If 'departFirstStop' is set,\nthe arrival time of the first stop should not be set. Valid values: `departFirstStop`, `arriveFirstStop`" enum: - departFirstStop - arriveFirstStop example: departFirstStop type: string type: object DistanceTraveledObjectResponseBody: description: The distance traveled information of the log. properties: driveDistanceMeters: description: Distance driven in meters, rounded to two decimal places. example: 796625 format: int64 type: integer personalConveyanceDistanceMeters: description: Distance driven for personal conveyance, rounded to two decimal places. example: 27358 format: int64 type: integer yardMoveDistanceMeters: description: Distance driven for yard moves, rounded to two decimal places. example: 1287 format: int64 type: integer type: object RoutesGetRoutesFeedNotImplementedErrorResponseBody: description: Requested endpoint is not yet implemented properties: message: description: Message of error example: Not implemented. type: string requestId: description: The request ID; used when reaching out to support for issues with requests. example: 8916e1c1 type: string required: - message - requestId type: object MinimalRouteAuditLogsResponseBody: description: A single route. Only the fields that have changed are present in the response. All other fields, including the route id, will not be present in the response. For now, only routeStops are included since only Route Tracking updates are supported. properties: stops: description: The route stops in the route. Only stops that have been updated will be included in the response. items: $ref: '#/components/schemas/MinimalRouteStopAuditLogsResponseBody' type: array type: object HosDailyLogsUpdateShippingDocsNotFoundErrorResponseBody: description: Resource not found properties: message: description: Message of error example: Object not found. type: string requestId: description: The request ID; used when reaching out to support for issues with requests. example: 8916e1c1 type: string required: - message - requestId type: object HosDailyLogsUpdateShippingDocsInternalServerErrorResponseBody: description: An internal server error occurred properties: message: description: Message of error example: Failed to execute GraphQL query. type: string requestId: description: The request ID; used when reaching out to support for issues with requests. example: 8916e1c1 type: string required: - message - requestId type: object RoutesStopResponseObjectResponseBody: properties: actualArrivalTime: description: Actual arrival time, if it exists, for the route stop in RFC 3339 format. example: '2006-01-02T15:04:05+07:00' format: date-time type: string actualDepartureTime: description: Actual departure time, if it exists, for the route stop in RFC 3339 format. example: '2006-01-02T15:04:05+07:00' format: date-time type: string address: $ref: '#/components/schemas/GoaAddressTinyResponseResponseBody' documents: description: List of documents associated with the stop. items: $ref: '#/components/schemas/GoaDocumentTinyResponseResponseBody' type: array enRouteTime: description: The time the stop became en-route, in RFC 3339 format. example: '2006-01-02T15:04:05+07:00' format: date-time type: string eta: description: Estimated time of arrival, if this stop is currently en-route, in RFC 3339 format. example: '2006-01-02T15:04:05+07:00' format: date-time type: string externalIds: additionalProperties: type: string description: A map of external ids type: object id: description: Id of the stop example: '324231' type: string liveSharingUrl: description: The shareable url of the stop's current status. example: https://cloud.samsara.com/fleet/viewer/job/fleet_viewer_token type: string locationLiveSharingLinks: description: List of shareable, non-expired 'By Location' Live Sharing Links. items: $ref: '#/components/schemas/LiveSharingLinkResponseObjectResponseBody' type: array name: description: Name of the stop example: 'Stop #1' type: string notes: description: Notes for the stop example: These are my notes maxLength: 2000 type: string ontimeWindowAfterArrivalMs: description: Specifies the time window (in milliseconds) after a stop's scheduled arrival time during which the stop is considered 'on-time'. example: 300000 format: int64 type: integer ontimeWindowBeforeArrivalMs: description: Specifies the time window (in milliseconds) before a stop's scheduled arrival time during which the stop is considered 'on-time'. example: 300000 format: int64 type: integer scheduledArrivalTime: description: Scheduled arrival time, if it exists, for the stop in RFC 3339 format. example: '2019-06-13T19:08:25Z' format: date-time type: string scheduledDepartureTime: description: Scheduled departure time, if it exists, for the stop in RFC 3339 format. example: '2019-06-13T19:08:25Z' format: date-time type: string singleUseLocation: $ref: '#/components/schemas/RoutesSingleUseAddressObjectResponseBody' skippedTime: description: Skipped time, if it exists, for the route stop in RFC 3339 format. example: '2006-01-02T15:04:05+07:00' format: date-time type: string state: description: 'The current state of the route stop. Valid values: `unassigned`, `scheduled`, `en route`, `skipped`, `arrived`, `departed`' enum: - unassigned - scheduled - en route - skipped - arrived - departed example: scheduled type: string required: - id - name - state type: object GoaAddressTinyResponseResponseBody: description: A minified Address object properties: externalIds: additionalProperties: type: string description: A map of external ids type: object id: description: Id of the address example: '494123' type: string name: description: Name of the address example: 'Company Office #1' type: string required: - id - name type: object RoutesGetRoutesFeedMethodNotAllowedErrorResponseBody: description: Method not allowed properties: message: description: Message of error example: DELETE not allowed on /endpoint. type: string requestId: description: The request ID; used when reaching out to support for issues with requests. example: 8916e1c1 type: string required: - message - requestId type: object LiveSharingLinkResponseObjectResponseBody: description: Live Sharing Link response object. properties: expiresAtTime: description: Date that this link expires, in RFC 3339 format. example: '2020-01-27T07:06:25Z' type: string liveSharingUrl: description: The shareable URL of the vehicle's location. example: https://cloud.samsara.com/o/123456/fleet/viewer/address/gEAitEnnOwcv92cuPzcU type: string name: description: Name of the Live Sharing Link. example: Name type: string required: - liveSharingUrl - name type: object RoutesGetRoutesFeedUnauthorizedErrorResponseBody: description: Unauthorized properties: message: description: Message of error example: Invalid token. type: string requestId: description: The request ID; used when reaching out to support for issues with requests. example: 8916e1c1 type: string required: - message - requestId type: object GoaVehicleTinyResponseResponseBody: description: A minified vehicle object. This object is only returned if the route is assigned to the vehicle. properties: externalIds: additionalProperties: type: string description: A map of external ids type: object id: description: ID of the vehicle example: '494123' type: string name: description: Name of the vehicle example: 'Fleet Truck #1' type: string type: object GoaDocumentTinyResponseResponseBody: description: A minified Document object properties: id: description: Id of the document example: '494123' type: string name: description: Name of the document example: Fuel Receipt Wichita type: string required: - id type: object HosDailyLogsGetHosDailyLogsServiceUnavailableErrorResponseBody: description: Service unavailable properties: message: description: Message of error example: context deadline exceeded type: string requestId: description: The request ID; used when reaching out to support for issues with requests. example: 8916e1c1 type: string required: - message - requestId type: object HosDailyLogsGetHosDailyLogsBadRequestErrorResponseBody: description: Bad Request parameters properties: message: description: Message of error example: Invalid value for parameter. type: string requestId: description: The request ID; used when reaching out to support for issues with requests. example: 8916e1c1 type: string required: - message - requestId type: object RoutesGetRoutesFeedGatewayTimeoutErrorResponseBody: description: Gateway timeout properties: message: description: Message of error example: context deadline exceeded type: string requestId: description: The request ID; used when reaching out to support for issues with requests. example: 8916e1c1 type: string required: - message - requestId type: object RouteFeedObjectResponseBody: description: Route feed object. properties: changes: $ref: '#/components/schemas/RouteChangesResponseBody' operation: description: 'The operation that was performed as part of this route update. Valid values: `stop scheduled`, `stop en route`, `stop skipped`, `stop arrived`, `stop departed`, `stop ETA updated`, `stop arrival time updated`, `stop completion time updated`, `stop order changed`, `stop arrival prevented`' enum: - stop scheduled - stop en route - stop skipped - stop arrived - stop departed - stop ETA updated - stop arrival time updated - stop completion time updated - stop order changed - stop arrival prevented example: stop skipped type: string route: $ref: '#/components/schemas/baseRouteResponseObjectResponseBody' source: description: 'The source of this route update. Updates that are triggered by time or by the route being completed are ''automatic''. Valid values: `automatic`, `driver`, `admin`' enum: - automatic - driver - admin example: automatic type: string time: description: The timestamp of the route in RFC 3339 format. example: '2020-01-27T07:06:25Z' format: date-time type: string type: description: 'The type of route update. The route tracking updates occur as a route is completed and stops transition from one state to another. Currently only Route Tracking updates are supported, but this will change in the future when additional types are added. Valid values: `route tracking`' enum: - route tracking example: route tracking type: string required: - changes - route - source - time - type type: object HosDailyLogsGetHosDailyLogsGatewayTimeoutErrorResponseBody: description: Gateway timeout properties: message: description: Message of error example: context deadline exceeded type: string requestId: description: The request ID; used when reaching out to support for issues with requests. example: 8916e1c1 type: string required: - message - requestId type: object V1HosAuthenticationLogsResponse: properties: authenticationLogs: items: $ref: '#/components/schemas/V1HosAuthenticationLogsResponse_authenticationLogs' type: array type: object HosDailyLogsUpdateShippingDocsResponseBody: properties: data: $ref: '#/components/schemas/PatchShippingDocsResponseBodyResponseBody' required: - data type: object PendingDutyStatusDurationsObjectResponseBody: description: What the duty status durations on the drivers log would be if all pending carrier edits are accepted by the driver. properties: activeDurationMs: description: Duration the driver was active for in the log period in milliseconds. example: 38825000 format: int64 type: integer driveDurationMs: description: Duration the driver was driving for in the log period in milliseconds. example: 31970000 format: int64 type: integer offDutyDurationMs: description: Duration the driver was off duty for in the log period in milliseconds. example: 20555000 format: int64 type: integer onDutyDurationMs: description: Duration the driver was on duty for in the log period in milliseconds. example: 5423000 format: int64 type: integer personalConveyanceDurationMs: description: Duration the driver was driving for personal conveyance for in the log period in milliseconds. example: 4358000 format: int64 type: integer sleeperBerthDurationMs: description: Duration the driver was in their sleeper berth for in the log period in milliseconds. example: 27020000 format: int64 type: integer waitingTimeDurationMs: description: Duration the driver was waiting for in the log period in milliseconds. example: 1560000 format: int64 type: integer yardMoveDurationMs: description: Duration the driver was driving for yard moves for in the log period in milliseconds. example: 1432000 format: int64 type: integer type: object EldSettingsObjectResponseBody: description: The driver's ELD settings. properties: rulesets: description: The driver's ELD rulesets and overrides. items: $ref: '#/components/schemas/DriverRulesetObjectResponseBody' type: array type: object RoutesGetRoutesFeedResponseBody: properties: data: description: Route feed response. items: $ref: '#/components/schemas/RouteFeedObjectResponseBody' type: array pagination: $ref: '#/components/schemas/GoaPaginationResponseResponseBody' required: - data - pagination type: object RoutesGetRoutesFeedBadRequestErrorResponseBody: description: Bad Request parameters properties: message: description: Message of error example: Invalid value for parameter. type: string requestId: description: The request ID; used when reaching out to support for issues with requests. example: 8916e1c1 type: string required: - message - requestId type: object GoaDriverTinyResponseResponseBody: description: A minified driver object. This object is only returned if the route is assigned to the driver. properties: externalIds: additionalProperties: type: string description: A map of external ids type: object id: description: ID of the driver example: '45646' type: string name: description: Name of the driver example: Driver Bob type: string required: - id type: object DutyStatusDurationObjectResponseBody: description: The currently applied duty status durations on the driver's log. properties: activeDurationMs: description: Duration the driver was active for in the log period in milliseconds. example: 38825000 format: int64 type: integer driveDurationMs: description: Duration the driver was driving for in the log period in milliseconds. example: 31970000 format: int64 type: integer offDutyDurationMs: description: Duration the driver was off duty for in the log period in milliseconds. example: 20555000 format: int64 type: integer onDutyDurationMs: description: Duration the driver was on duty for in the log period in milliseconds. example: 5423000 format: int64 type: integer personalConveyanceDurationMs: description: Duration the driver was driving for personal conveyance for in the log period in milliseconds. example: 4358000 format: int64 type: integer sleeperBerthDurationMs: description: Duration the driver was in their sleeper berth for in the log period in milliseconds. example: 27020000 format: int64 type: integer waitingTimeDurationMs: description: Duration the driver was waiting for in the log period in milliseconds. example: 1560000 format: int64 type: integer yardMoveDurationMs: description: Duration the driver was driving for yard moves for in the log period in milliseconds. example: 1432000 format: int64 type: integer type: object HosDailyLogsUpdateShippingDocsGatewayTimeoutErrorResponseBody: description: Gateway timeout properties: message: description: Message of error example: context deadline exceeded type: string requestId: description: The request ID; used when reaching out to support for issues with requests. example: 8916e1c1 type: string required: - message - requestId type: object HosDailyLogsUpdateShippingDocsBadRequestErrorResponseBody: description: Bad Request parameters properties: message: description: Message of error example: Invalid value for parameter. type: string requestId: description: The request ID; used when reaching out to support for issues with requests. example: 8916e1c1 type: string required: - message - requestId type: object DriverRulesetObjectResponseBody: properties: break: description: 'The rest break required setting of the ELD ruleset applied to this driver. Valid values: `Property (off-duty/sleeper)`, `Explosives/HazMat (on-duty)`' enum: - Property (off-duty/sleeper) - Explosives/HazMat (on-duty) example: Explosives/HazMat (on-duty) type: string cycle: description: 'The cycle of the ELD ruleset applied to this driver. Valid values: `USA 60 hour / 7 day`, `USA 70 hour / 8 day`, `AK 80 hour / 8 day`, `AK 70 hour / 7 day`, `CA 80 hour / 8 day`, `CA 112 hour / 8 day`, `FL 80 hour / 8 day`, `FL 70 hour / 7 day`, `NE 80 hour / 8 day`, `NE 70 hour / 7 day`, `NC 80 hour / 8 day`, `NC 70 hour / 7 day`, `OK 70 hour / 8 day`, `OK 60 hour / 7 day`, `OR 80 hour / 8 day`, `OR 70 hour / 7 day`, `SC 80 hour / 8 day`, `SC 70 hour / 7 day`, `TX 70 hour / 7 day`, `WI 80 hour / 8 day`, `WI 70 hour / 7 day`, `Canada South Cycle 1 (70 hour / 7 day)`, `Canada South Cycle 2 (120 hour / 14 day)`, `Canada North Cycle 1 (80 hour / 7 day)`, `Canada North Cycle 2 (120 hour / 14 day)`' enum: - USA 60 hour / 7 day - USA 70 hour / 8 day - AK 80 hour / 8 day - AK 70 hour / 7 day - CA 80 hour / 8 day - CA 112 hour / 8 day - FL 80 hour / 8 day - FL 70 hour / 7 day - NE 80 hour / 8 day - NE 70 hour / 7 day - NC 80 hour / 8 day - NC 70 hour / 7 day - OK 70 hour / 8 day - OK 60 hour / 7 day - OR 80 hour / 8 day - OR 70 hour / 7 day - SC 80 hour / 8 day - SC 70 hour / 7 day - TX 70 hour / 7 day - WI 80 hour / 8 day - WI 70 hour / 7 day - Canada South Cycle 1 (70 hour / 7 day) - Canada South Cycle 2 (120 hour / 14 day) - Canada North Cycle 1 (80 hour / 7 day) - Canada North Cycle 2 (120 hour / 14 day) example: USA 60 hour / 7 day type: string jurisdiction: description: The jurisdiction of the ELD ruleset applied to this driver. These are specified by either `CS` or `CN` for Canada South and Canada North, respectively, or the ISO 3166-2 postal code for the supported state or territory. example: AR type: string restart: description: 'The restart of the ELD ruleset applied to this driver. Valid values: `34-hour Restart`, `24-hour Restart`, `36-hour Restart`, `72-hour Restart`' enum: - 34-hour Restart - 24-hour Restart - 36-hour Restart - 72-hour Restart example: 34-hour Restart type: string shift: description: 'The shift of the ELD ruleset applied to this driver. Valid values: `US Interstate Property`, `US Interstate Passenger`' enum: - US Interstate Property - US Interstate Passenger example: US Interstate Property type: string type: object RoutesSingleUseAddressObjectResponseBody: description: This field is used to indicate stops along the route for which an address has not been persisted. This field is mutually exclusive with addressId. properties: address: description: Address of the stop. example: 1234 Main St, San Jose, CA maxLength: 255 type: string latitude: description: The latitude of the location example: 123.456 format: double type: number longitude: description: The longitude of the location example: 37.459 format: double type: number required: - latitude - longitude type: object HosDailyLogsUpdateShippingDocsBadGatewayErrorResponseBody: description: Bad Gateway properties: message: description: Message of error example: 'rpc error: code = Unknown desc = connection refused' type: string requestId: description: The request ID; used when reaching out to support for issues with requests. example: 8916e1c1 type: string required: - message - requestId type: object HosDailyLogsGetHosDailyLogsMethodNotAllowedErrorResponseBody: description: Method not allowed properties: message: description: Message of error example: DELETE not allowed on /endpoint. type: string requestId: description: The request ID; used when reaching out to support for issues with requests. example: 8916e1c1 type: string required: - message - requestId type: object HosDailyLogsUpdateShippingDocsUnauthorizedErrorResponseBody: description: Unauthorized properties: message: description: Message of error example: Invalid token. type: string requestId: description: The request ID; used when reaching out to support for issues with requests. example: 8916e1c1 type: string required: - message - requestId type: object PatchShippingDocsResponseBodyResponseBody: description: Response after successfully updating the LogMetaData object. properties: adverseDrivingClaimed: description: Whether the driver has claimed the [Adverse Driving Exemption](https://kb.samsara.com/hc/en-us/articles/360047336792-Adverse-Driving-Exemption) for this HOS day chart. example: true type: boolean bigDayClaimed: description: Whether the driver has claimed the [Big Day Exemption](https://kb.samsara.com/hc/en-us/articles/360057113891-16-Hour-Short-Haul-Exemption-Big-Day-) for this HOS day chart. example: false type: boolean carrierFormattedAddress: description: The address of the carrier used for this HOS chart. example: 1990 Alameda Street, San Francisco, CA 94103 type: string carrierName: description: The name of the carrier used for this HOS chart. example: Carrier Name type: string carrierUsDotNumber: description: The US DOT number of the carrier used for this HOS chart. example: 1234 format: int64 type: integer homeTerminalFormattedAddress: description: The address of the Home Terminal used for this HOS chart. example: 1990 Alameda Street, San Francisco, CA 94103 type: string homeTerminalName: description: The name of the Home Terminal used for this HOS chart. example: Home Terminal Name type: string isCertified: description: Whether this HOS day chart was certified by the driver. example: true type: boolean isUsShortHaulActive: description: Whether the driver has the 150 air-mile Short Haul Exemption active for this HOS day chart. example: false type: boolean trailerNames: description: List of trailer names associated with the driver for the day. If a trailer was associated with a log through the driver app, the trailer name will be the trailer ID. example: - '10293' - Trailer ID 1 items: example: Nemo qui nulla dolor consectetur. type: string type: array type: object HosDailyLogsUpdateShippingDocsNotImplementedErrorResponseBody: description: Requested endpoint is not yet implemented properties: message: description: Message of error example: Not implemented. type: string requestId: description: The request ID; used when reaching out to support for issues with requests. example: 8916e1c1 type: string required: - message - requestId type: object LogMetaDataObjectResponseBody: description: The metadata of the log. properties: adverseDrivingClaimed: description: Whether the driver has claimed the [Adverse Driving Exemption](https://kb.samsara.com/hc/en-us/articles/360047336792-Adverse-Driving-Exemption) for this HOS day chart. example: true type: boolean bigDayClaimed: description: Whether the driver has claimed the [Big Day Exemption](https://kb.samsara.com/hc/en-us/articles/360057113891-16-Hour-Short-Haul-Exemption-Big-Day-) for this HOS day chart. example: true type: boolean carrierFormattedAddress: description: The address of the carrier used for this HOS chart. example: 1990 Alameda Street, San Francisco, CA 94103 type: string carrierName: description: The name of the carrier used for this HOS chart. example: Carrier Name type: string carrierUsDotNumber: description: The US DOT number of the carrier used for this HOS chart. example: 1234 format: int64 type: integer certifiedAtTime: description: The time this log was certified in RFC 3339 format. example: '2020-01-01T06:00:00Z' type: string homeTerminalFormattedAddress: description: The address of the Home Terminal used for this HOS chart. example: 1990 Alameda Street, San Francisco, CA 94103 type: string homeTerminalName: description: The name of the Home Terminal used for this HOS chart. example: Home Terminal Name type: string isCertified: description: Whether this HOS day chart was certified by the driver. example: false type: boolean isUsShortHaulActive: description: Whether the driver has the 150 air-mile Short Haul Exemption active for this HOS day chart. example: true type: boolean shippingDocs: description: List of shipping document names associated with the driver for the day. This field maps to Shipping ID in the dashboard. example: Delivery 123, chips and soda type: string trailerNames: description: List of trailer names associated with the driver for the day. If a trailer was associated with a log through the driver app the trailer name will be the trailer ID. example: - '10293' - Trailer ID 1 items: example: Quo assumenda a atque aut. type: string type: array vehicles: description: List of vehicles associated with the driver for the day. items: $ref: '#/components/schemas/VehicleResponseResponseBody' type: array type: object MinimalRouteStopAuditLogsResponseBody: description: A single route stop for a route. properties: actualArrivalTime: description: Actual arrival time, if it exists, for the route stop in RFC 3339 format. example: '2006-01-02T15:04:05+07:00' format: date-time type: string actualDepartureTime: description: Actual departure time, if it exists, for the route stop in RFC 3339 format. example: '2006-01-02T15:04:05+07:00' format: date-time type: string enRouteTime: description: The time the stop became en-route, in RFC 3339 format. example: '2006-01-02T15:04:05+07:00' format: date-time type: string eta: description: Estimated time of arrival, if this stop is currently en-route, in RFC 3339 format. example: '2006-01-02T15:04:05+07:00' format: date-time type: string externalIds: additionalProperties: type: string description: A map of external ids type: object id: description: Unique identifier for the route stop. example: '141414' type: string liveSharingUrl: description: The shareable url of the stop's current status. example: https://cloud.samsara.com/fleet/viewer/job/fleet_viewer_token type: string scheduledArrivalTime: description: Scheduled arrival time, if it exists, for the stop in RFC 3339 format. If it does not exist, and this field was changed in the update, it will be an empty string. example: '2019-06-13T19:08:25Z' format: date-time type: string scheduledDepartureTime: description: Scheduled departure time, if it exists, for the stop in RFC 3339 format. If it does not exist, and this field was changed in the update, it will be an empty string. example: '2019-06-13T19:08:25Z' format: date-time type: string skippedTime: description: Skipped time, if it exists, for the route stop in RFC 3339 format. example: '2006-01-02T15:04:05+07:00' format: date-time type: string state: description: 'The current state of the route stop. Valid values: `unassigned`, `scheduled`, `en route`, `skipped`, `arrived`, `departed`' enum: - unassigned - scheduled - en route - skipped - arrived - departed example: scheduled type: string required: - id type: object HosDailyLogsGetHosDailyLogsUnauthorizedErrorResponseBody: description: Unauthorized properties: message: description: Message of error example: Invalid token. type: string requestId: description: The request ID; used when reaching out to support for issues with requests. example: 8916e1c1 type: string required: - message - requestId type: object HosDailyLogsObjectResponseBody: properties: distanceTraveled: $ref: '#/components/schemas/DistanceTraveledObjectResponseBody' driver: $ref: '#/components/schemas/DriverWithTimezoneEldSettingsObjectResponseBody' dutyStatusDurations: $ref: '#/components/schemas/DutyStatusDurationObjectResponseBody' endTime: description: The end time of the daily log in RFC 3339 format. This will be calculated using timezone of the driver. example: '2019-06-20T19:08:25Z' type: string logMetaData: $ref: '#/components/schemas/LogMetaDataObjectResponseBody' pendingDutyStatusDurations: $ref: '#/components/schemas/PendingDutyStatusDurationsObjectResponseBody' startTime: description: The start time of the daily log in RFC 3339 format. This will be calculated using timezone of the driver. example: '2019-06-13T19:08:25Z' type: string required: - driver - endTime - startTime type: object HosDailyLogsUpdateShippingDocsMethodNotAllowedErrorResponseBody: description: Method not allowed properties: message: description: Message of error example: DELETE not allowed on /endpoint. type: string requestId: description: The request ID; used when reaching out to support for issues with requests. example: 8916e1c1 type: string required: - message - requestId type: object RoutesGetRoutesFeedNotFoundErrorResponseBody: description: Resource not found properties: message: description: Message of error example: Object not found. type: string requestId: description: The request ID; used when reaching out to support for issues with requests. example: 8916e1c1 type: string required: - message - requestId type: object securitySchemes: AccessTokenHeader: type: http scheme: bearer x-original-swagger-version: '2.0' x-readme: explorer-enabled: true proxy-enabled: true