can't create a catalog item using REST API

Chandra31
Tera Contributor

Hi @Ankur Bawiskar I'm trying to submit a request using Postman with the API and payload below, but it's generating a cart ID instead of a request number. I've followed your instructions in the old post.

 

Post : https://dev.service-now.com/api/sn_sc/servicecatalog/items/e8638d3487636250222f4226cebb35d7/order_no...

 

 

Regards,

Chandra

 

 

9 REPLIES 9

Hi @Chandra31 ,

 

You can try like this

1. POST Method:

POST https://instancename.service-now.com/api/sn_sc/servicecatalog/items/{sys_id}/order_now

2. Path parameters

 

sys_id : 'sys_id_of_catalog_item'

3. Request Body

{
  "sysparm_quantity": "1",
  "variables": { // add varibles list here
    "variable_name_1": "value_1",
    "variable_name_2": "value_2"
  }
 
}

sample response body will be like this 

{
  "result": {
    "sys_id": "69026c96c3b33210c7311412b40131b7",
    "number": "REQ0010172",
    "request_number": "REQ0010172",
    "parent_id": null,
    "request_id": "69026c96c3b33210c7311412b40131b7",
    "parent_table": "task",
    "table": "sc_request"
  }
}

 

If this information proves useful, kindly mark it as helpful or accepted solution.

Thanks,
BK

Hi @Bhavya11  still getting the cart id in response. PFA.

 

Regards,

Chandra

@Chandra31 

check point mentioned by @Bhavya11 

Regards,
Ankur
Certified Technical Architect  ||  10x ServiceNow MVP  ||  ServiceNow Community Leader

@Ankur Bawiskar 

I set both properties to false and tested it, but it still returns the cart ID. I checked the suggested post, but it describes a two-step process—add to cart and submit. However, I want to make the request using a single API call.

 

Tanushree Maiti
Tera Sage

Hi @Chandra31 

 

Endpoint URL: Use the Service Catalog API's order_now endpoint.
https://<your-instance>://<catalog_item_sys_id>/order_now

 

Try with Payload

 

{
  "sysparm_id": "a96250e407d01410540bf2508c1ed014", // pass the  sys_id of your Catalog Item
  "sysparm_quantity": "1",
  "variables": {
    "variable_name_1": "variable_value_1",
    "variable_name_2": "variable_value_2",
    "requested_for": "1f78df4047bc4bcbf6" // For reference fields like 'requested_for', you need to pass the sys_id of requested for  }
}

 

Use correct credential by which you can create request in instance itself.

 

Please mark this response as Helpful & Accept it as solution if it assisted you with your question.
Regards
Tanushree Maiti
ServiceNow Technical Architect
Linkedin: