Introduction

Welcome to CarMD API V3 developer documentation.

These APIs primarily function on vehicles sold in the US since 1996 and have coverage for similar vehicles sold in other countries. To get started, please register first.

Authentication

Before being able to use the CarMD APIs, you must register. On registration you will have 2 pieces of information which must be submitted as part of your requests.

  • Partner Token
  • Authorization Key
Note: Please submit this information through your header. It will not work if submitted as parameters.

API Reference

You will need to use this on every call to the CarMD APIs.

REQUEST HEADER
{
  "content-type":"application/json",
  "authorization":"your_auth_key_here",
  "partner-token":"your_partner_token_here"
}                           

Requests

All requests and responses are application/json content type and follow standard HTTP reponse status codes for success and failure.

Status Codes
200 Successful Request
400 Bad Request – Invalid request format
401 Unauthorized – Invalid API Key
402 Request Failed
403 Forbidden – You do not have access to the requested resource
404 Not Found
409 Conflict
429 Too Many Requests
500, 502, 503, 504 Internal Server Error

Credits

For those who:

  • Want to start with low upfront costs.
  • Want to use a narrow service set and don't want to be charged for all the services.
  • Have unknown and/or variable usage.

CarMD APIs offers credit model that charges per request. Every request with have a different credit fee, with some being very low compared to other endpoints.

Users may purchase as many or as few credits as they wish to load up their account.

Response Formatting

Every request response comes with a message and data object. The data object contains the endpoint specific response.

MESSAGE OBJECT
  • code

    Error message code.

  • message

    ok or failed

  • credentials

    valid or invalid

  • version

    v3.0.0

  • endpoint

    Endpoint used for this response

  • count

    Counter for all requests. Increments by one for every request made.

Response Format
{
  "message":{
    "code":0,
    "message":"ok",
    "credentials":"valid",
    "version":"v3.0.0",
    "endpoint":"tsb",
    "counter":101
  }
  "data":{}
}
Codes
0 Successful Request

GET Available Fields

Provides a list of data sets available for a specific vehicle.

With just basic vehicle identification by VIN or YMM, the only fields that will be valid are:

  • Decode
  • Port
  • TSB
  • Maintenance List
  • Recall
  • Warranty
To get Vehicle History Report a VIN must be provided.

For data on repair or diagnostics, submission of the mileage and dtcs are needed in addition to the vehicle information.

To check the maintenance and upcoming fields, mileage information is required. For clarity maintenance is strictly maintenance at a certain mileage, while maintenance list is the all the maintenance items for that vehicle. Maintenance requires mileage, while Maintenance List does not.

Special note regarding repair and diagnostics: These fields will only work with VIN parameter and will not work with YMM parameters.

HTTP REQUEST
GET /fields?vin=<vin>
GET /fields?vin=<vin>&mileage=<mileage>
GET /fields?vin=<vin>&mileage=<mileage>&dtc=<dtc>
GET /fields?vin=<vin>&mileage=<mileage>&unit=<unit>
GET /fields?vin=<vin>&mileage=<mileage>&dtc=<dtc>&unit=<unit>

GET /fields?year=<year>&make=<make>&model=<model>
GET /fields?year=<year>&make=<make>&model=<model>&mileage=<mileage>
GET /fields?year=<year>&make=<make>&model=<model>&mileage=<mileage>&unit=<unit>

ENDPOINT DEFINITION
GET http://api.carmd.com/v3.0/fields?vin=<vin>
GET http://api.carmd.com/v3.0/fields?year=<year>&make=<make>&model=<model>

Year, Make, Model, Engine parameter information is provided from GET Year, Make, Model, Engine endpoints.

PARAMETERS (option 1)
  • vin

    Vehicle identification number

  • mileage optional

    The odometer of this vehicle. Needed for maintenence, repair, and diagnostics fields.

  • unit optional

    The unit of odometer.

  • dtc optional

    The code of this vehicle. Needed for repair and diagnostics fields.

PARAMETERS (option 2)
  • year

    Vehicle year

  • make

    Vehicle make

  • model

    Vehicle model

  • mileage optional

    The odometer of this vehicle. Needed for maintenence, repair, and diagnostics fields.

  • unit optional

    The unit of odometer.

API Reference
ENDPOINT
http://api.carmd.com/v3.0/fields?vin=1GNALDEK9FZ108495
http://api.carmd.com/v3.0/fields?year=2015&make=CHEVROLET&model=EQUINOX
http://api.carmd.com/v3.0/fields?year=2015&make=CHEVROLET&model=EQUINOX&mileage=82000&unit=km
REQUEST
{
  "vin":"1GNALDEK9FZ108495"
}
{
  "year":"2015",
  "make":"CHEVROLET",
  "model":"EQUINOX"
}
{
  "year":"2015",
  "make":"CHEVROLET",
  "model":"EQUINOX",
  "mileage":82000,
  "unit":"km"
}
RESPONSE
{
  "message":{...},
  "data":{
    "decode":true,
    "port":true,
    "maint":false,
    "maintlist":true,
    "repair":false,
    "diag":false,
    "upcoming":false,
    "tsb":true,
    "recall":true,
    "warranty":false,
    "vehicle_history_report":true
  }
}
API Reference
ENDPOINT
http://api.carmd.com/v3.0/fields?vin=19XFA1F87AE030552&mileage=80500&dtc=P0102&unit=km
REQUEST
{
  "vin":"19XFA1F87AE030552",
  "mileage":80500,
  "dtc":"P0102",
  "unit":"km",
}
RESPONSE
{
  "message":{...},
  "data":{
    "decode":true,
    "port":true,
    "maint":true,
    "maintlist":true,
    "repair":true,
    "diag":true,
    "upcoming":true,
    "tsb":true,
    "recall":true,
    "warranty":true,
    "vehicle_history_report":true
  }
}

GET VIN Decode

Decodes a VIN to its year, make, model, and engine. Covers vehicles from 1981 to current year.

This endpoint provides the following data:

  • Year
  • Make
  • Model
  • Manufacturer
  • Engine
  • Trim
  • Transmission

HTTP REQUEST
GET /decode?vin=<vin>

ENDPOINT DEFINITION
GET http://api.carmd.com/v3.0/decode?vin=<vin>

PARAMETERS (option 1)
  • vin

    Vehicle identification number

