I have used Rest Api Code , i want to query from two different objects in single Http request,For that I am using composite Query in rest Api code
HttpRequest req = new HttpRequest();
req.setEndpoint('callout:Namedcredentialname/services/data/v39.0/query/composite');
req.setMethod('GET');
req.setbody({
"compositeRequest" :[{
"method" : "GET",
"url" : "/services/data/v39.0/query/?q=SELECT+Id,MasterLabel,TotalLicenses,UsedLicenses,status+FROM+UserLicense",
"referenceId" : "ref"
},{
"method" : "GET",
"url" : "/services/data/v39.0/query/?q=SELECT+Id,name+FROM+organization",
"referenceId" : "ref"}]});
//Get SessionId
string autho = 'Bearer '+userInfo.getSessionId();
req.setHeader('Authorization', autho);
//Get Response
Http http = new Http();
HTTPresponse res= http.send(req);
string response = res.getBody();
How to construct req.body in composite Query of Rest api code? Getting error
Unrecognized symbol '"', which is not a valid Apex identifier I have modified with single quotes
req.setbody({
'compositeRequest' :[{
'method' : 'GET',
'url' : '/services/data/v39.0/query/?q=SELECT+Id,MasterLabel,TotalLicenses,UsedLicenses,status+FROM+UserLicense',
'referenceId' : 'refContact'
},{
'method' : 'GET',
'url' : '/services/data/v39.0/query/?q=SELECT+Id,name+FROM+organization',
'referenceId' : 'refContact'}]})
Compile Error: Expecting ')' but was: '{
req.setbody('{\"compositeRequest\" :[{
\"method\" : \"GET\",
\"url\" : \"/services/data/v39.0/query/?q=SELECT+Id+,MasterLabel+,TotalLicenses+,UsedLicenses+,+status+FROM+UserLicense\",
\"referenceId\" : \"refContact\"
},{
\"method\" : \"GET\",
\"url\" : \"/services/data/v39.0/query/?q=SELECT+Id+,name+FROM+organization\",
\"referenceId\" : \"refContact\"}]}')
Illegal string literal: Line breaks are not allowed in string literals