canonical: https://jentic.com/apis/sandbox.withterminal.com/sandbox-withterminal

# Sandbox Withterminal Terminal API

Terminal is a unified API that makes it easy to integrate with the leading telematics service providers. Contact Support: Name: Terminal Email: connect@withterminal.com. The API exposes 29 endpoints secured with bearer authentication.

## For AI agents

Programmatically public token exchange, create connection. Covers 29 operations with bearer authentication.

## Scope

Does not handle payments, communications, or developer tools - use for crm only.

## Capabilities

- Public Token Exchange
- Create Connection
- List All Connections
- Get Current Connection
- Update Current Connection
- Request Sync

## Use cases

### CRM Operations

Use the Terminal API to perform crm operations programmatically. The API provides 29 endpoints covering core functionality including public token exchange, create connection, list all connections.

Example prompt: Call POST `/public-token/exchange` to public token exchange

### Automated Vehicles Management

Automate vehicles operations by combining multiple Terminal API endpoints. Agents can create connection and then list all connections in a single workflow.

Example prompt: Call POST /connections to create connection, then verify the result

### AI Agent Integration via Jentic

AI agents discover and call Terminal API endpoints through Jentic without managing credentials directly. An agent searches for the required operation by intent, receives the matching endpoint schema, and executes the call with Jentic-managed authentication. This eliminates the need to read API documentation or handle bearer tokens manually.

Example prompt: Search Jentic for 'public token exchange', load the operation schema, and execute with Jentic-managed credentials

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | `/public-token/exchange` | Public Token Exchange |
| POST | `/connections` | Create Connection |
| GET | `/connections` | List All Connections |
| GET | `/connections/current` | Get Current Connection |
| PATCH | `/connections/current` | Update Current Connection |
| POST | `/syncs` | Request Sync |
| GET | `/syncs` | List Sync History |
| GET | `/syncs/{id}` | Get Sync Job Status |

## Key resources

- **Vehicles** — Operations related to Vehicles
- **Connections** — Operations related to Connections
- **Data Management** — Operations related to Data Management
- **Hours of Service** — Operations related to Hours of Service
- **Drivers** — Operations related to Drivers

## AI readiness

This API is usable in Jentic One now. Its AI-readiness score against Jentic's framework shows where it stands today and where improvements would make it even easier for agents to use.

- **Score:** 49 / 100
- **Maturity:** Foundational
- **Dimensions:**
  - Foundational Compliance: 99 / 100
  - Developer Experience & Jentic Compatibility: 69 / 100
  - AI-Readiness & Agent Experience: 22 / 100
  - Agent Usability: 94 / 100
  - Security: 60 / 100
  - AI Discoverability: 100 / 100
- **View full report:** https://jentic.com/apis/sandbox.withterminal.com/sandbox-withterminal/scorecard
- **How the score is calculated:** https://docs.jentic.com/reference/api-readiness-framework/overview/
- **More about the dimensions:** https://docs.jentic.com/reference/api-readiness-framework/specification/#dimensional-model-overview

### Score it yourself

Every API in the directory is allowlisted, so you can re-score it with no key required.

- **Score your own API:** https://jentic.com/scorecard.md
- **Scoring CLI agent skill:** https://github.com/jentic/jentic-api-scorecard/blob/main/skills/jentic-api-scorecard/SKILL.md

```sh
npx @jentic/api-scorecard-cli score <openapi-url>
```

## Why Jentic

- **Setup:** Wiring the Terminal API by hand means implementing its bearer token auth, running the public-token exchange to open connections, and polling sync status yourself. Through Jentic you install once, import the Terminal API from the API Directory, store the bearer token once, and your agent calls it.
- **Permission scoping:** You choose which Terminal API operations your agent may call, so a rule can limit it to the operations it needs, such as starting a sync and reading sync status, while leaving out connection changes like updating the current connection. Every operation the agent runs is one you added to that allowed set.
- **Credential handling:** Your Terminal API bearer token is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'exchange a public token' or 'check sync status', and Jentic returns the matching Terminal API operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **Hubspot** — Alternative crm API
- **Salesforce** — Alternative crm API
- **Pipedrive** — Complementary crm API
- **Zoho** — Complementary crm API

## FAQ

### What authentication does the Terminal API use?

The Terminal API uses a Bearer token in the Authorization header. Through Jentic, these credentials are stored encrypted in your Jentic One instance and injected at execution time, so raw secrets never enter the agent context.

### Can I public token exchange with the Terminal API?

Yes. Use the POST `/public-token/exchange` endpoint. The API returns structured JSON responses that agents can parse and act on directly.

### What are the rate limits for the Terminal API?

Rate limits are not specified in the OpenAPI spec. Check the vendor documentation for current limits. Through Jentic, rate limiting is handled automatically with retry logic built into the execution layer.

### How do I public token exchange through Jentic?

Install the Jentic SDK with pip install jentic, authenticate through Jentic One, the self-hosted execution layer, then search for 'public token exchange'. Jentic returns the matching Terminal API operation with its input schema. Load the schema and execute the call - credentials are injected automatically.

### How many endpoints does the Terminal API have?

The Terminal API exposes 29 endpoints covering vehicles, connections, data management operations.

### Can I limit what my agent is allowed to do with the Terminal API?

Yes. Because you run Jentic One yourself, your own rules decide which Terminal API operations and credentials the agent can use. You can allow a read-and-sync agent to call only POST /syncs to start a sync and GET `/syncs/{id}` to read sync job status, while leaving out connection changes such as PATCH `/connections/current.` Every operation the agent runs is one you added to that allowed set.
