> ## Documentation Index
> Fetch the complete documentation index at: https://docs.catenatelematics.com/llms.txt
> Use this file to discover all available pages before exploring further.

# v2.34.0

> 4 changes across providers, webhooks, fleet and analytics

**Released 5th August 2026**

## Driver & Co-Driver Location Data

This release enriches vehicle location data with driver and co-driver context, making it easier to correlate location events with the personnel operating each vehicle.

<Check>
  **Backward-compatible addition:** All new fields are optional additions to existing response schemas. No changes to existing fields or endpoints are required.
</Check>

### Response schema changes

<AccordionGroup>
  <Accordion title="Vehicle location — driver & co-driver fields" icon="map-pin">
    The `BaseVehicleLocation` schema and the `data` items in `VehicleLocationAdded` webhook events now include two new optional fields:

    | Field | Type | Description |
    | - | - | - |
    | `driver` | `DriverEmbedded` | The primary driver associated with this location record. |
    | `co_driver` | `DriverEmbedded` | The co-driver associated with this location record, if present. |

    **Example response (vehicle location):**

    ```json theme={null}
    {
      "id": "loc_01abc",
      "vehicle_id": "veh_01xyz",
      "timestamp": "2026-08-05T10:00:00Z",
      "latitude": 37.7749,
      "longitude": -122.4194,
      "driver": {
        "id": "drv_01abc",
        "name": "Jane Smith"
      },
      "co_driver": {
        "id": "drv_02def",
        "name": "John Doe"
      }
    }
    ```

    Both fields are omitted from the response when no driver or co-driver is assigned to the vehicle at the time of the location record.
  </Accordion>

  <Accordion title="New DriverEmbedded schema" icon="user">
    A new `DriverEmbedded` schema has been introduced to represent a driver reference embedded within location records. This is a lightweight representation containing identifying information for the assigned driver.
  </Accordion>
</AccordionGroup>

### Affected endpoints & events

* **`GET /v2/telematics/vehicles/{vehicle_id}/locations`** — location items now include `driver` and `co_driver`
* **`VehicleLocationAdded` webhook event** — event payload `data` items now include `driver` and `co_driver`

## Invitation refresh behavior clarified

This release improves the documentation for the `POST /v2/orgs/invitations` endpoint to clarify how `limit_tsps` and `exclude_tsps` behave when refreshing an existing invitation.

<Check>
  **Documentation update:** No functional API changes were made in this release. Existing integrations continue to work without modification.
</Check>

### What changed

#### `POST /v2/orgs/invitations` — refresh behavior for TSP filters

The descriptions for the `limit_tsps` and `exclude_tsps` request body fields have been updated to explicitly document their behavior during an invitation refresh.

**`limit_tsps`**

> Restrict which telematics providers the fleet can connect to. Useful if you only need data from specific TSPs. If omitted, all available TSPs are shown. **On refresh, this field is only updated when explicitly provided** — omitting it leaves any existing restriction unchanged; pass an empty list (`[]`) to clear it. Cannot be combined with `exclude_tsps`.

**`exclude_tsps`**

> Exclude specific telematics providers from the ones shown to the fleet. Useful if you want the fleet to have access to every TSP except a few. **On refresh, this field is only updated when explicitly provided** — omitting it leaves any existing restriction unchanged; pass an empty list (`[]`) to clear it. Cannot be combined with `limit_tsps`.

#### Key clarifications

| Scenario | Behavior |
| - | - |
| Omit `limit_tsps` / `exclude_tsps` on refresh | Existing restriction is **unchanged** |
| Send `null` for `limit_tsps` / `exclude_tsps` on refresh | Existing restriction is **unchanged** |
| Send `[]` (empty list) for `limit_tsps` / `exclude_tsps` on refresh | Restriction is **cleared** |
| Send a non-empty list on refresh | Restriction is **updated** to the new value |

#### Example: clearing a TSP restriction on refresh

```bash theme={null}
POST /v2/orgs/invitations
Content-Type: application/json

{
  "fleet_ref": "fleet-abc-123",
  "limit_tsps": []
}
```

This explicitly clears any previously set `limit_tsps` restriction on the invitation.

## Patriot ELD Provider Support

This release adds **Patriot ELD** as a supported telematics service provider. The `patriot_eld` value is now available in the `source_name` field across all integrations endpoints, enabling you to create connections, filter resource operations, and retrieve TSP data for Patriot ELD.

<Check>
  **Backward-compatible addition:** Existing integrations are unaffected. The `patriot_eld` enum value is purely additive.
</Check>

### New provider support