API Reference
ENDPOINT
http://api.carmd.com/v3.0/decode?vin=1GNALDEK9FZ108495
REQUEST
{
  "vin":"1GNALDEK9FZ108495"
}
RESPONSE
{
  "message":{...},
  "data":{
    "year":2015,
    "make":"CHEVROLET",
    "model":"EQUINOX",
    "manufacturer": "GENERAL MOTORS",
    "engine":" L4, 2.4L; DOHC; 16V; DI; FFV",
    "trim": "LTZ",
    "transmission": "AUTOMATIC"
  }
}

GET VIN Decode More

Decodes VIN into 30+ additional fields.

HTTP REQUEST
GET /decode_more?vin=<vin>

ENDPOINT DEFINITION
GET http://api.carmd.com/v3.0/decode_more?vin=<vin>

PARAMETERS (option 1)
  • vin

    Vehicle identification number

RESPONSE DEFINITION
  • battery_kw

    The measure of total battery power expressed in kilowatts. For example: 71KW, 85KW, 75KW, 67KW.

  • battery_type

    A value that identifies the kind of battery in the vehicle. For example: PbA - Lead Acid,NMH - Nickel Metal Hydride.

  • battery_type_desc

    The description of the code for the Battery Type Code. For example:PbA - Lead Acid,NMH - Nickel Metal Hydride.

  • battery_voltage_desc

    The voltage rating of the battery as provided by the manufactuer.

  • body_style

    A code that describes the body style of the vehicle. For example, CP=Coupe.

  • body_style_desc

    The description of the code Body Style Code For example: Coupe

  • door_cnt

    The number of doors the vehicle has.

  • drive_type

    (Drive Type) This element describes type of driving configuration for cars and trucks such as FWD, AWD, RWD.

  • drive_type_desc

    (Drive Type) description

  • engine_has_supercharger

    Indicates if the engine has a supercharger or not. Yes, No or Unknown.

  • engine_has_turbocharger

    Indicates if the engine has a turbocharger. Yes, No or Unknown.

  • engine_has_variable_valve_timing

    Indicates whether a vehicle has Variable Valve Timing.  Yes, No or Unknown.

  • engine_block_type

    (Block Type) Description

  • engine_carbureted_barrel_cnt

    The number of barrels on a carbureted engine.

  • engine_carbureted_type

    The description of the code which identifies the vehicle carburetion type. For example Carburator, Fuel Injection, Unknown or Electric n/a.

  • engine_cylinder_cnt

    Contains a code that represents the number of cylinders a vehicle's combustion engine can have.

  • engine_displacement_cubic_cm

    (Displacement CC) displacement in cubic centimeters. We intend to use this as the definitive, exact diplacement value, i.e. 4967 cc.

  • engine_displacement_cubic_inches

    (Displacement CID) displacement in cubic inches. This is a rounded, marketing value, like 302 cubic inches, instead of 4967 cc.

  • engine_displacement_cubic_liters

    (Displacement Liters) displacement in rounded Liters, where 1,000 cubic centimeters = 1 liter. Even domestic makes will advertise displacement in terms of liters (e.g. 5.0 liter mustang, which equates to a 302 CID or 4967 cc displacement).

  • engine_fuel_injection

    The type of fuel injection used by a vehicle. For example, Direct, Throttlebody

  • engine_model

    (Model) description

  • engine_manufacturer

    (Mfr.) description

  • fuel_cpcty_gallons

    The total fuel capacity (in gallons) for the vehicle with standard equipment as reported by the OEM. The Fuel Capacity measurement does not include optional second fuel tanks for trucks

  • fuel_type

    (Fuel) What an internal combustion burns to move a piston in a cylinder

  • tire_front_desc

    more specific tire description (ex. Michelin Eagle P245/40ZR)”

  • tire_front_pressure_lbs

    (Front Tire Pressure) Vehicle Mfr reccomendation for tire pressure, in pounds/sq. in.

  • tire_front_size

    (Front Tire Size Description) As in "17R245"

  • make

    (Make - Name) Full name of the make (i.e. Chevrolet)

  • model

    (Model Code) description

  • year

    The marketing year defined by the OEM which the vehicle was produced. The value contained in this attribute may not always match the calendar year in which the vehicle was actually manufactured. Many OEMs release models prior to calendar year.

  • mfg_base_msrp

    Contains the base price of the vehicle as designated by the OEM's specifications. BASE PRICE includes only the price for the base model of the vehicle, excluding any optional equipment that may have been added as a result of the vehicle's TRIM LEVEL.

  • manufacturer

    (Vehicle Manufacturer Name) The name of the vehicle manufacturer, i.e. General Motors, as defined by the National Crime Information Center.

  • origin_desc

    (Origin) description

  • plant_city_name

    (City) This is the city where the plant is located.

  • plant_country_name

    (Country) This is the country where the plant is located. Example values are USA, Canada and Japan.

  • plant_location_name

    (State or Province) This is the state or province (Canada) location of the plant.

  • tire_rear_desc

    more specific tire description (ex. Michelin Eagle P245/40ZR)”

  • tire_rear_recommended_pressure

    (Rear Tire Pressure) Vehicle Mfr reccomendation for tire pressure, in pounds/sq. in.

  • tire_rear_size

    (Rear Tire Size Description) As in "17R245"

  • weight_base

    Contains the base weight of the vehicle, as defined in the OEM's specifications. The base weight of a vehicle is the empty weight of the base model of the vehicle (i.e., the stripped down version of the vehicle).

  • trim

    The Trim of the vehicle

  • trk_bed_length_code

    (Bed Length) Code representing the manufacturer's description of the relative size of the cargo area of a pickup truck or van. A "long" Ford Ranger bed (compact pickup) may well be shorter than a "short" bed on an F350. (large industrial pickup).

  • trk_bed_length_desc

    (Bed Length) description

  • trk_brk_code

    (Brake Type) The type of brakes on the Vehicle (currently commercial truck only). Truck VIN determines this currently

  • trk_brk_desc

    (Brake Type) description

  • trk_cab_code

    (Cab Configuration) Cab Type describes the physical configuration of a truck's cabin.

  • trk_cab_desc

    (Cab Configuration) medium description

  • wheel_end_cnt

    The number of wheel ends on the vehicle. For example in a 6x4 configuration this would be the 6.

  • wheel_powertrain_cnt

    Number of wheels driven by the power train. For example in a 6x4 configuration this would be the 4.

  • vehicle_type

    The description of the code for the vehicle type code. For example: passenger, truck, motorcycle, commercial trailer.

  • transmission

    Provides transmission type of the vehicle

