All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.

[1.1.0] – 2026-03-16

Added

Vehicle Pricing by VIN

GET /vehicles/pricing?vin={vin}

Get current used and new market value for any vehicle using its VIN number.

Pricing is sourced from real online car listings across North America. Results are cached for 90 days. VIN decoding uses NHTSA vPIC as the primary source with API Ninjas as fallback.

Parameters

  • vin (query, string, required): 17-character Vehicle Identification Number. Must not contain I, O, or Q.

Rate Limiting

100 requests per day per API key. This limit is configurable per key.

Response Fields

  • vehicleInfo: Decoded vehicle information (make, model, year, body class, fuel type, etc.)
  • usedPrice: Used market pricing including average, min, max, median, and listing count
  • newPrice: New/MSRP pricing including average, min, max, median, and listing count. Empty if the model year is no longer sold new
  • location: Geographic market the pricing applies to
  • currency: Currency of all price fields
  • source: Description of the data sources used
Responses
  • 200: Pricing data returned successfully
  • 400: Invalid VIN format or unable to decode VIN
  • 401: Unauthorized - invalid or missing API key
  • 429: Rate limit exceeded
  • 504: Pricing service timeout

[1.0.0] – Initial Release

Base API release covering Connections, Vehicles, Drivers, Trips, Safety Events, Coaching, Reports, and Webhooks.

[1.0.8] – 2025-11-07

Removed

Reports

  • Normalized Incident Count per Type:
    • Endpoint: GET /reports/incident
    • Reason: API endpoint discontinued and no longer available.

[1.0.7] – 2025-11-05

Updated

Reports

  • Normalized Incident Count per Type:
    • Summary: Enhanced normalized incident count per type report with additional filtering options
    • Remarks: The endpoint now supports filtering by vehicle IDs and vehicle group IDs
    • Updated Parameters:
      • connectionId (Guid): The connection id of connected account
      • vehicleIds (List<Guid>?): Optional vehicle IDs to filter the statistics by specific vehicles
      • vehicleGroupIds (List<string>?): Optional vehicle group IDs to filter the statistics by specific vehicle groups
      • from (DateTime): Start date of report (RFC 3339 format)
      • to (DateTime): End date of report (RFC 3339 format)
      • cancellationToken (CancellationToken): A cancellation token to cancel the operation
    • Changes:
      • Added support for filtering by vehicleIds and vehicleGroupIds parameters
    • Responses:
      • 200: Success
      • 429: Rate limited
      • 400: Bad request
    • Endpoint: GET /reports/incident

[1.0.6] – 2025-08-02

Removed

  • Trips
    • Historical Trips Locations: Removed endpoint for listing historical breadcrumb locations for a connection.
      • Endpoint: GET /trips/locations
      • Reason: API endpoint discontinued and no longer available.

[1.0.5] - 2025-05-28

Added

Coaching

  • List Coaching:
    • Summary: Normalized incident count per type report
    • Remarks: Retrieve a list of all coaching messages in your account, including essential details like Event, VIN. This endpoint helps you manage and track coaching messages within your fleet.
    • Parameters:
      • connectionId The connection id of connected account.
      • from (DateTime): Start date of report (RFC 3339 format).
      • to (DateTime): End date of report (RFC 3339 format).
      • cursor (string?): Pagination cursor for fetching results in chunks.
      • limit (int?): Limit on the number of records per page.
      • cancellationToken (CancellationToken): A cancellation token to cancel the operation
    • Responses:
      • 200: Success
      • 429: Rate limited
      • 400: Bad request
    • Endpoint: GET /coachings/messages

[1.0.4] - 2025-01-27

Updated

Vehicles

  • Get Vehicle and List Vehicles responses
    • Change: Added ManifoldDetails property to the Vehicle model in the responses.
    • Details:
      • The ManifoldDetails property provides additional data about the vehicle such as company, model, construction year, fuel type, and body class.
    • Endpoints Affected:
      • GET /vehicles
      • GET /vehicles/{vehicleId}
    • Remarks: These changes enhance the vehicle information returned by the APIs, allowing deeper insights into the vehicle's details.

[1.0.3] - 2024-12-25

Updated

