Hi Kurt,
As there is no publicly available API that would support this unfortunately, there are some manual steps that need to be done as described by @chrisstephens here the only difference is that project was used in Chris case and you need to do it for Issue, please let me know if this helps.
Basically process
- Fetch Access Rules from object
- Create your own Access rule override (or edit the array fetched above)
- Merge into one array if new access rule added
- Add full access rules array to object
To quote if for any reason link wont load:
Yes, that is possible.
You have to pull in the current access rules for the project, create the new access rule, add the new rule to the existing rules array, and then PUT the array back onto the project.
1. Current access rules: GET call, field = accessRules:*
2. Create a collection including:
• coreAction (string, the permission you want to grant, in this case VIEW),
• objCode (string) = ACSRUL,
• accessorID (string, ID of object you are granting access, i.e. user),
• securityObjID (string, ID of the object whose permission you are changing, in this case project ID)
• accessorObjCode (string, object code you are granting access, i.e. user)
• securityObjCode (string, object code you are adding the permission to, PROJ in this case)
• forbiddenActions (array of strings, actions which are forbidden)
• secondaryActions (array of strings, actions which are permitted)
3. Merge 1 and 2 into a single array
4. PUT call to {objCode}/{ID}/?fields=accessRules, include array from 3 in body as json string
Best regards,
Ivan