API Reference
ENDPOINT
http://api.carmd.com/v3.0/decode_more?vin=1GNALDEK9FZ108495
REQUEST
{
  "vin":"1GNALDEK9FZ108495"
}
RESPONSE

{
    "message":{...},
    "data":{
        "battery_kw": "",
        "battery_type": "N/A",
        "battery_type_desc": "Not Applicable",
        "battery_voltage_desc": "",
        "body_style": "UT",
        "body_style_desc": "SPORT UTILITY VEHICLE",
        "door_cnt": "4",
        "drive_type": "FWD",
        "drive_type_desc": "Front Wheel Drive",
        "engine_has_supercharger": "No",
        "engine_has_turbocharger": "No",
        "engine_has_variable_valve_timing": "Yes",
        "engine_block_type": "In-Line",
        "engine_carbureted_barrel_cnt": "NA",
        "engine_carbureted_type": "Fuel Injection",
        "engine_cylinder_cnt": "4",
        "engine_displacement_cubic_cm": "",
        "engine_displacement_cubic_inches": "146",
        "engine_displacement_cubic_liters": "2.4",
        "engine_fuel_injection": "Direct",
        "engine_model": "2.4L",
        "engine_manufacturer": "GENERAL MOTORS",
        "tire_front_desc": "",
        "tire_front_pressure_lbs": "",
        "tire_front_size": "17R225",
        "make": "CHEVROLET",
        "model": "EQUINOX",
        "year": "2015",
        "mfg_base_msrp": "31920",
        "manufacturer": "General Motors",
        "origin_desc": "Domestic",
        "plant_city_name": "SPRING HILL",
        "plant_country_name": "United States",
        "plant_location_name": "TENNESSEE",
        "tire_rear_desc": "",
        "tire_rear_recommended_pressure": "",
        "tire_rear_size": "17R225",
        "weight_base": "3829",
        "trim": "LTZ",
        "trk_bed_length_code": "U",
        "trk_bed_length_desc": "Unknown",
        "trk_brk_code": "HYD",
        "trk_brk_desc": "HYDRAULIC",
        "trk_cab_code": "SUV",
        "trk_cab_desc": "Sport Utility",
        "wheel_end_cnt": "4",
        "wheel_powertrain_cnt": "2",
        "fuel_cpcty_gallons": "18.8",
        "vehicle_type": "Truck",
        "fuel_type": "Flexible",
        "transmission": "AUTOMATIC"
    }
}

GET OBD2 Port Location

Provides the OBD2 port location where one would plug in a dongle into their vehicle. This API provides an image location for the general area of the plugin location as well as a detailed real-life image of the plug itself.

View this API in action, https://www.carmd.com/wp/locating-the-obd2-port-or-dlc-locator/

This endpoint provides the following data:

  • Url to image containing location of port
  • Number value to location of port
  • Url to image of real life image of port
  • Access notes mentioning if the port is covered or uncovered, if special access is necessary, etc

HTTP REQUEST
GET /port?vin=<vin>
GET /port?year=<year>&make=<make>&model=<model>

ENDPOINT DEFINITION
GET http://api.carmd.com/v3.0/port?vin=<vin>
GET http://api.carmd.com/v3.0/port?year=<year>&make=<make>&model=<model>

Year, Make, Model, Engine parameter information is provided from GET Year, Make, Model, Engine endpoints.

PARAMETERS (option 1)
  • vin

    Vehicle identification number

PARAMETERS (option 2)
  • year

    Vehicle year

  • make

    Vehicle make

  • model

    Vehicle model

API Reference
ENDPOINT
http://api.carmd.com/v3.0/port?vin=1GNALDEK9FZ108495
http://api.carmd.com/v3.0/port?year=2015&make=CHEVROLET&model=EQUINOX
REQUEST
{
  "vin":"1GNALDEK9FZ108495"
}
{
  "year":"2015",
  "make":"CHEVROLET",
  "model":"EQUINOX"
}
RESPONSE
{
  "message":{...},
  "data":{
    "location_img": "http://api2.carmd.com/v2.0/Content/dlc/position/2.jpg"
    "location_value":2,
    "access_img":"https://secure-downloads.innova.com/dlc-location-images-wm/chevrolet/equinox/equinox-2-cmd.jpg?Expires=1529947955&Signature=YdnADor-AWZ6cIydvBLJNWuAc9Wi4axsmx1kmmgc3Wb~OZafjgRPpO7X1w0rbZm-BSh4a3byoAOmucKIVbrZoClcHrV0QZ6b58hum9w005Q-0YbUwcfentrcOkrT5VXM1sL-xe3~s-egf18TUciCX8oZBGh5RyLa9SFprEb74vfu9fpLpBxzqAN4n6mV2~z0WTfVjTVWPEVjoNEro2ro4EMP7LjpkKRf8KCGsTexCNkVh1P3MzvZcpDUV9TE9dfbltanvv9fVt9g12qU7GfoCTEZTCOnlkfUzaFTAcHOdnrQCDEp5m8ZVlAFrh104X4xHqWMZ3HnDySWoArAbnvpyA__&Key-Pair-Id=APKAJVI4C2YLKAQ7KO6A",
    "access_notes":"uncovered",
    "notes":"Driver Side - Under Lower Left Side of Dashboard"
  }
}

GET Maintenance

Gets a vehicle's maintenance information within +-10,000 miles of the submitted mileage. The maintenance is both OEM scheduled maintenance and additional maintenance items that may not be part of an OEM's regular schedule. Can use VIN or year, make, mile to fetch the data.

This endpoint provides the following data:

  • Name of item
  • Due mileage
  • Cost of repair
  • Parts needed for repair

HTTP REQUEST
GET /maint?vin=<vin>&mileage=<mileage>
GET /maint?year=<year>&make=<make>&model=<model>&mileage=<mileage>
GET /maint?vin=<vin>&mileage=<mileage>&unit=<unit>
GET /maint?year=<year>&make=<make>&model=<model>&mileage=<mileage>&unit=<unit>

ENDPOINT DEFINITION
GET http://api.carmd.com/v3.0/maint?vin=<vin>&mileage=<mileage>
GET http://api.carmd.com/v3.0/maint?year=<year>&make=<make>&model=<model>&mileage=<mileage>
GET http://api.carmd.com/v3.0/maint?vin=<vin>&mileage=<mileage>&unit=<unit>
GET http://api.carmd.com/v3.0/maint?year=<year>&make=<make>&model=<model>&mileage=<mileage>&unit=<unit>