Safety Events

  • List Safety Events:
    • Summary: Retrieve all safety events recorded by the system, such as harsh braking or collisions, within a specified date range. Use optional filters to narrow results by vehicle or driver.
    • Remarks: The endpoint now includes additional query parameters for enhanced filtering and sorting.
    • Updated Parameters:
      • minIntensity (int?): Minimum intensity for filtering events.
      • minRiskScore (int?): Minimum risk score for filtering events.
      • eventType (string?): Event type for filtering events.
      • cursor (string?): Pagination cursor for fetching results in chunks.
      • limit (int?): Limit on the number of records per page.
    • Responses:
      • 200: Success
      • 429: Rate limited
      • 400: Bad request
    • Endpoint: GET /safety-events

[1.0.2] - 2024-12-24

Added

Reports

  • Normalized Incident Count per Type:

    • Summary: Normalized incident count per type report
    • Remarks: Normalized incident count per type in the connected account in 1000 KMs
    • Parameters:
      • connectionId The connection id of connected account.
      • from (DateTime): Start date of report (RFC 3339 format).
      • to (DateTime): End date of report (RFC 3339 format).
      • cancellationToken (CancellationToken): A cancellation token to cancel the operation
    • Responses:
      • 200: Success
      • 429: Rate limited
      • 400: Bad request
    • Endpoint: GET /reports/incident?{connectionId}
  • Global report:

    • Summary: Global report
    • Remarks: Global reports which contains data of all clients
    • Parameters:
      • cancellationToken (CancellationToken): A cancellation token to cancel the operation
    • Responses:
      • 200: Success
      • 429: Rate limited
      • 400: Bad request
    • Endpoint: GET /reports/global

Notifications

  • Retrieve All Webhooks: Added endpoint to retrieve all webhooks configured for the current client account.

    • Summary: Retrieve All Webhooks
    • Remarks: Retrieve a list of all webhooks configured for the current client account.
    • Parameters:
      • cancellationToken (CancellationToken): A token to cancel the asynchronous operation.
    • Responses:
      • 200: Success
      • 429: Rate limited
      • 400: Bad request
    • Endpoint: GET /webhooks
  • Create Webhook: Added endpoint to register a new webhook to receive event notifications.

    • Summary: Create Webhook
    • Remarks: Registers a new webhook to receive event notifications.
    • Parameters:
      • input (WebhookRequestModel): Object containing the details of the new webhook.
      • cancellationToken (CancellationToken): A token to cancel the asynchronous operation.
    • Responses:
      • 200: Webhook created successfully
      • 429: Rate limited
      • 400: Bad request
    • Endpoint: POST /webhook
  • Update Webhook: Added endpoint to update the configuration of an existing webhook.

    • Summary: Update Webhook
    • Remarks: Update the configuration of an existing webhook.
    • Parameters:
      • id (Guid): Unique identifier of the webhook to be updated.
      • input (WebhookRequestModel): Object containing the updated details of the webhook.
      • cancellationToken (CancellationToken): A token to cancel the asynchronous operation.
    • Responses:
      • 200: Webhook updated successfully
      • 429: Rate limited
      • 400: Bad request
    • Endpoint: PUT /webhook/{id}
  • Delete Webhook: Added endpoint to delete an existing webhook from the system.

    • Summary: Delete Webhook
    • Remarks: Remove an existing webhook from the configuration.
    • Parameters:
      • id (Guid): Unique identifier of the webhook to be deleted.
      • cancellationToken (CancellationToken): A token to cancel the asynchronous operation.
    • Responses:
      • 200: Webhook deleted successfully
      • 429: Rate limited
      • 400: Bad request
      • 404: Webhook not found
    • Endpoint: DELETE /webhook/{id}

[1.0.1] - 2024-12-12

Added

Reports

  • Event Accuracy Report: Added endpoint to retrieve event accuracy details.
    • Summary: Event Accuracy Report
    • Remarks: Event accuracy in the connected account.
    • Parameters:
      • connectionId (Guid): The connection id of connected account.
      • providerId (Guid): The provider id of the connected account.
      • from (DateTime): Start date to get event accuracy from (RFC 3339 format).
      • to (DateTime): End date to get event accuracy to (RFC 3339 format).
      • cancellationToken (CancellationToken): A cancellation token to cancel the operation
    • Responses:
      • 200: Success
      • 429: Rate limited
      • 400: Bad request
    • Endpoint: GET /reports/event-accuracy

[1.0.0] - 2024-15-05

Added

