@PostMapping(path = "/getVehicleDetails", consumes = {
			MediaType.APPLICATION_JSON_VALUE}, produces = {
					MediaType.APPLICATION_JSON_VALUE})
	public ResponseEntity<?> insertSMERecord(@RequestBody ReqBody reqBody) {
		ResponseEntity<?> response = null;
		ResponseBody responseBody = new ResponseBody();
		JSONParser jParser = new JSONParser();

		try {
			// First search in TBL_VINQ_SEARCHDETAILS using SEARCH_BY
			VinqSearchDetails searchDetails = vinqSearchDetailsRepository
					.findBySearchValue(reqBody.getSearchBy());

			if (searchDetails == null) {
	            logger.warn("No records found for searchBy: {}", reqBody.getSearchBy());
	            // No records, set an empty response
	            responseBody.setPolicyDetails(Collections.emptyList());
	            responseBody.setClaimDetails(Collections.emptyList());
	            responseBody.setRiskScoreDetails(Collections.emptyList());
	            responseBody.setVahanVehicleDetails(Collections.emptyList());
	            return new ResponseEntity<>(responseBody, HttpStatus.NOT_FOUND);
	        }

			Long inquiryId = searchDetails.getInquiryId();
			logger.info("Found INQUIRY_ID: {} for searchBy: {}", inquiryId,
					reqBody.getSearchBy());

			// Fetch data from all related tables using the INQUIRY_ID
			List<PolicyDetailData> policyDetails = policyDetailDataRepository
					.findByInquiryId(inquiryId);
			List<ClaimDetailData> claimDetails = claimDetailDataRepository
					.findByInquiryId(inquiryId);
			List<RiskDetailData> riskDetails = riskDetailDataRepository
					.findByInquiryId(inquiryId);
			List<VahanDetailData> vahanDetails = vahanDetailDataRepository
					.findByInquiryId(inquiryId);

			// Create response structure
			//JSONObject response1 = new JSONObject();

			// Set fetched data into the response body
			responseBody.setPolicyDetails(policyDetails);
			responseBody.setClaimDetails(claimDetails);
			responseBody.setRiskScoreDetails(riskDetails);
			responseBody.setVahanVehicleDetails(vahanDetails);
			
			//if need for search wala criteria
			responseBody.setSEARCH_BASED_ON(reqBody.getSearchType()); 

			// Fetch vehicle details
			String jsonString = apiService.sendAPIRequest(reqBody);
			JSONObject resRepJsonObj = (JSONObject) jParser.parse(jsonString);
			logger.info("resRepJsonObj in IIBController: " + resRepJsonObj);

			// Process vehicle details (assuming you still want to do this)
			if (resRepJsonObj.get("PolicyDetails") instanceof JSONArray) {
				JSONArray policyDetailsFromAPI = (JSONArray) resRepJsonObj
						.get("PolicyDetails");
				policyService.saveProcessedPolicyDetails(policyDetailsFromAPI);
			}

			// Add the fetched data to responseBody
			responseBody.setPolicyDetails(policyDetails);
			return new ResponseEntity<>(responseBody, HttpStatus.OK);

		} catch (Exception e) {
			logger.error("Error processing request: ", e);
			// responseBody.setError(e.getMessage());
			return new ResponseEntity<>(responseBody,
					HttpStatus.INTERNAL_SERVER_ERROR);
		}

	} in this only i have to create another service impl which hit this api https://api.sbigeneral.in/sbigic/iib/IIBMOTOR_Hybrid/suvahan/getVehicleDetails?regno=TS08JA7596&chassisno= where this is regno:TS08JA7596
chassisno: before hitting that api hit token api https://api.sbigeneral.in/sbigic/v1/tokens with this headers X-IBM-Client-Id:kddddddddddddddddd
X-IBM-Client-Secret:c5d352e6dllllllll and the token which we get from api take and put in https://api.sbigeneral.in/sbigic/iib/IIBMOTOR_Hybrid/suvahan/getVehicleDetails?regno=TS08JA7596&chassisno= along with params regno:TS08JA7596  chassisno: