Sailpoint Service Desk Integration with Jira

Hi Team,

We have integrated with Jira Service Desk for ticket creation in IDN. The integration is working as expected, however we would like to pass the following attributes in the summary request. I’m able to get the source name, requestid, identity but not able to get the displayname in the message. Below is what i’ve tried so far.

SailPoint Access Request for $request.resource #if($request.items.displayName) for the user $request.items.displayName #end

The idea is to dispay the message in Jira summary as:

Sailpoint Access request for Application A for user John Doe

Hello @adyer ,

Can we try something like:

$!plan.arguments.displayName

Notice, how we are using the ! exclamation mark which is another shorthand for the if else statement.

If you use !$ it will be the same as a normal “!” operator, however the $! is used as a basic check to see if the variable is blank and if so it prints it out as an empty string. If your variable is empty or null and you don’t use the $! annotation it will print the actual variable name as a string.

Have you seen this guide it also has some useful examples here additionally: Working with Velocity Template Language in ITSM Ticketing - Compass

Kind Regards,

Omar
Omar Khote, CISSP

Hi Omar,

thanks, I tried the above and it returned no result. Also, I tried with different attributes such as email and no results generated. So, the idea is to provide the displayname in the summary of the request when access is getting revoke during the certification.

Hey Alex oh cool, sure did we just simply define the variable alone in the Summary field? That would of course not work and we would need the velocity to iterate over the provisioning plan (similar to the example in the document) however instead we would be looking for an operations such as ‘Modify’ …

Please try this template first:

#foreach($request in $plan.requests)
  $!{request.operation} account '${request.id}' on ${request.resource}
  #if($request.items)
    #foreach($item in $request.items)
    Additional Details:

    Display Name:[$!plan.arguments.displayName] $newline
    Account name:[$!plan.arguments.nativeIdentity] $newline


      $!{item.Operation} attribute '${item.name}' with value: ${item.value}
    #end
  #end
#end

We could also then enhance the logic based on the operation we want to call this for something like if above works:

#foreach($request in $plan.requests)
    #if($request.operation =='Modify' || $request.operation =='Remove')
    
    Display Name:[$!plan.arguments.displayName] $newline
    Account name:[$!plan.arguments.nativeIdentity] $newline

    #else

  #if($request.items)
    #foreach($item in $request.items)
    Additional Details 2:

    Display Name:[$!plan.arguments.displayName]

      $!{item.Operation} attribute '${item.name}' with value: ${item.value}
    #end
  #end
#end

please note there could be typos in above syntax*

Thanks Omar. I tried using the above velocity in summary and getting the below error:

Also, I tested the velocity in the description field and it worked, however the displayname had no values. I’m wondering if there’s a limit on the information that you can pass in the summary field.

This topic was automatically closed 60 days after the last reply. New replies are no longer allowed.