Year, Make, Model, Engine parameter information is provided from GET Year, Make, Model, Engine endpoints.

PARAMETERS (option 1)
  • vin

    Vehicle identification number

  • mileage

    Miles driven by this vehicle.

  • unit optional

    The unit of odometer.

PARAMETERS (option 2)
  • year

    Vehicle year

  • make

    Vehicle make

  • model

    Vehicle model

  • mileage

    Miles driven by this vehicle.

  • unit optional

    The unit of odometer.

API Reference
ENDPOINT
http://api.carmd.com/v3.0/maint?vin=1GNALDEK9FZ108495&mileage=51000
http://api.carmd.com/v3.0/maint?year=2015&make=CHEVROLET&model=EQUINOX&mileage=51000
http://api.carmd.com/v3.0/maint?year=2015&make=CHEVROLET&model=EQUINOX&mileage=82000&unit=km
REQUEST
{
  "vin":"1GNALDEK9FZ108495",
  "mileage":51000
}
{
  "year":"2015",
  "make":"CHEVROLET",
  "model":"EQUINOX",
  "mileage":51000
}
{
  "year":"2015",
  "make":"CHEVROLET",
  "model":"EQUINOX",
  "mileage":82000,
  "unit":"km"
}
RESPONSE
{
  "message":{...},
  "data":[{
    "desc":"Inspect For Fluid Leaks",
    "due_mileage":52500,
    "due_km":0,
    "is_oem":True,
    "repair":{
      "repair_difficulty":2,
      "repair_hours":0.0,
      "labor_rate_per_hour":106.38,
      "part_cost":6.15,
      "labor_cost":0.0,      
      "misc_cost":0.0,
      "total_cost":6.15
    },
    "parts":[{
      "desc":"Engine Oil",
      "manufacturer":"",
      "price":"6.15",
      "qty":"1"
    }]
  },
  {...}]
}

GET Maintenance List

Get the entire maintenace schedule of a vehicle. The maintenance is both OEM scheduled maintenance and additional maintenance items that may not be part of an OEM's regular schedule. Can use VIN or year to fetch the data.

This endpoint provides the following data:

  • Name of item
  • Due mileage
  • Miles between each recurrance
  • Cost of repair
  • Parts needed for repair

HTTP REQUEST
GET /maintlist?vin=<vin>
GET /maintlist?vin=<vin>&unit=<unit>
GET /maintlist?year=<year>&make=<make>&model=<model>
GET /maintlist?year=<year>&make=<make>&model=<model>&unit=<unit>

ENDPOINT DEFINITION
GET http://api.carmd.com/v3.0/maintlist?vin=<vin>
GET http://api.carmd.com/v3.0/maintlist?vin=<vin>&unit=<unit>
GET http://api.carmd.com/v3.0/maintlist?year=<year>&make=<make>&model=<model>
GET http://api.carmd.com/v3.0/maintlist?year=<year>&make=<make>&model=<model>&unit=<unit>

Year, Make, Model, Engine parameter information is provided from GET Year, Make, Model, Engine endpoints.

PARAMETERS (option 1)
  • vin

    Vehicle identification number

  • unit optional

    The unit of odometer.

PARAMETERS (option 2)
  • year

    Vehicle year

  • make

    Vehicle make

  • model

    Vehicle model

  • unit optional

    The unit of odometer.

RESPONSE
  • is_oem

    If true, this item is part of the OEM's recommended scheduled maintenance. Your user would be able to find this item in their vehicle handbook.

    If false, this item is not part of the OEM's recommended scheduled maintenance. It is an item that is predicted to fail and need regular maintenance. This item is not the same as Upcoming Repairs.

  • is_cycle

    If true, this item has a regular mileage interval of maintenance.

    If false, this item is a one off maintenance item or has an irregular maintenance schedule.

  • cycle_mileage

    If is_cycle is true, this will provide this item's recurrence in miles.

    If is_cycle is false, this value will be -1

API Reference
ENDPOINT
http://api.carmd.com/v3.0/maintlist?vin=1GNALDEK9FZ108495
http://api.carmd.com/v3.0/maintlist?year=2015&make=CHEVROLET&model=EQUINOX
http://api.carmd.com/v3.0/maintlist?year=2015&make=CHEVROLET&model=EQUINOX&unit=km
REQUEST
{
  "vin":"1GNALDEK9FZ108495"
}
{
  "year":"2015",
  "make":"CHEVROLET",
  "model":"EQUINOX"
}
{
  "year":"2015",
  "make":"CHEVROLET",
  "model":"EQUINOX",
  "unit":"km"
}
RESPONSE
{
  "message":{...},
  "data":[{
    "desc": "Inspect Steering & Suspension Components",
    "due_mileage": 7500,
    "due_km": 0,
    "is_oem": true,
    "is_cycle": true,
    "cycle_mileage": 7500,
    "cycle_km": 0,
    "repair": {
      "repair_difficulty": 2,
      "repair_hours": 0,
      "labor_rate_per_hour": 101.44,
      "part_cost": 166.51,
      "labor_cost": 0,
      "misc_cost": 0,
      "total_cost": 166.51
    },
    "parts": [{
      "desc": "Steering Tie Rod End",
      "manufacturer": "",
      "price": 108.03,
      "qty": 1
    },{
      "desc": "Steering Tie Rod End",
      "manufacturer": "",
      "price": 58.48,
      "qty": 1
    }]
  },
  {...}]
}

GET Code Definition

Get a vehicle’s fault code definition. This service covers SAE public standard codes and OEM non-standard codes.

This means that this API will define codes that start with p0, and includes definition codes that start with p1 or B, C, U and all other codes that are manufacturer specific.

This API accepts an array of fault codes as input and provides the following data:

  • Fault code definition

HTTP REQUEST
GET /code?vin=<vin>&codes=<code1,code2,code3...>
GET /code?vin=<vin>&codes=<code1>
GET /code?make=<make>&codes=<code1,code2,code3...>

ENDPOINT DEFINITION
GET http://api.carmd.com/v3.0/code?vin=<vin>&codes=<code1,code2,code3...>
GET http://api.carmd.com/v3.0/code?make=<make>&codes=<code1,code2,code3...>

