{ "name":"ServiceNow_Assets", "version":"3.0", "type":"REST_EVENT", "event_type":[ "HOST_ADDRESS_IPV4", "HOST_ADDRESS_IPV6", "FIXED_ADDRESS_IPV4", "FIXED_ADDRESS_IPV6", "NETWORK_IPV4", "NETWORK_IPV6" ], "vendor_identifier":"ServiceNow", "quoting":"XMLA", "instance_variables":[ ], "steps":[ { "name":"assignTimeValue", "operation":"NOP", "body_list":[ "${XC:COPY:{L:ServiceNowAddDate}:{UT:TIME}}${XC:FORMAT:TRUNCATE:{L:ServiceNowAddDate}:{10t}}" ] }, { "name":"SetoldTime", "operation":"CONDITION", "condition":{ "condition_type":"OR", "statements":[ { "left":"${E:A:values{extattrs}{ServiceNow_SyncedAt}{value}}", "op":"==", "right":"" } ], "eval":"${XC:ASSIGN:{L:oldTime}:{S:}}", "else_eval":"${XC:COPY:{L:oldTime}:{E:values{extattrs}{ServiceNow_SyncedAt}{value}}}}${XC:FORMAT:TRUNCATE:{L:oldTime}:{10t}}" } }, { "name":"Debug#0", "operation":"NOP", "body":"${XC:DEBUG:{H:}}${XC:DEBUG:{E:}}${XC:DEBUG:{I:}}${XC:DEBUG:{L:}}${XC:DEBUG:{S:}}${XC:DEBUG:{P:}}${XC:DEBUG:{UT:}}${XC:DEBUG:{R:}}" }, { "name":"skipobjectmodificationanddeletion", "operation":"CONDITION", "condition":{ "statements":[ { "left":"${E:A:operation_type}", "op":"==", "right":"MODIFY" } ], "condition_type":"OR", "stop":true } }, { "name":"stopaddifnotwanted", "operation":"CONDITION", "condition":{ "condition_type":"OR", "statements":[ { "left":"${E:A:values{extattrs}{ServiceNow_Sync}{value}}", "op":"!=", "right":"true" } ], "stop":true } }, { "name":"skiptodeleteNetworkifdeletingnetwork", "operation":"CONDITION", "condition":{ "statements":[ { "left":"${E:A:operation_type}", "op":"==", "right":"DELETE" }, { "left":"${E:A:event_type}", "op":"=~", "right":"NETWORK" } ], "condition_type":"AND", "next":"DeletenetworkfromServiceNow" } }, { "name":"skiptodeletion", "operation":"CONDITION", "condition":{ "statements":[ { "left":"${E:A:operation_type}", "op":"==", "right":"DELETE" } ], "condition_type":"OR", "next":"checkifipv4oripv6forassigningvariables" } }, { "name":"stopaddifnotneeded", "operation":"CONDITION", "condition":{ "condition_type":"OR", "statements":[ { "left":"${L:A:oldTime}", "op":"==", "right":"${L:A:ServiceNowAddDate}" } ], "stop":true } }, { "name":"Getlocation", "operation":"CONDITION", "condition":{ "condition_type":"OR", "statements":[ { "left":"${E:A:values{extattrs}{ServiceNow_Location}{value}}", "op":"!=", "right":"" } ], "eval":"${XC:COPY:{L:Location}:{E:values{extattrs}{ServiceNow_Location}{value}}}", "else_eval":"${XC:ASSIGN:{L:Location}:{S:Unknown}}" } }, { "name":"checkifhosttoaddhostname", "operation":"CONDITION", "condition":{ "statements":[ { "left":"${E:A:event_type}", "op":"=~", "right":"HOST" } ], "condition_type":"AND", "eval":"${XC:COPY:{L:Host_Name}:{E:values{host}}}", "else_eval":"${XC:ASSIGN:{L:Host_Name}:{S:Unknown}}" } }, { "name":"skiptoNetworkCreation", "operation":"CONDITION", "condition":{ "statements":[ { "left":"${E:A:event_type}", "op":"==", "right":"NETWORK_IPV4" }, { "left":"${E:A:event_type}", "op":"==", "right":"NETWORK_IPV6" } ], "condition_type":"OR", "next":"assignLVarsNetfromE:fornetwork" } }, { "name":"assignLVarsNetfromE:", "operation":"NOP", "body_list":[ "${XC:COPY:{L:event_type}:{E:event_type}}", "${XC:COPY:{L:timestamp}:{E:timestamp}}", "${XC:COPY:{L:object_type}:{E:object_type}}", "${XC:COPY:{L:Obj_ref}:{E:values{_ref}}}", "${XC:COPY:{L:network_view}:{E:values{network_view}}}" ] }, { "name":"checkifipv4oripv6", "operation":"CONDITION", "condition":{ "condition_type":"AND", "statements":[ { "left":"${E:A:values{ipv4addr}}", "op":"!=", "right":"" } ], "eval":"${XC:COPY:{L:address}:{E:values{ipv4addr}}}${XC:ASSIGN:{L:addr}:{S:ipv4addr}}${XC:ASSIGN:{L:fixed}:{S:fixedaddress}}", "else_eval":"${XC:COPY:{L:address}:{E:values{ipv6addr}}}${XC:ASSIGN:{L:addr}:{S:ipv6addr}}${XC:ASSIGN:{L:fixed}:{S:ipv6fixedaddress}}" } }, { "name":"alldiscoveryinformation", "operation":"GET", "transport":{ "path":"discovery:device?address=${L:A:address}&_return_fields=name,description,os_version,chassis_serial_number,model,ms_ad_user_data,type,vendor,interfaces" }, "wapi":"v2.7" }, { "name":"Checkifnameisunknown", "operation":"CONDITION", "condition":{ "condition_type":"OR", "statements":[ { "left":"${P:A:PARSE[0]{name}}", "op":"==", "right":"" }, { "left":"${P:A:PARSE[0]{name}}", "op":"==", "right":"unknown" } ], "next":"checkifhostorfixedaddress", "else_eval":"${XC:COPY:{L:name}:{P:PARSE[0]{name}}}" } }, { "name":"jumptoaddahostifnodiscoveryinformation", "operation":"CONDITION", "condition":{ "condition_type":"AND", "statements":[ { "left":"${P:A:PARSE[0]}", "op":"==", "right":"" } ], "eval":"${XC:ASSIGN:{L:table}:{S:cmdb_ci_ip_device}},${XC:ASSIGN:{L:discovered}:{S:false}}", "next":"checkifhostorfixedforassigningmac" } }, { "name":"checkfordescription", "operation":"CONDITION", "condition":{ "condition_type":"AND", "statements":[ { "left":"${P:A:PARSE[0]{description}}", "op":"==", "right":"" } ], "eval":"${XC:ASSIGN:{L:description}:{S:}}", "else_eval":"${XC:COPY:{L:description}:{P:PARSE[0]{description}}}" } }, { "name":"checkforos_version", "operation":"CONDITION", "condition":{ "condition_type":"AND", "statements":[ { "left":"${P:A:PARSE[0]{os_version}}", "op":"==", "right":"" } ], "eval":"${XC:ASSIGN:{L:os_version}:{S:}}", "else_eval":"${XC:COPY:{L:os_version}:{P:PARSE[0]{os_version}}}" } }, { "name":"checkformodel", "operation":"CONDITION", "condition":{ "condition_type":"AND", "statements":[ { "left":"${P:A:PARSE[0]{model}}", "op":"==", "right":"" } ], "eval":"${XC:ASSIGN:{L:model}:{S:}}", "else_eval":"${XC:COPY:{L:model}:{P:PARSE[0]{model}}}" } }, { "name":"checkforactive_users_count", "operation":"CONDITION", "condition":{ "condition_type":"AND", "statements":[ { "left":"${P:A:PARSE[0]{active_users_count}}", "op":"==", "right":"" } ], "eval":"${XC:ASSIGN:{L:active_users_count}:{S:}}", "else_eval":"${XC:COPY:{L:active_users_count}:{P:PARSE[0]{ms_ad_user_data}{active_users_count}}}" } }, { "name":"checkforvendor", "operation":"CONDITION", "condition":{ "condition_type":"AND", "statements":[ { "left":"${P:A:PARSE[0]{vendor}}", "op":"==", "right":"" } ], "eval":"${XC:ASSIGN:{L:vendor}:{S:}}", "else_eval":"${XC:COPY:{L:vendor}:{P:PARSE[0]{vendor}}}" } }, { "name":"assignLVarsNetfromP:discovery:device", "operation":"NOP", "body_list":[ "${XC:COPY:{L:chassis_serial_number}:{P:PARSE[0]{chassis_serial_number}}}", "${XC:COPY:{L:type}:{P:PARSE[0]{type}}", "${XC:COPY:{L:vend}:{P:PARSE[0]{vendor}}}" ] }, { "name":"checkifRouter", "operation":"CONDITION", "condition":{ "condition_type":"AND", "statements":[ { "left":"${P:A:PARSE[0]{type}}", "op":"=~", "right":"(.*ROUTER.*|.*router.*|.*Router.*)" } ], "eval":"${XC:ASSIGN:{L:table}:{S:cmdb_ci_ip_router}}", "next":"checkifhostorfixedforassigningmac" } }, { "name":"checkifswitch", "operation":"CONDITION", "condition":{ "condition_type":"AND", "statements":[ { "left":"${P:A:PARSE[0]{type}}", "op":"=~", "right":"(.*SWITCH.*|.*switch.*|.*Switch.*)" } ], "eval":"${XC:ASSIGN:{L:table}:{S:cmdb_ci_ip_switch}}", "next":"checkifhostorfixedforassigningmac" } }, { "name":"checkifFirewall", "operation":"CONDITION", "condition":{ "condition_type":"AND", "statements":[ { "left":"${P:A:PARSE[0]{type}}", "op":"=~", "right":"(.*FIREWALL.*|.*firewall.*|.*Firewall.*)" } ], "eval":"${XC:ASSIGN:{L:table}:{S:cmdb_ci_ip_firewall}}", "next":"checkifhostorfixedforassigningmac" } }, { "name":"checkifserver", "operation":"CONDITION", "condition":{ "condition_type":"AND", "statements":[ { "left":"${P:A:PARSE[0]{type}}", "op":"=~", "right":"(.*SERVER.*|.*server.*|.*Server.*)" } ], "eval":"${XC:ASSIGN:{L:table}:{S:cmdb_ci_ip_server}}", "next":"checkifhostorfixedforassigningmac" } }, { "name":"checkifLoadBalancer", "operation":"CONDITION", "condition":{ "condition_type":"AND", "statements":[ { "left":"${P:A:PARSE[0]{type}}", "op":"=~", "right":"(.*BALANCER.*|.*balancer.*|.*Balancer.*)" } ], "eval":"${XC:ASSIGN:{L:table}:{S:cmdb_ci_lb}}", "next":"checkifhostorfixedforassigningmac" } }, { "name":"checkifPhone", "operation":"CONDITION", "condition":{ "condition_type":"AND", "statements":[ { "left":"${P:A:PARSE[0]{type}}", "op":"=~", "right":"(.*PHONE.*|.*phone.*|.*Phone.*)" } ], "eval":"${XC:ASSIGN:{L:table}:{S:cmdb_ci_ip_phone}}", "next":"checkifhostorfixedforassigningmac" } }, { "name":"checkifNotsupported", "operation":"CONDITION", "condition":{ "condition_type":"OR", "statements":[ { "left":"${L:A:table}", "op":"==", "right":"" } ], "eval":"${XC:ASSIGN:{L:table}:{S:cmdb_ci_ip_device}}", "next":"checkifhostorfixedforassigningmac" } }, { "name":"checkifhostorfixedforassigningmac", "operation":"CONDITION", "condition":{ "statements":[ { "left":"${E:A:event_type}", "op":"=~", "right":"HOST" } ], "condition_type":"AND", "next":"checkifIPv4orIPv6forhost" } }, { "name":"checkifIPv4orIPv6", "operation":"CONDITION", "condition":{ "statements":[ { "left":"${L:A:addr}", "op":"==", "right":"ipv6addr" } ], "condition_type":"AND", "next":"GetFixedIPv6Mac" } }, { "name":"GetFixedIPv4Mac", "operation":"GET", "parse":"JSON", "transport":{ "path":"${E:A:values{_ref}}?_return_fields=mac,discovered_data.mac_address,discovered_data.vmhost_mac_address,discovered_data.vport_mac_address" }, "wapi":"v2.7", "result":[{ "codes":"200,201,202,203,204", "next":"checkifmacispresent" }] }, { "name":"GetFixedIPv6Mac", "operation":"GET", "parse":"JSON", "transport":{ "path":"${E:A:values{_ref}}?_return_fields=discovered_data.mac_address,discovered_data.vmhost_mac_address,discovered_data.vport_mac_address" }, "wapi":"v2.7", "result":[{ "codes":"200,201,202,203,204", "next":"checkifdiscoveredmac_addressispresent" }] }, { "name":"checkifmacispresent", "operation":"CONDITION", "condition":{ "statements":[ { "left":"${P:A:mac}", "op":"!=", "right":"" } ], "condition_type":"AND", "eval":"${XC:COPY:{L:mac}:{P:mac}}", "next":"getduplicateHostinformation" } }, { "name":"checkifdiscoveredmac_addressispresent", "operation":"CONDITION", "condition":{ "statements":[ { "left":"${P:A:discovered_data.mac_address}", "op":"!=", "right":"" } ], "condition_type":"AND", "eval":"${XC:COPY:{L:mac}:{P:discovered_data.mac_address}}", "next":"getduplicateHostinformation" } }, { "name":"checkifdiscoveredvmhost_mac_addressispresent", "operation":"CONDITION", "condition":{ "statements":[ { "left":"${P:A:discovered_data.vmhost_mac_address}", "op":"!=", "right":"" } ], "condition_type":"AND", "eval":"${XC:COPY:{L:mac}:{P:discovered_data.vmhost_mac_address}}", "next":"getduplicateHostinformation" } }, { "name":"checkifdiscoveredvport_mac_addressispresent", "operation":"CONDITION", "condition":{ "statements":[ { "left":"${P:A:discovered_data.vport_mac_address}", "op":"!=", "right":"" } ], "condition_type":"AND", "eval":"${XC:COPY:{L:mac}:{P:discovered_data.vport_mac_address}}", "next":"getduplicateHostinformation" } }, { "name":"assignnomacfoundforfixed", "operation":"CONDITION", "condition":{ "statements":[ { "left":"1", "op":"==", "right":"1" } ], "condition_type":"AND", "eval":"${XC:ASSIGN:{L:mac}:{S:Unknown}}", "next":"getduplicateHostinformation" } }, { "name":"checkifIPv4orIPv6forhost", "operation":"CONDITION", "condition":{ "statements":[ { "left":"${L:A:addr}", "op":"==", "right":"ipv6addr" } ], "condition_type":"AND", "next":"GetHost_IPv6information" } }, { "name":"GetHost_IPv4information", "operation":"GET", "parse":"JSON", "transport":{ "path":"${E:A:values{_ref}}?_return_fields=mac,discovered_data.mac_address,discovered_data.vmhost_mac_address,discovered_data.vport_mac_address" }, "wapi":"v2.7", "result":[{ "codes":"200,201,202,203,204", "next":"checkifmacispresentforhost" }] }, { "name":"GetHost_IPv6information", "operation":"GET", "parse":"JSON", "transport":{ "path":"${E:A:values{_ref}}?_return_fields=discovered_data.mac_address,discovered_data.vmhost_mac_address,discovered_data.vport_mac_address" }, "wapi":"v2.7", "result":[{ "codes":"200,201,202,203,204", "next":"checkifdiscoveredmac_addressispresentforhost" }] }, { "name":"checkifmacispresentforhost", "operation":"CONDITION", "condition":{ "statements":[ { "left":"${P:A:mac}", "op":"!=", "right":"" } ], "condition_type":"AND", "eval":"${XC:COPY:{L:mac}:{P:mac}}", "next":"getduplicateHostinformation" } }, { "name":"checkifdiscoveredmac_addressispresentforhost", "operation":"CONDITION", "condition":{ "statements":[ { "left":"${P:A:discovered_data.mac_address}", "op":"!=", "right":"" } ], "condition_type":"AND", "eval":"${XC:COPY:{L:mac}:{P:discovered_data.mac_address}}", "next":"getduplicateHostinformation" } }, { "name":"checkifdiscoveredvmhost_mac_addressispresentforhost", "operation":"CONDITION", "condition":{ "statements":[ { "left":"${P:A:discovered_data.vmhost_mac_address}", "op":"!=", "right":"" } ], "condition_type":"AND", "eval":"${XC:COPY:{L:mac}:{P:discovered_data.vmhost_mac_address}}", "next":"getduplicateHostinformation" } }, { "name":"checkifdiscoveredvport_mac_addressispresentforhost", "operation":"CONDITION", "condition":{ "statements":[ { "left":"${P:A:discovered_data.vport_mac_address}", "op":"!=", "right":"" } ], "condition_type":"AND", "eval":"${XC:COPY:{L:mac}:{P:discovered_data.vport_mac_address}}", "next":"getduplicateHostinformation" } }, { "name":"assignnomacfoundforhost", "operation":"CONDITION", "condition":{ "statements":[ { "left":"1", "op":"==", "right":"1" } ], "condition_type":"AND", "eval":"${XC:ASSIGN:{L:mac}:{S:Unknown}}", "next":"getduplicateHostinformation" } }, { "name":"getduplicateHostinformation", "operation":"GET", "transport":{ "path":"record:host?*ServiceNow_Add_Incident=true&${L:A:addr}=${L:A:address}&_return_fields=ipv4addrs,name,extattrs,ipv6addrs" }, "wapi":"v2.7" }, { "name":"checkifnosamehosts", "operation":"CONDITION", "condition":{ "condition_type":"AND", "statements":[ { "left":"${P:A:PARSE[1]}", "op":"!=", "right":"" } ], "eval":"${XC:COPY:{L:sys_id}:{P:PARSE[0]{extattrs}{ServiceNow_SYS_ID}{value}}}${XC:ASSIGN:{L:duplicate}:{S:true}}", "next":"checkifthereisdiscoveryinformation" } }, { "name":"Debug#TEST2", "operation":"NOP", "body":"${XC:DEBUG:{H:}}${XC:DEBUG:{E:}}${XC:DEBUG:{I:}}${XC:DEBUG:{L:}}${XC:DEBUG:{S:}}${XC:DEBUG:{P:}}${XC:DEBUG:{UT:}}${XC:DEBUG:{R:}}" }, { "name":"getduplicateFixedinformation", "operation":"GET", "transport":{ "path":"${L:A:fixed}?*ServiceNow_Add_Incident=true&${L:A:addr}=${L:A:address}&_return_fields=${L:A:addr},name,extattrs" }, "wapi":"v2.7" }, { "name":"checkifnosameFixedAddress", "operation":"CONDITION", "condition":{ "condition_type":"AND", "statements":[ { "left":"${P:A:PARSE[1]}", "op":"!=", "right":"" } ], "next":"checkifthereisdiscoveryinformation", "eval":"${XC:COPY:{L:sys_id}:{P:PARSE[0]{extattrs}{ServiceNow_SYS_ID}{value}}}${XC:ASSIGN:{L:duplicate}:{S:true}}", "else_next":"GETallinterfacesinformation" } }, { "name":"checkifthereisdiscoveryinformation", "operation":"CONDITION", "condition":{ "condition_type":"AND", "statements":[ { "left":"${L:A:discovered}", "op":"==", "right":"false" } ], "next":"Put/updateinformationtoServiceNowSidewithoutdiscoveredinformation", "else_next":"Put/updateinformationtoServiceNowSidewithdiscoveredinformation" } }, { "name":"Put/updateinformationtoServiceNowSidewithoutdiscoveredinformation", "parse":"JSON", "operation":"PUT", "transport":{ "path":"api/now/table/${L:A:table}/${L:A:sys_id}" }, "body_list":[ "{", "\"name\":\"${L:A:name}\",", "\"discovery_source\":\"${E:A:member_ip}\",", "\"short_description\":\"${E:A:event_type}wasaddedfromInfobloxon${L:A:timestamp}\",", "\"ip_address\":\"${L:A:address}\",", "\"u_Location\":\"${L:A:Location}\",", "\"first_discovered\":\"${L:A:timestamp}\"", "}" ], "result":[{ "codes":"200,201,202,203,204", "next":"Checkiffixedorhosttoudpateinformation" }] }, { "name":"Put/updateinformationtoServiceNowSidewithdiscoveredinformation", "parse":"JSON", "operation":"PUT", "transport":{ "path":"api/now/table/${L:A:table}/${L:A:sys_id}" }, "body_list":[ "{", "\"device_type\":\"${L:A:type}\",", "\"discovery_source\":\"${E:A:member_ip}\",", "\"name\":\"${L:A:name}\",", "\"first_discovered\":\"${L:A:timestamp}\",", "\"short_description\":\"${L:A:description}\",", "\"manufacturer\":\"${L:A:vendor}\",", "\"vendor\":\"${L:A:vendor}\",", "\"ip_address\":\"${L:A:address}\",", "\"u_Location\":\"${L:A:Location}\",", "\"comments\":\"os:${L:A:os_version},model:${L:A:model},chassis_serial_number:${L:A:chassis_serial_number}\"", "}" ] }, { "name":"Checkiffixedorhosttoudpateinformation", "operation":"CONDITION", "condition":{ "statements":[ { "left":"${E:A:event_type}", "op":"!~", "right":"FIXED" } ], "condition_type":"AND", "next":"GETHostinformation" } }, { "name":"Updateextattrsforupdatefixedip", "operation":"PUT", "transport":{ "path":"${E:A:values{_ref}}" }, "wapi":"v2.7", "wapi_quoting":"JSON", "body_list":[ "{\"extattrs+\":{\"ServiceNow_SyncedAt\":{\"value\":\"${L:A:timestamp}\"},\"ServiceNow_SYS_ID\":{\"value\":\"${L:A:sys_id}\"},\"ServiceNow_Table\":{\"value\":\"${L:A:table}\"}}}" ], "result":[{ "codes":"200,201,202,203,204", "next":"startofupdatinginterfacesbydeletingoldones" }] }, { "name":"GETHostinformation", "operation":"GET", "transport":{ "path":"record:host?${L:A:addr}=${L:A:address}&name=${E:A:values{host}}" }, "wapi":"v2.7" }, { "name":"Updateextattrsforupdatehostip", "operation":"PUT", "transport":{ "path":"${P:A:PARSE[0]{_ref}}" }, "wapi":"v2.7", "wapi_quoting":"JSON", "body_list":[ "{\"extattrs+\":{\"ServiceNow_SyncedAt\":{\"value\":\"${L:A:timestamp}\"},\"ServiceNow_SYS_ID\":{\"value\":\"${L:A:sys_id}\"},\"ServiceNow_Table\":{\"value\":\"${L:A:table}\"}}}" ] }, { "name":"startofupdatinginterfacesbydeletingoldones", "operation":"CONDITION", "condition":{ "statements":[ { "left":"1", "op":"==", "right":"1" } ], "condition_type":"AND", "next":"checkifipv4oripv6fordeletion" } }, { "name":"secondupdatinginterfacesbycreatingnewones", "operation":"CONDITION", "condition":{ "statements":[ { "left":"1", "op":"==", "right":"1" } ], "condition_type":"AND", "next":"GETallinterfacesinformation" } }, { "name":"thirdupdatingtablewithinterfaces", "operation":"CONDITION", "condition":{ "statements":[ { "left":"1", "op":"==", "right":"1" } ], "condition_type":"AND", "next":"emptyinterfacefieldintable" } }, { "name":"Stopeverthingafterupdate", "operation":"CONDITION", "condition":{ "statements":[ { "left":"1", "op":"==", "right":"1" } ], "condition_type":"AND", "stop":true } }, { "name":"GETallinterfacesinformation", "operation":"GET", "transport":{ "path":"discovery:device?address=${L:A:address}&_return_fields=interfaces" }, "wapi":"v2.7" }, { "name":"checkiftherearenointerfacestoavoidcreatinganerrorbyassigningnothing", "operation":"CONDITION", "condition":{ "condition_type":"AND", "statements":[ { "left":"${P:A:PARSE[0]{interfaces}}", "op":"==", "right":"" } ], "next":"checkifNodiscoveryinformation" } }, { "name":"assignInterface", "operation":"NOP", "body_list":[ "${XC:COPY:{L:interfaces}:{P:PARSE[0]{interfaces}}}" ] }, { "name":"checkiftherearenointerfacesinLnamespace", "operation":"CONDITION", "condition":{ "condition_type":"AND", "statements":[ { "left":"${L:A:interfaces[0]}", "op":"==", "right":"" } ], "next":"checkifNodiscoveryinformation" } }, { "name":"Pop_Interface", "operation":"VARIABLEOP", "variable_ops":[ { "operation":"UNSHIFT", "type":"DICTIONARY", "destination":"L:TempInterface", "source":"L:interfaces" } ] }, { "name":"getinterfaceinformation", "operation":"GET", "transport":{ "path":"${L:A:TempInterface{_ref}}?_return_fields=ifaddr_infos,name,mac,oper_status,description" }, "wapi":"v2.7" }, { "name":"assignInterfaceIP's", "operation":"NOP", "body_list":[ "${XC:COPY:{L:ifaddr_infos}:{P:ifaddr_infos}}", "${XC:COPY:{L:oper_status}:{P:oper_status}}", "${XC:COPY:{L:Interface_mac}:{P:mac}}", "${XC:COPY:{L:InterfaceDescription}:{P:description}}", "${XC:COPY:{L:Interface_name}:{P:name}}" ] }, { "name":"checkiftherearenointerfaceIP's", "operation":"CONDITION", "condition":{ "condition_type":"AND", "statements":[ { "left":"${L:A:ifaddr_infos[0]}", "op":"==", "right":"" } ], "next":"checkiftherearenointerfacesinLnamespace" } }, { "name":"Pop_InterfaceIP", "operation":"VARIABLEOP", "variable_ops":[ { "operation":"UNSHIFT", "type":"DICTIONARY", "destination":"L:TempIfaddr_infos", "source":"L:ifaddr_infos" } ] }, { "name":"checkifinterfaceisIPv4orIPv6forassigningvariable", "operation":"CONDITION", "condition":{ "statements":[ { "left":"${L:A:TempIfaddr_infos{address}}", "op":"!~", "right":":" } ], "condition_type":"AND", "eval":"${XC:ASSIGN:{L:Interface_ip_version}:{S:4}}", "else_eval":"${XC:ASSIGN:{L:Interface_ip_version}:{S:6}}" } }, { "name":"postIPinformationtoServiceNowSide", "parse":"JSON", "operation":"POST", "transport":{ "path":"api/now/table/cmdb_ci_ip_address" }, "body_list":[ "{", "\"mac_address\":\"${L:A:Interface_mac}\",", "\"ip_address\":\"${L:A:TempIfaddr_infos{address}}\",", "\"ip_version\":\"${L:A:Interface_ip_version}\",", "\"description\":\"${L:A:InterfaceDescription}\",", "\"host\":\"${L:A:Host_Name}\",", "\"comments\":\"IP:${L:A:address},Member:${E:A:member_ip}\"", "}" ] }, { "name":"CheckifanymoreIP's", "operation":"CONDITION", "condition":{ "statements":[ { "left":"1", "op":"==", "right":"1" } ], "condition_type":"AND", "next":"checkiftherearenointerfaceIP's" } }, { "name":"checkifNodiscoveryinformation", "operation":"CONDITION", "condition":{ "statements":[ { "left":"${L:A:discovered}", "op":"==", "right":"false" } ], "condition_type":"AND", "next":"postassettoServiceNowSide" } }, { "name":"checkifneedtopostorforduplicateinformation", "operation":"CONDITION", "condition":{ "statements":[ { "left":"${L:A:duplicate}", "op":"==", "right":"true" } ], "condition_type":"AND", "next":"thirdupdatingtablewithinterfaces" } }, { "name":"postinformationtoServiceNowSide", "parse":"JSON", "operation":"POST", "transport":{ "path":"api/now/table/${L:A:table}" }, "body_list":[ "{", "\"device_type\":\"${L:A:type}\",", "\"discovery_source\":\"${E:A:member_ip}\",", "\"name\":\"${L:A:name}\",", "\"first_discovered\":\"${L:A:timestamp}\",", "\"mac_address\":\"${L:A:mac}\",", "\"short_description\":\"${L:A:description}\",", "\"manufacturer\":\"${L:A:vendor}\",", "\"vendor\":\"${L:A:vendor}\",", "\"ip_address\":\"${L:A:address}\",", "\"model_id\":\"${L:A:model}\",", "\"u_Location\":\"${L:A:Location}\",", "\"host\":\"${L:A:Host_Name}\",", "\"firmware_version\":\"${L:A:os_version}\",", "\"serial_number\":\"${L:A:chassis_serial_number}\",", "\"comments\":\"model:${L:A:model}\"", "}" ] }, { "name":"Debug#1", "operation":"NOP", "body":"${XC:DEBUG:{H:}}${XC:DEBUG:{E:}}${XC:DEBUG:{I:}}${XC:DEBUG:{L:}}${XC:DEBUG:{S:}}${XC:DEBUG:{P:}}${XC:DEBUG:{UT:}}${XC:DEBUG:{R:}}" }, { "name":"checkifassetwasadded", "operation":"CONDITION", "condition":{ "statements":[ { "left":"${R:A:RC}", "op":"!=", "right":"201" } ], "condition_type":"AND", "error":true } }, { "name":"Debug#2", "operation":"NOP", "body":"${XC:DEBUG:{H:}}${XC:DEBUG:{E:}}${XC:DEBUG:{I:}}${XC:DEBUG:{L:}}${XC:DEBUG:{S:}}${XC:DEBUG:{P:}}${XC:DEBUG:{UT:}}${XC:DEBUG:{R:}}" }, { "name":"assign_SYS_IDfromcreatedobject", "operation":"NOP", "body_list":[ "${XC:COPY:{L:sys_id}:{P:result{sys_id}}}" ] }, { "name":"Debug#3", "operation":"NOP", "body":"${XC:DEBUG:{H:}}${XC:DEBUG:{E:}}${XC:DEBUG:{I:}}${XC:DEBUG:{L:}}${XC:DEBUG:{S:}}${XC:DEBUG:{P:}}${XC:DEBUG:{UT:}}${XC:DEBUG:{R:}}" }, { "name":"emptyinterfacefieldintable", "parse":"JSON", "operation":"PUT", "transport":{ "path":"api/now/table/${L:A:table}/${L:A:sys_id}" }, "body_list":[ "{", "\"u_interfaces\":\"\"", "}" ] }, { "name":"Debug#4", "operation":"NOP", "body":"${XC:DEBUG:{H:}}${XC:DEBUG:{E:}}${XC:DEBUG:{I:}}${XC:DEBUG:{L:}}${XC:DEBUG:{S:}}${XC:DEBUG:{P:}}${XC:DEBUG:{UT:}}${XC:DEBUG:{R:}}" }, { "name":"Getallipaddress's", "operation":"GET", "transport":{ "path":"api/now/table/cmdb_ci_ip_address?sysparm_query=comments=IP:${L:A:address},Member:${E:A:member_ip}&sysparm_fields=sys_id" }, "parse":"JSON" }, { "name":"Debug#5", "operation":"NOP", "body":"${XC:DEBUG:{H:}}${XC:DEBUG:{E:}}${XC:DEBUG:{I:}}${XC:DEBUG:{L:}}${XC:DEBUG:{S:}}${XC:DEBUG:{P:}}${XC:DEBUG:{UT:}}${XC:DEBUG:{R:}}" }, { "name":"Assign_Interface_IP's_For_A_Second_Time", "operation":"NOP", "body_list":[ "${XC:COPY:{L:InterfaceAddress}:{P:result}}"] }, { "name":"Debug#6", "operation":"NOP", "body":"${XC:DEBUG:{H:}}${XC:DEBUG:{E:}}${XC:DEBUG:{I:}}${XC:DEBUG:{L:}}${XC:DEBUG:{S:}}${XC:DEBUG:{P:}}${XC:DEBUG:{UT:}}${XC:DEBUG:{R:}}" }, { "name":"checkiftherearenoaddressbeforestarting", "operation":"CONDITION", "condition":{ "condition_type":"AND", "statements":[ { "left":"${L:A:InterfaceAddress[0]}", "op":"==", "right":"" } ], "next":"assign_SYS_IDfromcreatedobject" } }, { "name":"Debug#7", "operation":"NOP", "body":"${XC:DEBUG:{H:}}${XC:DEBUG:{E:}}${XC:DEBUG:{I:}}${XC:DEBUG:{L:}}${XC:DEBUG:{S:}}${XC:DEBUG:{P:}}${XC:DEBUG:{UT:}}${XC:DEBUG:{R:}}" }, { "name":"Pop_Interface_sys_id", "operation":"VARIABLEOP", "variable_ops":[ { "operation":"UNSHIFT", "type":"DICTIONARY", "destination":"L:TempInterfaceAddress", "source":"L:InterfaceAddress" } ] }, { "name":"Debug#8", "operation":"NOP", "body":"${XC:DEBUG:{H:}}${XC:DEBUG:{E:}}${XC:DEBUG:{I:}}${XC:DEBUG:{L:}}${XC:DEBUG:{S:}}${XC:DEBUG:{P:}}${XC:DEBUG:{UT:}}${XC:DEBUG:{R:}}" }, { "name":"Get_items_from_interfaces", "operation":"GET", "transport":{ "path":"api/now/table/${L:A:table}/${L:A:sys_id}?sysparm_fields=u_interfaces" }, "parse":"JSON" }, { "name":"Debug#9", "operation":"NOP", "body":"${XC:DEBUG:{H:}}${XC:DEBUG:{E:}}${XC:DEBUG:{I:}}${XC:DEBUG:{L:}}${XC:DEBUG:{S:}}${XC:DEBUG:{P:}}${XC:DEBUG:{UT:}}${XC:DEBUG:{R:}}" }, { "name":"putinterfacetoobject", "parse":"JSON", "operation":"PUT", "transport":{ "path":"api/now/table/${L:A:table}/${L:A:sys_id}" }, "body_list":[ "{", "\"u_interfaces\":\"${P:A:result{u_interfaces}},${L:A:TempInterfaceAddress{sys_id}}\"", "}" ] }, { "name":"Debug#10", "operation":"NOP", "body":"${XC:DEBUG:{H:}}${XC:DEBUG:{E:}}${XC:DEBUG:{I:}}${XC:DEBUG:{L:}}${XC:DEBUG:{S:}}${XC:DEBUG:{P:}}${XC:DEBUG:{UT:}}${XC:DEBUG:{R:}}" }, { "name":"checkiftherearenoaddress", "operation":"CONDITION", "condition":{ "condition_type":"AND", "statements":[ { "left":"${L:A:InterfaceAddress[0]}", "op":"==", "right":"" } ], "next":"checkifneedtoupdatedextattrsorforduplicateinformation", "else_next":"Pop_Interface_sys_id" } }, { "name":"Debug#11", "operation":"NOP", "body":"${XC:DEBUG:{H:}}${XC:DEBUG:{E:}}${XC:DEBUG:{I:}}${XC:DEBUG:{L:}}${XC:DEBUG:{S:}}${XC:DEBUG:{P:}}${XC:DEBUG:{UT:}}${XC:DEBUG:{R:}}" }, { "name":"JumptoupdateNIOS", "operation":"CONDITION", "condition":{ "condition_type":"AND", "statements":[ { "left":"1", "op":"==", "right":"1" } ], "next":"assignipv4oripv6iptouseforGETrequests" } }, { "name":"postassettoServiceNowSide", "parse":"JSON", "operation":"POST", "transport":{ "path":"api/now/table/${L:A:table}" }, "body_list":[ "{", "\"name\":\"${L:A:name}\",", "\"discovery_source\":\"${E:A:member_ip}\",", "\"short_description\":\"${E:A:event_type}wasaddedfromInfobloxon${L:A:timestamp}\",", "\"ip_address\":\"${L:A:address}\",", "\"mac_address\":\"${L:A:mac}\",", "\"host\":\"${L:A:Host_Name}\",", "\"u_Location\":\"${L:A:Location}\",", "\"first_discovered\":\"${L:A:timestamp}\"", "}" ] }, { "name":"checkifinformationwasadded", "operation":"CONDITION", "condition":{ "statements":[ { "left":"${R:A:RC}", "op":"!=", "right":"201" } ], "condition_type":"AND", "stop":true } }, { "name":"assign_SYS_IDfromcreatedobjectforasset", "operation":"NOP", "body_list":[ "${XC:COPY:{L:sys_id}:{P:result{sys_id}}}" ] }, { "name":"checkifneedtoupdatedextattrsorforduplicateinformation", "operation":"CONDITION", "condition":{ "statements":[ { "left":"${L:A:duplicate}", "op":"==", "right":"true" } ], "condition_type":"AND", "next":"Stopeverthingafterupdate" } }, { "name":"assignipv4oripv6iptouseforGETrequests", "operation":"CONDITION", "condition":{ "condition_type":"AND", "statements":[ { "left":"${E::values{ipv4addr}}", "op":"!=", "right":"" } ], "eval":"${XC:COPY:{L:GetIP}:{E:values{ipv4addr}}}", "else_eval":"${XC:COPY:{L:GetIP}:{E:values{ipv6addr}}", "else_next":"GetIPv6Fixed_ref" } }, { "name":"GetIPv4Fixed_ref", "operation":"GET", "transport":{ "path":"fixedaddress?ipv4addr=${L:U:GetIP}&network_view=${L:U:network_view}&_return_fields=extattrs" }, "wapi":"v2.7" }, { "operation":"CONDITION", "name":"wapi_response_getIPv4Fix_ref", "condition":{ "condition_type":"AND", "statements":[ { "left":"${P:A:PARSE[0]{_ref}}", "op":"!=", "right":"" } ], "next":"Get_Objref" } }, { "name":"GetHostIPv4_ref", "operation":"GET", "transport":{ "path":"record:host?ipv4addr=${L:U:GetIP}&network_view=${L:U:network_view}&_return_fields=extattrs" }, "wapi":"v2.7" }, { "operation":"CONDITION", "name":"wapi_response_getIPv4Host_ref", "condition":{ "condition_type":"AND", "statements":[ { "left":"${P:A:PARSE[0]{_ref}}", "op":"!=", "right":"" } ], "next":"Get_Objref" } }, { "name":"IPv4objectwasnotfound", "operation":"CONDITION", "condition":{ "condition_type":"OR", "statements":[ { "left":"1", "op":"==", "right":"1" } ], "error":true } }, { "name":"GetIPv6Fixed_ref", "operation":"GET", "transport":{ "path":"ipv6fixedaddress?ipv6addr=${L:U:GetIP}&network_view=${L:U:network_view}&_return_fields=extattrs" }, "wapi":"v2.7" }, { "operation":"CONDITION", "name":"wapi_response_getIPv6Fix_ref", "condition":{ "condition_type":"AND", "statements":[ { "left":"${P:A:PARSE[0]{_ref}}", "op":"!=", "right":"" } ], "next":"Get_Objref" } }, { "name":"GetHostIPv6_ref", "operation":"GET", "transport":{ "path":"record:host?ipv6addr=${L:U:GetIP}&network_view=${L:U:network_view}&_return_fields=extattrs" }, "wapi":"v2.7" }, { "operation":"CONDITION", "name":"wapi_response_getIPv6Host_ref", "condition":{ "condition_type":"AND", "statements":[ { "left":"${P:A:PARSE[0]{_ref}}", "op":"!=", "right":"" } ], "next":"Get_Objref" } }, { "name":"Get_Objref", "operation":"CONDITION", "condition":{ "condition_type":"AND", "statements":[ { "left":"${P:A:PARSE[0]{_ref}}", "op":"!=", "right":"" } ], "eval":"${XC:COPY:{L:Obj_ref}:{P:PARSE[0]{_ref}}}" } }, { "name":"IPv6objectwasnotfound", "operation":"CONDITION", "condition":{ "condition_type":"OR", "statements":[ { "left":"${L:A:Obj_ref}", "op":"==", "right":"" } ], "error":true } }, { "name":"Updateextattrs", "operation":"PUT", "transport":{ "path":"${L:A:Obj_ref}" }, "wapi":"v2.7", "wapi_quoting":"JSON", "body_list":[ "{\"extattrs+\":{\"ServiceNow_SyncedAt\":{\"value\":\"${L:A:timestamp}\"},\"ServiceNow_SYS_ID\":{\"value\":\"${L:A:sys_id}\"},\"ServiceNow_Table\":{\"value\":\"${L:A:table}\"}}}" ] }, { "name":"Stopeverthing", "operation":"CONDITION", "condition":{ "statements":[ { "left":"1", "op":"==", "right":"1" } ], "condition_type":"AND", "stop":true } }, { "name":"checkifipv4oripv6forassigningvariables", "operation":"CONDITION", "condition":{ "condition_type":"AND", "statements":[ { "left":"${E:A:values{ipv4addr}}", "op":"!=", "right":"" } ], "eval":"${XC:COPY:{L:address}:{E:values{ipv4addr}}}${XC:ASSIGN:{L:addr}:{S:ipv4addr}}${XC:ASSIGN:{L:fixed}:{S:fixedaddress}}", "else_eval":"${XC:COPY:{L:address}:{E:values{ipv6addr}}}${XC:ASSIGN:{L:addr}:{S:ipv6addr}}${XC:ASSIGN:{L:fixed}:{S:ipv6fixedaddress}}" } }, { "name":"getduplicateHostinformationtostopifpresent", "operation":"GET", "transport":{ "path":"record:host?*ServiceNow_Add_Incident=true&${L:A:addr}=${L:A:address}&_return_fields=ipv4addrs,name,extattrs,ipv6addrs" }, "wapi":"v2.7" }, { "name":"stopifsamehostanddeleting", "operation":"CONDITION", "condition":{ "condition_type":"AND", "statements":[ { "left":"${P:A:PARSE[0]}", "op":"!=", "right":"" }, { "left":"${E:A:operation_type}", "op":"==", "right":"DELETE" } ], "stop":true } }, { "name":"getduplicateFixedinformationststopifpresent", "operation":"GET", "transport":{ "path":"${L:A:fixed}?*ServiceNow_Add_Incident=true&${L:A:addr}=${L:A:address}&_return_fields=${L:A:addr},name,extattrs" }, "wapi":"v2.7" }, { "name":"stopifsamefixedIPanddeleting", "operation":"CONDITION", "condition":{ "condition_type":"AND", "statements":[ { "left":"${P:A:PARSE[0]}", "op":"!=", "right":"" }, { "left":"${E:A:operation_type}", "op":"==", "right":"DELETE" } ], "stop":true } }, { "name":"DeleteobjectfromServiceNow", "operation":"DELETE", "parse":"JSON", "transport":{ "path":"api/now/table/${E:A:values{extattrs}{ServiceNow_Table}{value}}/${E:A:values{extattrs}{ServiceNow_SYS_ID}{value}}" }, "result":[{ "codes":"201,202,203,204", "next":"checkifnetworktostop" }] }, { "name":"checkifnetworktostop", "operation":"CONDITION", "condition":{ "condition_type":"AND", "statements":[ { "left":"${E:A:event_type}", "op":"==", "right":"NETWORK_IPV4" }, { "left":"${E:A:event_type}", "op":"==", "right":"IPv6Network" } ], "stop":true } }, { "name":"checkifipv4oripv6fordeletion", "operation":"CONDITION", "condition":{ "condition_type":"AND", "statements":[ { "left":"${E:A:values{ipv4addr}}", "op":"!=", "right":"" } ], "eval":"${XC:COPY:{L:address}:{E:values{ipv4addr}}}", "else_eval":"${XC:COPY:{L:address}:{E:values{ipv6addr}}}" } }, { "name":"Getallipaddress'sfordeletion", "operation":"GET", "transport":{ "path":"api/now/table/cmdb_ci_ip_address?sysparm_query=comments=IP:${L:A:address},Member:${E:A:member_ip}&sysparm_fields=sys_id" }, "parse":"JSON" }, { "name":"Assign_Interface_IP's_For_Deletion", "operation":"NOP", "body_list":[ "${XC:COPY:{L:InterfaceAddress}:{P:result}}" ] }, { "name":"checkifthereareanyaddressfordeletion", "operation":"CONDITION", "condition":{ "condition_type":"AND", "statements":[ { "left":"${L:A:InterfaceAddress[0]}", "op":"==", "right":"" } ], "next":"DeleteComplete" } }, { "name":"Pop_Interface_sys_id_for_deletion", "operation":"VARIABLEOP", "variable_ops":[ { "operation":"UNSHIFT", "type":"DICTIONARY", "destination":"L:TempInterfaceAddress", "source":"L:InterfaceAddress" } ] }, { "name":"DeleteIP_Address", "operation":"DELETE", "parse":"JSON", "transport":{ "path":"api/now/table/cmdb_ci_ip_address/${L:A:TempInterfaceAddress{sys_id}}" }, "result":[{ "codes":"201,202,203,204", "next":"checkifthereareanyaddressfordeletion" }] }, { "name":"DeleteComplete", "operation":"CONDITION", "condition":{ "statements":[ { "left":"${L:A:duplicate}", "op":"==", "right":"true" } ], "condition_type":"AND", "next":"secondupdatinginterfacesbycreatingnewones", "else_stop":true } }, { "name":"checkifhostorfixedaddress", "operation":"CONDITION", "condition":{ "condition_type":"AND", "statements":[ { "left":"${E:A:event_type}", "op":"!~", "right":"HOST" } ], "next":"checkiffixedipisipv4", "else_next":"checkifhostisipv4" } }, { "name":"checkifhostisipv4", "operation":"CONDITION", "condition":{ "condition_type":"AND", "statements":[ { "left":"${E:A:event_type}", "op":"!~", "right":"IPV4" } ], "next":"assignLVarsNetipv6hostname", "else_next":"assignLVarsNetipv4hostname" } }, { "name":"checkiffixedipisipv4", "operation":"CONDITION", "condition":{ "condition_type":"AND", "statements":[ { "left":"${E:A:event_type}", "op":"!~", "right":"IPV4" } ], "next":"assignLVarsNetipv6fixedIPname", "else_next":"assignLVarsNetipv4fixedIPname" } }, { "name":"assignLVarsNetipv4hostname", "operation":"CONDITION", "condition":{ "condition_type":"AND", "statements":[ { "left":"1", "op":"==", "right":"1" } ], "eval":"${XC:COPY:{L:name}:{E:values{host}}}", "next":"jumptoaddahostifnodiscoveryinformation" } }, { "name":"assignLVarsNetipv6hostname", "operation":"CONDITION", "condition":{ "condition_type":"AND", "statements":[ { "left":"1", "op":"==", "right":"1" } ], "eval":"${XC:COPY:{L:name}:{E:values{host}}}", "next":"jumptoaddahostifnodiscoveryinformation" } }, { "name":"assignLVarsNetipv4fixedIPname", "operation":"CONDITION", "condition":{ "condition_type":"AND", "statements":[ { "left":"1", "op":"==", "right":"1" } ], "eval":"${XC:COPY:{L:name}:{E:values{ipv4addr}}}", "next":"jumptoaddahostifnodiscoveryinformation" } }, { "name":"assignLVarsNetipv6fixedIPname", "operation":"CONDITION", "condition":{ "condition_type":"AND", "statements":[ { "left":"1", "op":"==", "right":"1" } ], "eval":"${XC:COPY:{L:name}:{E:values{ipv6addr}}}", "next":"jumptoaddahostifnodiscoveryinformation" } }, { "name":"assignLVarsNetfromE:fornetwork", "operation":"NOP", "body_list":[ "${XC:COPY:{L:event_type}:{E:event_type}}", "${XC:COPY:{L:timestamp}:{E:timestamp}}", "${XC:COPY:{L:object_type}:{E:object_type}}", "${XC:COPY:{L:Obj_ref}:{E:values{_ref}}}", "${XC:COPY:{L:network}:{E:values{network}}}", "${XC:COPY:{L:network_view}:{E:values{network_view}}}" ] }, { "name":"postnetworktoServiceNowSide", "parse":"JSON", "operation":"POST", "transport":{ "path":"api/now/table/cmdb_ci_ip_network" }, "body_list":[ "{", "\"discovery_source\":\"${E:A:member_ip}\",", "\"first_discovered\":\"${L:A:timestamp}\",", "\"u_Location\":\"${L:A:Location}\",", "\"short_description\":\"Network${L:A:network}createdon${L:A:timestamp}\",", "\"name\":\"${L:A:network}\",", "\"subnet\":\"${L:A:network}\"", "}" ] }, { "name":"checkifnetworkwasposted", "operation":"CONDITION", "condition":{ "statements":[ { "left":"${R:A:RC}", "op":"!=", "right":"201" } ], "condition_type":"AND", "error":true } }, { "name":"Updateextattrsfornetwork", "operation":"PUT", "transport":{ "path":"${L:A:Obj_ref}" }, "wapi":"v2.7", "wapi_quoting":"JSON", "body_list":[ "{\"extattrs+\":{\"ServiceNow_SyncedAt\":{\"value\":\"${L:A:timestamp}\"},\"ServiceNow_SYS_ID\":{\"value\":\"${P:A:result{sys_id}}\"},\"ServiceNow_Table\":{\"value\":\"cmdb_ci_ip_network\"}}}" ] }, { "name":"networkComplete", "operation":"CONDITION", "condition":{ "statements":[ { "left":"1", "op":"==", "right":"1" } ], "condition_type":"AND", "stop":true } }, { "name":"DeletenetworkfromServiceNow", "operation":"DELETE", "parse":"JSON", "transport":{ "path":"api/now/table/cmdb_ci_ip_network/${E:A:values{extattrs}{ServiceNow_SYS_ID}{value}}" }, "result":[{ "codes":"201,202,203,204", "stop":true }] } ] }