Expand my Community achievements bar.

Don’t miss the Workfront AMA: System Smarts & Strategic Starts! Ask your questions about keeping Workfront running smoothly, planning enhancements, reporting, or adoption, and get practical insights from Adobe experts.
SOLVED

Can you update share abilities via Fusion?

Avatar

Community Advisor

I have a scenario were I'd like to remove the change status ability on the issue when its run.  I found the Share object in API Explorer but wasn't clear on how I could remove Change status.  Has anyone done something like this and could provide a bit of guidance (thanks in advance)?

 

Kurt_Jones_0-1752861096906.png

 

Topics

Topics help categorize Community content and increase your ability to discover relevant content.

1 Accepted Solution

Avatar

Correct answer by
Level 4

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

View solution in original post

1 Reply

Avatar

Correct answer by
Level 4

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