PARAMETERS
  • vin

    Vehicle identification number

  • make

    manufacturer - please make sure your make input matches our Get Make output

  • codes

    Can either be a single code or an array of codes

API Reference
ENDPOINT
http://api.carmd.com/v3.0/code?vin=1GNALDEK9FZ108495&codes=P0420,U0155
http://api.carmd.com/v3.0/code?make=CHEVROLET&codes=P0420,U0155
REQUEST
{
  "vin":"1GNALDEK9FZ108495",
  "codes":"P0420,U0155"
}
{
  "make":"CHEVROLET",
  "codes":"P0420,U0155"
}
RESPONSE
{
  "message":{...},
  "data":{
    "vin":"1GNALDEK9FZ108495",
    "codes":[
      {
        "code": "P0420",
        "definition": "Catalyst System Low Efficiency (Bank 1)"
      },
      {
        "code": "U0155",
        "definition": "Lost Communication With Instrument Cluster"
      }
    ]
  }
}

GET Repair

Get a vehicle's repair information based on its check engine light data. This service covers SAE public standard codes and OEM non-standard codes.

This system uses a form of intelligent analysis to derive repairs and understands that a code is not tied to a specific part but may be a symptom of another underlying issue.

As a result, it will often respond with a single repair that it is 99% certain. In cases where the system is not as certain, it will respond with a few options. These options are ordered from most likely to least likely.

This endpoint provides the following data:

  • Name and urgency of repair
  • Cost of repair
  • Difficulty of repair (1=anyone can do, 5=requires technical expertise)
  • Parts needed for repair
  • TSB associated with repair

HTTP REQUEST
GET /repair?vin=<vin>&mileage=<mileage>&dtc=<dtc>
GET /repair?vin=<vin>&mileage=<mileage>&dtc=<dtc>&unit=<unit>

ENDPOINT DEFINITION
GET http://api.carmd.com/v3.0/repair?vin=<vin>&mileage=<mileage>&dtc=<dtc>
GET http://api.carmd.com/v3.0/repair?vin=<vin>&mileage=<mileage>&dtc=<dtc>&unit=<unit>

PARAMETERS
  • vin

    Vehicle identification number

  • mileage

    Miles driven by this vehicle.

  • unit optional

    The unit of odometer.

  • dtc

    The required DTC code must be the primary code presented by the vehicle. This code is part of the dataset containing the freeze frame information. If the code is found on its own or alongside other codes (a series of pcodes) then those codes are likely pending or stored codes and not the main code for the check engine light.

API Reference
ENDPOINT
http://api.carmd.com/v3.0/repair?vin=1GNALDEK9FZ108495&mileage=51000&dtc=p0420
http://api.carmd.com/v3.0/repair?vin=1GNALDEK9FZ108495&mileage=82000&dtc=p0420&unit=km
REQUEST
{
  "vin":"1GNALDEK9FZ108495",
  "mileage":51000,
  "dtc":"p0420"
}
{
  "vin":"1GNALDEK9FZ108495",
  "mileage":82000,
  "dtc":"p0420",
  "unit":"km"
}
RESPONSE
{
  "message":{...},
  "data":[{
    "desc":"Replace Catalytic Converter(s) with new OE Catalytic Converter(s),
    "urgency":2,
    "urgency_desc":"Repair immediately if drivability issues are present. Threat to essential system components if not repaired as soon as possible.",
    "repair":{
      "difficulty":3,
      "hours":2.3,
      "labor_rate_per_hour":106.38,
      "part_cost":1967.01,
      "labor_cost":244.674,
      "misc_cost":25,
      "total_cost":2236.684
    },
    "parts":[{
      "desc":"Catalytic Converter",
      "manufacturer":"",
      "price":683.67,
      "qty":"1"
    },{
      "desc":"Catalytic Converter",
      "manufacturer":"",
      "price":1283.34,
      "qty":"1"
    }],
    "tsb":[{
      "id":118676,
      "manufacturer_number":"07-00-89-037K",
      "desc":"Warranty Administration - Courtesy Transportation and Roadside Assistance Programs",
      "categories":["Tools & Hardware"]
      "file_name":"4824780",
      "file_url":"http://downloads.innova.com/tsb-files/118000/4824780.pdf",
      "issue_date":"2017-06-23T00:00:00",
      "updated_date":"2017-10-10T00:00:00"
    },{...}]
  },
  {...}]
}

GET Repair List

Get the names of the all the repairs needed by specific vehicle. This includes maintenance and check engine light repairs.

To get part and labor hours, use this API with Get Repair Info.

HTTP REQUEST
GET /repairlist?vin=<vin>
GET /repairlist?year=<year>&make=<make>&model=<model>&engine=<engine>

ENDPOINT DEFINITION
GET http://api.carmd.com/v3.0/repairlist?vin=<vin>
GET http://api.carmd.com/v3.0/repairlist?year=<year>&make=<make>&model=<model>&engine=<engine>

PARAMETERS (option 1)
  • vin

    Vehicle identification number

PARAMETERS (option 2)
  • year

    Vehicle year

  • make

    Vehicle make

  • model

    Vehicle model

  • engine

    Vehicle engine

API Reference
ENDPOINT
http://api.carmd.com/v3.0/repairlist?vin=1GNALDEK9FZ108495
http://api.carmd.com/v3.0/repairlist?year=2015&make=CHEVROLET&model=EQUINOX&engine=L4,2.4L;DOHC;16V;DI;FFV
REQUEST
{
  "vin": "1GNALDEK9FZ108495"
}
{
  "year": "2015",
  "make": "CHEVROLET",
  "model": "EQUINOX",
  "engine": "L4,2.4L;DOHC;16V;DI;FFV"
}
RESPONSE
{
  "message": "...",
  "repairlist": [
    {
      "item": "Change Engine Oil and Filter",
      "is_maint": true,
      "is_oem": false,
      "repair_code": "c799346520d2-750010Y"
    },
    {
      "item": "Change Transfer Case Fluid",
      "is_maint": true,
      "is_oem": false,
      "repair_code": "409b562d49ed-9750010Y"
    },
    {...}]
}

GET Repair Info

Get repair info of a specific repair using the repair_code from Get Repair List api.

Using this API you will get:

  • Parts needed for repair
  • Labor hours needed for repair

HTTP REQUEST
GET /repairinfo?repair_code=<repair_code>

ENDPOINT DEFINITION
GET http://api.carmd.com/v3.0/repairinfo?repair_code=<repair_code>

