Operators allow you to choose the path your workflow should take. Use choice operators to compare two items, or use a loop to perform a set of actions on every item in a list. Operators also include the end steps, used to mark the end of a workflow. Review the operators listed below for more information.
For Define Variable, it is possible in here to get the current timestamp by using a particular function, however this function is not visible in the documentation. It would be nice if this is added, together with all other functions we can call that are so far not documented.
Since the creation of this ticket additional information has been added to the documentation for the Variable Selectors generation of JSONPath expressions using the JSON Slice implementation of JSONPath. This information can be used to create customized expressions.
@adamian We do not currently document custom functions, so the Variable Selectors documentation was updated to include information about using the JSON Slice implementation of JSONPath to create custom configurations like the $.now() function.
@GraemeF has created an action item for the new year to explore documenting common custom functions and use cases, including the $.now() function. We appreciate your help improving our docs!
The Variable Selector generates a JSONPath expression using the JSON Slice implementation of JSONPath. You can learn more about the JSON Slice implementation of JSONPath, used in actions and operators, including the specifications it is based on at the JSON Slice GitHub repository. You can use the evaluator at jsonpath.com to practice and test your JSONPath expressions against sample inputs. Note that this implementation is not used for trigger filters.
I think this reply doesn’t answer my initial question.
From what I can see, and please correct me where I am wrong:
The linked JSONPath tester (jsonpath.com) does NOT support $.now()
SailPoint’s implementation supports $.now() but it has NOT documented this function anywhere
You are saying that the documentation can be used to create custom configurations like the $.now() function. I have no idea how any customer would be able to implement a function, let’s call it $.now2(), to return the same information as $.now() in an ISC workflow.
Thanks for your reply @adamian. We’re going to follow up again with the PM and engineering teams to see how we can improve this information. We appreciate your patience with the holiday delays.
Hi @adamian. Thank you for helping us improve our documentation. Based on your feedback, we’ve added a new page to our documentation named JSON Path Expressions within Workflows providing details of all standard and enhanced functions currently supported by all workflow actions and operators.
The section on Compare Timestamps states that ISO 8601 date/time formats are accepted, but I’ve had real trouble getting some of the ISO 8601 compliant formats to work in Workflows. Is ISO 8601 correct, or is it meant to be RFC 3339 (RFC 3339: Date and Time on the Internet: Timestamps) compliant?
Since both of the above have a range of date/timestamp formats that are acceptable, it would be handy to have the documentation include some examples of formats that are accepted by Workflows, otherwise we spend a bunch of time trialling different formats.
Hi @RRLatFlinders! Thank you for your input. We’ve created a Jira issue to review your feedback and we’ll update the comment thread when it’s been addressed: SAASDOCS-9125.
Hi @RRLatFlinders Thank you for helping us improve our documentation. Based on your feedback, we’ve updated the Compare Timestamps documentation to clarify that the value must be a date and time in ISO 8601 format that can be formatted to RFC 3339, and included an example.
https://community.sailpoint.com/t5/SaaS-Release-Notes/tkb-p/saas-release-notes
See release notes of April 4th 2025, (somehow I am not able to produce a link pointing to this specific date, so you would need to go there yourself). Note that max input for the loop operation is now 250 instead of 100. I can recall this documentation page to refer to the limit, but I am not seeing it anymore. Therefore I wondered if the limit was removed, but instead I see it has been updated. Can you please ensure that this documentation describing the limitations is back here again? This includes max input size, both in number of records and in size MB wise.
In the Loop Input field, be sure to select an array containing the type of input required by the first step of the loop. For example, if the first step in your loop is Manage Access, select an array of access items such as the accessItems object returned by the Get Access step. The array you select can contain no more than 250 items.