I am getting this error below when i tried testing my apex rest services using work bench
System.DmlException: Insert failed. First exception on row 0; first error: REQUIRED_FIELD_MISSING, Required fields are missing: [Company_Make__c, Engine_Displacement__c, Power__c, Torque__c, Transmission__c, Fuel_Tank_Capacity__c]: [Company_Make__c, Engine_Displacement__c, Power__c, Torque__c, Transmission__c, Fuel_Tank_Capacity__c] Class.BikeManagement.doPost: line 40, column 1
but iam passing all the required fields(cross checked with only layout i have).
my post method
@RestResource(urlMapping='/v1/BikeManagement/')
global class BikeManagement {
@httpPost
global static bike__c doPost(){
Map<String,String> urlParamsMap = RestContext.request.params;
String bikename = urlParamsMap.get('Name');
String cc= urlParamsMap.get('Engine_Displacement__c');
String hp = urlParamsMap.get('Power__c');
String Nm = urlParamsMap.get('Torque__c');
String company = urlParamsMap.get('Company_Make__c');
String Gear = urlParamsMap.get('Transmission__c');
String tank = urlParamsMap.get('Fuel_Tank_Capacity__c');
bike__c postedbike = new bike__c(Name=bikename,
Engine_Displacement__c=cc,
Power__c=hp,
Torque__c=Nm,
Company_Make__c=company,
Transmission__c=Gear,
Fuel_Tank_Capacity__c=tank);
insert postedbike;
return postedbike;
}
}
I have tried using below request data in rest explorer
Method -Post
URL - /services/apexrest/v1/BikeManagement/
body -
{
"Name":"Continental GT 650"
"Engine_Displacement__c":"648.9"
"Power__c":"47"
"Torque__c":"53"
"Company_Make__c":"Royal Enfield"
"Transmission__c":"6 Speed"
"Fuel_Tank_Capacity__c":"13"
}