import groovy.json.JsonBuilder import groovyx.net.http.RESTClient import static groovy.json.JsonOutput.prettyPrint import static groovy.json.JsonOutput.toJson import static groovyx.net.http.ContentType.JSON @Grab(group='org.codehaus.groovy.modules.http-builder',module='http-builder',version='0.7.1') def processorName ='GetFile1' def host = '10.223.71.166' def port = 8083 def nifi = new RESTClient("http://$host:$port/nifi-api/") def pid= '1234' resp = nifi.get(path: 'controller/revision') assert resp.status == 200 println resp.getData() def builder2 = new JsonBuilder() builder2 { revision { clientId 'CID' version resp.data.revision.version } component { name "newgetfileproc" type "GetFile" state "STOPPED" description "value" } id '1234' permissions { canRead true canWrite true } } println(builder2.toPrettyString()) try { def resp2 = nifi.post( path:"/controller/process-groups/7d15606e-8d9b-492a-811a-d2da391eed91/processors", requestContentType: JSON, body: builder2.toPrettyString() ) println resp2.getData() } catch (Exception e) { e.printStackTrace() }