reason: in our request life cycle we have a transition from open to assign ticket, in this transition technician field is made mandatory. the reverse is not possible when transition goes from assign to open.
/
* Unassign tech from request when status is set back to OPEN using Request Life Cycle
Host = "xxx";
Url = "https://"+Host+".ourdomain.com:XXXX";
TechnicianKey = "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX";
RequestID = requestObj.get('id');
Technician = requestObj.get('technician').get('name');
appUrl = Url + "/api/v3/requests/"+RequestID;
jsonData={'request': { 'technician': null ,'id': RequestID, 'status': {'name': 'Open'}}};
upddata = {"input_data":jsonData,"TECHNICIAN_KEY":TechnicianKey,"format":"json"};
if(Technician != null)
{
UpdRequest = invokeurl
[
url: appUrl
type: PUT
parameters: upddata
];
ResponseStatus = UpdRequest.get("response_status");
if("success".equalsIgnoreCase(ResponseStatus))
{
info "technician successfully unassigned";
}
else
{
info "Failed to unassign technician";
info(ResponseStatus);
}
}
return ResponseStatus;