Connections

  • List Connections: Added endpoint to Retrieve a list of all connections configured within your account. Each connection contains information about the provider and health status, enabling you to monitor integrations..
    • Summary: List Connections
    • Remarks: Retrieve a list of all connections configured within your account. Each connection contains information about the provider and health status, enabling you to monitor integrations..
    • Responses:
      • 200: Success
      • 429: Rate limited
      • 400: Bad request
    • Endpoint: GET /connections

Drivers

  • List Drivers: Added endpoint to Retrieve a list of all drivers associated with your account..

    • Summary: List Drivers
    • Remarks: Retrieve a list of all drivers associated with your account..
    • Parameters:
      • connectionId (Guid): Unique ID of the connection that helps in managing multiple connections.
    • Responses:
      • 200: Success
      • 429: Rate limited
      • 400: Bad request
    • Endpoint: GET /drivers
  • Get Driver: Added endpoint to Fetch detailed information about a specific driver using their unique ID..

    • Summary: Get Driver
    • Remarks: Fetch detailed information about a specific driver using their unique ID..
    • Parameters:
      • driverId (Guid): Unique ID assigned to each driver for identification.
      • connectionId (Guid): Unique ID of the connection that helps in managing multiple connections.
    • Responses:
      • 200: Success
      • 429: Rate limited
      • 400: Bad request
    • Endpoint: GET /drivers/{driverId}

Safety Events

  • List Safety Events: Added endpoint to Retrieve all safety events recorded by the system, such as harsh braking or collisions, within a specified date range. Use optional filters to narrow results by vehicle or driver.

    • Summary: List Safety Events
    • Remarks: Retrieve all safety events recorded by the system, such as harsh braking or collisions, within a specified date range. Use optional filters to narrow results by vehicle or driver.
    • Parameters:
      • connectionId (Guid): Unique ID of the connection that helps in managing multiple connections.
      • from (DateTime): Start date to get safety events from
      • to (DateTime): End date to get safety events to
      • vehicleIds (array): Provide an array of driver IDs to filter safety events specific to those drivers.
      • driverIds (array): Array of driver ids to filter safety events
      • cancellationToken (CancellationToken): A cancellation token to cancel the operation
    • Responses:
      • 200: Success
      • 429: Rate limited
      • 400: Bad request
    • Endpoint: GET /safety-events
  • List Safety Event Types: Added endpoint to Retrieve a list of all possible safety event types. This endpoint provides the types of incidents supported, such as "Harsh Braking" or "Crash," helping you categorize and analyze events effectively.

    • Summary: List Safety Event Types
    • Remarks: Retrieve a list of all possible safety event types. This endpoint provides the types of incidents supported, such as "Harsh Braking" or "Crash," helping you categorize and analyze events effectively.
    • Parameters:
      • connectionId (Guid): Unique ID of the connection that helps in managing multiple connections.
    • Responses:
      • 200: Success
      • 429: Rate limited
      • 400: Bad request
    • Endpoint: GET /safety-events/types
  • Incident Thumbnail URL: Added endpoint to get incident thumbnail URL.

    • Summary: Incident Thumbnail URL
    • Parameters:
      • connectionId (Guid): Unique ID of the connection that helps in managing multiple connections.
      • id (Guid): The id of incident to get its thumbnail url
      • camPos (string): Indicates which camera should be used to get a thumbnail (interior/exterior)
      • format (string): Indicates format of thumbnail (img/gif)
      • cancellationToken (CancellationToken): A cancellation token to cancel the operation
    • Responses:
      • 200: Success
      • 429: Rate limited
      • 400: Bad request
    • Endpoint: GET /safety-events/{id}/thumbnails/{camPos}
  • Incident Video URL: Added endpoint to get incident video URL.

    • Summary: Incident Video URL
    • Parameters:
      • connectionId (Guid): Unique ID of the connection that helps in managing multiple connections.
      • id (Guid): The id of incident to get its video url
      • camPos (string): Indicates which camera should be used to get a thumbnail (interior/exterior)
      • cancellationToken (CancellationToken): A cancellation token to cancel the operation
    • Responses:
      • 200: Success
      • 429: Rate limited
      • 400: Bad request
    • Endpoint: GET /safety-events/{id}/videos/{camPos}

