# How to check initiator role on gateway path condition

**URL:** <https://community.ofelia.com/t/how-to-check-initiator-role-on-gateway-path-condition/10111>\
**Category:** Q&A\
**Created:** [6 April 2020 09:56 UTC](https://community.ofelia.com/t/how-to-check-initiator-role-on-gateway-path-condition/10111 "2020-04-06T09:56:01Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![emilio.maggioni\_1424](https://avatars.discourse-cdn.com/v4/letter/e/34f0e0/32.png) [@emilio.maggioni\_1424](https://community.ofelia.com/u/emilio.maggioni_1424)\
**Post date:** [6 April 2020 09:56 UTC](https://community.ofelia.com/t/how-to-check-initiator-role-on-gateway-path-condition/10111/1 "2020-04-06T09:56:01Z")

</div>

Hi, I'm looking for a way, if it is possible at all in Bonita 7.10, to choose a path on a gateway based on the role in my organization of the initiator of the process.

Example:

- Initiator is a Sales Assistant i need to follow path A

- Initiator is Sales Manager i need to follow path B

&nbsp;

Thanks

---

<div class="post-metadata">

**Author:** ![julien.mege](https://dub1.discourse-cdn.com/flex013/user_avatar/community.ofelia.com/julien.mege/32/737_2.png) [@julien.mege](https://community.ofelia.com/u/julien.mege)\
**Post date:** [6 April 2020 13:04 UTC](https://community.ofelia.com/t/how-to-check-initiator-role-on-gateway-path-condition/10111/2 "2020-04-06T13:04:14Z")

</div>

hello,&nbsp;

On the branch of the gateway, i imagine you can use a condition expression close to this one:

&nbsp;

> ```
> import org.bonitasoft.engine.identity.User
> import org.bonitasoft.engine.identity.UserSearchDescriptor
> import org.bonitasoft.engine.search.SearchOptionsBuilder
> 
> User Initiator = BonitaUsers.getProcessInstanceInitiator(apiAccessor,processInstanceId);
> 
> Long roleId = apiAccessor.getIdentityAPI().getRoleByName(“Sales Assistant”).getId();
> 
> final SearchOptionsBuilder builder = new SearchOptionsBuilder(0, 1);  
> builder.filter(UserSearchDescriptor.ROLE\_ID, roleId);  
> builder.filter(UserSearchDescriptor.USER\_NAME, Initiator.getUserName());
> 
> return apiAccessor.getIdentityAPI().searchUsers(builder.done()).getCount() == 1 ;
> ```

Need to be careful, if the user has both role, you will need a default path.

&nbsp;

hope this helps,

Julien.

&nbsp;

&nbsp;
