Vehicle Owners
Taxi & Private Hire › Products › Fleet › Vehicle Owners
Generally available
Records the legal owner of each Vehicle — useful where vehicles are rented, leased, or owned by contractors rather than the tenant itself. Each VehicleOwner can be a person or an entity; carries contact info, tax/identification numbers (jurisdiction-dependent), and links to the Vehicles owned. Supports reporting that separates owner-driver versus contractor vehicles.
Example request
POST /client/{clientId}/vehicleowner
{
"ref": "<string>",
"name": "<string>",
"tradingAlias": "<string>",
"website": "<string>",
"primaryGroup": "<string>",
"billingEmail": "<string>",
"billingPhone": "<string>",
"companyNumber": "<string>",
"taxNumber": "<string>",
"streetAddress": "<string>",
"addressArea": "<string>",
"city": "<string>",
"state": "<string>",
"postCode": "<string>",
"country": "<string>",
"iban": "<string>",
"bic": "<string>",
"vehicles": [
{
"id": "<id>"
}
],
"driverNote": "<string>",
"managementNote": "<string>",
"groups": [
{
"id": "<id>"
}
]
}
Example shape, derived from the VehicleOwner fields — indicative,
not the authoritative schema (that arrives with the API reference).
Endpoints
| Method | Path | |
|---|---|---|
POST | /client/{clientId}/vehicleowner · primary | |
GET | /client/{clientId}/vehicleowner/{vehicleOwnerId} | |
POST | /client/{clientId}/vehicleowner/{vehicleOwnerId} |
Full request/response schemas and an interactive explorer will live in the API reference (coming soon).
Related
Fields
| Field | Type | Description |
|---|---|---|
ref | string | External reference code, unique per tenant. Integration handle for the owner. |
name | string | Legal name of the owner (person or company). Appears on payout reports and compliance exports. |
tradingAlias | string | Trading-as name when the owner operates publicly under a different brand to their legal name. |
website | string | |
primaryGroup | string | |
billingEmail | string | |
billingPhone | string | |
companyNumber | string | Companies-house / registered-business number where the owner is a registered company. Jurisdiction-dependent format. |
taxNumber | string | Tax / VAT registration number for invoicing + payout compliance. |
streetAddress | string | |
addressArea | string | |
city | string | |
state | string | |
postCode | string | |
country | string | |
iban | string | IBAN for payout. Stored verbatim — formatting/validation lives on the FE. |
bic | string | BIC / SWIFT code paired with the IBAN for international payouts. |
vehicles | Collection | Vehicles legally owned by this VehicleOwner. Reverse side of `Vehicle.vehicleOwner`. |
driverNote | string | Notes shared with the Driver and Operator, to be treated as publicly visible and not to include personal information |
managementNote | string | Internal notes for management use only. |
groups | Collection | |
deletedAt | integer | |
deletedBy | bigint | |
clientId | bigint | Tenant scope. Every tenant-aware entity carries this; `ClientFilter` enforces row-level isolation on read; the multi-tenancy routing layer (`/client/{clientId}`) sets it at create time. Surfaced only under `admin` / `tripLog` groups — never to end users. |
internalKey | string | Optional client-supplied external reference / idempotency key. When present, lets external systems correlate platform-side records back to their own source-of-truth ids. Not persisted to a column — populated by the request handler when the caller sets it. |
__objectType | string | Discriminator string (entity class short-name) emitted alongside the id in serialized output. Resolved at read time by `getObjectType()`; lets the FE dispatch entity-specific rendering without inspecting the URL. |
id | bigint | Snowflake-style primary key (unsigned BIGINT). Generated by `IdFactory` at create time; surfaced to the FE / API as a `G`-prefixed string and stripped back to plain bigint server-side before Doctrine lookup. |
createdDate | integer | Unix timestamp the row was first persisted. Set in the entity's PrePersist hook; never rewritten on subsequent updates. |
updatedDate | integer | Unix timestamp the row was last touched. Bumped on every commit that hits the Doctrine UoW for this entity; drives FE invalidation + the listing change cursor. |
passiveUpdatedDate | int | Read-through alias for `updatedDate` exposed under different serializer groups. Lets the FE distinguish "real edit" from "background touch" projections without changing the underlying column. |
listingUpdatedDate | int | Listing-projection timestamp surfaced only under the `listMode` group. Driven by `TripCache` and other listing-shape refreshers separately from `updatedDate` so a listing rebuild doesn't trigger detail-page invalidation. |