To filter BACnet available devices on the network and configure their representation inside the system, you can use the interface of the BACnet Endpoint Configurator functional item. This functional item has a fixed UID da:item:BACnet:Controller:EndpointConfigurator. Its property and operations help you with dynamic changes, so that you don't have to start all from the beginning:
property endpoints – contains the set of BACnet endpoints configured by this functional item. Each entry in the set includes information for device identification – set of device instance numbers (devices) and/or set of ranges of device instance numbers (deviceRanges); and information for device representation – set of BACnet object identifiers and their properties (objects with instances and properties) that shall be processed by the adapter. The JSON representation of such an entry is the same as the device template defined on BACnet Device Endpoint Configuration JSON.
operation putDeviceInstances – adds or updates configured end points for multiple sets of BACnet devices.
operation removeDeviceInstances – removes BACnet device instances from the configuration.
operation removeDeviceRange – removes all the BACnet device instances inside the given closed range from the configuration.
operation getDeviceEndpoints – retrieves the currently configured end points of a given BACnet device.
The device template configuration is defined in a BACnet adapter-specific JSON config file. Its structure is described via the sample from Setting Initial Configuration guide.