POST REST API not updating variable fields value

Bijender
Tera Guru

Hi, 

We have created a Scripted POST API, which is creating REQ record  but in RITM variable value is empty.  Kindly advise.

 

POST Script:

Bijender_0-1696427319302.png

 

 

 

var reqbody = request.body.dataString;
    try {
        var parser = new global.JSON();
        var parsedData = parser.decode(reqbody);
        var extensionname = parsedData.First_name;
        
        var cartId = GlideGuid.generate(null);
        var cart = new Cart(cartId);
        var item = cart.addItem('8fdc2b5947511110e044b7f3846d4390'1); //Catalog item name
        cart.setVariable(item, 'extensionname'First_name);//fill variables on RITM

        var rc = cart.placeOrder();
        var reqNumber = rc.number;//query RITM based on "var rc" REQ number 
        var ritm = new GlideRecord('sc_req_item');
        ritm.get('request.number', reqNumber);
        var ritmNumber = ritm.number;
        var res = {};
        res["status"] = "Success";
        res["requestNumber"] = reqNumber;
        res["requestItemNumber"] = ritmNumber;
        response.setBody(res);
 
When checking in POSTMAN it created record but variable value is empty.
 
Bijender_1-1696427350988.png

 

 

Bijender_2-1696427351005.png

Regards,
Bijender

 

1 REPLY 1

Sandeep Rajput
Tera Patron
Tera Patron

@Bijender The Cart script include, which you are trying to use inside your code has been deprecated.

Screenshot 2023-10-04 at 9.04.25 PM.png

 

Please use the CartJS API https://developer.servicenow.com/dev.do#!/reference/api/tokyo/server/sn_sc-namespace/c_CartJSScoped#... use addToCart() or orderNow() methods and map the variables in key value pair.

 

Hope this helps.