Hi,
Please refer to the following code. Make sure the last argument is "BOOLEAN".
Sub test()
Dim oDoc As PartDocument
Set oDoc = ThisApplication.ActiveDocument
'bool
Dim oUserParam1 As UserParameter
Set oUserParam1 = oDoc.ComponentDefinition.Parameters.UserParameters.AddByValue("Ready", True, "BOOLEAN")
'text
Dim oUserParam2 As UserParameter
Set oUserParam2 = oCompDef.Parameters.UserParameters.AddByValue("Name", "rocky", "TEXT")
'double
Dim oUserParam3 As UserParameter
Set oUserParam3 = oCompDef.Parameters.UserParameters.AddByValue("Length", 5, kCentimeterLengthUnits)
End Sub
Best regards,

Xiaodong Liang
Developer Consultant
Autodesk Developer Technical Services