PARAMETERS
  • repair_code

    Use code from Get Repair List here

API Reference
ENDPOINT
http://api.carmd.com/v3.0/repairinfo?repair_code=e11952e29c7c-6000010Y
REQUEST
{
  "repair_code": "e11952e29c7c-6000010Y"
}
RESPONSE
{
  "message": "...",
  "repairinfo": [
    {
      "repair_code": "e11952e29c7c-6000010Y",
      "desc": "Change Engine Coolant",
      "is_oem": false,
      "repair": {
        "repair_difficulty": 2,
        "repair_hours": 0.7,
        "labor_rate_per_hour": 101.44,
        "part_cost": 72.45,
        "labor_cost": 71.0,
        "misc_cost": 25.0,
        "total_cost": 168.45
      },
      "parts": [
        {
          "desc": "Engine Coolant / Antifreeze",
          "manufacturer": "",
          "price": 24.15,
          "qty": 3
        }
      ]
    }
  ]
}

GET Diagnostics

Get a vehicle's diagnostic information based on its check engine light data. This service covers SAE public standard codes and some OEM non-standard powertrain codes.

This endpoint contains information a consumer may find useful. This data is prefixed by “layman”. Additional information that may be useful for the more technically inclined is prefixed by “tech”.

This endpoint provides the following data:

  • Name and urgency of repair
  • Effects on vehicle if code is not resolved
  • System responsible for issuing this code
  • Layman’s version of the code definition, conditions for setting of the code, and importance of this code

HTTP REQUEST
GET /diag?vin=<vin>&mileage=<mileage>&dtc=<dtc>
GET /diag?vin=<vin>&mileage=<mileage>&dtc=<dtc>&unit=<unit>

ENDPOINT DEFINITION
GET http://api.carmd.com/v3.0/diag?vin=<vin>&mileage=<mileage>&dtc=<dtc>
GET http://api.carmd.com/v3.0/diag?vin=<vin>&mileage=<mileage>&dtc=<dtc>&unit=<unit>

PARAMETERS
  • vin

    Vehicle identification number

  • mileage

    Miles driven by this vehicle.

  • unit optional

    The unit of odometer.

  • dtc

    Primary diagnostic trouble code.

API Reference
ENDPOINT

http://api.carmd.com/v3.0/diag?vin=1GNALDEK9FZ108495&mileage=51000&dtc=p0420

http://api.carmd.com/v3.0/diag?vin=1GNALDEK9FZ108495&mileage=82000&dtc=p0420&unit=km
REQUEST
{
  "vin":"1GNALDEK9FZ108495",
  "mileage":51000,
  "dtc":"p0420"
}
{
  "vin":"1GNALDEK9FZ108495",
  "mileage":82000,
  "dtc":"p0420",
  "unit":"km"
}
RESPONSE
{
  "message":{...},
  "data":{
    "code":"P0420",
    "urgency":2,
    "urgency_desc":"Repair immediately if drivability issues are present. Threat to essential system components if not repaired as soon as possible.",
    "effect_on_vehicle":"This condition will prevent the vehicle from running at its optimum efficiency and fuel economy may suffer.",
    "responsible_system":"Sensors indicate the catalytic converter is not reducing exhaust gas emissions properly.",
    "layman_definition":"Catalyst System Efficiency Below Threshold (Bank 1)",
    "tech_definition":"Catalyst System Low Efficiency (Bank 1)",
  }
}

GET Upcoming Repairs

Provides insight into issues that this vehicle may experience in the next 12 months.

This endpoint provides the following data:

  • Repair name of this issue
  • Likelihood of this issue occurring
  • Cost of repair
  • Repair difficulty

HTTP REQUEST
GET /upcoming?vin=<vin>&mileage=<mileage>
GET /upcoming?vin=<vin>&mileage=<mileage>&unit=<unit>
GET /upcoming?year=<year>&make=<make>&model=<model>&mileage=<mileage>
GET /upcoming?year=<year>&make=<make>&model=<model>&mileage=<mileage>&unit=<unit>

ENDPOINT DEFINITION
GET http://api.carmd.com/v3.0/upcoming?vin=<vin>&mileage=<mileage>
GET http://api.carmd.com/v3.0/upcoming?vin=<vin>&mileage=<mileage>&unit=<unit>
GET http://api.carmd.com/v3.0/upcoming?year=<year>&make=<make>&model=<model>&mileage=<mileage>
GET http://api.carmd.com/v3.0/upcoming?year=<year>&make=<make>&model=<model>&mileage=<mileage>&unit=<unit>

Year, Make, Model, Engine parameter information is provided from GET Year, Make, Model, Engine endpoints.

PARAMETERS (option 1)
  • vin

    Vehicle identification number

  • mileage

    Miles driven by this vehicle.

  • unit optional

    The unit of odometer.

PARAMETERS (option 2)
  • year

    Vehicle year

  • make

    Vehicle make

  • model

    Vehicle model

  • mileage

    Miles driven by this vehicle.

  • unit optional

    The unit of odometer.

API Reference
ENDPOINT
http://api.carmd.com/v3.0/upcoming?vin=1GNALDEK9FZ108495&mileage=51000
http://api.carmd.com/v3.0/upcoming?year=2015&make=CHEVROLET&model=EQUINOX&mileage=51000
http://api.carmd.com/v3.0/upcoming?year=2015&make=CHEVROLET&model=EQUINOX&mileage=82000&unit=km
REQUEST
{
  "vin":"1GNALDEK9FZ108495",
  "mileage":51000
}
{
  "year":"2015",
  "make":"CHEVROLET",
  "model":"EQUINOX",
  "mileage":51000  
}
{
  "year":"2015",
  "make":"CHEVROLET",
  "model":"EQUINOX",
  "mileage":82000,
  "unit":"km"
}
RESPONSE
{
  "message":{...},
  "data":[{
    "desc":"Replace Camshaft Position (CMP) Actuator Solenoid",
    "probability":0.57,
    "hours":1.96,
    "part_cost":144.18,
    "labor_cost":208.9,
    "misc_cost":25.0,
    "total_cost":378.09
  },  {
    "desc":"Replace Variable Valve Timing (VVT) Solenoid",
    "probability":0.19,
    "hours":0.6,
    "part_cost":58.21,
    "labor_cost":63.82,
    "misc_cost":25.0,
    "total_cost":147.03
  },{...}]
}

