Custom Node API
Parameters enable users to customize the behavior of your custom node.
Defining Parameters
When you're creating a custom node you can add a parameter by clicking the "Add parameter" button.
Name
- A unique name for the parameter.Type
- The type of the parameter. See available types below.Description
- Describe what the parameter does. This is presented as documentation to the userDefault value
- The default value the node will use if the user doesn't configure the parameter
Using Parameters
Now that you've defined some parameters you can use them in your custom node's logic.
To use a parameter you include $PARAM_NAME
in your node's logic. When the custom node is applied to a feed we replace all of the parameter usage with the parameter values.
NOTE: This replacement differs based on the parameter type and the node you're trying to use it in.
Paramater Types
input
This is a simple string. The value of the parameter will be inserted wherever it is used.

regex
Similar to the input
type but the value is intended to be used in a regex
node. It will properly escape the regex for usage in the node.

number
Get a number value from a user. These params work well with nodes that accept a number (like Text Similarity). If they are used in a custom node without any surrounding characters, a number will be inserted. Otherwise it will be inserted into a string.
For example here we can use it to configure the "Language Analysis" node.

toggle
A toggle is a switch that the user can turn on or off. When you pair this with the "Param Compare" node you can make very complex logic.
In the following example we have a toggle called "Animals". Using "Param Compare" and "Logic" nodes we can do some thing based on if the parameter is true or false. In this example when Animals is on, dogs and cats are in the feed. When it is off, humans are in the feed.

list
This type of parameter is specially built to work with nodes that take lists:
- Word List
- Entity List
- Users
Do not use this node in places that don't use lists, bad things will happen.
When using a list you still use the $
syntax. The list will be expanded when your custom node is used.

List params also work with the Each
node described below.
select
A select parameter lets the user of your custom node select a value from a list of options.

Extra Feed Nodes
When you're in the custom node editor you have a few nodes types available to you that aren't in the standard feed editor. These are purpose built for usage with parameters and enable you do to lots of different things
Param Compare
This node can be used to compare a param value to another value.
Use cases:
- See if a number param is greater/lesser than a value
- Check if a boolean param is true/false
- Check if an input param is equal to a string of character

Each
The each node is quite powerful. It allows you to created nodes for each item in a list parameter.
When using the each node you will attach nodes to it. When your custom node is applied the attach node will be generated for each item in the list. To access the current list item you use $PARAM_NAME_ITEM
(your parameter's name plus _ITEM
).
In the following example we loop over each item in the $ANIMALS
parameter and add a word list for both the singular and plural form of the animal.