Trips

  • Historical Trips Locations: Added endpoint to list the historical breadcrumb locations for a connection.

    • Summary: Historical Trips Locations
    • Remarks: List the historical breadcrumb locations for a connection.
    • Parameters:
      • connectionId (Guid): Unique ID of the connection that helps in managing multiple connections.
      • from (DateTime): Start date to get trips locations from
      • to (DateTime): End date to get trips locations to
      • cancellationToken (CancellationToken): A cancellation token to cancel the operation
    • Responses:
      • 200: Success
      • 429: Rate limited
      • 400: Bad request
    • Endpoint: GET /trips/locations
  • List Trips: Added endpoint to list all trips in the connected account.

    • Summary: List Trips
    • Remarks: List all trips in the connected account.
    • Parameters:
      • connectionId (Guid): Unique ID of the connection that helps in managing multiple connections.
      • from (DateTime): Start date to get trips from
      • to (DateTime): End date to get trips to
      • cursor (string): A cursor for pagination
      • limit (int): A limit for pagination
      • cancellationToken (CancellationToken): A cancellation token to cancel the operation
    • Responses:
      • 200: Success
      • 400: Bad Request
      • 429: Rate limited
    • Endpoint: GET /trips
  • Get Trip Details: Added endpoint to get trip details including GPS data for the trip.

    • Summary: Get Trip Details
    • Remarks: Get trip details including GPS data for the trip.
    • Parameters:
      • id (Guid): Trip id to get its details
      • connectionId (Guid): Unique ID of the connection that helps in managing multiple connections.
      • cancellationToken (CancellationToken): A cancellation token to cancel the operation
    • Responses:
      • 200: Success
      • 400: Bad Request
      • 429: Rate limited
      • 500: Internal Server Error
      • 503: Service Unavailable
    • Endpoint: GET /trips/{id}

Vehicles

  • List Vehicles: Added endpoint to list all of the vehicles in the connected account.

    • Summary: List Vehicles
    • Remarks: List all of the vehicles in the connected account.
    • Parameters:
      • connectionId (Guid): Unique ID of the connection that helps in managing multiple connections.
      • cancellationToken (CancellationToken): A cancellation token to cancel the operation
    • Responses:
      • 200: Success
      • 429: Rate limited
      • 400: Bad request
    • Endpoint: GET /vehicles
  • Get Vehicle: Added endpoint to Retrieve detailed information for a specific vehicle, identified by its unique vehicleId. Use this endpoint to access in-depth data on a single vehicle.

    • Summary: Get Vehicle
    • Remarks: Retrieve detailed information for a specific vehicle, identified by its unique vehicleId. Use this endpoint to access in-depth data on a single vehicle.
    • Parameters:
      • vehicleId (Guid): Unique identifier for the vehicle.
      • connectionId (Guid): Unique ID of the connection that helps in managing multiple connections.
      • cancellationToken (CancellationToken): A cancellation token to cancel the operation
    • Responses:
      • 200: Success
      • 429: Rate limited
      • 400: Bad request
    • Endpoint: GET /vehicles/{vehicleId}
  • Historical Vehicle Distance Driven: Added endpoint to list the historical distance driven of a specific vehicle in meters.

    • Summary: Historical Vehicle Distance Driven
    • Remarks: List the historical distance driven of a specific vehicle in meters.
    • Parameters:
      • vehicleId (Guid): The vehicle id to get its driven distance
      • connectionId (Guid): Unique ID of the connection that helps in managing multiple connections.
      • from (DateTime): Start date to get distance from
      • to (DateTime): End date to get distance to
      • cancellationToken (CancellationToken)
    • Responses:
      • 200: Success
      • 429: Rate limited
      • 400: Bad request
    • Endpoint: GET /vehicles/{vehicleId}/distance-driven
  • Vehicle Risk Score: Added endpoint to get the risk score for a specific vehicle within a date range.

    • Summary: Get the risk score for a specific vehicle in a date range.
    • Remarks: This endpoint allows users to retrieve the risk score for a vehicle based on the provided date range.
    • Parameters:
      • vehicleId (Guid): The vehicle id to get its risk score.
      • connectionId (Guid): The connection id which vehicle belongs to.
      • from (DateTime): Start date in UTC to calculate the vehicle's risk score.
      • to (DateTime): End date in UTC to calculate the vehicle's risk score.
      • cancellationToken (CancellationToken): A token to cancel the operation if needed.
    • Responses:
      • 200: Success - Returns the risk score of the vehicle.
      • 429: Rate limited - Request rate limit exceeded.
      • 400: Bad request - Invalid parameters or other request errors.