GET TSB

Provides a vehicle's technical service bulletins. Bulletins include a summary and PDF and are segmented into categories.

This endpoint provides the following data:

  • TSB Name
  • TSB summary
  • TSB PDF

HTTP REQUEST
GET /tsb?vin=<vin>
GET /tsb?year=<year>&make=<make>&model=<model>&engine=<engine>

ENDPOINT DEFINITION
GET http://api.carmd.com/v3.0/tsb?vin=<vin>
GET http://api.carmd.com/v3.0/tsb?year=<year>&make=<make>&model=<model>&engine=<engine>

Year, Make, Model, Engine parameter information is provided from GET Year, Make, Model, Engine endpoints.

PARAMETERS (option 1)
  • vin

    Vehicle identification number

PARAMETERS (option 2)
  • year

    Vehicle year

  • make

    Vehicle make

  • model

    Vehicle model

  • engine

    Vehicle engine

API Reference
ENDPOINT
http://api.carmd.com/v3.0/tsb?vin=1GNALDEK9FZ108495
http://api.carmd.com/v3.0/tsb?year=2015&make=CHEVROLET&model=EQUINOX&engine=L4,2.4L;DOHC;16V;DI;FFV
REQUEST
{
  "vin":"1GNALDEK9FZ108495"
}
{
  "year":"2015",
  "make":"CHEVROLET",
  "model":"EQUINOX",
  "engine":"L4,2.4L;DOHC;16V;DI;FFV"
}
RESPONSE
{
  "message":{...},
  "data":[{
    "id":118676,
    "manufacturer_number":"07-00-89-037K",
    "desc":"Warranty Administration - Courtesy Transportation and Roadside Assistance Programs",
    "categories":["Tools & Hardware"]
    "file_name":"4824780",
    "file_url":"http://downloads.innova.com/tsb-files/118000/4824780.pdf",
    "issue_date":"2017-06-23T00:00:00",
    "updated_date":"2017-10-10T00:00:00"
  },{
    "id":118672,
    "manufacturer_number":"15086A",
    "desc":"Customer Satisfaction - OnStar System Inoperative - Chip Corruption",
    "categories":["Recall"]
    "file_name":"4828709",
    "file_url":"http://downloads.innova.com/tsb-files/118000/4828709.pdf",
    "issue_date":"2017-06-22T00:00:00",
    "updated_date":"2017-10-10T00:00:00"
  },{...}] 
}  

GET Safety Recalls

Provides the safety recalls on a vehicle.

This endpoint provides the following data:

  • Description and information on the safety recall
  • Date recall was issued

HTTP REQUEST
GET /recall?vin=<vin>
GET /recall?year=<year>&make=<make>&model=<model>

ENDPOINT DEFINITION
GET http://api.carmd.com/v3.0/recall?vin=<vin>
GET http://api.carmd.com/v3.0/recall?year=<year>&make=<make>&model=<model>

Year, Make, Model, Engine parameter information is provided from GET Year, Make, Model, Engine endpoints.

PARAMETERS (option 1)
  • vin

    Vehicle identification number

PARAMETERS (option 2)
  • year

    Vehicle year

  • make

    Vehicle make

  • model

    Vehicle model

API Reference
ENDPOINT
http://api.carmd.com/v3.0/recall?vin=1GNALDEK9FZ108495
http://api.carmd.com/v3.0/recall?year=2015&make=CHEVROLET&model=EQUINOX
REQUEST
{
  "vin":"1GNALDEK9FZ108495"
}
{
  "year":"2015",
  "make":"CHEVROLET",
  "model":"EQUINOX"
}
RESPONSE
{
  "message":{...},
  "data":[{
    "desc":""GENERAL MOTORS LLC (GM) IS RECALLING CERTAIN MODEL YEAR 2015 BUICK LACROSSE, CADILLAC XTS, CHEVROLET CAMARO, EQUINOX, MALIBU, AND GMC TERRAIN VEHICLES.  THE AFFECTED VEHICLES HAVE FRONT SEAT-MOUNTED SIDE IMPACT AIR BAGS WHOSE INFLATOR MAY RUPTURE UPON ITS DEPLOYMENT.",
    "corrective_action":" GM WILL NOTIFY OWNERS, AND DEALERS WILL REPLACE THE SIDE IMPACT AIR BAG MODULES, FREE OF CHARGE. THE RECALL BEGAN ON OCTOBER 19, 2015.  OWNERS MAY CONTACT BUICK CUSTOMER SERVICE AT 1-800-521-7300, CHEVROLET CUSTOMER SERVICE AT 1-800-222-1020, CADILLAC CUSTOMER SERVICE AT 1-800-458-8006, OR GMC CUSTOMER SERVICE AT 1-800-462-8782.  GM'S NUMBER FOR THIS RECALL IS 01320.",
    "consequence":""IN THE EVENT OF A CRASH NECESSITATING DEPLOYMENT OF ONE OR BOTH OF THE SIDE IMPACT AIR BAGS, THE AIR BAG'S INFLATOR MAY RUPTURE AND THE AIR BAG MAY NOT PROPERLY INFLATE. THE RUPTURE COULD CAUSE METAL FRAGMENTS TO STRIKE THE VEHICLE OCCUPANTS, POTENTIALLY RESULTING IN SERIOUS INJURY OR DEATH.  ADDITIONALLY, IF THE AIR BAG DOES NOT PROPERLY INFLATE, THE DRIVER OR PASSENGER IS AT AN INCREASED RISK OF INJURY.",
    "recall_date":"1/16/2015",
    "campaign_number":"15V666000",
    "recall_number":"17668"
  },
  {...}]
}

GET Vehicle Warranty

Provides the warranty status on a vehicle.

This endpoint provides the following data:

  • Warranty name
  • Warranty description
  • Warranty qualitifications/limits
  • If warranty is transferable between owners.

HTTP REQUEST
GET /warranty?vin=<vin>
GET /warranty?year=<year>&make=<make>&model=<model>

ENDPOINT DEFINITION
GET http://api.carmd.com/v3.0/warranty?vin=<vin>
GET http://api.carmd.com/v3.0/warranty?year=<year>&make=<make>&model=<model>

Year, Make, Model, Engine parameter information is provided from GET Year, Make, Model, Engine endpoints.

PARAMETERS (option 1)
  • vin

    Vehicle identification number

PARAMETERS (option 2)
  • year

    Vehicle year

  • make

    Vehicle make

  • model

    Vehicle model

