Skip to main content

API Reference

The API Reference contains endpoints, parameters and response examples for VPC systems. The production VPC API is available at https://api.ucp.li and requires an API key. Append the paths in the tables directly to this base URL. Do not add an extra /api.

Available APIs​

VPC API Overview​

The interactive VPC API Reference contains the full details, response examples and schemas.

Vehicles​

MethodPathDescription
GET/vehiclesList vehicles for the API key's network with pagination
POST/vehiclesCreate a vehicle in the API key's network
GET/vehicles/{vehicle}Show a single vehicle
PUT/vehicles/{vehicle}Update vehicle data
PATCH/vehicles/{vehicle}Update individual vehicle fields
DELETE/vehicles/{vehicle}Delete a vehicle

Statistics​

MethodPathDescription
GET/statistics/active-usersList officers who are currently on duty and when their dutytime started
GET/statistics/missions/last-7-daysCount mission reports from the last seven days
GET/statistics/missions/totalCount all mission reports
GET/statistics/files/last-7-daysCount patient and offender files from the last seven days
GET/statistics/files/totalCount all patient and offender files

For all statistics endpoints:

  • Values are limited to the network that belongs to the API key.
  • The two seven-day endpoints count records whose created_at value is at or after the point seven days before the request. Records without a known creation time are excluded even when timestampAvailable is true.
  • If the system cannot evaluate creation times, the affected seven-day endpoint returns count: null and timestampAvailable: false. Do not interpret null as 0. The matching /total endpoint remains available and also counts records without a known creation time. Contact support if you need the time-based statistic.

Dutytime​

MethodPathDescription
POST/dutytime/{identifier}/toggleStart an officer's dutytime or stop open dutytime entries
POST/dutytime/{identifier}/stopStop an officer's open dutytime entries; repeated calls still succeed

For dutytime:

  • No body payload is required. You may optionally send an empty JSON body ({}).
  • identifier is the FiveM identifier stored on the officer, including its prefix, for example license:0000000000000000000000000000000000000000.
  • The type must match the connector configuration. See Understanding identifiers for details.
  • Use /dutytime/{identifier}/stop for targeted stop calls or retry logic.
  • /dutytime/{identifier}/toggle is for clients that intentionally switch between start and stop.

Example:

curl -X POST \
"https://api.ucp.li/dutytime/license:0000000000000000000000000000000000000000/stop" \
-H "X-API-Key: test-api-key" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{}'

The internal /fivem routes are intentionally not documented in the public API reference.

Usage​

On each API page you can:

  • select endpoints in the left navigation,
  • check HTTP methods, paths and parameters,
  • inspect response examples and schema information,
  • switch between product APIs using the tabs above the reference.

Notes​

The API specifications are reference material for integrations. For production credentials, environments or activation, use the agreed support and onboarding channels. To create an API key, see Create API key.