# Terminal ## Documentation ### Get Started - [How Terminal Works](https://docs.withterminal.com/how-terminal-works.md): Let's introduce you to some key features and concepts of the Terminal API. - [Quickstart](https://docs.withterminal.com/guides/quickstart.md): Here's a step-by-step guide to get started integrating telematics data with Terminal. #### Use Case Guides - [Insurance](https://docs.withterminal.com/guides/insurance.md): Best practices for implementing Terminal in auto insurance workflows, from quoting through policy binding. - [Fuel Cards](https://docs.withterminal.com/guides/fuel-cards.md): Best practices for implementing Terminal in fuel card workflows, from fleet onboarding through fraud prevention and transaction verification. ### Development Lifecycle - [Planning Your Implementation](https://docs.withterminal.com/guides/planning-your-implementation.md): The decisions to make before you build: which models you need, which providers your customers run, how fleets consent, which events you react to, and how connections map to your system. - [Sandbox Environment](https://docs.withterminal.com/guides/sandbox-environment.md): Test your telematics integrations with Terminal's API - [Migrating to Terminal](https://docs.withterminal.com/guides/migrating-to-terminal.md): This guide outlines how to migrate existing connections from another telematics aggregator or your direct integrations to Terminal. - [Production Readiness](https://docs.withterminal.com/guides/production-readiness.md): A guide to help ensure your Terminal implementation is ready for production, covering what to have in place before going live so you can focus on the areas relevant to your use case. ### Connect Your Customers - [Provider Access Control](https://docs.withterminal.com/guides/provider-access-control.md): Control which telematics providers fleets can connect through the Consent Flow. - [Custom Identifiers](https://docs.withterminal.com/guides/custom-identifiers.md) #### Terminal Link - [Terminal Link](https://docs.withterminal.com/guides/terminal-link.md): Terminal provides a hosted 'Link' that makes it easy to authenticate with any telematics provider. With only a few steps you will be able to provide customers/partners an easy self-serve flow to connect their telematics account. - [SDKs](https://docs.withterminal.com/guides/sdks.md): Terminal provides SDKs to make it easy to integrate with your application. - [Consent Templates](https://docs.withterminal.com/guides/consent-templates.md): Learn how to create reusable Link configurations for branding, redirects, and ingestion defaults. - [Short Links](https://docs.withterminal.com/guides/short-links.md): Learn how to create short, easy-to-type Link URLs to share with end users over channels like mailers and SMS. - [Link Analytics Events](https://docs.withterminal.com/guides/link-analytics-events.md): Learn how to use the link.analytics_event_emitted webhook event to understand user activity during the Link flow. #### Provider Configuration - [Motive OAuth Configuration](https://docs.withterminal.com/guides/motive-oauth-configuration.md): Follow this guide to configure an OAuth2 client for Motive integration - [Netradyne Configuration](https://docs.withterminal.com/guides/netradyne-configuration.md): Follow this guide to configure Netradyne for Terminal - [Samsara OAuth Configuration](https://docs.withterminal.com/guides/samsara-oauth-configuration.md): Here's a step-by-step guide to configure an OAuth2 client for Samsara ### Working With Data - [Real-Time Data](https://docs.withterminal.com/guides/real-time-data.md): Access live telematics data from providers through Terminal - [Managed Polling](https://docs.withterminal.com/guides/managed-polling.md): Terminal polls and caches real-time data from providers - [Passthrough](https://docs.withterminal.com/guides/passthrough.md) - [Raw Data](https://docs.withterminal.com/guides/raw-data.md) - [Entity Status & Visibility](https://docs.withterminal.com/guides/entity-status-visibility.md) - [Timestamps](https://docs.withterminal.com/guides/timestamps.md) #### Data Replication - [Data Replication](https://docs.withterminal.com/guides/data-replication.md): How Terminal syncs provider data and the options for getting it into your systems. - [Syncing via the API](https://docs.withterminal.com/guides/syncing-via-the-api.md): Pull Terminal data over the unified API using modifiedAfter and lookback windows. - [Backfill Duration](https://docs.withterminal.com/guides/backfill-duration.md): What affects how long a backfill takes, and how to watch progress. - [AWS S3 Destination](https://docs.withterminal.com/guides/aws-s3-destination.md): Automated data replication to Amazon S3 - [Kafka Destination](https://docs.withterminal.com/guides/kafka-destination.md): Real-time data replication to your Kafka cluster - [Webhooks](https://docs.withterminal.com/guides/webhooks.md) ### Managing Connections - [Connection Health Monitoring](https://docs.withterminal.com/guides/connection-health-monitoring.md): Understand the different categories of connection health events, how to monitor them, and what actions to take. - [Vehicle & Driver Filtering](https://docs.withterminal.com/guides/vehicle-driver-filtering.md) - [Disconnected Connections](https://docs.withterminal.com/guides/disconnected-connections.md): Learn how Terminal handles disconnected connections and the workflows available for quick reconnection. - [Duplicate Connections](https://docs.withterminal.com/guides/duplicate-connections.md): Learn what duplicate connections are and best practices for handling them. - [Deleting Connections](https://docs.withterminal.com/guides/deleting-connections.md): Permanently delete a connection and all of its associated data from Terminal. ### Notifications - [Crash Reports](https://docs.withterminal.com/guides/crash-reports.md): Receive detailed reports when crash events are detected across connections - [User Notifications](https://docs.withterminal.com/guides/user-notifications.md): Receive notifications for key events through your individual account ### Resources - [Security](https://docs.withterminal.com/security.md): How we protect customer data - [Agents](https://docs.withterminal.com/guides/agents.md): Give coding agents access to Terminal fleet data through MCP or the Terminal CLI. Both are in beta. ## API Reference ### API Reference - [Environments](https://docs.withterminal.com/api-reference/environments.md) - [Authentication](https://docs.withterminal.com/api-reference/authentication.md): Learn how to authenticate with Terminal using API keys and connection tokens - [Rate Limits](https://docs.withterminal.com/api-reference/rate-limits.md) - [Resource Expansion](https://docs.withterminal.com/api-reference/resource-expansion.md) - [Pagination](https://docs.withterminal.com/api-reference/pagination.md) - [Serialization](https://docs.withterminal.com/api-reference/serialization.md) - [MCP](https://docs.withterminal.com/api-reference/mcp.md): Endpoint, authentication, arguments, and tools for the Terminal MCP server. - [CLI](https://docs.withterminal.com/api-reference/cli.md): Configuration, global options, and commands for the Terminal CLI. ### Authentication - [Public Token Exchange](https://docs.withterminal.com/api-reference/authentication/public-token-exchange.md): Exchange the `publicToken` returned by our hosted authentication flow for a long lived connection token that will be used when requesting data from a customer's TSP. ### Link - [Create Short Link URL](https://docs.withterminal.com/api-reference/link/create-short-link.md): Create a short URL for the Link onboarding flow as an alternative to the full Link URL with all its query parameters. - [Delete Short Link](https://docs.withterminal.com/api-reference/link/delete-short-link.md): Permanently delete a short link by its durable `id` from the create response (`slk_…`). This endpoint does not accept the 8-character `code` from the shared URL. ### Data Management - [Request Sync](https://docs.withterminal.com/api-reference/data-management/request-sync.md): Manually request to sync the current connections data. - [List Sync History](https://docs.withterminal.com/api-reference/data-management/list-sync-history.md): List a log of all batch sync jobs for the current connection. - [Get Sync Job Status](https://docs.withterminal.com/api-reference/data-management/get-sync-job-status.md): Get the status of a sync job by ID. - [Retry Sync](https://docs.withterminal.com/api-reference/data-management/retry-sync.md): Retry a failed sync job with the same parameters. This is useful for retrying syncs that failed due to temporary issues. - [Cancel Sync](https://docs.withterminal.com/api-reference/data-management/cancel-sync.md): Cancel a sync job mid-way through. This is useful for cancelling syncs that are no longer needed. Cancelled syncs will be marked as failed and can be retried. - [Passthrough](https://docs.withterminal.com/api-reference/data-management/passthrough.md): Make an authenticated request to the underlying telematics provider. - [Raw Passthrough](https://docs.withterminal.com/api-reference/data-management/passthrough-raw.md): Make an authenticated request to the underlying telematics provider and forward successful provider response bodies directly. ### Vehicles - [List Vehicles](https://docs.withterminal.com/api-reference/vehicles/list-vehicles.md): List all of the vehicles in the connected account - [Get Vehicle](https://docs.withterminal.com/api-reference/vehicles/get-vehicle.md): Get the details of a specific vehicle - [Latest Vehicle Locations](https://docs.withterminal.com/api-reference/vehicles/list-latest-vehicle-locations.md): List the latest location of the vehicles in the connected account. - [Historical Vehicle Locations](https://docs.withterminal.com/api-reference/vehicles/list-historical-vehicle-locations.md): List the historical breadcrumb locations for a vehicle. - [Historical Vehicle Stats](https://docs.withterminal.com/api-reference/vehicles/list-historical-vehicle-stats.md): List historical stats and logs about the vehicle. ### Drivers - [List Drivers](https://docs.withterminal.com/api-reference/drivers/list-drivers.md): List all of the drivers in the connected account - [Get Driver](https://docs.withterminal.com/api-reference/drivers/get-driver.md): Get the details of a specific driver ### Hours of Service - [Available Time for Drivers](https://docs.withterminal.com/api-reference/hours-of-service/list-hosavailable-time.md): List available time for the driver. This endpoint provides live access to the driver's available time. Different than most endpoints, this endpoint calls the provider's API in real time to get the latest available time for the driver. This endpoint is useful for building real time applications that… - [List HOS Logs](https://docs.withterminal.com/api-reference/hours-of-service/list-hoslogs.md): List all hours of service logs. HOS logs are tracked as the distinct changes in duty status. - [List HOS Daily Logs](https://docs.withterminal.com/api-reference/hours-of-service/list-hosdaily-logs.md): List daily summary of hours of service. Each daily log represents the time a driver spent in each duty status for a given day. ### Vehicle Utilization - [Get Vehicle Utilization](https://docs.withterminal.com/api-reference/vehicle-utilization/get-vehicle-utilization.md): Get vehicle utilization days containing information about fuel consumption, distance traveled, and operational time metrics. ### Trips - [List Historical Trips](https://docs.withterminal.com/api-reference/trips/list-trips.md): List all historical trips in the connected account. Trips define a period of time where a vehicle is in motion. ### Devices - [List Devices](https://docs.withterminal.com/api-reference/devices/list-devices.md): List all devices in the connected account. ### Safety - [List Safety Events](https://docs.withterminal.com/api-reference/safety/list-safety-events.md): List all safety events detected by the provider. - [Get Safety Event](https://docs.withterminal.com/api-reference/safety/get-safety-event.md): Get a safety event by id. - [Get Event Camera Media](https://docs.withterminal.com/api-reference/safety/get-event-camera-media.md): Get camera media for a given safety event. ### Groups - [List Groups](https://docs.withterminal.com/api-reference/groups/list-groups.md) ### Trailers - [List Trailers](https://docs.withterminal.com/api-reference/trailers/list-trailers.md) - [Latest Trailer Locations](https://docs.withterminal.com/api-reference/trailers/list-latest-trailer-locations.md) ### IFTA - [Get IFTA Summary](https://docs.withterminal.com/api-reference/ifta/get-iftasummary.md): Get all vehicle IFTA reports for the requested time span. ### Connections - [List All Connections](https://docs.withterminal.com/api-reference/connections/list-connections.md): List all of the connections you have for your application. Connections represent the authenticated access you have to your customer's TSP data. - [Get Current Connection](https://docs.withterminal.com/api-reference/connections/get-current-connection.md): Get the details of the current active connection. The current connection is derived from the provided connection token. - [Update Current Connection](https://docs.withterminal.com/api-reference/connections/update-current-connection.md): Update the details of the current active connection. The current connection is derived from the provided connection token. - [Delete Current Connection](https://docs.withterminal.com/api-reference/connections/delete-current-connection.md): Request permanent deletion of the current connection and its synced data. This endpoint updates the connection's status to `pending_deletion` and returns `202 Accepted`. Deletion will begin asynchronously after a grace period. ### Providers - [List Providers](https://docs.withterminal.com/api-reference/providers/list-providers.md): Retrieve a list of the providers Terminal supports. This endpoint will grow to include additional details about the supported capabilities of each provider. ### Issues - [List Issues](https://docs.withterminal.com/api-reference/issues/list-issues.md): List all issues that have been observed by Terminal. - [Resolve Issue](https://docs.withterminal.com/api-reference/issues/resolve-issue.md): Mark an issue's status as `resolved` until the issue is observed again. ### Fault Codes - [List Fault Code Events](https://docs.withterminal.com/api-reference/fault-codes/list-fault-code-events.md): List all fault code events detected by the provider. ### Webhook Events - [Event Types](https://docs.withterminal.com/api-reference/webhook-events/overview.md): Terminal sends webhook events to your server to notify you of events that happen in your Terminal account. - [connection.created](https://docs.withterminal.com/api-reference/webhook-events/connection-created.md): Emitted when a connection is succesfully created with a provider account. - [connection.disconnected](https://docs.withterminal.com/api-reference/webhook-events/connection-disconnected.md): Emitted when a connection is disconnected. This typically happens if credentials are deemed invalid and the user must re-authenticate. - [connection.reconnected](https://docs.withterminal.com/api-reference/webhook-events/connection-reconnected.md): Emitted when a connection is succesfully reconnected. This should happen when a customer re-authenticates after being disconnected. - [connection.completed](https://docs.withterminal.com/api-reference/webhook-events/connection-completed.md): This event is emitted when a user successfully completes the authentication process. - [connection.updated](https://docs.withterminal.com/api-reference/webhook-events/connection-updated.md): Emitted when a connection's details are updated. - [connection.pending_deletion](https://docs.withterminal.com/api-reference/webhook-events/connection-pending-deletion.md): Emitted when a connection has been marked for deletion. - [connection.deleted](https://docs.withterminal.com/api-reference/webhook-events/connection-deleted.md): Emitted when a connection's data has been deleted. - [sync.requested](https://docs.withterminal.com/api-reference/webhook-events/sync-requested.md): Emitted when a connection sync has been requested and is queued to run. - [sync.started](https://docs.withterminal.com/api-reference/webhook-events/sync-started.md): Emitted when a connection sync has started running. - [sync.completed](https://docs.withterminal.com/api-reference/webhook-events/sync-completed.md): Emitted when a connection sync completes successfully. For S3/data delivery destinations, use delivery.completed to know when files have finished delivering. - [sync.failed](https://docs.withterminal.com/api-reference/webhook-events/sync-failed.md): Emitted when a connection sync has failed to complete successfully. - [connection.first_sync_completed](https://docs.withterminal.com/api-reference/webhook-events/connection-first-sync-completed.md): Emitted when a connection's first successful sync completes. For S3/data delivery destinations, use delivery.completed to know when files have finished delivering. - [delivery.requested](https://docs.withterminal.com/api-reference/webhook-events/delivery-requested.md): Emitted when a delivery is requested. - [delivery.started](https://docs.withterminal.com/api-reference/webhook-events/delivery-started.md): Emitted when a delivery starts processing. - [delivery.failed](https://docs.withterminal.com/api-reference/webhook-events/delivery-failed.md): Emitted when a delivery fails. - [delivery.completed](https://docs.withterminal.com/api-reference/webhook-events/delivery-completed.md): Emitted when a delivery completes successfully. - [issue.reported](https://docs.withterminal.com/api-reference/webhook-events/issue-reported.md): Emitted when an issue with a connection has been reported. - [issue.resolved](https://docs.withterminal.com/api-reference/webhook-events/issue-resolved.md): Emitted when an issue has been manually resolved. - [unsupported_provider.requested](https://docs.withterminal.com/api-reference/webhook-events/unsupported-provider-requested.md): Emitted when a customer requests an unsupported provider using our Link component. - [link.analytics_event_emitted](https://docs.withterminal.com/api-reference/webhook-events/link-analytics-event-emitted.md): Emitted when a user performs a tracked action in the Link flow. - [vehicle.added](https://docs.withterminal.com/api-reference/webhook-events/vehicle-added.md) - [vehicle.modified](https://docs.withterminal.com/api-reference/webhook-events/vehicle-modified.md) - [vehicle.removed](https://docs.withterminal.com/api-reference/webhook-events/vehicle-removed.md) - [driver.added](https://docs.withterminal.com/api-reference/webhook-events/driver-added.md) - [driver.modified](https://docs.withterminal.com/api-reference/webhook-events/driver-modified.md) - [driver.removed](https://docs.withterminal.com/api-reference/webhook-events/driver-removed.md) - [trailer.added](https://docs.withterminal.com/api-reference/webhook-events/trailer-added.md) - [trailer.modified](https://docs.withterminal.com/api-reference/webhook-events/trailer-modified.md) - [trailer.removed](https://docs.withterminal.com/api-reference/webhook-events/trailer-removed.md) - [safety_event.added](https://docs.withterminal.com/api-reference/webhook-events/safety-event-added.md) - [safety_event.modified](https://docs.withterminal.com/api-reference/webhook-events/safety-event-modified.md) - [Supported Providers (362 pages)](https://docs.withterminal.com/_llms/supported-providers.md): Documentation for Supported Providers. ## Common Models ### Common Models - [Overview](https://docs.withterminal.com/models/overview.md): Documentation for Terminal's common model schemas #### Entities - [Vehicle](https://docs.withterminal.com/models/vehicle.md): The model representing a vehicle in Terminal. - [Driver](https://docs.withterminal.com/models/driver.md): The model representing a driver in Terminal. - [Group](https://docs.withterminal.com/models/group.md): A group represents a collection of assets (vehicles, trailers, drivers) defined by the provider. - [Device](https://docs.withterminal.com/models/device.md): Type of device installed in a vehicle. - [Trailer](https://docs.withterminal.com/models/trailer.md): The model representing a trailer in Terminal. #### Real-Time Data - [Latest Vehicle Location](https://docs.withterminal.com/models/latest-vehicle-location.md): The latest record of a vehicle's location according to the provider. - [HOS Available Time](https://docs.withterminal.com/models/hosavailable-time.md): The available time left on the clock for a specific driver. - [Latest Trailer Location](https://docs.withterminal.com/models/latest-trailer-location.md): The latest record of a trailer's location according to the provider. #### Time Series Data - [Vehicle Location](https://docs.withterminal.com/models/vehicle-location.md): A point-in-time record of a vehicle's location. - [Vehicle Stat Log](https://docs.withterminal.com/models/vehicle-stat-log.md): A point-in-time record of stats and logs for a specific vehicle. - [Safety Event](https://docs.withterminal.com/models/safety-event.md): A normalized record of a safety-related incident that occurred during a vehicle's operation. These events are detected and recorded by the telematics provider's system. - [Trip](https://docs.withterminal.com/models/trip.md): Trips define a period of time where a vehicle is in motion. Trips are based on the provider's definition. - [Vehicle Utilization Day](https://docs.withterminal.com/models/vehicle-utilization-day.md): Daily vehicle usage metrics for a specific vehicle and date. - [Vehicle Utilization](https://docs.withterminal.com/models/vehicle-utilization.md): Vehicle usage metrics for a specific vehicle and date range. - [Fault Code Event](https://docs.withterminal.com/models/fault-code-event.md): A fault code observed at a specific time - [HOS Log](https://docs.withterminal.com/models/hoslog.md): Records a change in duty status by a driver. - [HOS Daily Log](https://docs.withterminal.com/models/hosdaily-log.md): Record of daily hours of service. - [IFTA Vehicle Month](https://docs.withterminal.com/models/iftavehicle-month.md): Mileage driven by a vehicle, month and jurisdiction. In the API, this is summarized by the [IFTA Summary](/models/iftasummary) model. - [IFTA Summary](https://docs.withterminal.com/models/iftasummary.md): A report of IFTA data for a specific vehicle. Currently only incremented by full months. #### Terminal Platform - [Connection](https://docs.withterminal.com/models/connection.md): The connection your application has with your customer's TSP. - [Sync](https://docs.withterminal.com/models/sync.md): An object containing the state of a sync job. This can be polled after connection linking to know when data is available for ingestion. - [Issue](https://docs.withterminal.com/models/issue.md): An issue is a problem we encountered while ingesting data from a connection that may impact the quality or completeness of the data. #### Other - [Camera Media](https://docs.withterminal.com/models/camera-media.md): Media from vehicle cameras associated with safety events. ## Changelog ### Changelog - [Changelog](https://docs.withterminal.com/changelog.md) ## OpenAPI Specs - [package](/package.json) - [terminal.openapi](/terminal.openapi.json) ## Optional - [Website](https://withterminal.com) > The links below point to documentation indexes. Follow each `/_llms/` index recursively until you reach documentation pages. ## Indexes - [Supported Providers (362 pages)](https://docs.withterminal.com/_llms/supported-providers.md): Documentation for Supported Providers. This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.