---
title: "Preview equipment presets across owned vehicles"
method: POST
path: "/api/v1/equipment/templates"
tags: ["Equipment"]
---

# Preview equipment presets across owned vehicles

`POST /api/v1/equipment/templates`

## Request

- Base URL: `https://fleetkeep.co.uk`
- URL: `https://fleetkeep.co.uk/api/v1/equipment/templates`
- Auth: OAuth 2 (authorization code, authorization URL `https://fleetkeep.co.uk/auth/oauth2/authorize`, token URL `https://fleetkeep.co.uk/auth/oauth2/token`, scopes: `vehicles:read`)

Read-only preview. Existing current presets are reported as skipped and never overwritten.

## Request body

- EquipmentTemplateInput
  - `vehicleIds` string[], required
  - `presetKeys` string[], required
  - `startedOn` string, date, nullable
  - `reviewDueDate` string, date, nullable
  - `confirmDigest` string

## Response `200`

Preview result and digest required to apply the identical canonical selection.

- EquipmentTemplateResult
  - `ok` true
  - `confirmationRequired` true
  - `digest` string, required
  - `requested` integer, required
  - `added` integer, required
  - `skippedAlreadyActive` integer, required

## Other responses

- `400`: The request body or query was invalid.
- `401`: Missing or invalid Bearer access token.
- `403`: Token does not include the required scope.
- `404`: The requested resource does not exist on the authorised user's account, is the wrong event type, or is immutable history for this operation.
- `429`: Per-token rate limit exceeded (60 requests per minute).

---

[API](https://skmtc.dev/fleetkeep/apis/fleetkeep-api.md) · [All operations](https://skmtc.dev/fleetkeep/apis/fleetkeep-api/llms.txt) · [OpenAPI document](https://skmtc.dev/fleetkeep/apis/fleetkeep-api/revisions/ace19bc0d64d?raw)
