API Documentation


Architecture and Concepts

VINquery.com APIs allow client applications via representational state transfer (REST) to access a suite of VIN decoding, machine learning and object recognition algorithms. One distinguishing characteristic of the REST architecture is that communications between a client and a server are stateless. Requests are initiated by the client, the server processes the request, returns a response, and the entire transaction is considered atomic. This documentation provides the technical description of the real-time APIs provided by VINquery.com.

To maintain reliability and stability within our demo and production environments, VINquery.com operates with certain API call efficiency guidelines. To ensure effective load balance we continually monitor the API calls to our backend systems and we will contact developers that are putting unnecessary burden on the system. Applications are not allowed to poll for service status more than once every 15 minutes.



There are two types of resources associated with these services: images and 17-character text string(representing a VIN). Uploaded images can be any MIME type, such as JP(E)G, PNG, BMP, GIF. The object recognition algorithms currently work on 32-bit/24-bit/8-bit grayscale images, so images are converted to 32-bit/24-bit/8-bit grayscale before being submitted to the recognition engines.


All requests are sent using HTTP GET or HTTP POST methods, and API responses are in XML or Json format.

VINdecode API 2.0 GET https://ws.vinquery.com/vindecode/v2
VINfix API 2.0 GET https://www.recognition.ws/vinfix/v2
VINocr API 2.0 POST https://www.recognition.ws/vinocr/v2
VINbarcode API 2.0 POST https://www.recognition.ws/vinbarcode/v2
VMMR API 1.0 POST https://vmmr.recognition.ws/v1
LPR API 2.0 POST https://lpr.recognition.ws/v2

HTTP Status Codes

All VINquery.com APIs return the following HTTP status codes:

HTTP Status Code Description
200 Success Request
400 Bad Request
500 Internal Server Error