<AccordionGroup>
  <Accordion title="Connections endpoints" icon="plug">
    The `source_name` field now includes `patriot_eld` in responses and accepts it as a value when creating or updating connections.

    **Affected endpoints:**

    * `GET /v2/integrations/connections` — `source_name` in listed connection objects
    * `POST /v2/integrations/connections` — `source_name` in the created connection response
    * `GET /v2/integrations/connections/{connection_id}` — `source_name` in the connection response
    * `PATCH /v2/integrations/connections/{connection_id}` — `source_name` in the updated connection response

    ```bash theme={null}
    # Create a Patriot ELD connection
    POST /v2/integrations/connections
    {
      "source_name": "patriot_eld",
      ...
    }
    ```
  </Accordion>

  <Accordion title="TSP endpoints" icon="list">
    Patriot ELD now appears in TSP listing and detail responses.

    **Affected endpoints:**

    * `GET /v2/integrations/tsps` — `source_name` in listed TSP objects
    * `GET /v2/integrations/tsps/{tsp_id}` — `source_name` in the TSP detail response

    ```bash theme={null}
    # Retrieve Patriot ELD TSP details
    GET /v2/integrations/tsps/{tsp_id}
    ```
  </Accordion>

  <Accordion title="Resource operations endpoints" icon="filter">
    The `source_name` filter parameter on resource operations now accepts `patriot_eld`, and `source_name` appears in resource operation responses.

    **Affected endpoints:**

    * `GET /v2/integrations/connections/resource-operations` — `source_name` filter param and response field
    * `GET /v2/integrations/connections/{connection_id}/resource-operations/{resource_operation_id}` — `source_name` in response

    ```bash theme={null}
    # Filter resource operations by Patriot ELD
    GET /v2/integrations/connections/resource-operations?source_name=patriot_eld
    ```
  </Accordion>

  <Accordion title="Schedule executions endpoint" icon="calendar-day">
    Execution records for Patriot ELD connections now correctly reflect `patriot_eld` in the `source_name` field.

    **Affected endpoint:**

    * `GET /v2/integrations/connections/{connection_id}/schedules/{schedule_id}/executions`
  </Accordion>
</AccordionGroup>

### Summary of affected endpoints

| Endpoint | Change |
| - | - |
| `GET /v2/integrations/connections` | `source_name` enum: added `patriot_eld` |
| `POST /v2/integrations/connections` | `source_name` enum: added `patriot_eld` |
| `GET /v2/integrations/connections/{connection_id}` | `source_name` enum: added `patriot_eld` |
| `PATCH /v2/integrations/connections/{connection_id}` | `source_name` enum: added `patriot_eld` |
| `GET /v2/integrations/connections/resource-operations` | `source_name` filter and response enum: added `patriot_eld` |
| `GET /v2/integrations/connections/{connection_id}/resource-operations/{resource_operation_id}` | `source_name` enum: added `patriot_eld` |
| `GET /v2/integrations/connections/{connection_id}/schedules/{schedule_id}/executions` | `source_name` enum: added `patriot_eld` |
| `GET /v2/integrations/tsps` | `source_name` enum: added `patriot_eld` |
| `GET /v2/integrations/tsps/{tsp_id}` | `source_name` enum: added `patriot_eld` |

## Pedigree Provider Support

This release adds support for **Pedigree** as a new telematics service provider (TSP) across the Integrations API.

<Check>
  **Backward-compatible addition:** Existing integrations are unaffected. The `pedigree` value is a new addition to the `source_name` enum and does not change any existing behavior.
</Check>

### New provider support

<AccordionGroup>
  <Accordion title="Pedigree added to source_name enum" icon="plug">
    The `pedigree` value is now a valid option for the `source_name` field across all Integrations API endpoints and response schemas.

    **Affected endpoints:**

    | Method | Endpoint |
    | - | - |
    | `GET` | `/v2/integrations/connections` |
    | `POST` | `/v2/integrations/connections` |
    | `GET` | `/v2/integrations/connections/{connection_id}` |
    | `PATCH` | `/v2/integrations/connections/{connection_id}` |
    | `GET` | `/v2/integrations/connections/{connection_id}/schedules/{schedule_id}/executions` |
    | `GET` | `/v2/integrations/connections/resource-operations` |
    | `GET` | `/v2/integrations/connections/{connection_id}/resource-operations/{resource_operation_id}` |
    | `GET` | `/v2/integrations/tsps` |
    | `GET` | `/v2/integrations/tsps/{tsp_id}` |

    **Affected schemas:** `ConnectionRead`, `ExecutionRead`, `ResourceOperationRead`, `TspIntegrationsRead`, `TspEnum`

    You can now filter resource operations by the Pedigree source:

    ```bash theme={null}
    GET /v2/integrations/connections/resource-operations?source_name=pedigree
    ```

    And connections with `source_name: "pedigree"` will appear in list and detail responses:

    ```json theme={null}
    {
      "source_name": "pedigree",
      "connection_id": "conn_...",
      "tsp_id": "tsp_..."
    }
    ```
  </Accordion>
</AccordionGroup>

***

## Need help?

<CardGroup cols={2}>
  <Card title="API Reference" icon="book" href="/api-reference/telematics-api">
    View complete endpoint documentation with the current API structure.
  </Card>

  <Card title="Contact Support" icon="life-ring" href="mailto:support@catenaclearing.io">
    Questions about your integration? Our team is here to help.
  </Card>
</CardGroup>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.