Motorsports workspace for vehicles, setups, sessions, logs, maintenance, and race engineering.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Atomically add one category to an existing editable shop list without replacing its existing categories or items.
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
Atomically add one category to an existing editable shop list without replacing its existing categories or items.
| Argument | Type | Description |
|---|---|---|
| name* | string | |
| listId* | string | |
| sortOrder | integer |
{
"type": "object",
"required": [
"listId",
"name"
],
"properties": {
"name": {
"type": "string"
},
"listId": {
"type": "string"
},
"sortOrder": {
"type": "integer",
"maximum": 2147483647,
"minimum": 0
}
},
"additionalProperties": false
}Atomically add one item to an existing editable shop list without replacing existing items. If its category does not exist yet, TuneWorks creates it.
| Argument | Type | Description |
|---|---|---|
| label* | string | |
| listId* | string | |
| status | string | |
| section | string | Optional category name. |
| quantity | integer | |
| sortOrder | integer |
{
"type": "object",
"required": [
"listId",
"label"
],
"properties": {
"label": {
"type": "string"
},
"listId": {
"type": "string"
},
"status": {
"enum": [
"open",
"done"
],
"type": "string"
},
"section": {
"type": "string",
"description": "Optional category name."
},
"quantity": {
"type": "integer",
"maximum": 9999,
"minimum": 1
},
"sortOrder": {
"type": "integer",
"maximum": 2147483647,
"minimum": 0
}
},
"additionalProperties": false
}Interprets inside, middle, and outside tire temperature readings without authentication or access to TuneWorks account data.
| Argument | Type | Description |
|---|---|---|
| unit | string | |
| readings* | object | Tire readings keyed by lf/rf/lr/rr, each with inside, middle, and outside numbers. |
| targetTemp | number | |
| tempWindow | number | |
| rearCamberSpread | number | |
| frontCamberSpread | number |
{
"type": "object",
"required": [
"readings"
],
"properties": {
"unit": {
"enum": [
"f",
"c"
],
"type": "string",
"default": "f"
},
"readings": {
"type": "object",
"description": "Tire readings keyed by lf/rf/lr/rr, each with inside, middle, and outside numbers."
},
"targetTemp": {
"type": "number",
"default": 180
},
"tempWindow": {
"type": "number",
"default": 10
},
"rearCamberSpread": {
"type": "number",
"default": 8
},
"frontCamberSpread": {
"type": "number",
"default": 12
}
},
"additionalProperties": false
}Archive a connected user maintenance item. Requires explicit user confirmation and never hard-deletes data.
| Argument | Type | Description |
|---|---|---|
| confirmed* | boolean | |
| trackerId* | string | |
| vehicleId* | string |
{
"type": "object",
"required": [
"vehicleId",
"trackerId",
"confirmed"
],
"properties": {
"confirmed": {
"type": "boolean"
},
"trackerId": {
"type": "string"
},
"vehicleId": {
"type": "string"
}
},
"additionalProperties": false
}Archive a connected user driving session. Requires explicit user confirmation and never hard-deletes data.
| Argument | Type | Description |
|---|---|---|
| confirmed* | boolean | |
| sessionId* | string |
{
"type": "object",
"required": [
"sessionId",
"confirmed"
],
"properties": {
"confirmed": {
"type": "boolean"
},
"sessionId": {
"type": "string"
}
},
"additionalProperties": false
}Archive all active revisions of a connected user setup. Requires explicit user confirmation and never hard-deletes data.
| Argument | Type | Description |
|---|---|---|
| setupId* | string | |
| confirmed* | boolean |
{
"type": "object",
"required": [
"setupId",
"confirmed"
],
"properties": {
"setupId": {
"type": "string"
},
"confirmed": {
"type": "boolean"
}
},
"additionalProperties": false
}Archive a connected user shop list so it no longer appears in active lists. Requires explicit user confirmation.
| Argument | Type | Description |
|---|---|---|
| listId* | string | |
| confirmed* | boolean | True indicates that the user explicitly confirmed archiving this list. |
{
"type": "object",
"required": [
"listId",
"confirmed"
],
"properties": {
"listId": {
"type": "string"
},
"confirmed": {
"type": "boolean",
"description": "True indicates that the user explicitly confirmed archiving this list."
}
},
"additionalProperties": false
}Archive a connected user vehicle using TuneWorks soft-delete behavior. Requires explicit user confirmation and never hard-deletes data.
| Argument | Type | Description |
|---|---|---|
| confirmed* | boolean | |
| vehicleId* | string |
{
"type": "object",
"required": [
"vehicleId",
"confirmed"
],
"properties": {
"confirmed": {
"type": "boolean"
},
"vehicleId": {
"type": "string"
}
},
"additionalProperties": false
}Mark a modification canceled so it remains in vehicle history. Requires explicit confirmation.
| Argument | Type | Description |
|---|---|---|
| confirmed* | boolean | |
| vehicleId* | string | |
| modificationId* | string |
{
"type": "object",
"required": [
"vehicleId",
"modificationId",
"confirmed"
],
"properties": {
"confirmed": {
"type": "boolean"
},
"vehicleId": {
"type": "string"
},
"modificationId": {
"type": "string"
}
},
"additionalProperties": false
}Estimate front brake bias from piston area, rotor size, and pad friction. Calculates from measured inputs without authentication and does not read or save account data. This estimates mechanical bias. Tire grip, weight transfer, ABS, and balance bars still matter.
| Argument | Type | Description |
|---|---|---|
| rearMu* | number | Rear pad friction |
| frontMu* | number | Front pad friction |
| rearRotor* | number | Rear effective radius (in in imperial; mm in metric) |
| frontRotor* | number | Front effective radius (in in imperial; mm in metric) |
| rearPiston* | number | Rear total piston area (in2 in imperial; cm2 in metric) |
| unitSystem* | string | Units for all inputs and results, as specified on each field. |
| frontPiston* | number | Front total piston area (in2 in imperial; cm2 in metric) |
Calculate cross weight, left/right balance, and front/rear split from four scale pads. Calculates from measured inputs without authentication and does not read or save account data. Measure the car in the same state you drive it: driver, fuel, ballast, and tire pressures matter.
| Argument | Type | Description |
|---|---|---|
| lf* | number | Left front (lb in imperial; kg in metric) |
| lr* | number | Left rear (lb in imperial; kg in metric) |
| rf* | number | Right front (lb in imperial; kg in metric) |
| rr* | number | Right rear (lb in imperial; kg in metric) |
| unitSystem* | string | Units for all inputs and results, as specified on each field. |
{
"type": "object",
"required": [
"lf",
"rf",
"lr",
"rr",
"unitSystem"
],
"properties": {
"lf": {
"type": "number",
"description": "Left front (lb in imperial; kg in metric)",
"exclusiveMinimum": 0
},
"lr": {
"type": "number",
"description": "Left rear (lb in imperial; kg in metric)",
"exclusiveMinimum": 0
},
"rf": {
"type": "number",
"description": "Right front (lb in imperial; kg in metric)",
"exclusiveMinimum": 0
},
"rr": {
"type": "number",
"description": "Right rear (lb in imperial; kg in metric)",
"exclusiveMinimum": 0
},
"unitSystem": {
"enum": [
"imperial",
"metric"
],
"type": "string",
"description": "Units for all inputs and results, as specified on each field."
}
},
"additionalProperties": false
}Calculates an ethanol blend for a fresh tank, existing fuel, correction, or ratio without authentication or account-data access. Percentages are 0–100 and all volumes use the selected unit. Source ethanol contents are measured values. Fresh mode requires finalVolume; existing mode requires finalVolume, currentVolume, and currentEthanol; correction mode requires tankCapacity, currentVolume, and currentEthanol; ratio mode requires no volumes.
| Argument | Type | Description |
|---|---|---|
| mode* | string | |
| volumeUnit* | string | |
| finalVolume | number | Volume in volumeUnit. |
| tankCapacity | number | Volume in volumeUnit. |
| currentVolume | number | Volume in volumeUnit. |
| targetEthanol* | number | Ethanol percentage (0–100). |
| currentEthanol | number | Ethanol percentage (0–100). |
| pumpGasEthanol* | number |
Estimate injector size from horsepower, fuel type, injector count, and duty cycle. Calculates from measured inputs without authentication and does not read or save account data. This is a sizing estimate. Confirm with your tuner and fuel pressure data.
| Argument | Type | Description |
|---|---|---|
| hp* | number | Horsepower target (hp) |
| duty* | number | Target duty cycle (%) |
| fuel* | string | Fuel type |
| current* | number | Current injector size (cc/min) |
| injectors* | integer | Injector count |
{
"type": "object",
"required": [
"hp",
"injectors",
"duty",
"current",
"fuel"
],
"properties": {
"hp": {
"type": "number",
"description": "Horsepower target (hp)",
"exclusiveMinimum": 0
},
"duty": {
"type": "number",
"maximum": 100,
"description": "Target duty cycle (%)",
"exclusiveMinimum": 0
},
"fuel": {
"enum": [
"gas",
"e85",
"methanol"
],
"type": "string",
"description": "Fuel type"
},
"current": {
"type": "number",
"description": "Current injector size (cc/min)",
"exclusiveMinimum": 0
},
"injectors": {
"type": "integer",
"description": "Injector count",
"exclusiveMinimum": 0
}
},
"additionalProperties": false
}Check speed, RPM, and shift drop from tire size, final drive, and gear ratio. Calculates from measured inputs without authentication and does not read or save account data. Use measured tire diameter when possible. Tire growth and converter/clutch slip can move real-world numbers.
| Argument | Type | Description |
|---|---|---|
| rpm* | number | Engine RPM (rpm) |
| gear* | number | Gear ratio |
| mode* | string | Primary answer |
| speed* | number | Vehicle speed (mph in imperial; km/h in metric) |
| nextGear* | number | Next gear ratio |
| finalDrive* | number | Final drive |
| unitSystem* | string | Units for all inputs and results, as specified on each field. |
| tireDiameter* | number |
Compare two laps or sector sets and see the best theoretical lap. Calculates from measured inputs without authentication and does not read or save account data. Use sectors from timing, video, or data logs. Compare similar conditions before blaming setup.
| Argument | Type | Description |
|---|---|---|
| newS1* | number | New sector 1 (sec) |
| newS2* | number | New sector 2 (sec) |
| newS3* | number | New sector 3 (sec) |
| baselineS1* | number | Baseline sector 1 (sec) |
| baselineS2* | number | Baseline sector 2 (sec) |
| baselineS3* | number | Baseline sector 3 (sec) |
{
"type": "object",
"required": [
"baselineS1",
"baselineS2",
"baselineS3",
"newS1",
"newS2",
"newS3"
],
"properties": {
"newS1": {
"type": "number",
"description": "New sector 1 (sec)",
"exclusiveMinimum": 0
},
"newS2": {
"type": "number",
"description": "New sector 2 (sec)",
"exclusiveMinimum": 0
},
"newS3": {
"type": "number",
"description": "New sector 3 (sec)",
"exclusiveMinimum": 0
},
"baselineS1": {
"type": "number",
"description": "Baseline sector 1 (sec)",
"exclusiveMinimum": 0
},
"baselineS2": {
"type": "number",
"description": "Baseline sector 2 (sec)",
"exclusiveMinimum": 0
},
"baselineS3": {
"type": "number",
"description": "Baseline sector 3 (sec)",
"exclusiveMinimum": 0
}
},
"additionalProperties": false
}Plan a race fuel load, reserve, start weight, and projected minimum-weight margin. Calculates from measured inputs without authentication and does not read or save account data. Assumes the entered per-lap consumption applies to race, formation, and allowance laps. Finish weight retains only the selected reserve. Confirm your series weighing rules and validate consumption with real data.
| Argument | Type | Description |
|---|---|---|
| fuel* | string | Fuel type |
| ballast* | number | Ballast fitted (lb in US; kg in metric) |
| lapTime | number | Expected lap time (sec) |
| reserve* | number | Fuel reserve (%) |
| duration | number | Race duration (min) |
| raceLaps | number | Scheduled race laps (laps) |
| raceMode* | string | Race format |
| extraLaps* | number | Extra-lap allowance (laps) |
Convert spring rate and motion ratio into wheel rate for setup comparisons. Calculates from measured inputs without authentication and does not read or save account data. Wheel rate compares spring changes. It does not account for bars, bump stops, tires, or aero load.
| Argument | Type | Description |
|---|---|---|
| springRate* | number | Spring rate (lb/in in imperial; N/mm in metric) |
| unitSystem* | string | Units for all inputs and results, as specified on each field. |
| motionRatio* | number | Motion ratio |
| springAngle* | number | Spring angle from vertical (deg) |
| cornerWeight* | number | Corner weight (lb in imperial; kg in metric) |
{
"type": "object",
"required": [
"springRate",
"motionRatio",
"springAngle",
"cornerWeight",
"unitSystem"
],
"properties": {
"springRate": {
"type": "number",
"description": "Spring rate (lb/in in imperial; N/mm in metric)",
"exclusiveMinimum": 0
},
"unitSystem": {
"enum": [
"imperial",
"metric"
],
"type": "string",
"description": "Units for all inputs and results, as specified on each field."
},
"motionRatio": {
"type": "number",
"description": "Motion ratio",
"exclusiveMinimum": 0
},
"springAngle": {
"type": "number",
"minimum": 0,
"description": "Spring angle from vertical (deg)",
"exclusiveMaximum": 90
},
"cornerWeight": {
"type": "number",
"description": "Corner weight (lb in imperial; kg in metric)",
"exclusiveMinimum": 0
}
},
"additionalProperties": false
}Turn cold, hot, and target hot pressures into the next cold pressure to try. Calculates from measured inputs without authentication and does not read or save account data. This gives a next-test pressure, not a universal ideal. Recheck after the next run.
| Argument | Type | Description |
|---|---|---|
| hot* | number | Measured hot pressure (psi in imperial; bar in metric) |
| cold* | number | Starting cold pressure (psi in imperial; bar in metric) |
| target* | number | Target hot pressure (psi in imperial; bar in metric) |
| unitSystem* | string | Units for all inputs and results, as specified on each field. |
| ambientChange* | number | Expected ambient temp change (F in imperial; C in metric) |
{
"type": "object",
"required": [
"cold",
"hot",
"target",
"ambientChange",
"unitSystem"
],
"properties": {
"hot": {
"type": "number",
"description": "Measured hot pressure (psi in imperial; bar in metric)",
"exclusiveMinimum": 0
},
"cold": {
"type": "number",
"description": "Starting cold pressure (psi in imperial; bar in metric)",
"exclusiveMinimum": 0
},
"target": {
"type": "number",
"description": "Target hot pressure (psi in imperial; bar in metric)",
"exclusiveMinimum": 0
},
"unitSystem": {
"enum": [
"imperial",
"metric"
],
"type": "string",
"description": "Units for all inputs and results, as specified on each field."
},
"ambientChange": {
"type": "number",
"description": "Expected ambient temp change (F in imperial; C in metric)"
}
},
"additionalProperties": false
}Check camber and total toe against broad autocross and track baseline ranges. Calculates from measured inputs without authentication and does not read or save account data. This is a baseline checker, not a vehicle-specific prescription. Tire wear and driver feedback decide the next step.
| Argument | Type | Description |
|---|---|---|
| use* | string | Use case |
| rearToe* | number | Rear total toe (in in imperial; mm in metric) |
| frontToe* | number | Front total toe (in in imperial; mm in metric) |
| rearCamber* | number | Rear camber (deg) |
| unitSystem* | string | Units for all inputs and results, as specified on each field. |
| frontCamber* | number | Front camber (deg) |
{
"type": "object",
"required": [
"frontCamber",
"rearCamber",
"frontToe",
"rearToe",
"use",
"unitSystem"
],
"properties": {
"use": {
"enum": [
"hpde",
"autocross",
"street"
],
"type": "string",
"description": "Use case"
},
"rearToe": {
"type": "number",
"description": "Rear total toe (in in imperial; mm in metric)"
},
"frontToe": {
"type": "number",
"description": "Front total toe (in in imperial; mm in metric)"
},
"rearCamber": {
"type": "number",
"description": "Rear camber (deg)"
},
"unitSystem": {
"enum": [
"imperial",
"metric"
],
"type": "string",
"description": "Units for all inputs and results, as specified on each field."
},
"frontCamber": {
"type": "number",
"description": "Front camber (deg)"
}
},
"additionalProperties": false
}Compare tire diameter, circumference, ride height, and speedometer change. Calculates from measured inputs without authentication and does not read or save account data. Actual mounted diameter changes by tire model and pressure. Use manufacturer specs when available.
| Argument | Type | Description |
|---|---|---|
| newWheel* | number | New wheel diameter (in in imperial; mm in metric) |
| newWidth* | number | New width (mm) |
| oldWheel* | number | Current wheel diameter (in in imperial; mm in metric) |
| oldWidth* | number | Current width (mm) |
| newAspect* | number | New aspect ratio (%) |
| oldAspect* | number | Current aspect ratio (%) |
| unitSystem* | string | Units for all inputs and results, as specified on each field. |
Record completed maintenance in vehicle history and advance its tracker.
| Argument | Type | Description |
|---|---|---|
| notes | string | |
| mileage | number | |
| logCount | number | |
| trackerId* | string | |
| vehicleId* | string | |
| completedAt* | string | |
| engineHours | number | |
| trackEvents | number |
{
"type": "object",
"required": [
"vehicleId",
"trackerId",
"completedAt"
],
"properties": {
"notes": {
"type": "string"
},
"mileage": {
"type": "number"
},
"logCount": {
"type": "number"
},
"trackerId": {
"type": "string"
},
"vehicleId": {
"type": "string"
},
"completedAt": {
"type": "string"
},
"engineHours": {
"type": "number"
},
"trackEvents": {
"type": "number"
}
},
"additionalProperties": false
}Convert AFR and lambda across gasoline, E85, methanol, and race fuel scales. Calculates from measured inputs without authentication and does not read or save account data. Use this as a conversion reference. Tune targets depend on fuel, engine, load, and calibration strategy.
| Argument | Type | Description |
|---|---|---|
| afr* | number | AFR |
| fuel* | string | Fuel scale |
| lambda* | number | Lambda |
{
"type": "object",
"required": [
"afr",
"lambda",
"fuel"
],
"properties": {
"afr": {
"type": "number",
"description": "AFR",
"exclusiveMinimum": 0
},
"fuel": {
"enum": [
"gas",
"e85",
"methanol",
"race"
],
"type": "string",
"description": "Fuel scale"
},
"lambda": {
"type": "number",
"description": "Lambda",
"exclusiveMinimum": 0
}
},
"additionalProperties": false
}Create an additive copy of an accessible TuneWorks driving session.
| Argument | Type | Description |
|---|---|---|
| sessionId* | string |
{
"type": "object",
"required": [
"sessionId"
],
"properties": {
"sessionId": {
"type": "string"
}
},
"additionalProperties": false
}Create an editable copy of a connected user shop list with all item checks reset.
| Argument | Type | Description |
|---|---|---|
| listId* | string |
{
"type": "object",
"required": [
"listId"
],
"properties": {
"listId": {
"type": "string"
}
},
"additionalProperties": false
}Save a named set of chart channels.
| Argument | Type | Description |
|---|---|---|
| name* | string | |
| channels* | array |
{
"type": "object",
"required": [
"name",
"channels"
],
"properties": {
"name": {
"type": "string"
},
"channels": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
}
}
},
"additionalProperties": false
}Create a custom track for the connected user or an editable team.
| Argument | Type | Description |
|---|---|---|
| city | string | |
| venue* | string | |
| region | string | |
| teamId | string | |
| country | string | |
| countryCode | string |
{
"type": "object",
"required": [
"venue"
],
"properties": {
"city": {
"type": "string"
},
"venue": {
"type": "string"
},
"region": {
"type": "string"
},
"teamId": {
"type": "string"
},
"country": {
"type": "string"
},
"countryCode": {
"type": "string"
}
},
"additionalProperties": false
}Save a favorite chart for an accessible vehicle and source log.
| Argument | Type | Description |
|---|---|---|
| notes | string | |
| title* | string | |
| source | string | |
| vehicleId* | string | |
| chartConfig* | object | |
| sourceLogId* | string | |
| channelSetId | number |
{
"type": "object",
"required": [
"vehicleId",
"sourceLogId",
"title",
"chartConfig"
],
"properties": {
"notes": {
"type": "string"
},
"title": {
"type": "string"
},
"source": {
"enum": [
"analyzer",
"charts"
],
"type": "string"
},
"vehicleId": {
"type": "string"
},
"chartConfig": {
"type": "object",
"additionalProperties": true
},
"sourceLogId": {
"type": "string"
},
"channelSetId": {
"type": "number"
}
},
"additionalProperties": false
}Creates a TuneWorks maintenance reminder or service item. Deletes are not supported.
| Argument | Type | Description |
|---|---|---|
| name* | string | |
| notes | string | |
| dueDate | string | Optional reminder date in YYYY-MM-DD format. Omit when no reminder is wanted. |
| category* | string | |
| doneDate* | string | Required service completion date in YYYY-MM-DD format. Natural date strings are accepted but YYYY-MM-DD is preferred. |
| vehicleId* | string | |
| intervalType | string | |
| intervalValue | number | |
| reminderDaysBefore | number |
{
"type": "object",
"required": [
"vehicleId",
"name",
"category",
"doneDate"
],
"properties": {
"name": {
"type": "string"
},
"notes": {
"type": "string"
},
"dueDate": {
"type": "string",
"description": "Optional reminder date in YYYY-MM-DD format. Omit when no reminder is wanted."
},
"category": {
"enum": [
"Engine",
"Ignition",
"Fuel",
"Fluids",
"Cooling",
"Brakes",
"Suspension",
"Drivetrain",
"Tires / wheels",
"Electrical",
"Safety",
"Aero / body",
"Sensors / data",
"Other"
],
"type": "string"
},
"doneDate": {
"type": "string",
"description": "Required service completion date in YYYY-MM-DD format. Natural date strings are accepted but YYYY-MM-DD is preferred."
},
"vehicleId": {
"type": "string"
},
"intervalType": {
"enum": [
"manual",
"calendar",
"mileage",
"engine_hours",
"track_events",
"log_count"
],
"type": "string"
},
"intervalValue": {
"type": "number"
},
"reminderDaysBefore": {
"type": "number"
}
},
"additionalProperties": false
}Saves a new TuneWorks driving session. Deletes are not supported.
| Argument | Type | Description |
|---|---|---|
| track | string | |
| worked | string | |
| braking | string | |
| drivers | string | |
| setupId | string | |
| bestTime | string | |
| location | string | |
| traction | string | |
| eventName | string | |
| eventType | string | |
| midCorner | string | |
| vehicleId* | string | |
Saves a new TuneWorks setup for a vehicle. Deletes are not supported.
| Argument | Type | Description |
|---|---|---|
| setupData | object | Setup fields such as setup goals, overall weight/balance, tire summary, front/rear ride height, front/rear total toe, per-corner tires, pressures, alignment, ride height, springs, dampers, corner weights, brake/balance, aero, electronics, and notes. |
| setupDate* | string | Setup date in YYYY-MM-DD format. Natural date strings are accepted but YYYY-MM-DD is preferred. |
| setupName* | string | |
| vehicleId* | string | |
| dataLogIds | array | |
| performedBy* | string | Person who performed the setup. If omitted, TuneWorks uses the connected user name/email. |
| influencedSessionId | string |
{
"type": "object",
"required": [
"vehicleId",
"setupName",
"setupDate",
"performedBy"
],
"properties": {
"setupData": {
"type": "object",
"description": "Setup fields such as setup goals, overall weight/balance, tire summary, front/rear ride height, front/rear total toe, per-corner tires, pressures, alignment, ride height, springs, dampers, corner weights, brake/balance, aero, electronics, and notes.",
"additionalProperties": true
},
"setupDate": {
"type": "string",
"description": "Setup date in YYYY-MM-DD format. Natural date strings are accepted but YYYY-MM-DD is preferred."
},
"setupName": {
"type": "string"
},
"vehicleId": {
"type": "string"
},
"dataLogIds": {
"type": "array",
"items": {
"type": "string"
}
},
"performedBy": {
"type": "string",
"description": "Person who performed the setup. If omitted, TuneWorks uses the connected user name/email."
},
"influencedSessionId": {
"type": "string"
}
},
"additionalProperties": false
}Creates a TuneWorks shop list, task list, or parts list, optionally including categories and items.
| Argument | Type | Description |
|---|---|---|
| note | string | |
| items | array | |
| title* | string | |
| status | string | |
| purpose* | string | Required enabled Shop List Purpose value. |
| setupId | string | |
| sessionId | string | |
| vehicleId | string | |
| categories | array |
{
"type": "object",
"required": [
"title",
"purpose"
],
"properties": {
"note": {
"type": "string"
},
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"label": {
"type": "string"
},
"status": {
"enum": [
"open",
"done"
],
"type": "string"
},
"section": {
"type": "string"
},
"quantity": {
"type": "integer",
"maximum": 9999,
"minimum": 1
},
"sortOrder": {
"type": "integer",
"maximum": 2147483647,
"minimum": 0
}
},
"additionalProperties": false
}
},
"title": {
"type": "string"
},
"status": {
"enum": [
"open",
"completed"
],
"type": "string"
},
"purpose": {
"type": "string",
"description": "Required enabled Shop List Purpose value."
},
"setupId": {
"type": "string"
},
"sessionId": {
"type": "string"
},
"vehicleId": {
"type": "string"
},
"categories": {
"type": "array",
"items": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string"
},
"sortOrder": {
"type": "integer",
"maximum": 2147483647,
"minimum": 0
}
},
"additionalProperties": false
}
}
},
"additionalProperties": false
}Create a new team for the connected user.
| Argument | Type | Description |
|---|---|---|
| name* | string |
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string"
}
},
"additionalProperties": false
}Adds a vehicle to the connected user’s TuneWorks garage. Deletes are not supported.
| Argument | Type | Description |
|---|---|---|
| vin | string | |
| fuel* | string | |
| make* | string | |
| year* | number | |
| model* | string | |
| owner* | string | |
| mileage | string | |
| purpose* | string | TuneWorks vehicle purpose; Track day / HPDE represents a general track car. |
| subModel | string | |
| aspiration* | string | |
| engineType* |
Add a custom vehicle make to connected user settings.
| Argument | Type | Description |
|---|---|---|
| make* | string | |
| teamId | string |
{
"type": "object",
"required": [
"make"
],
"properties": {
"make": {
"type": "string"
},
"teamId": {
"type": "string"
}
},
"additionalProperties": false
}Create a structured modification on an editable TuneWorks vehicle.
| Argument | Type | Description |
|---|---|---|
| cost | number | |
| brand* | string | |
| notes | string | |
| status* | string | |
| system* | string | |
| purpose | string | |
| category* | string | |
| partName* | string | |
| quantity | number | |
| laborCost | number | |
| removedAt | string | |
| vehicleId |
Permanently delete a saved chart-channel set after explicit confirmation.
| Argument | Type | Description |
|---|---|---|
| id* | number | |
| confirmed* | boolean |
{
"type": "object",
"required": [
"id",
"confirmed"
],
"properties": {
"id": {
"type": "number"
},
"confirmed": {
"type": "boolean"
}
},
"additionalProperties": false
}Permanently delete a custom track after explicit confirmation.
| Argument | Type | Description |
|---|---|---|
| trackId* | string | |
| confirmed* | boolean |
{
"type": "object",
"required": [
"trackId",
"confirmed"
],
"properties": {
"trackId": {
"type": "string"
},
"confirmed": {
"type": "boolean"
}
},
"additionalProperties": false
}Permanently delete an authorized ECU file after explicit confirmation.
| Argument | Type | Description |
|---|---|---|
| id* | string | |
| confirmed* | boolean |
{
"type": "object",
"required": [
"id",
"confirmed"
],
"properties": {
"id": {
"type": "string"
},
"confirmed": {
"type": "boolean"
}
},
"additionalProperties": false
}Permanently delete a favorite chart after explicit confirmation.
| Argument | Type | Description |
|---|---|---|
| chartId* | number | |
| confirmed* | boolean |
{
"type": "object",
"required": [
"chartId",
"confirmed"
],
"properties": {
"chartId": {
"type": "number"
},
"confirmed": {
"type": "boolean"
}
},
"additionalProperties": false
}Delete an object attachment from blob storage after explicit confirmation.
| Argument | Type | Description |
|---|---|---|
| fileId* | string | |
| confirmed* | boolean |
{
"type": "object",
"required": [
"fileId",
"confirmed"
],
"properties": {
"fileId": {
"type": "string"
},
"confirmed": {
"type": "boolean"
}
},
"additionalProperties": false
}Delete a connected user shop list from active use by safely archiving it. Requires explicit user confirmation and does not hard-delete history.
| Argument | Type | Description |
|---|---|---|
| listId* | string | |
| confirmed* | boolean | True indicates that the user explicitly confirmed deleting this list. |
{
"type": "object",
"required": [
"listId",
"confirmed"
],
"properties": {
"listId": {
"type": "string"
},
"confirmed": {
"type": "boolean",
"description": "True indicates that the user explicitly confirmed deleting this list."
}
},
"additionalProperties": false
}Delete a team after explicit confirmation.
| Argument | Type | Description |
|---|---|---|
| teamId* | string | |
| confirmed* | boolean |
{
"type": "object",
"required": [
"teamId",
"confirmed"
],
"properties": {
"teamId": {
"type": "string"
},
"confirmed": {
"type": "boolean"
}
},
"additionalProperties": false
}Permanently delete a custom vehicle make after explicit confirmation.
| Argument | Type | Description |
|---|---|---|
| id* | number | |
| confirmed* | boolean |
{
"type": "object",
"required": [
"id",
"confirmed"
],
"properties": {
"id": {
"type": "number"
},
"confirmed": {
"type": "boolean"
}
},
"additionalProperties": false
}Permanently delete a vehicle modification and its files. Requires explicit confirmation.
| Argument | Type | Description |
|---|---|---|
| confirmed* | boolean | |
| vehicleId* | string | |
| modificationId* | string |
{
"type": "object",
"required": [
"vehicleId",
"modificationId",
"confirmed"
],
"properties": {
"confirmed": {
"type": "boolean"
},
"vehicleId": {
"type": "string"
},
"modificationId": {
"type": "string"
}
},
"additionalProperties": false
}Provides understeer/oversteer setup guidance without authentication or access to TuneWorks account data.
| Argument | Type | Description |
|---|---|---|
| notes | string | Optional driver feedback or setup context. |
| phase* | string | |
| speed | string | Optional speed range or driver note. |
| balance* | string |
{
"type": "object",
"required": [
"balance",
"phase"
],
"properties": {
"notes": {
"type": "string",
"description": "Optional driver feedback or setup context."
},
"phase": {
"enum": [
"entry",
"middle",
"exit"
],
"type": "string"
},
"speed": {
"type": "string",
"description": "Optional speed range or driver note."
},
"balance": {
"enum": [
"understeer",
"oversteer"
],
"type": "string"
}
},
"additionalProperties": false
}Search the public TuneWorks Autocross Site Finder by coordinates and minimum paved-area dimensions. This may take several minutes because it queries live map and imagery providers.
| Argument | Type | Description |
|---|---|---|
| latitude* | number | |
| longitude* | number | |
| radiusMiles* | number | |
| minimumReviewScore | number | |
| minimumWidthMeters* | number | |
| minimumLengthMeters* | number |
{
"type": "object",
"required": [
"latitude",
"longitude",
"radiusMiles",
"minimumWidthMeters",
"minimumLengthMeters"
],
"properties": {
"latitude": {
"type": "number",
"maximum": 90,
"minimum": -90
},
"longitude": {
"type": "number",
"maximum": 180,
"minimum": -180
},
"radiusMiles": {
"type": "number",
"maximum": 30,
"minimum": 1
},
"minimumReviewScore": {
"type": "number",
"maximum": 100,
"minimum": 0
},
"minimumWidthMeters": {
"type": "number",
"minimum": 1
},
"minimumLengthMeters": {
"type": "number",
"minimum": 1
}
},
"additionalProperties": false
}Read the ordered messages and saved analysis summaries for one AI Log Tuner conversation owned by the connected TuneWorks user.
| Argument | Type | Description |
|---|---|---|
| logId* | string | Stable TuneWorks log ID for the requested conversation. |
{
"type": "object",
"required": [
"logId"
],
"properties": {
"logId": {
"type": "string",
"description": "Stable TuneWorks log ID for the requested conversation."
}
},
"additionalProperties": false
}Read one AI Race Engineer conversation and its ordered messages. Internal execution debug traces are not returned.
| Argument | Type | Description |
|---|---|---|
| chatId* | string | Stable TuneWorks Race Engineer conversation ID. |
{
"type": "object",
"required": [
"chatId"
],
"properties": {
"chatId": {
"type": "string",
"description": "Stable TuneWorks Race Engineer conversation ID."
}
},
"additionalProperties": false
}Read one accessible custom track.
| Argument | Type | Description |
|---|---|---|
| trackId* | string |
{
"type": "object",
"required": [
"trackId"
],
"properties": {
"trackId": {
"type": "string"
}
},
"additionalProperties": false
}Returns an overview of the connected user’s TuneWorks garage, including recent activity, saved vehicles, setups, sessions, maintenance, and lists.
No arguments.
{
"type": "object",
"properties": {},
"additionalProperties": false
}Read bounded metadata, channel schema summary, and saved focus window for one accessible TuneWorks log. Raw log samples are not returned.
| Argument | Type | Description |
|---|---|---|
| logId* | string |
{
"type": "object",
"required": [
"logId"
],
"properties": {
"logId": {
"type": "string"
}
},
"additionalProperties": false
}Lists existing TuneWorks vehicles, setups, and sessions available for Share Build.
| Argument | Type | Description |
|---|---|---|
| vehicleId | string | Optional TuneWorks vehicle ID to narrow Share Build setup and session options. |
{
"type": "object",
"properties": {
"vehicleId": {
"type": "string",
"description": "Optional TuneWorks vehicle ID to narrow Share Build setup and session options."
}
},
"additionalProperties": false
}Read one connected user shop list with its categories and items.
| Argument | Type | Description |
|---|---|---|
| listId* | string |
{
"type": "object",
"required": [
"listId"
],
"properties": {
"listId": {
"type": "string"
}
},
"additionalProperties": false
}Describes TuneWorks free public capabilities and connected garage capabilities for vehicles, setups, sessions, maintenance, shop lists, Share Build, and log history.
No arguments.
{
"type": "object",
"properties": {},
"additionalProperties": false
}Read the connected user’s preferences, unit choices, and custom vehicle makes.
No arguments.
{
"type": "object",
"properties": {},
"additionalProperties": false
}Returns one saved TuneWorks vehicle with its setup, session, maintenance, list, and log context.
| Argument | Type | Description |
|---|---|---|
| vehicleId* | string | Stable TuneWorks vehicle ID from an authorized TuneWorks response. |
{
"type": "object",
"required": [
"vehicleId"
],
"properties": {
"vehicleId": {
"type": "string",
"description": "Stable TuneWorks vehicle ID from an authorized TuneWorks response."
}
},
"additionalProperties": false
}Read the saved map-channel configuration for an accessible vehicle.
| Argument | Type | Description |
|---|---|---|
| vehicleId* | string |
{
"type": "object",
"required": [
"vehicleId"
],
"properties": {
"vehicleId": {
"type": "string"
}
},
"additionalProperties": false
}Read one structured modification from an accessible TuneWorks vehicle.
| Argument | Type | Description |
|---|---|---|
| vehicleId* | string | |
| modificationId* | string |
{
"type": "object",
"required": [
"vehicleId",
"modificationId"
],
"properties": {
"vehicleId": {
"type": "string"
},
"modificationId": {
"type": "string"
}
},
"additionalProperties": false
}Inspect one authorized ECU file and optionally a decoded table. Binary contents are never returned.
| Argument | Type | Description |
|---|---|---|
| id* | string | |
| table | string |
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string"
},
"table": {
"type": "string"
}
},
"additionalProperties": false
}Remove the connected user from a team after explicit confirmation.
| Argument | Type | Description |
|---|---|---|
| teamId* | string | |
| confirmed* | boolean |
{
"type": "object",
"required": [
"teamId",
"confirmed"
],
"properties": {
"teamId": {
"type": "string"
},
"confirmed": {
"type": "boolean"
}
},
"additionalProperties": false
}List recent AI Log Tuner conversations owned by the connected TuneWorks user. Returns conversation metadata without message contents.
| Argument | Type | Description |
|---|---|---|
| limit | number |
{
"type": "object",
"properties": {
"limit": {
"type": "number",
"default": 5,
"maximum": 20,
"minimum": 1
}
},
"additionalProperties": false
}List recent AI Race Engineer conversations owned by the connected TuneWorks user. May be filtered to one vehicle.
| Argument | Type | Description |
|---|---|---|
| limit | number | |
| vehicleId | string |
{
"type": "object",
"properties": {
"limit": {
"type": "number",
"default": 10,
"maximum": 25,
"minimum": 1
},
"vehicleId": {
"type": "string"
}
},
"additionalProperties": false
}List saved chart-channel sets.
No arguments.
{
"type": "object",
"properties": {},
"additionalProperties": false
}List custom tracks accessible to the connected user.
| Argument | Type | Description |
|---|---|---|
| limit | integer | |
| query | string |
{
"type": "object",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1
},
"query": {
"type": "string"
}
},
"additionalProperties": false
}List ECU-file metadata. Binary contents are never returned.
| Argument | Type | Description |
|---|---|---|
| vehicleId | string |
{
"type": "object",
"properties": {
"vehicleId": {
"type": "string"
}
},
"additionalProperties": false
}List favorite charts for an accessible vehicle.
| Argument | Type | Description |
|---|---|---|
| vehicleId* | string |
{
"type": "object",
"required": [
"vehicleId"
],
"properties": {
"vehicleId": {
"type": "string"
}
},
"additionalProperties": false
}List bounded metadata for logs attached to one connected TuneWorks vehicle. Raw log samples are not returned.
| Argument | Type | Description |
|---|---|---|
| limit | number | |
| vehicleId* | string |
{
"type": "object",
"required": [
"vehicleId"
],
"properties": {
"limit": {
"type": "number",
"default": 10,
"maximum": 25,
"minimum": 1
},
"vehicleId": {
"type": "string"
}
},
"additionalProperties": false
}Lists service reminders, maintenance history, due work, and completed maintenance saved in TuneWorks.
| Argument | Type | Description |
|---|---|---|
| limit | number | |
| vehicleId | string | Optional TuneWorks vehicle ID to filter maintenance. |
{
"type": "object",
"properties": {
"limit": {
"type": "number",
"default": 10,
"maximum": 25,
"minimum": 1
},
"vehicleId": {
"type": "string",
"description": "Optional TuneWorks vehicle ID to filter maintenance."
}
},
"additionalProperties": false
}List attachment metadata for an authorized object. Binary contents are unavailable through MCP.
| Argument | Type | Description |
|---|---|---|
| objectId* | string | |
| objectType* | string |
{
"type": "object",
"required": [
"objectType",
"objectId"
],
"properties": {
"objectId": {
"type": "string"
},
"objectType": {
"type": "string"
}
},
"additionalProperties": false
}Lists driving sessions, events, track days, autocross runs, and session notes saved in TuneWorks.
| Argument | Type | Description |
|---|---|---|
| limit | number | |
| vehicleId | string | Optional TuneWorks vehicle ID to filter sessions. |
{
"type": "object",
"properties": {
"limit": {
"type": "number",
"default": 10,
"maximum": 25,
"minimum": 1
},
"vehicleId": {
"type": "string",
"description": "Optional TuneWorks vehicle ID to filter sessions."
}
},
"additionalProperties": false
}Lists chassis setups and setup history saved in the connected TuneWorks account.
| Argument | Type | Description |
|---|---|---|
| limit | number | |
| vehicleId | string | Optional TuneWorks vehicle ID to filter setups. |
{
"type": "object",
"properties": {
"limit": {
"type": "number",
"default": 10,
"maximum": 25,
"minimum": 1
},
"vehicleId": {
"type": "string",
"description": "Optional TuneWorks vehicle ID to filter setups."
}
},
"additionalProperties": false
}Lists individual items and completion status in one connected user shop list, with optional filtering for open or completed items.
| Argument | Type | Description |
|---|---|---|
| listId* | string | |
| status | string | Optional item-status filter; open represents remaining or not-done items. |
{
"type": "object",
"required": [
"listId"
],
"properties": {
"listId": {
"type": "string"
},
"status": {
"enum": [
"open",
"done"
],
"type": "string",
"description": "Optional item-status filter; open represents remaining or not-done items."
}
},
"additionalProperties": false
}Lists reusable shop lists, event prep lists, task lists, and parts lists saved in TuneWorks.
| Argument | Type | Description |
|---|---|---|
| limit | number | |
| purpose | string | Optional enabled Shop List Purpose value to filter by. |
| vehicleId | string | Optional TuneWorks vehicle ID to filter shop lists. |
{
"type": "object",
"properties": {
"limit": {
"type": "number",
"default": 10,
"maximum": 25,
"minimum": 1
},
"purpose": {
"type": "string",
"description": "Optional enabled Shop List Purpose value to filter by."
},
"vehicleId": {
"type": "string",
"description": "Optional TuneWorks vehicle ID to filter shop lists."
}
},
"additionalProperties": false
}List teams available to the connected user, or read one team’s settings.
| Argument | Type | Description |
|---|---|---|
| teamId | string |
{
"type": "object",
"properties": {
"teamId": {
"type": "string"
}
},
"additionalProperties": false
}List structured modifications for an accessible TuneWorks vehicle.
| Argument | Type | Description |
|---|---|---|
| vehicleId* | string |
{
"type": "object",
"required": [
"vehicleId"
],
"properties": {
"vehicleId": {
"type": "string"
}
},
"additionalProperties": false
}Lists vehicles saved in the connected user’s TuneWorks app garage.
| Argument | Type | Description |
|---|---|---|
| limit | number |
{
"type": "object",
"properties": {
"limit": {
"type": "number",
"default": 10,
"maximum": 25,
"minimum": 1
}
},
"additionalProperties": false
}Update the last-used time for a saved chart-channel set.
| Argument | Type | Description |
|---|---|---|
| id* | number |
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "number"
}
},
"additionalProperties": false
}Summarizes selected Share Build vehicle, setups, sessions, recipients, and message without sending email.
| Argument | Type | Description |
|---|---|---|
| message | string | Optional message to include in the Share Build email. |
| setupIds | array | Optional TuneWorks setup IDs to include. |
| vehicleId* | string | TuneWorks vehicle ID selected for Share Build. |
| recipients | array | Recipient email addresses to preview. |
| sessionIds | array | Optional TuneWorks session IDs to include. |
{
"type": "object",
"required": [
"vehicleId"
],
"properties": {
"message": {
"type": "string",
"maxLength": 4000,
"description": "Optional message to include in the Share Build email."
},
"setupIds": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional TuneWorks setup IDs to include."
},
"vehicleId": {
"type": "string",
"description": "TuneWorks vehicle ID selected for Share Build."
},
"recipients": {
"type": "array",
"items": {
"type": "string",
"format": "email"
},
"maxItems": 3,
"description": "Recipient email addresses to preview."
},
"sessionIds": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional TuneWorks session IDs to include."
}
},
"additionalProperties": false
}Start or retry processing for an existing ECU definition file. This does not upload, create, or read a file, and processing may consume compute and analysis resources.
| Argument | Type | Description |
|---|---|---|
| id* | string |
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string"
}
},
"additionalProperties": false
}Provides a bounded shock/damper adjustment recommendation without authentication or access to TuneWorks account data.
| Argument | Type | Description |
|---|---|---|
| axle | string | |
| phase* | string | |
| symptom* | string | |
| severity | number |
{
"type": "object",
"required": [
"phase",
"symptom"
],
"properties": {
"axle": {
"enum": [
"front",
"rear",
"both"
],
"type": "string",
"default": "both"
},
"phase": {
"enum": [
"entry",
"middle",
"exit",
"transition",
"bumps"
],
"type": "string"
},
"symptom": {
"enum": [
"understeer",
"oversteer",
"lazy",
"skips",
"bounces",
"bottoms"
],
"type": "string"
},
"severity": {
"type": "number",
"default": 3,
"maximum": 5,
"minimum": 1
}
},
"additionalProperties": false
}Remove a member from a team after explicit confirmation.
| Argument | Type | Description |
|---|---|---|
| teamId* | string | |
| userId* | number | |
| confirmed* | boolean |
{
"type": "object",
"required": [
"teamId",
"userId",
"confirmed"
],
"properties": {
"teamId": {
"type": "string"
},
"userId": {
"type": "number"
},
"confirmed": {
"type": "boolean"
}
},
"additionalProperties": false
}Replace a team’s name.
| Argument | Type | Description |
|---|---|---|
| name* | string | |
| teamId* | string |
{
"type": "object",
"required": [
"teamId",
"name"
],
"properties": {
"name": {
"type": "string"
},
"teamId": {
"type": "string"
}
},
"additionalProperties": false
}Reset every item in a connected user shop list to unchecked/open.
| Argument | Type | Description |
|---|---|---|
| listId* | string | |
| confirmed* | boolean |
{
"type": "object",
"required": [
"listId",
"confirmed"
],
"properties": {
"listId": {
"type": "string"
},
"confirmed": {
"type": "boolean"
}
},
"additionalProperties": false
}Retry an eligible failed, already stored ECU file. MCP does not upload binaries.
| Argument | Type | Description |
|---|---|---|
| id* | string |
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string"
}
},
"additionalProperties": false
}Revoke a pending team invitation after explicit confirmation.
| Argument | Type | Description |
|---|---|---|
| teamId* | string | |
| inviteId* | string | |
| confirmed* | boolean |
{
"type": "object",
"required": [
"teamId",
"inviteId",
"confirmed"
],
"properties": {
"teamId": {
"type": "string"
},
"inviteId": {
"type": "string"
},
"confirmed": {
"type": "boolean"
}
},
"additionalProperties": false
}Create or replace the connected user’s complete map-channel configuration.
| Argument | Type | Description |
|---|---|---|
| signs | object | |
| lapType* | string | |
| channels* | object | |
| vehicleId* | string | |
| selections* | object |
{
"type": "object",
"required": [
"vehicleId",
"lapType",
"selections",
"channels"
],
"properties": {
"signs": {
"type": "object",
"additionalProperties": true
},
"lapType": {
"enum": [
"single",
"multiple"
],
"type": "string"
},
"channels": {
"type": "object",
"additionalProperties": true
},
"vehicleId": {
"type": "string"
},
"selections": {
"type": "object",
"additionalProperties": true
}
},
"additionalProperties": false
}Emails selected TuneWorks vehicle, setup, and session details to up to three recipients. Explicit user confirmation is required.
| Argument | Type | Description |
|---|---|---|
| message | string | Optional message to include in the Share Build email. |
| setupIds | array | Optional TuneWorks setup IDs to include. |
| confirmed* | boolean | True indicates that the user explicitly confirmed the recipient list and selected build details. |
| vehicleId* | string | TuneWorks vehicle ID selected for Share Build. |
| recipients* | array | Recipient email addresses. Share Build supports up to 3 recipients. |
| sessionIds | array | Optional TuneWorks session IDs to include. |
{
"type": "object",
"required": [
"vehicleId",
"recipients",
"confirmed"
],
"properties": {
"message": {
"type": "string",
"maxLength": 4000,
"description": "Optional message to include in the Share Build email."
},
"setupIds": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional TuneWorks setup IDs to include."
},
"confirmed": {
"type": "boolean",
"description": "True indicates that the user explicitly confirmed the recipient list and selected build details."
},
"vehicleId": {
"type": "string",
"description": "TuneWorks vehicle ID selected for Share Build."
},
"recipients": {
"type": "array",
"items": {
"type": "string",
"format": "email"
},
"maxItems": 3,
"minItems": 1,
"description": "Recipient email addresses. Share Build supports up to 3 recipients."
},
"sessionIds": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional TuneWorks session IDs to include."
}
},
"additionalProperties": false
}Create and email a team invitation only after explicit user confirmation.
| Argument | Type | Description |
|---|---|---|
| role* | string | |
| email* | string | |
| teamId* | string | |
| confirmed* | boolean |
{
"type": "object",
"required": [
"teamId",
"email",
"role",
"confirmed"
],
"properties": {
"role": {
"enum": [
"editor",
"viewer"
],
"type": "string"
},
"email": {
"type": "string",
"format": "email"
},
"teamId": {
"type": "string"
},
"confirmed": {
"type": "boolean"
}
},
"additionalProperties": false
}Replace the editable fields and ownership scope of a custom track.
| Argument | Type | Description |
|---|---|---|
| city | string | |
| venue* | string | |
| region | string | |
| teamId | string | |
| country | string | |
| trackId* | string | |
| countryCode | string |
{
"type": "object",
"required": [
"trackId",
"venue"
],
"properties": {
"city": {
"type": "string"
},
"venue": {
"type": "string"
},
"region": {
"type": "string"
},
"teamId": {
"type": "string"
},
"country": {
"type": "string"
},
"trackId": {
"type": "string"
},
"countryCode": {
"type": "string"
}
},
"additionalProperties": false
}Edits a TuneWorks maintenance reminder or service item. Deletes are not supported.
| Argument | Type | Description |
|---|---|---|
| name | string | |
| notes | string | |
| dueDate | string | Optional reminder date in YYYY-MM-DD format. Omit when no reminder is wanted. |
| category | string | |
| doneDate | string | Service completion date in YYYY-MM-DD format. Natural date strings are accepted but YYYY-MM-DD is preferred. |
| trackerId* | string | |
| vehicleId* | string | |
| intervalType | string | |
| intervalValue | number | |
| reminderDaysBefore | number |
Edits an existing TuneWorks driving session. Deletes are not supported.
| Argument | Type | Description |
|---|---|---|
| track | string | |
| worked | string | |
| braking | string | |
| drivers | string | |
| setupId | string | |
| bestTime | string | |
| location | string | |
| traction | string | |
| eventName | string | |
| eventType | string | |
| midCorner | string | |
| sessionId* |
Edits an existing TuneWorks setup revision. Deletes are not supported.
| Argument | Type | Description |
|---|---|---|
| setupId* | string | |
| revision | number | Optional setup revision number. If omitted, TuneWorks updates the latest revision. |
| setupData | object | Partial setup fields to change, including setup goals, overall weight/balance, tire summary, front/rear ride height, front/rear total toe, per-corner tires, alignment, ride height, springs, dampers, corner weights, brake/balance, aero, electronics, and notes. Numeric and boolean values are accepted and saved as setup text values. |
| setupDate | string | Setup date in YYYY-MM-DD format. Natural date strings are accepted but YYYY-MM-DD is preferred. |
| setupName | string | |
| vehicleId | string | |
| dataLogIds | array | |
| performedBy | string | Person who performed the setup. If omitted, TuneWorks uses the connected user name/email. |
Edits shop-list metadata or replaces the full categories and items collection.
| Argument | Type | Description |
|---|---|---|
| note | string | |
| items | array | |
| title | string | |
| listId* | string | |
| status | string | |
| purpose | string | Enabled Shop List Purpose value. |
| setupId | string | |
| sessionId | string | |
| vehicleId | string | |
| categories | array |
{
"type": "object",
"required": [
"listId"
],
"properties": {
"note": {
"type": "string"
},
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"label": {
"type": "string"
},
"status": {
"enum": [
"open",
"done"
],
"type": "string"
},
"section": {
"type": "string"
},
"quantity": {
"type": "integer",
"maximum": 9999,
"minimum": 1
},
"sortOrder": {
"type": "integer",
"maximum": 2147483647,
"minimum": 0
}
},
"additionalProperties": false
}
},
"title": {
"type": "string"
},
"listId": {
"type": "string"
},
"status": {
"enum": [
"open",
"completed"
],
"type": "string"
},
"purpose": {
"type": "string",
"description": "Enabled Shop List Purpose value."
},
"setupId": {
"type": "string"
},
"sessionId": {
"type": "string"
},
"vehicleId": {
"type": "string"
},
"categories": {
"type": "array",
"items": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string"
},
"sortOrder": {
"type": "integer",
"maximum": 2147483647,
"minimum": 0
}
},
"additionalProperties": false
}
}
},
"additionalProperties": false
}Atomically check or uncheck one shop-list item, change its quantity, or do both.
| Argument | Type | Description |
|---|---|---|
| itemId* | string | |
| listId* | string | |
| status | string | |
| quantity | integer |
{
"type": "object",
"required": [
"listId",
"itemId"
],
"properties": {
"itemId": {
"type": "string"
},
"listId": {
"type": "string"
},
"status": {
"enum": [
"open",
"done"
],
"type": "string"
},
"quantity": {
"type": "integer",
"maximum": 9999,
"minimum": 1
}
},
"additionalProperties": false
}Replace a team member’s role.
| Argument | Type | Description |
|---|---|---|
| role* | string | |
| teamId* | string | |
| userId* | number |
{
"type": "object",
"required": [
"teamId",
"userId",
"role"
],
"properties": {
"role": {
"enum": [
"owner",
"editor",
"viewer"
],
"type": "string"
},
"teamId": {
"type": "string"
},
"userId": {
"type": "number"
}
},
"additionalProperties": false
}Update unit-category choices for the connected TuneWorks user.
| Argument | Type | Description |
|---|---|---|
| settings* | array |
{
"type": "object",
"required": [
"settings"
],
"properties": {
"settings": {
"type": "array",
"items": {
"type": "object",
"required": [
"category",
"unit"
],
"properties": {
"unit": {
"type": "string"
},
"category": {
"type": "string"
}
},
"additionalProperties": false
}
}
},
"additionalProperties": false
}Update selected preferences for the connected TuneWorks user.
| Argument | Type | Description |
|---|---|---|
| preferences* | object |
{
"type": "object",
"required": [
"preferences"
],
"properties": {
"preferences": {
"type": "object",
"additionalProperties": true
}
},
"additionalProperties": false
}Edits an existing vehicle in the connected user’s TuneWorks garage. Deletes are not supported.
| Argument | Type | Description |
|---|---|---|
| vin | string | |
| fuel | string | |
| make | string | |
| year | number | |
| model | string | |
| owner | string | |
| mileage | string | |
| purpose | string | |
| subModel | string | |
| vehicleId* | string | |
| aspiration | string | |
| engineType |
Rename or rescope a custom vehicle make.
| Argument | Type | Description |
|---|---|---|
| id* | number | |
| make* | string | |
| teamId | string |
{
"type": "object",
"required": [
"id",
"make"
],
"properties": {
"id": {
"type": "number"
},
"make": {
"type": "string"
},
"teamId": {
"type": "string"
}
},
"additionalProperties": false
}Update a structured modification on an editable TuneWorks vehicle.
| Argument | Type | Description |
|---|---|---|
| cost | number | |
| brand | string | |
| notes | string | |
| status | string | |
| system | string | |
| purpose | string | |
| category | string | |
| partName | string | |
| quantity | number | |
| laborCost | number | |
| removedAt | string | |
| vehicleId |
{
"type": "object",
"required": [
"frontPiston",
"rearPiston",
"frontRotor",
"rearRotor",
"frontMu",
"rearMu",
"unitSystem"
],
"properties": {
"rearMu": {
"type": "number",
"description": "Rear pad friction",
"exclusiveMinimum": 0
},
"frontMu": {
"type": "number",
"description": "Front pad friction",
"exclusiveMinimum": 0
},
"rearRotor": {
"type": "number",
"description": "Rear effective radius (in in imperial; mm in metric)",
"exclusiveMinimum": 0
},
"frontRotor": {
"type": "number",
"description": "Front effective radius (in in imperial; mm in metric)",
"exclusiveMinimum": 0
},
"rearPiston": {
"type": "number",
"description": "Rear total piston area (in2 in imperial; cm2 in metric)",
"exclusiveMinimum": 0
},
"unitSystem": {
"enum": [
"imperial",
"metric"
],
"type": "string",
"description": "Units for all inputs and results, as specified on each field."
},
"frontPiston": {
"type": "number",
"description": "Front total piston area (in2 in imperial; cm2 in metric)",
"exclusiveMinimum": 0
}
},
"additionalProperties": false
}| Ethanol percentage (0–100). |
| highFuelEthanol* | number | Ethanol percentage (0–100). |
{
"type": "object",
"required": [
"mode",
"volumeUnit",
"targetEthanol",
"highFuelEthanol",
"pumpGasEthanol"
],
"properties": {
"mode": {
"enum": [
"fresh",
"existing",
"correct",
"ratio"
],
"type": "string"
},
"volumeUnit": {
"enum": [
"liters",
"us_gallons"
],
"type": "string"
},
"finalVolume": {
"type": "number",
"description": "Volume in volumeUnit.",
"exclusiveMinimum": 0
},
"tankCapacity": {
"type": "number",
"description": "Volume in volumeUnit.",
"exclusiveMinimum": 0
},
"currentVolume": {
"type": "number",
"description": "Volume in volumeUnit.",
"exclusiveMinimum": 0
},
"targetEthanol": {
"type": "number",
"maximum": 100,
"minimum": 0,
"description": "Ethanol percentage (0–100)."
},
"currentEthanol": {
"type": "number",
"maximum": 100,
"minimum": 0,
"description": "Ethanol percentage (0–100)."
},
"pumpGasEthanol": {
"type": "number",
"maximum": 100,
"minimum": 0,
"description": "Ethanol percentage (0–100)."
},
"highFuelEthanol": {
"type": "number",
"maximum": 100,
"minimum": 0,
"description": "Ethanol percentage (0–100)."
}
},
"additionalProperties": false
}| Tire diameter (in in imperial; mm in metric) |
{
"type": "object",
"required": [
"rpm",
"speed",
"gear",
"finalDrive",
"tireDiameter",
"nextGear",
"mode",
"unitSystem"
],
"properties": {
"rpm": {
"type": "number",
"minimum": 0,
"description": "Engine RPM (rpm)"
},
"gear": {
"type": "number",
"description": "Gear ratio",
"exclusiveMinimum": 0
},
"mode": {
"enum": [
"speed",
"rpm"
],
"type": "string",
"description": "Primary answer"
},
"speed": {
"type": "number",
"minimum": 0,
"description": "Vehicle speed (mph in imperial; km/h in metric)"
},
"nextGear": {
"type": "number",
"description": "Next gear ratio",
"exclusiveMinimum": 0
},
"finalDrive": {
"type": "number",
"description": "Final drive",
"exclusiveMinimum": 0
},
"unitSystem": {
"enum": [
"imperial",
"metric"
],
"type": "string",
"description": "Units for all inputs and results, as specified on each field."
},
"tireDiameter": {
"type": "number",
"description": "Tire diameter (in in imperial; mm in metric)",
"exclusiveMinimum": 0
}
},
"additionalProperties": false
}| baseWeight* | number | Car + driver without fuel (lb in US; kg in metric) |
| unitSystem* | string | Units for all inputs and results, as specified on each field. |
| consumption* | number | Fuel consumption per lap (gal in US; L in metric) |
| customDensity | number | Custom fuel density (lb/gal in US; kg/L in metric) |
| formationLaps* | number | Formation / warm-up laps (laps) |
| minimumWeight* | number | Class minimum weight (lb in US; kg in metric) |
{
"type": "object",
"required": [
"consumption",
"formationLaps",
"extraLaps",
"reserve",
"baseWeight",
"minimumWeight",
"ballast",
"raceMode",
"fuel",
"unitSystem"
],
"properties": {
"fuel": {
"enum": [
"gas",
"race",
"e85",
"custom"
],
"type": "string",
"description": "Fuel type"
},
"ballast": {
"type": "number",
"minimum": 0,
"description": "Ballast fitted (lb in US; kg in metric)"
},
"lapTime": {
"type": "number",
"description": "Expected lap time (sec)",
"exclusiveMinimum": 0
},
"reserve": {
"type": "number",
"minimum": 0,
"description": "Fuel reserve (%)"
},
"duration": {
"type": "number",
"description": "Race duration (min)",
"exclusiveMinimum": 0
},
"raceLaps": {
"type": "number",
"description": "Scheduled race laps (laps)",
"exclusiveMinimum": 0
},
"raceMode": {
"enum": [
"timed",
"laps"
],
"type": "string",
"description": "Race format"
},
"extraLaps": {
"type": "number",
"minimum": 0,
"description": "Extra-lap allowance (laps)"
},
"baseWeight": {
"type": "number",
"description": "Car + driver without fuel (lb in US; kg in metric)",
"exclusiveMinimum": 0
},
"unitSystem": {
"enum": [
"us",
"metric"
],
"type": "string",
"description": "Units for all inputs and results, as specified on each field."
},
"consumption": {
"type": "number",
"description": "Fuel consumption per lap (gal in US; L in metric)",
"exclusiveMinimum": 0
},
"customDensity": {
"type": "number",
"description": "Custom fuel density (lb/gal in US; kg/L in metric)",
"exclusiveMinimum": 0
},
"formationLaps": {
"type": "number",
"minimum": 0,
"description": "Formation / warm-up laps (laps)"
},
"minimumWeight": {
"type": "number",
"description": "Class minimum weight (lb in US; kg in metric)",
"exclusiveMinimum": 0
}
},
"additionalProperties": false
}{
"type": "object",
"required": [
"oldWidth",
"oldAspect",
"oldWheel",
"newWidth",
"newAspect",
"newWheel",
"unitSystem"
],
"properties": {
"newWheel": {
"type": "number",
"description": "New wheel diameter (in in imperial; mm in metric)",
"exclusiveMinimum": 0
},
"newWidth": {
"type": "number",
"description": "New width (mm)",
"exclusiveMinimum": 0
},
"oldWheel": {
"type": "number",
"description": "Current wheel diameter (in in imperial; mm in metric)",
"exclusiveMinimum": 0
},
"oldWidth": {
"type": "number",
"description": "Current width (mm)",
"exclusiveMinimum": 0
},
"newAspect": {
"type": "number",
"maximum": 100,
"description": "New aspect ratio (%)",
"exclusiveMinimum": 0
},
"oldAspect": {
"type": "number",
"maximum": 100,
"description": "Current aspect ratio (%)",
"exclusiveMinimum": 0
},
"unitSystem": {
"enum": [
"imperial",
"metric"
],
"type": "string",
"description": "Units for all inputs and results, as specified on each field."
}
},
"additionalProperties": false
}| cornerExit |
| string |
| dataLogIds | array |
| didNotWork | string |
| cornerEntry | string |
| sessionDate* | string | Session date in YYYY-MM-DD format. Natural date strings are accepted but YYYY-MM-DD is preferred. |
| sessionFormat* | string |
| overallBalance | string |
| performanceFigures | string |
| suggestedSetupChange | string |
| additionalSessionDetails | string |
{
"type": "object",
"required": [
"vehicleId",
"sessionDate",
"sessionFormat"
],
"properties": {
"track": {
"type": "string"
},
"worked": {
"type": "string"
},
"braking": {
"type": "string"
},
"drivers": {
"type": "string"
},
"setupId": {
"type": "string"
},
"bestTime": {
"type": "string"
},
"location": {
"type": "string"
},
"traction": {
"type": "string"
},
"eventName": {
"type": "string"
},
"eventType": {
"enum": [
"Autocross",
"Circuit racing",
"Drag racing",
"Drift",
"Dyno",
"Hill climb",
"Rally",
"Street drive",
"Test / tuning",
"Time attack",
"Track day / HPDE",
"Troubleshooting",
"Other"
],
"type": "string"
},
"midCorner": {
"type": "string"
},
"vehicleId": {
"type": "string"
},
"cornerExit": {
"type": "string"
},
"dataLogIds": {
"type": "array",
"items": {
"type": "string"
}
},
"didNotWork": {
"type": "string"
},
"cornerEntry": {
"type": "string"
},
"sessionDate": {
"type": "string",
"description": "Session date in YYYY-MM-DD format. Natural date strings are accepted but YYYY-MM-DD is preferred."
},
"sessionFormat": {
"enum": [
"Competition",
"Data collection",
"Practice",
"Qualifying",
"Race",
"Testing",
"Troubleshooting",
"Tuning",
"Other"
],
"type": "string"
},
"overallBalance": {
"type": "string"
},
"performanceFigures": {
"type": "string"
},
"suggestedSetupChange": {
"type": "string"
},
"additionalSessionDetails": {
"type": "string"
}
},
"additionalProperties": true
}| string |
| fuelRating* | string |
| engineHours | string |
| engineModel | string |
| displacement* | string |
| modifications | string |
| transmissionType | string |
| cylindersOrRotors* | string |
| transmissionSpeeds | string |
{
"type": "object",
"required": [
"make",
"model",
"year",
"purpose",
"owner",
"displacement",
"engineType",
"aspiration",
"cylindersOrRotors",
"fuel",
"fuelRating"
],
"properties": {
"vin": {
"type": "string"
},
"fuel": {
"enum": [
"gasoline",
"ethanol",
"methanol",
"diesel"
],
"type": "string"
},
"make": {
"type": "string"
},
"year": {
"type": "number"
},
"model": {
"type": "string"
},
"owner": {
"type": "string"
},
"mileage": {
"type": "string"
},
"purpose": {
"enum": [
"Autocross racing",
"Circuit racing",
"Circle track racing",
"Drag racing",
"Drift racing",
"Hill climb",
"Land speed racing",
"Off-road racing",
"Rally racing",
"Street",
"Time attack",
"Track day / HPDE",
"Other"
],
"type": "string",
"description": "TuneWorks vehicle purpose; Track day / HPDE represents a general track car."
},
"subModel": {
"type": "string"
},
"aspiration": {
"enum": [
"normally_aspirated",
"turbocharged",
"supercharged"
],
"type": "string"
},
"engineType": {
"enum": [
"piston",
"rotary"
],
"type": "string"
},
"fuelRating": {
"type": "string"
},
"engineHours": {
"type": "string"
},
"engineModel": {
"type": "string"
},
"displacement": {
"type": "string"
},
"modifications": {
"type": "string"
},
"transmissionType": {
"enum": [
"manual",
"automatic",
"cvt",
""
],
"type": "string"
},
"cylindersOrRotors": {
"type": "string"
},
"transmissionSpeeds": {
"type": "string"
}
},
"additionalProperties": false
}| string |
| partNumber | string |
| installHours | string |
| dateInstalled | string |
| datePurchased | string |
| purchasedFrom | string |
| replacedModId | string |
| installMileage | string |
| installedByName | string |
{
"type": "object",
"required": [
"vehicleId",
"category",
"system",
"status",
"brand",
"partName"
],
"properties": {
"cost": {
"type": "number"
},
"brand": {
"type": "string"
},
"notes": {
"type": "string"
},
"status": {
"enum": [
"Planned",
"Purchased",
"Installed",
"Removed",
"Sold",
"Canceled"
],
"type": "string"
},
"system": {
"type": "string"
},
"purpose": {
"type": "string"
},
"category": {
"type": "string"
},
"partName": {
"type": "string"
},
"quantity": {
"type": "number"
},
"laborCost": {
"type": "number"
},
"removedAt": {
"type": "string"
},
"vehicleId": {
"type": "string"
},
"partNumber": {
"type": "string"
},
"installHours": {
"type": "string"
},
"dateInstalled": {
"type": "string"
},
"datePurchased": {
"type": "string"
},
"purchasedFrom": {
"type": "string"
},
"replacedModId": {
"type": "string"
},
"installMileage": {
"type": "string"
},
"installedByName": {
"type": "string"
}
},
"additionalProperties": false
}{
"type": "object",
"required": [
"vehicleId",
"trackerId"
],
"properties": {
"name": {
"type": "string"
},
"notes": {
"type": "string"
},
"dueDate": {
"type": "string",
"description": "Optional reminder date in YYYY-MM-DD format. Omit when no reminder is wanted."
},
"category": {
"enum": [
"Engine",
"Ignition",
"Fuel",
"Fluids",
"Cooling",
"Brakes",
"Suspension",
"Drivetrain",
"Tires / wheels",
"Electrical",
"Safety",
"Aero / body",
"Sensors / data",
"Other"
],
"type": "string"
},
"doneDate": {
"type": "string",
"description": "Service completion date in YYYY-MM-DD format. Natural date strings are accepted but YYYY-MM-DD is preferred."
},
"trackerId": {
"type": "string"
},
"vehicleId": {
"type": "string"
},
"intervalType": {
"enum": [
"manual",
"calendar",
"mileage",
"engine_hours",
"track_events",
"log_count"
],
"type": "string"
},
"intervalValue": {
"type": "number"
},
"reminderDaysBefore": {
"type": "number"
}
},
"additionalProperties": false
}| string |
| vehicleId | string |
| cornerExit | string |
| dataLogIds | array |
| didNotWork | string |
| cornerEntry | string |
| sessionDate | string | Session date in YYYY-MM-DD format. Natural date strings are accepted but YYYY-MM-DD is preferred. |
| sessionFormat | string |
| overallBalance | string |
| expectedUpdatedAt | string | Optional optimistic-concurrency timestamp from a previous TuneWorks response. |
| performanceFigures | string |
| suggestedSetupChange | string |
| additionalSessionDetails | string |
{
"type": "object",
"required": [
"sessionId"
],
"properties": {
"track": {
"type": "string"
},
"worked": {
"type": "string"
},
"braking": {
"type": "string"
},
"drivers": {
"type": "string"
},
"setupId": {
"type": "string"
},
"bestTime": {
"type": "string"
},
"location": {
"type": "string"
},
"traction": {
"type": "string"
},
"eventName": {
"type": "string"
},
"eventType": {
"enum": [
"Autocross",
"Circuit racing",
"Drag racing",
"Drift",
"Dyno",
"Hill climb",
"Rally",
"Street drive",
"Test / tuning",
"Time attack",
"Track day / HPDE",
"Troubleshooting",
"Other"
],
"type": "string"
},
"midCorner": {
"type": "string"
},
"sessionId": {
"type": "string"
},
"vehicleId": {
"type": "string"
},
"cornerExit": {
"type": "string"
},
"dataLogIds": {
"type": "array",
"items": {
"type": "string"
}
},
"didNotWork": {
"type": "string"
},
"cornerEntry": {
"type": "string"
},
"sessionDate": {
"type": "string",
"description": "Session date in YYYY-MM-DD format. Natural date strings are accepted but YYYY-MM-DD is preferred."
},
"sessionFormat": {
"enum": [
"Competition",
"Data collection",
"Practice",
"Qualifying",
"Race",
"Testing",
"Troubleshooting",
"Tuning",
"Other"
],
"type": "string"
},
"overallBalance": {
"type": "string"
},
"expectedUpdatedAt": {
"type": "string",
"description": "Optional optimistic-concurrency timestamp from a previous TuneWorks response."
},
"performanceFigures": {
"type": "string"
},
"suggestedSetupChange": {
"type": "string"
},
"additionalSessionDetails": {
"type": "string"
}
},
"additionalProperties": true
}| expectedUpdatedAt |
| string |
| Optional optimistic-concurrency timestamp from a previous TuneWorks response. |
| influencedSessionId | string |
{
"type": "object",
"required": [
"setupId"
],
"properties": {
"setupId": {
"type": "string"
},
"revision": {
"type": "number",
"description": "Optional setup revision number. If omitted, TuneWorks updates the latest revision."
},
"setupData": {
"type": "object",
"description": "Partial setup fields to change, including setup goals, overall weight/balance, tire summary, front/rear ride height, front/rear total toe, per-corner tires, alignment, ride height, springs, dampers, corner weights, brake/balance, aero, electronics, and notes. Numeric and boolean values are accepted and saved as setup text values.",
"additionalProperties": true
},
"setupDate": {
"type": "string",
"description": "Setup date in YYYY-MM-DD format. Natural date strings are accepted but YYYY-MM-DD is preferred."
},
"setupName": {
"type": "string"
},
"vehicleId": {
"type": "string"
},
"dataLogIds": {
"type": "array",
"items": {
"type": "string"
}
},
"performedBy": {
"type": "string",
"description": "Person who performed the setup. If omitted, TuneWorks uses the connected user name/email."
},
"expectedUpdatedAt": {
"type": "string",
"description": "Optional optimistic-concurrency timestamp from a previous TuneWorks response."
},
"influencedSessionId": {
"type": "string"
}
},
"additionalProperties": false
}| string |
| fuelRating | string |
| engineHours | string |
| engineModel | string |
| displacement | string |
| modifications | string |
| transmissionType | string |
| cylindersOrRotors | string |
| expectedUpdatedAt | string | Optional optimistic-concurrency timestamp from a previous TuneWorks response. |
| transmissionSpeeds | string |
{
"type": "object",
"required": [
"vehicleId"
],
"properties": {
"vin": {
"type": "string"
},
"fuel": {
"enum": [
"gasoline",
"ethanol",
"methanol",
"diesel"
],
"type": "string"
},
"make": {
"type": "string"
},
"year": {
"type": "number"
},
"model": {
"type": "string"
},
"owner": {
"type": "string"
},
"mileage": {
"type": "string"
},
"purpose": {
"enum": [
"Autocross racing",
"Circuit racing",
"Circle track racing",
"Drag racing",
"Drift racing",
"Hill climb",
"Land speed racing",
"Off-road racing",
"Rally racing",
"Street",
"Time attack",
"Track day / HPDE",
"Other"
],
"type": "string"
},
"subModel": {
"type": "string"
},
"vehicleId": {
"type": "string"
},
"aspiration": {
"enum": [
"normally_aspirated",
"turbocharged",
"supercharged"
],
"type": "string"
},
"engineType": {
"enum": [
"piston",
"rotary"
],
"type": "string"
},
"fuelRating": {
"type": "string"
},
"engineHours": {
"type": "string"
},
"engineModel": {
"type": "string"
},
"displacement": {
"type": "string"
},
"modifications": {
"type": "string"
},
"transmissionType": {
"enum": [
"manual",
"automatic",
"cvt",
""
],
"type": "string"
},
"cylindersOrRotors": {
"type": "string"
},
"expectedUpdatedAt": {
"type": "string",
"description": "Optional optimistic-concurrency timestamp from a previous TuneWorks response."
},
"transmissionSpeeds": {
"type": "string"
}
},
"additionalProperties": false
}| string |
| partNumber | string |
| installHours | string |
| dateInstalled | string |
| datePurchased | string |
| purchasedFrom | string |
| replacedModId | string |
| installMileage | string |
| modificationId* | string |
| installedByName | string |
{
"type": "object",
"required": [
"vehicleId",
"modificationId"
],
"properties": {
"cost": {
"type": "number"
},
"brand": {
"type": "string"
},
"notes": {
"type": "string"
},
"status": {
"enum": [
"Planned",
"Purchased",
"Installed",
"Removed",
"Sold",
"Canceled"
],
"type": "string"
},
"system": {
"type": "string"
},
"purpose": {
"type": "string"
},
"category": {
"type": "string"
},
"partName": {
"type": "string"
},
"quantity": {
"type": "number"
},
"laborCost": {
"type": "number"
},
"removedAt": {
"type": "string"
},
"vehicleId": {
"type": "string"
},
"partNumber": {
"type": "string"
},
"installHours": {
"type": "string"
},
"dateInstalled": {
"type": "string"
},
"datePurchased": {
"type": "string"
},
"purchasedFrom": {
"type": "string"
},
"replacedModId": {
"type": "string"
},
"installMileage": {
"type": "string"
},
"modificationId": {
"type": "string"
},
"installedByName": {
"type": "string"
}
},
"additionalProperties": false
}