Upload Payload (POST)

Main API for updating the current status of the vehicle. The mileage portion of the API is important for driving maintenance and predictive failure information, while odometer and OBD2 data is required for the vehicle diagnostic information.

Important note about mileage
In order for CarMD to assure our customers of accurate maintenance and diagnostic results, it is important for us to receive regular mileage inputs. Missing, outdated or incorrect mileage degrades our ability to provide accurate maintenance recommendations and predicted repairs. A determination of wear and tear, mileage can also affect the fix. This is similar to how a doctor might treat a baby versus a senior citizen with similar symptoms.

To help assure the accuracy of scheduled maintenance, predictive diagnostics and recommended fix when you need it most, we ask that you report mileage to us at least daily for each vehicle.

Request Data

"vehicleID" : "5549adf43c10810994bdae08",
"mileage" : "50000",
"rawType" : "1",
"latitude": "",
"latitude": "",
"formattedData" :
"codes" :
"pwrPrimary" : "P0113",
"pwrStored" : "P0113,U1022",
"pwrPending" : "P0113,U1022,P1234",
"absPrimary" : "",
"absStored" : "C0012",
"absPending" : "",
"srsPrimary" : "",
"srsStored" : "B0015",
"absPending" : ""
"monitor" : "0101486B09410181076500EB",
"freezeFrame" : "$09,00,P0113,03:0100,04:56,05:4A,06:7E,07:81,0B:22,0C:1510,0D:00,0E:A1,0F:00,11:2F,20:00000001,40:08000000,45:15"

"vehicleID" : "5549adf43c10810994bdae08",
"mileage" : "50000",
"rawType" : "0",
"rawData" : "02 01 B0 00 9F 5B 03 8D 64 A3 0D D0 98 E0 63 0C C5 63 7C A4 47 4E B4 3F EE 26 BD B4 FA 48 AC 42 55 ED F9 B7 D9 C7 CB 94 0C 2B C7 78 CB C5 2A 6A 21 62 EA 79 36 CE BA 6F 5C 42 38 32 C4 7A 0F FE 68 B5 E7 9E D1 45 53 00 63 34 75 45 9C 1E C3 09 79 2C FA CF D1 45 53 00 63 34 75 45 9C 1E C3 09 79 2C FA CF 50 AA 64 9C 1F 7B F9 7B F3 A2 A2 00 23 B8 99 2C D1 45 53 00 63 34 75 45 9C 1E C3 09 79 2C FA CF DE 05 11 1C A6 89 0D FE 85 41 E8 F0 96 30 A3 97 FD 85 DF C2 6B 1A AC 2D 1E C7 E2 4D A1 38 47 E3 A0 53 56 7A A9 9D D7 49 43 BF EC 8D D1 0D F4 6C 02 04 00 31 01 16 33 04 11 31 46 54 59 52 31 30 44 35 37 50 41 33 30 34 38 34 05 04 03 00 07 00"

"vehicleID" : "5549adf43c10810994bdae08",
"mileage" : "50000",
"rawType" : "1",
"rawData" : "HQEDAQAAAhAAMDEAMDAANDUAAAAAAAAADQECDgEE/wP1fCkU3vyx0lucWWMTjzAx+yNE5mUIz34D59tSFfwPhgawq2VgkGoUiU1qIHrUA6e18X/BtXPctf+QdfEdrNixg1+k4bZcGxt3q2n9vi/tqwNPYpRH1njRFOwox1FRDfO7lR+kMmGD3XH1/lP1zPQs4x6YGcNQKOHdvvHtgFndMs6CZNeCdZfdr7ZrHGnt5KiuTVW67JwbbgNrVJ60TwrdjBrQFUO426VERzMZoDmAhbdR3OqNQs6AF1Yoq+X0TdxJ9WBB51Em8dUegdyved/bVs8d4OWMamBIq1HvB2twVowkq96rRBfAAi18LmCMCLIbDMBSEffBaNM4QM5YYwRuENIticiyQY8RNFkcVMmfUgi4BPKzpBfwuXNsclB8TdFNgqHXd1K/b/1GsBPm4kNMKM2zHNoHec4XfwclkRb5gvUDQbPeEYnkkqK5UDP/c//Mq5CP8KxKpMDVM0tnt2ntIJ62hp2F3bCJ7qyfuMc5en1/HLfPPEFAROYEiyUc2J4L8vrBKmiPm1Tprn5NN47N54PkTVpkJFjKUTgTmiP+57G41HYCltSACtEdEfg/tgJ7hAEwY7rRkSorrXcKYUn2ONfVRIhuE2aRaPkfAobTM4apyv2leKSLkB4jkdmwsSjXQgqFha8mJJnrotUHqE3ui3Ycd6AAw32wg3vS/QNRLtouZJFVVg1eN39hI2KjsekSizo0Dq8TaDyWTn86wf0DYzNXC9Os4olX2g7DC5C237JBvrIzAPciqXjwmw3q/g228I5QM580GYD+or1vREBGoRbBpSsFDVrDQhdXqlsfuxuQfhH4yyJltQAwDFrGKUCzRZzmawMn8H2y6bv5kQ0gAFoEdCSvDNldkinn1oMZ9uANUT2cyXlMoDspKfeXLLQOwIPpe+3gVqWYWLDUMONbUAk6yCrVkOC00Ii7oYKvnS8eLH2iJmb+M4oFkGYxF0835YAKha9jCzlSPTHuY0sSzUoHVD97mDA9aPzaLzCtG6YAu7rkOgeQEXT7JZp8sG/2lgyWTj4xBH06/njWinsIYBW7EZ97aahAKqlvig5hk50JcEVFUItncwCdBjZbIlO0KU6URQb0M4+UysuhCmKHNMzxNhfDej5IVdlC3cAyQUOrtb4KS9Xv8PmzemHJY1hrTP5iqIBYbiMzVfTMHvENCBhwoRo+exX4y8B4krA0VtBUoS8LhG00sCGMBKMeavEkP2pGfYOrhfrcyqcR3aHF4lcklD6ECgnbrUjMKUgHaFsGDJ5+ukDnoxge2q86AO9cqQ+UtSHq+Owo3+QhpuLq+LUqWsOArRiA2EtuZ/ULgubmrQJb8PpcdbukikbVXBs1V5pwa5wPrAFbtfPjZw=="

