Question On Scripted Rest API For Order Guide
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-24-2023 11:44 PM - edited 10-24-2023 11:45 PM
Hi There,
I have one Requirement On Scripted Rest API,
I have One Order Guide "New hire Request", in that I have added Multiple Items, and now I want to Create This Request and RITM's via Postman, for this I have written one Scripted Rest API
and Created Request via, Postman Application, but in that all the multiple RITM's which we attached in Rule base those are not created,
Please find the below Code of Scripted Rest API, which I have written, and please let me know where I made wrong.
(function process(/*RESTAPIRequest*/ request, /*RESTAPIResponse*/ response) {
var error = '';
var catItem = '';
var cat = new GlideRecord('sc_cat_item_guide');
if (cat.get('name', 'New Hire Request')) {
catItem = cat.sys_id;
}
var cart = new Cart();
var item = cart.addItem(catItem);
var requestersysid = new ceredianUtility().getRequestorSysid(request.body.data.requestor);
cart.setVariable(item, 'requestor', requestersysid);
cart.setVariable(item, 'desk_phone', request.body.data.desk_phone);
cart.setVariable(item, 'desk_phone_number', request.body.data.desk_phone_number);
cart.setVariable(item, 'phone_mac_address', request.body.data.phone_mac_address);
var cartGR = cart.getCart();
cartGR.update();
var rc = cart.placeOrder();
response.setBody({
result: 'Catalog Item request' + rc.number + 'created.'
});
})(request, response);
can anybody please help me on this, how can i create Request and RITM's via Postman.
Thanks,
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-25-2023 01:09 AM
Hi @Community Alums ,
Try below script
var items = [Items list];
var cart = new Cart();
var catItemGuideName = 'New Hire Request';
for (var i = 0; i < items.length; i++) {
var catItem = new GlideRecord('sc_cat_item');
if (catItem.get('name', catItemGuideName)) {
var item = cart.addItem(catItem.sys_id);
// Set item variables on the data in 'items[i]'
}
}
var rc = cart.placeOrder();
if (rc.hasError()) {
response.setError(rc.getErrorMessage());
} else {
response.setBody({
result: 'Catalog Items requested successfully.'
});
}
Mark it as helpful and solution proposed if it serves your purpose.
Thanks,
Anand