How to choose the Signal ID and what is it used for?
A Signal ID is needed to uniquely identify the Signals, which are created by a Skill. Only with the Signal ID Action Engine is able to determine during each skill execution if a Signal exists already or needs to be created.
The Signal ID is created out of the attributes of the Signal table (1): choose the minimum set of attributes that is needed to uniquely determine each Signal. The combination of values of the chosen columns is considered as the Signal ID.
Furthermore, the ID is used and filtered when defining a details table and during routing. Therefore, it can be beneficial to choose filterable columns. A warning is included if a non-filterable column is chosen as ID. This does not necessarily pose a problem.
Example: In the use case 'Create overdue invoice' (see screenshot) the order number is used as Signal ID since the Signal is created on an order basis and therefore the order number uniquely identifies the Signal. In case, an order has partial deliveries, which are also invoiced separately, the order number would not be sufficient anymore. Then the order number in combination with the delivery number can be used as Signal ID.
In most cases, the sales order number, purchase order number, or the case key is used as Signal ID.
Warning
Keep in mind that new Signals will be created with every change of the Signal ID. Therefore, properly choose your Signal ID in the beginning and do not change it later.