Help to use the Rest API to create a new normal change

Brad Milne
Kilo Contributor

Documentation says that this curl will work:

curl "https://instance.servicenow.com/api/sn_chg_rest/v1/change" \ --request PATCH \ --header "Accept: application/json" \ --header "Content-Type: application/json" \ --data "{\"short_desription\": \"Reboot server on scheduled interval\", }" \ --user "username":"password"

That's wrong however, and needs to be POST.

Using POST, get the response:

Change Request cannot be created with invalid parameters: {\"short_desription\":[\"Reboot server on scheduled interval\"],
 
 With no indication anywhere of what those parameters should be.
 
The doco also says, under `Query parameters`:
Name-value pairs for the fields to update. Request body parameters override URL parameters. However, required parameters must be specified in the URL.

Still don't know what the required parameters are.

1 ACCEPTED SOLUTION

Its working via this method also

curl "https://dev11880.service-now.com/api/sn_chg_rest/change/normal" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--data "{\"requested_by\":\"Abel Tuter (Architect)\",\"short_description\":\"testing via post API using change rest\"}" \
--user 'admin':'admin'

 

Result

 

You have to define type of change

check from servicenow rest api explorer

 

If its helpful,please mark answer as correct

Regards,
Anshu

View solution in original post

5 REPLIES 5

Anshu_Anand_
Kilo Sage
Kilo Sage
curl "https://dev112780.service-now.com/api/now/table/change_request" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--data "{\"requested_by\":\"Abel Tuter (Architect)\",\"short_description\":\"testing via post API\"}" \
--user 'admin':'admin'

I tried this way it works.

response body will have the info.

The result:-

find_real_file.png 

If its helpful,please mark answer as correct

 

Regards,
Anshu

That works, many thanks. I can't mark it as correct yet until I have some idea why I cannot use the Change Management API (/sn_chg_rest/change).

Its working via this method also

curl "https://dev11880.service-now.com/api/sn_chg_rest/change/normal" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--data "{\"requested_by\":\"Abel Tuter (Architect)\",\"short_description\":\"testing via post API using change rest\"}" \
--user 'admin':'admin'

 

Result

 

You have to define type of change

check from servicenow rest api explorer

If its helpful,please mark answer as correct

Regards,
Anshu

Brad Milne
Kilo Contributor

Thanks to anshu I am able to create a Change using the Table API, and I can modify and retrieve it using the Change Management API. I would be more comfortable if I could create with the Change Management API also. Thanks