Getting started with the SailPoint Rule Development Kit


We recently launched our newest tool in the SailPoint Developer Community: The Rule Development Kit, or RDK. The RDK makes it easier for you to develop both cloud and connector rules, test and build locally, saving you time and money when having rules implemented in your environment. We’ll be hearing from our advocate, Tyler, as he teaches us what SailPoint’s new Rule Development Kit is and how to use it to develop rules faster, and with less effort.


Do you have the xml rule, test and transform that can be pasted in to review in it’s entirety?

Thank you for showing the IntelliSense option to see the syntax and code completion within the xml.

Thanks for posting the video. A couple of things come to mind, which would make our lives a lot easier:

  • We should be able to deploy cloud rules without asking somebody else to do it for us. This will allow a quicker develop/test cycle. Some unreadable transforms (cause they get so big) would be better suited as tested Java code, but asking for deployment every time is a barrier.
    I understand that you need to review the rule so that it doesn’t misbehave - e.g. if they contain infinite loops, but this could be probably solved with a time limit for the rule / additional conditions. I would be fine to have a special debug mode for the sandbox tenants, where the rule will be completely deactivated if it creates too much trouble.

  • Having direct access to logs for the cloud rules is very important, especially when the documentation is not 100% clear of what is available in the cloud and how the existing objects behave. In the rule development kit we only have mockups of objects, without functionality to be investigated.

  • Is the available? It is clear that if Tyler had to write his own script to test transforms this is a pain point to other developers as well. => I guess it is the one created here: Getting started with SailPoint SDKs

  • All 3 firstValid transforms in the presentation have a default of the year 1970. Unclear why this is needed from a business perspective. How would this be implemented when any missing value should be ignored completely. If all 3 values are missing, the rule should return null.
    A way of handling null values should be implemented, currently the static transform can’t handle this and will just error out – you can’t test if a parameter is null in the static transform, as other transforms return undefined, not null.