Must submit either raw or formatted data.

Field Type Notes
vehicleID string Required. The vehicle this update is for.
mileage integer Required. Accurate mileage is required.
rawType integer Optional. If using raw data, specify which type of raw data is being posted.
0 – (default) OFM Hex data string
1 – Old raw data string
rawData string Optional. Raw data from the OBD2 port.
formattedData FormattedOBDData Optional. Formatted OBD2 data if raw is unavailable.
latitude string Optional. GPS data.
longitude string Optional. GPS data.

FormattedOBDData object

Field Type Notes
codes ErrorCode Optional. The available codes from the OBD2 port.
monitor string Optional. Monitor information.
freezeFrame string Optional. While this data optional, it is needed in case CarMD does not yet have a fix for a DTC issue. This data helps us and our repair team understand the context of how the issue occurred and begin seeking possible repair solutions.

ErrorCode object

Field Type Notes
pwrPrimary string Optional. The primary powertrain DTC is the DTC that caused an issue severe enough for the check engine light to come on. Also known as the MIL DTC.
pwrStored string Optional. Separate by commas
pwrPending string Optional. Separate by commas. These are powertrain DTCs which have occurred at least once and the system is holding onto to see if it reoccurs. If the DTC fails to occur again, it is erased. If it reoccurs it matures into a primary powertrain DTC causing the check engine light to come on.
absPrimary string Optional. The primary ABS DTC is the DTC that caused an issue severe enough for the ABS warning light to come on. Also known as the ABS MIL DTC.
absStored string Optional. Separate by commas
absPending string Optional. Separate by commas. Similar to pwrPending but for ABS.
srsPrimary string Optional. The primary SRC DTC is the DTC that caused an issue severe enough for the SRS warning light to come on. Also known as the SRS MIL DTC.
srsStored string Optional. Separate by commas
srsPending string Optional. Separate by commas. Similar to pwrPending but for SRS.

Key Value object

Field Type Notes
key string Optional.
value string/int/bool Optional.


"message": {
"code": 0,
"message": "OK",
"credentials": "Valid",
"version": "v2.0.0",
"account": "Premium",
"method": "Upload Payload",
"action": "POST",
"counter": 31
"data": {
"vehicle": {
"vehicleID": "5549adf43c10810994bdae08",
"fleetID": "5539bdce3c10810d7c4e484c",
"vehCustomID": "2005 HONDA CIVIC",
"vin": "2HGES16525H550717",
"vehName": "2005 Honda Civic",
"year": 2005,
"make": "HONDA",
"model": "CIVIC",
"engine": "L4, 1.7L; SOHC",
"mileage": 59000,
"tag": "Car, White",
"fuelMpgCombined": "32.00",
"fuelMpgCity": "29.00",
"fuelMpgHighway": "36.00",
"active": true
"response": {
"status": {
"report": "Red",
"mil": "Not Supported",
"engine": "Red",
"powerTrain": "Red",
"abs": "Green",
"srs": "Green",
"emission": "Ready"
"uploadID": "5552d0943c1081139466af66",
"reportID": null,
"isNew": true
Field Type Notes
message Message
data UploadResponse

Message object

Field Type Notes
code string Message code.
message string Ok or Failed.
credentials string Valid or Invalid.
version string v2.0.0
account string Free or Premium
method string Name of the API called
action string returns a GET, POST, PUT, DELETE
counter integer Counter for this request. Increments by one for every request made. This is only important for free users who have a limited number of API requests.

UploadResponse object

Field Type Notes
vehicle Vehicle Information on the vehicle.
response UpdateResponseData Response data to the uploaded payload.

Vehicle object

Field Type Notes
vehName string Name of this vehicle.
mileage integer Number of miles this vehicle has travelled.
vin string Vehicle Identification Number.
year string Year this vehicle was manufactured.
make string Make of this vehicle.
model string Model of this vehicle.
engine string Engine type of this vehicle.
vehicleID string CarMD’s generated ID for this vehicle. This ID will always be unique to this fleet.
fleetID string CarMD’s fleet ID for this vehicle.
tag list<string> Tags applied to this vehicle.
vehCustomID string Null or returns the vehCustomID of this vehicle.
active boolean True or False. True if services are available for this vehicle.

UpdateResponseData object

uploadID vs reportID
uploadID is generated for every payload
reportID remains the same unless new information has been generated.

Field Type Notes
uploadID string The reference ID to this payload. Can be used to pull the diagnostic report for this payload.
reportID string The reference ID to the generated diagnostic report. Can be used to pull the diagnostic report.
status Status Various system status.
isNew boolean Our system will let you know if the payload to our service has updated any data or if the data has remained the same since the last upload.
True – Payload is new, may produce a different diagnostic report.
False – Payload is the same as last upload.

Status object

Field Type Notes
report string Overall report status. Which are:
red – Primary DTC found, check engine light(CEL) is on
yellow – Pending DTC detected, CEL is not on
green – No DTCs found, vehicles are ok
mil string
engine string
powerTrain string
abs string
srs string
emission string

As well as artists show themselves occupied in letting down truth essayprofs.com
vinhnUpload Payload