$args can be added to the end of the URL, and a single piston can process differently depending on which args are passed.
For example, when I pass args from an external app, I add them to the end of the piston’s URL, like this:
Then my piston can use code like:

Do stuff…
Note: The receiving piston should have no triggers
whatsoever.
Once saved, you should see this up top:
This method assumes that all the URLs are the same, but the endings are slightly different.
(IE: the same piston is triggered each time, but the $args changes the path of execution)
For what it’s worth, I know it is human nature to reduce & compartmentalize, but when it comes to coding, oftentimes a longer clean code will process better than a single line of craziness…
IE: If written well with indented conditions
, it is usually possible to get less code processing with each execution… and of course, less processing means less lag in our SmartHome.
Just my two cents.