Add values in project parameter

The purpose of dynamo is to add the values in project parameter. I am not sure what is wrong in the code.

import clr
import sys
sys.path.append('C:\Program Files (x86)\IronPython 2.7\Lib')
import System
from System import Array
from System.Collections.Generic import *
clr.AddReference('ProtoGeometry')
from Autodesk.DesignScript.Geometry import *
clr.AddReference("RevitNodes")
import Revit
clr.ImportExtensions(Revit.Elements)
clr.ImportExtensions(Revit.GeometryConversion)
clr.AddReference("RevitServices")
import RevitServices
from RevitServices.Persistence import DocumentManager 
from RevitServices.Transactions import TransactionManager 

clr.AddReference("RevitAPI")
clr.AddReference("RevitAPIUI")

import Autodesk 
from Autodesk.Revit.DB import *
from Autodesk.Revit.UI import *

doc = DocumentManager.Instance.CurrentDBDocument
uiapp = DocumentManager.Instance.CurrentUIApplication 
app = uiapp.Application 
uidoc = uiapp.ActiveUIDocument


idno = IN[0]
lvlid = IN[3].Id
cn = []

collector3 = FilteredElementCollector(doc).OfCategory(BuiltInCategory.OST_PipeAccessory).OfClass(FamilyInstance).ToElements()

eltlist =[]
for i in collector3:
		
	if i.Symbol.FamilyName in IN[1] and lvlid.ToString() == i.LevelId.ToString() :
		eltlist.append(i)
		
for j in eltlist:
		TransactionManager.Instance.EnsureInTransaction(doc)
		j.LookupParameter(IN[2]).Set(idno.ToString())
		idno += 1
		TransactionManager.Instance.TransactionTaskDone()
		

OUT = eltlist

not sure pipe has levelId
you can try to get the parameter of its “reference level”
i.GetParameters(‘Reference Level’)[0].AsValueString()

Hello @SHIBUJOSE

Can you share a screenshot of your dynamo script with the error message?