Keyboard Maestro: RSA Archer Deep Link

This macro will only be of interest to RSA Archer users, but it’s pretty useful to me, so I thought I’d share it. The macro asks for the tracking ID of an Archer record and creates a deep link to the record.

In this example, I have the macro configured to create a link to a Finding, so I set the trigger to the string fdl. When that string is typed, the macro asks for the tracking ID of the record, constructs the link and pastes it into the application where I typed the trigger string.

In a deep link, Archer percent-encodes any character that isn’t alphanumeric. But I had trouble getting the Keyboard Maestro variables (since they contain percent signs) to play nicely with the percent-encoded URL. I solved this problem by setting the RecordLink variable to a path that’s not percent-encoded: /GenericContent/Record.aspx?id=%Variable%TrackingID%&moduleId=%Variable%ModuleID%. It contains the tokens for the TrackingID and ModuleID variables.

The Execute Shell Script action uses Python 3 to percent-encode the characters that Archer expects to be percent-encoded. (There are other ways to do this; I just used Python because it’s familiar to me.) You may need to update the path to Python in that action.

Here’s a screenshot of the Keyboard Mastro Editor:

Here it is in action:

You can download the macro here. Change the value of the ArcherURL variable to the URL of your Archer instance. (Don’t include a trailing slash.) Change the value of the ModuleID variable to the ID of the application you want to link to.