Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.withterminal.com/llms.txt

Use this file to discover all available pages before exploring further.

Connection deletion is under active development. You can request deletion for any connection today, but no data will actually be removed until the feature is fully released. Requests will remain pending in the meantime.
Deleting a connection permanently removes all data Terminal has synced for it. This action cannot be undone, and is the right choice when you need the data itself to be gone — for example, when a customer requests data deletion, or when you’re cleaning up test and duplicate connections whose history you don’t want to keep.

What gets deleted

Terminal removes everything associated with the connection: all synced entities (vehicles, drivers, trailers, devices, groups), all historical and time-series data, all sync and issue history, all provider credentials, and any filters, tags, or options you’ve configured on the connection. A minimal record — the connection’s id, provider, status, and timestamps — is kept so you can confirm the deletion via the List Connections API and reconcile references on your side.

Deletion lifecycle

Once deletion is requested, the connection moves through three statuses:
StatusMeaning
pending_deletionDeletion has been requested. Data flow has stopped. The request can still be cancelled.
deletingTerminal is actively removing data. This step is irreversible.
deletedAll data has been removed.
A 24-hour grace period applies before deletion starts. As soon as deletion is requested, the connection moves to the pending_deletion status and Terminal stops syncing it, excludes it from data delivery, and stops emitting webhooks for it — ensuring that no further data is ingested or delivered during the grace period. The request can still be cancelled at any point before the grace period ends. After that, the connection transitions to the deleting status, data removal begins, and the process can no longer be stopped. Deletion typically completes within 48 hours of the original request.

Delete via the dashboard

From the Terminal Dashboard, open the connection, click the triple-dot menu in the header, and choose Delete Connection.
The Delete Connection action is restricted to Dashboard members with the admin role. Members with other roles will not see it in the menu.
A confirmation modal explains the consequences. Because deletion cannot be undone, it requires explicit confirmation.
Once confirmed, the connection moves to Pending Deletion for the 24-hour grace period.
Connections in deleting or deleted status are hidden from the dashboard’s connections list by default.

Delete via the API

To delete a connection programmatically, call DELETE /connections/current with a connection token for the connection you want to delete.
curl -X DELETE https://api.withterminal.com/tsp/v1/connections/current \
  -H "Authorization: Bearer $CONNECTION_TOKEN"
Any API key can request deletion of a connection.
The endpoint returns 202 Accepted and updates the connection status to pending_deletion. To follow the deletion progress through to the terminal deleted status, either listen for connection.updated webhooks — which fire on each status transition — or poll GET /connections/current to get the current status.

Cancelling a pending deletion

While a connection is in the pending_deletion status, set it back to connected or archived to cancel the deletion — either from the dashboard or via PATCH /connections/current. Once the connection transitions to the deleting status, cancellation is no longer possible.

Archive vs delete

Archiving and deleting are both ways to wind down a connection, but they solve different problems:
ActionWhat happens to dataReversible?Use when
ArchiveKeptYes, at any timeYou want to stop syncing a connection but keep its history available.
DeletePermanently removedOnly during the grace periodYou need the data gone — for example, a customer data deletion request.
If you’re not sure, archive first. You can always delete later.