API Reference
ENDPOINT
http://api.carmd.com/v3.0/warranty?vin=1GNALDEK9FZ108495
http://api.carmd.com/v3.0/warranty?year=2015&make=CHEVROLET&model=EQUINOX
REQUEST
{
  "vin":"1GNALDEK9FZ108495"
}
{
  "year":"2015",
  "make":"CHEVROLET",
  "model":"EQUINOX"
}
RESPONSE
{
  "message":{...},
  "data":[{
    "type":"Electric/Hybrid",
    "criteria":"8 year / 100,000 miles ",
    "note":" Battery components only ",
    "max_miles":100000,
    "max_year ":8,
    "transferable":true
  },{
    "type":"Basic",
    "criteria":"3 year / 36,000 miles",
    "note":"",
    "max_miles":36000,
    "max_year ":3,
    "transferable":true
  },{...}]
}

GET Vehicle Image

Provides an image of the vehicle.

Note: Although this endpoint accepts a VIN the provided resource will be a generic image of that year make and model.

HTTP REQUEST
GET /image?vin=<vin>
GET /image?year=<year>&make=<make>&model=<model>&engine=<engine>

ENDPOINT DEFINITION
GET http://api.carmd.com/v3.0/image?vin=<vin>
GET http://api.carmd.com/v3.0/image?year=<year>&make=<make>&model=<model>&engine=<engine>

PARAMETERS (option 1)
  • vin

    Vehicle identification number

PARAMETERS (option 2)
  • year

    Vehicle year

  • make

    Vehicle make

  • model

    Vehicle model

  • engine

    Vehicle engine

API Reference
ENDPOINT
http://api.carmd.com/v3.0/image?vin=5TFEV54198X043410
http://api.carmd.com/v3.0/image?year=2015&make=CHEVROLET&model=EQUINOX&engine=L4, 2.4L; DOHC; 16V; DI; FFV
REQUEST
{
  "vin":"5TFEV54198X043410"
}
{
  "year":"2015",
  "make":"CHEVROLET",
  "model":"EQUINOX",
  "engine":"L4, 2.4L; DOHC; 16V; DI; FFV"
}
RESPONSE
{
  "message":{...},
  "data":[{
    "image":"image_of_vehicle_here"
  }]
}

GET Vehicle History Report

Provides link to a PDF with vehicle history information.

This link will expire, it is recommended the PDF is downloaded and sent to the end user for their records.

This endpoint provides the following data:

  • Link to PDF of Vehicle History Report

HTTP REQUEST
GET /vhr?vin=<vin>

ENDPOINT DEFINITION
GET http://api.carmd.com/v3.0/vhr?vin=<vin>

PARAMETERS
  • vin

    Vehicle identification number

API Reference
ENDPOINT
http://api.carmd.com/v3.0/vhr?vin=1GNALDEK9FZ108495
REQUEST
{
  "vin":"1GNALDEK9FZ108495"
}
RESPONSE
{
  "message":{...},
  "data":[{
    "pdf": "http://api.carmd.com/v3.0/VehicleHistoryReport/VR_1GNALDEK9FZ108495.pdf"
  }]
}

GET Year, Make, Model, Engine

This endpoint can be used to assist users to determining their year, make, model, and engine as an alternative to using their VINs.

HTTP REQUEST
GET /year
GET /make?year=<year>
GET /model?year=<year>&make=<make>
GET /engine?year=<year>&make=<make>&model=<model>

ENDPOINT DEFINITION
GET http://api.carmd.com/v3.0/year
GET http://api.carmd.com/v3.0/make?year=<year>
GET http://api.carmd.com/v3.0/model?year=<year>&make=<make>
GET http://api.carmd.com/v3.0/engine?year=<year>&make=<make>&model=<model>

YEAR PARAMETERS
  • None

    There are no parameters for the year endpoint

MAKE PARAMETERS
  • Year

    Int. This parameter only takes the years provided by the /year endpoint.

MODEL PARAMETERS
  • Year

    Int. This parameter only takes the years provided by the /year endpoint.

  • Make

    String. This parameter only takes the makes provided by the /make endpoint.

ENGINE PARAMETERS
  • Year

    Int. This parameter only takes the years provided by the /year endpoint.

  • Make

    String. This parameter only takes the makes provided by the /make endpoint.

  • Model

    String. This parameter only takes the models provided by the /model endpoint.

GET Year API Reference
ENDPOINT
http://api.carmd.com/v3.0/year
REQUEST
{}
RESPONSE
{
  "message":{...},
  "data":[ "2018", "2017", "2016", "2015", "2014", "2013", "2012", "2011", "2010", "2009", "2008", "2007", "2006", "2005","2004", "2003", "2002", "2001", "2000", "1999", "1998", "1997", "1996"]
}
GET Make API Reference
ENDPOINT
http://api.carmd.com/v3.0/make?year=2015
REQUEST
{
  "year":2015
}
RESPONSE
{
  "message":{...},
  "data":[ "ACURA", "Alfa Romeo", "Aston Martin", "Bently", "BMW", "Buick", "Cadillac", "Chevrolet", "Chrysler", "Dodge", "Ferrari", "Fiat", "Ford", "GMC","Honda", "Hyundai", "..."]
}
GET Model API Reference
ENDPOINT
http://api.carmd.com/v3.0/model?year=2015&make=ACURA
REQUEST
{
  "year":2015,
  "make":"ACURA"
}
RESPONSE
{
  "message":{...},
  "data":[ "ILX", "MDX", "RDX", "RLX", "TLX"]
}
GET Engine API Reference
ENDPOINT
http://api.carmd.com/v3.0/engine?year=2015&make=ACURA&model=RLX
REQUEST
{
  "year":2015,
  "make":"ACURA",
  "model":"RLX"
}
RESPONSE
{
  "message":{...},
  "data":["V6, 3.5L; SOHC; 24V; SEFI","V6, 3.5L; SOHC; 24V; SEFI; Hybrid"]
}

GET Credits

The remaining number of credits on this account.

This endpoint provides the following data:

  • Credit count

HTTP REQUEST
GET /credits

ENDPOINT DEFINITION
GET http://api.carmd.com/v3.0/credits

API Reference
ENDPOINT
http://api.carmd.com/v3.0/credits
REQUEST
{}
RESPONSE
{
  "message":{...},
  "data":{
    "credits":1000
  } 
}