Data Models
The objects, enums and location handling used in the Public Lead API.
Vehicle object
Elements of the vehicles array:
| Field | Type | Required | Description |
|---|---|---|---|
year | Integer | ✅ | Model year |
make | String | ✅ | Make (Toyota, Tesla…) |
model | String | ✅ | Model (Camry, Model S…) |
type | String (enum) | ✅ | Vehicle type — table below |
tariff | Integer | ✅ | Shipping price |
deposit | Integer | ✅ | Down payment |
vehicle_run | Boolean | Optional | Whether the vehicle is operational / can be driven |
Vehicle type enum
vehicle.type must be one of the following values:
| Value | Meaning |
|---|---|
ATV | ATV / quad bike |
BOAT | Boat |
CAR | Passenger car |
MOTORCYCLE | Motorcycle |
PICKUP | Pickup truck |
SUV | SUV / crossover |
VAN | Van |
:::note Enum completeness The values above come from the source docs. The complete, up-to-date list must stay in sync with the backend enum — if a new type is added, get it from the backend team. :::
Shipping enums
overseas_type and ship_via are set on the lead itself (not per vehicle). All values
are exact, case-sensitive strings — send them exactly as shown.
overseas_type
| Value | Meaning |
|---|---|
DOMESTIC | Domestic (US) shipping |
FOREIGN | Includes an overseas leg (container / vessel) |
ship_via
The allowed ship_via values depend on overseas_type:
overseas_type | Allowed ship_via | Meaning |
|---|---|---|
DOMESTIC | OPEN | Open carrier (standard) |
DOMESTIC | ENCLOSED | Enclosed carrier |
DOMESTIC | DRIVE_AWAY | Driven to destination (drive-away) |
FOREIGN | CONTAINER_20FT | 20 ft container |
FOREIGN | CONTAINER_40FT | 40 ft container |
FOREIGN | SHARED | Shared container |
FOREIGN | ROLLON_ROLLOFF | Roll-on / roll-off (RoRo) vessel |
Sending a ship_via value from the wrong set (e.g. DRIVE_AWAY with overseas_type: "FOREIGN")
is invalid. See usage on the Create Lead page.
Location fields — ZIP-based auto-detection
The backend automatically detects state and city from the ZIP codes you send. You only provide ZIP codes; there is no state-ID lookup to perform.
| Field | Required | Notes |
|---|---|---|
origin_zip | ✅ Required | Valid US ZIP. Pickup state and city are derived from this. |
destination_zip | Optional (recommended) | Valid US ZIP. Delivery state and city are derived from this. |
origin_city / destination_city | Optional | Auto-filled from the ZIP if omitted. |
origin_state / destination_state | Deprecated | Omit them. If sent, they are ignored — the ZIP mapping takes priority. |
So the minimal location payload is just:
{
"origin_zip": "90210",
"destination_zip": "10001"
}
:::info The states endpoint is internal-only
/api/v1/common/states/ is strictly for internal use and requires a JWT token.
External lead providers using an API key will receive 401 Unauthorized if they
call it. Use ZIP codes instead — you never need to fetch state IDs.
:::
state — lead status enum
The state field in the lead response:
| Value | Meaning |
|---|---|
LEAD | Newly created, not yet processed |
QUOTE | Turned into a price quote |
ORDER | Turned into an order |