RC Plus Verification API
This document highlights the RC Plus Verification API details.
Objective
The RC Plus Verification API retrieves comprehensive vehicle registration, ownership, and financial information, including insurance, tax, permit, and pollution compliance details.
| Input | Output |
|---|---|
| Valid vehicle registration number | Details about vehicle. The complete list of output fields is provided under the Success Response Details section |
API URL
https://ind-engine.thomas.hyperverge.co/v1/RCPlusVerification
API Endpoint
RCPlusVerification
Overview
The API is RESTful and uses standard HTTP verbs and status codes. The responses are in JSON format, and you should upload all images and files as form-data through a POST request.
Authentication
You need a unique pair of application ID (appId) and application key (appKey) from HyperVerge to verify your identity for accessing the API.
API Request Details
Method - POST
Headers
| Parameter | Mandatory or Optional | Description | Allowed Values |
|---|---|---|---|
| content-type | Mandatory | The media type for the request payload | application/json |
| appId | Mandatory | The application identifier shared by HyperVerge. You can find the details in the dashboard's credentials tab | This should be a unique value |
| appKey | Mandatory | The application key shared by HyperVerge. You can find the details in the dashboard's credentials tab | This should be a unique value |
| transactionId | Mandatory | A unique identifier for tracking a user journey | This should be both unique and easily associated with the user's journey in your application(s) |
Inputs
The following table provides the details of the fields required for the API's request body.
| Parameter | Mandatory or Optional | Description | Allowed Values | Default Value |
|---|---|---|---|---|
reg_no | Mandatory | The vehicle registration number | Format: 10 characters – two letters for the state, two digits for the RTO, one or two letters for the series, and four digits for the unique number. e.g., MP01AB1234 | Not Applicable |
Request
The following code shows a standard curl request for the API.
curl --location --request POST 'https://ind-engine.thomas.hyperverge.co/v1/RCPlusVerification' \
--header 'Content-Type: application/json' \
--header 'appId: <Enter_the_HyperVerge_appId>' \
--header 'appKey: <Enter_the_HyperVerge_appKey>' \
--header 'transactionId: <Enter_the_HyperVerge_transactionID>' \
--data '{
"reg_no": "<Enter_the_vehicle_registration_number>"
}'
Success Response
The following is a sample of a success response from the API:
{
"status": "success",
"statusCode": "200",
"result": {
"message": "<Vehicle_Status_Message>",
"response_type": "<Type_Of_Response>",
"rcInfo": {
"state_code": "<State_Code>",
"state": "<State_Name>",
"office_code": "<Office_Code>",
"office_name": "<RTO_Office_Name>",
"reg_no": "<Vehicle_Registration_Number>",
"reg_date": "<Vehicle_Registration_Date>",
"purchase_date": "<Vehicle_Purchase_Date>",
"owner_count": <Number_Of_Previous_Owners>,
"owner_name": "<Owner_Name>",
"owner_father_name": "<Owner_Father_Name>",
"current_address_line1": "<Current_Address_Line_1>",
"current_address_line2": "<Current_Address_Line_2>",
"current_address_line3": "<Current_Address_Line_3>",
"current_district_name": "<Current_District_Name>",
"current_state": "<Current_State_Code>",
"current_state_name": "<Current_State_Name>",
"current_pincode": <Current_Pincode>,
"current_full_address": "<Current_Full_Address>",
"permanent_address_line1": "<Permanent_Address_Line_1>",
"permanent_address_line2": "<Permanent_Address_Line_2>",
"permanent_address_line3": "<Permanent_Address_Line_3>",
"permanent_district_name": "<Permanent_District_Name>",
"permanent_state": "<Permanent_State_Code>",
"permanent_state_name": "<Permanent_State_Name>",
"permanent_pincode": <Permanent_Pincode>,
"permanent_full_address": "<Permanent_Full_Address>",
"owner_code_descr": "<Owner_Type>",
"reg_type_descr": "<Registration_Type>",
"vehicle_class_desc": "<Vehicle_Class_Description>",
"chassis_no": "<Chassis_Number>",
"engine_no": "<Engine_Number>",
"vehicle_manufacturer_name": "<Vehicle_Manufacturer>",
"model_code": "<Model_Code>",
"model": "<Vehicle_Model>",
"body_type": "<Vehicle_Body_Type>",
"cylinders_no": <Number_Of_Cylinders>,
"vehicle_hp": <Vehicle_Horsepower>,
"vehicle_seat_capacity": <Seat_Capacity>,
"vehicle_standing_capacity": <Standing_Capacity>,
"vehicle_sleeper_capacity": <Sleeper_Capacity>,
"unladen_weight": <Unladen_Weight_Kg>,
"vehicle_gross_weight": <Gross_Weight_Kg>,
"vehicle_gross_comb_weight": <Gross_Combined_Weight_Kg>,
"fuel_descr": "<Fuel_Type>",
"color": "<Vehicle_Color>",
"manufacturing_mon": <Manufacturing_Month>,
"manufacturing_yr": <Manufacturing_Year>,
"norms_descr": "<Emission_Norms>",
"wheelbase": <Wheelbase_Mm>,
"cubic_cap": <Cubic_Capacity_CC>,
"floor_area": <Floor_Area_SqMm>,
"ac_fitted": "<AC_Fitted_YN>",
"audio_fitted": "<Audio_Fitted_YN>",
"video_fitted": "<Video_Fitted_YN>",
"vehicle_catg": "<Vehicle_Category>",
"sale_amount": <Sale_Amount>,
"length": <Length_Mm>,
"width": <Width_Mm>,
"height": <Height_Mm>,
"reg_upto": "<Registration_Valid_Upto>",
"fit_upto": "<FiMPess_Valid_Upto>",
"imported_vehicle": "<Imported_YN>",
"status": "<Vehicle_Status>",
"vehicle_type": "<Vehicle_Use_Type>",
"tax_mode": "<Tax_Mode>",
"vehicle_insurance_details": {
"insurance_from": "<Insurance_Start_Date>",
"insurance_upto": "<Insurance_End_Date>",
"insurance_company_code": <Insurance_Company_Code>,
"insurance_company_name": "<Insurance_Company_Name>",
"opdt": "<Insurance_Updated_On>",
"policy_no": "<Insurance_Policy_Number>",
"reg_no": "<Vehicle_Registration_Number>"
},
"vehicle_pucc_details": {
"pucc_from": "<PUCC_Start_Date>",
"pucc_upto": "<PUCC_End_Date>",
"pucc_centreno": "<PUCC_Center_Number>",
"pucc_no": "<PUCC_Number>",
"op_dt": "<PUCC_Issued_On>"
},
"permit_details": {
"appl_no": "<Permit_Application_Number>",
"pmt_no": "<Permit_Number>",
"reg_no": "<Vehicle_Registration_Number>",
"rcpt_no": "<Permit_Receipt_Number>",
"purpose": "<Permit_Purpose>",
"permit_type": "<Permit_Type>",
"permit_catg": "<Permit_Category>",
"permit_issued_on": "<Permit_Issued_On>",
"permit_valid_from": "<Permit_Valid_From>",
"permit_valid_upto": "<Permit_Valid_Upto>"
},
"latest_tax_details": {
"reg_no": "<Vehicle_Registration_Number>",
"tax_mode": "<Tax_Mode>",
"payment_mode": "<Payment_Mode>",
"tax_amt": <Tax_Amount>,
"tax_fine": <Tax_Fine>,
"rcpt_dt": "<Receipt_Date>",
"tax_from": "<Tax_From_Date>",
"tax_upto": "<Tax_Upto_Date>",
"collected_by": "<Tax_Collected_By>",
"rcpt_no": "<Tax_Receipt_Number>"
},
"financer_details": {
"hp_type": "<Hypothecation_Type>",
"financer_name": "<Financer_Name>",
"financer_address_line1": "<Financer_Address_Line_1>",
"financer_address_line2": "<Financer_Address_Line_2>",
"financer_address_line3": "<Financer_Address_Line_3>",
"financer_district": <Financer_District_Code>,
"financer_pincode": <Financer_Pincode>,
"financer_state": "<Financer_State_Code>",
"financer_full_address": "<Financer_Full_Address>",
"hypothecation_dt": "<Hypothecation_Date>",
"op_dt": "<Financer_Updated_On>"
}
}
},
"metaData": {
"requestId": "<Request_ID>",
"transactionId": "<Transaction_ID>"
}
}
Success Response Details
| Parameter | Type | Description |
|---|---|---|
| message | string | A message indicating the outcome of the API call. In this case, it will return "Vehicle Found" |
| response_type | string | Specifies the type of response. For this case, it is FULL_DATA, indicating that full vehicle details are provided |
| rcInfo | object | Contains all the RC (Registration Certificate) details of the vehicle |
| state_code | string | The two-letter code representing the state where the vehicle is registered (e.g., "MP" for Madhya Pradesh) |
| state | string | The full name of the state where the vehicle is registered |
| office_code | string | The code of the RTO (Regional Transport Office) where the vehicle was registered |
| office_name | string | The name of the RTO office where the vehicle was registered |
| reg_no | string | The vehicle's registration number |
| reg_date | string | The date on which the vehicle was registered |
| purchase_date | string | The date when the vehicle was purchased |
| owner_count | integer | The number of owners the vehicle has had |
| owner_name | string | The full name of the current owner of the vehicle |
| owner_father_name | string | The full name of the current owner's father |
| current_address_line1 | string | First line of the current address of the vehicle owner |
| current_address_line2 | string | Second line of the current address of the vehicle owner |
| current_address_line3 | string | Third line of the current address (if available) |
| current_district_name | string | The name of the district where the current address is located |
| current_state | string | The code of the state for the current address (e.g., "MP") |
| current_state_name | string | Full name of the state for the current address |
| current_pincode | string | Postal code for the current address |
| current_full_address | string | The complete current address of the vehicle owner, including street, district, state, and postal code |
| permanent_address_line1 | string | First line of the permanent address of the vehicle owner |
| permanent_address_line2 | string | Second line of the permanent address of the vehicle owner |
| permanent_address_line3 | string | Third line of the permanent address (if available) |
| permanent_district_name | string | The name of the district where the permanent address is located |
| permanent_state | string | The code of the state for the permanent address (e.g., "MP") |
| permanent_state_name | string | Full name of the state for the permanent address |
| permanent_pincode | string | Postal code for the permanent address |
| permanent_full_address | string | The complete permanent address of the vehicle owner, including street, district, state, and postal code |
| owner_code_descr | string | Description of the owner type (e.g., "INDIVIDUAL") |
| reg_type_descr | string | Type of vehicle registration (e.g., "TEMPORARY REGISTERED VEHICLE") |
| vehicle_class_desc | string | The class/type of vehicle (e.g., "Goods Carrier") |
| chassis_no | string | Unique chassis number of the vehicle |
| engine_no | string | Unique engine number of the vehicle |
| vehicle_manufacturer_name | string | The name of the vehicle manufacturer (e.g., "VE COMMERCIAL VEHICLES LTD") |
| model_code | string | The code for the vehicle's model |
| model | string | The specific model of the vehicle (e.g., "EICHER PRO 2059XP F CBC BSVI") |
| body_type | string | The body type of the vehicle (e.g., "CLOSED") |
| cylinders_no | integer | The number of cylinders in the vehicle's engine |
| vehicle_hp | string | The horsepower of the vehicle |
| vehicle_seat_capacity | integer | The number of seats in the vehicle |
| vehicle_standing_capacity | integer | The standing capacity of the vehicle (if applicable) |
| vehicle_sleeper_capacity | integer | The sleeper capacity of the vehicle (if applicable) |
| unladen_weight | integer | The unladen weight (empty weight) of the vehicle in kilograms |
| vehicle_gross_weight | integer | The gross weight of the vehicle in kilograms when fully loaded |
| vehicle_gross_comb_weight | integer | The gross combined weight of the vehicle (if applicable) |
| fuel_descr | string | The type of fuel used by the vehicle (e.g., "DIESEL") |
| color | string | The color of the vehicle (e.g., "NEW GOLDEN BROWN") |
| manufacturing_mon | string | The month in which the vehicle was manufactured |
| manufacturing_yr | string | The year in which the vehicle was manufactured |
| norms_descr | string | The emission norms followed by the vehicle (e.g., "BHARAT STAGE VI") |
| wheelbase | integer | The wheelbase of the vehicle in millimeters |
| cubic_cap | integer | The cubic capacity (CC) of the vehicle's engine |
| floor_area | integer | The floor area of the vehicle (if applicable) |
| ac_fitted | string | Indicates whether the vehicle has an air conditioner fitted (Y/N) |
| audio_fitted | string | Indicates whether the vehicle has an audio system fitted (Y/N) |
| video_fitted | string | Indicates whether the vehicle has a video system fitted (Y/N) |
| vehicle_catg | string | The vehicle category (e.g., "LGV") |
| dealer_code | string | Dealer code |
| dealer_name | string | Dealer name |
| dealer_address_line1 | string | Dealer address (line 1) |
| dealer_address_line2 | string | Dealer address (line 2) |
| dealer_address_line3 | string | Dealer address (line 3) |
| dealer_district | string | Dealer district |
| dealer_pincode | string | Dealer pincode |
| dealer_full_address | string | Dealer full address |
| sale_amount | string | The sale amount of the vehicle in local currency |
| length | integer | The length of the vehicle in millimeters |
| width | integer | The width of the vehicle in millimeters |
| height | integer | The height of the vehicle in millimeters |
| reg_upto | string | The date until which the vehicle's registration is valid |
| fit_upto | string | The date until which the vehicle's fiMPess certificate is valid |
| imported_vehicle | string | Indicates if the vehicle is imported (Y/N) |
| status | string | Indicates the current status of the vehicle (e.g., "Y" for active) |
| vehicle_type | string | Indicates whether the vehicle is for transport or personal use |
| tax_mode | string | The tax mode for the vehicle (e.g., "Q" for quarterly) |
| vehicle_insurance_details | object | Contains details of the vehicle's insurance policy, including start and end dates, company name, and policy number |
| vehicle_pucc_details | object | Contains details of the vehicle's Pollution Under Control Certificate, including validity dates and certificate number |
| permit_details | object | Information regarding any permits associated with the vehicle, including application number and validity dates |
| latest_tax_details | object | Contains details of the latest tax payment, including amount, fine, and receipt information |
| financer_details | object | Information about the financier, including name, address, and hypothecation details |
Error Responses
- Missing Registration Number(reg_no)
- Wrong Format for reg_no
- Missing/Invalid Credentials
- Missing digit number in the reg_no
- Internal Server Error
{
"status": "failure",
"statusCode": 400,
"result": {
"data": {
"message": "reg_no parameter in missing in request body"
}
},
"metaData": {
"requestId": "<Request_ID>",
"transactionId": "<Transaction_ID>"
}
}
{
"status": "failure",
"statusCode": 400,
"result": {
"data": {
"message": "reg_no parameter format is wrong or invalid."
}
},
"metaData": {
"requestId": "<Request_ID>",
"transactionId": "<Transaction_ID>"
}
}
{
"message": "Missing/Invalid credentials",
"statusCode": 401,
"status": "failure"
}
{
"status": "failure",
"statusCode": 404,
"result": {
"data": {
"message": "No Record Found. Enter a valid registration number"
}
},
"metaData": {
"requestId": "<Request_ID>",
"transactionId": "<Transaction_ID>"
}
}
{
"message": "Internal Server Error",
"statusCode": 500,
"status": "failure"
}
Error Response Details
failure status, with a relavant status code and error message. The following table lists all error responses. | Status Code | Error Message | Error Description |
|---|---|---|
| 400 | reg_no parameter in missing in request body | Some mandatory request parameters are missing in the API request made |
| 400 | reg_no parameter format is wrong or invalid | This usually occurs when we give wrong format or pattern in reg no |
| 401 | Missing/Invalid credentials | The request is either missing the mandatory appId and appKey combination or has invalid values |
| 404 | No Record Found. Enter a valid registration number | This usually happens when we give partial data in reg no |
| 500 | Internal Server Error | Please check the request headers or contact the HyperVerge team for resolution |