ownership group and publishing articles
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-28-2025 03:29 PM
Today we have the ownership group feature enabled.
We want members of the ownership group to be able to go from Draft to publish. (no approvals needed)
We only want approvals for non-members of the ownership group.
Is this how the out of box workflow works?
We see in the documentation the following but does this mean ownership groups can directly publish articles?
"With an ownership group associated with a knowledge article, ownership group members can approve self-authored articles for publication. You can override this behavior by disabling the glide.knowman.ownership_group.allow_self_approval property. By default, the property is set to true."
Thanks
Juliet
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-28-2025 03:42 PM
From what you shared. yes, by default, the out-of-box behavior is that ownership group members can approve and publish their own articles without needing an external approval.
Specifically:
- If an article has an ownership group associated.
- And a member of that ownership group authors (creates or updates) the article.
- Then they can self-approve and move it from Draft to Published without needing anyone else's approval.
This behavior is controlled by the system property:
`glide.knowman.ownership_group.allow_self_approval`
- True (default): allows ownership group members to approve their own articles.
- False: disables that and would require the normal approval process even for ownership group members.
To answer your questions directly:
“Does this mean ownership groups can directly publish articles?"
Yes, if the author is a member of the ownership group, they can publish directly without approval.
“Is this how the out-of-box workflow works?"
Yes, out of the box, it works like that with the property `glide.knowman.ownership_group.allow_self_approval` set to true.
If a non-member authors the article, the normal approval flow is still enforced (they cannot self-approve), even if the article has an ownership group assigned.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-28-2025 05:28 PM
Thanks for your reply.
We expect the following setup:
- Ownership group: Team A
- Team A members: Alice, Billy, John
Alice drafts an article with Team A as the ownership group. Upon selecting "Publish," we want the article to transition from Draft to Published status.
We initially thought enabling the property glide.knowman.ownership_group.allow_self_approval would achieve this behavior, but it does not.
With glide.knowman.ownership_group.allow_self_approval set to true, we observe the following behavior:
- Ownership group: Team A
- Team A members: Alice, Billy, John
When Alice drafts an article under Team A and selects "Publish," approval records are generated for Alice, Billy, and John.
Alice can then access her own approval record, approve it, and the article is published.
If I understand correctly, setting glide.knowman.ownership_group.allow_self_approval to true simply generates approval records.
The approver can approve the article, but it does not allow direct publishing without approvals. It just allows the author/reviser to approve their own record or forces others in the ownership to approve the record. Ownership teams still need to approve their own articles. Is this how the out of box workflow functions?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-28-2025 06:00 PM
now the use case is clear and probably.
Following setup:
- Ownership group: Team A
- Team A members: Alice, Billy, John
Alice drafts an article with Team A as the ownership group. Upon selecting "Publish," we want the article to transition from Draft to Published status.
We initially thought enabling the property glide.knowman.ownership_group.allow_self_approval would achieve this behavior, but it does not.
With glide.knowman.ownership_group.allow_self_approval set to true, we observe the following behavior:
- Ownership group: Team A
- Team A members: Alice, Billy, and John
When Alice drafts an article under Team A and selects "Publish," approval records are generated for Alice, Billy, and John. Alice can then access her own approval record, approve it, and the article is published.
If I understand correctly, setting glide.knowman.ownership_group.allow_self_approval to true simply generates approval records. The approver can approve the article, but it does not allow direct publishing without approvals. It just allows the author/reviser to approve their own record or forces others in the ownership to approve the record. Ownership teams still need to approve their own articles. Is this how the out of box workflow functions?
My Answer:
Yes, you are correct in your understanding of how the out-of-the-box workflow functions with the glide.knowman.ownership_group.allow_self_approval property.
• When glide.knowman.ownership_group.allow_self_approval is set to true:
- The property allows the members of the ownership group to approve their own articles for publication, but it does not bypass the approval process entirely.
- When Alice drafts an article and selects 'Publish,' approval records are still generated for all members of the ownership group (Alice, Billy, and John). Alice can then approve her own record, or anyone in the ownership group can approve the article, which will then transition the article from Draft to Published.
• What the property does:
- It allows self-approval (the author or any member of the ownership group can approve the article themselves), but does not bypass the approval process.
- The article still goes through the approval process, which is why approvals are generated for other members of the ownership group (Alice, Billy, and John).
• What the property does not do:
- It does not allow for direct publishing without any approvals. It just facilitates the process by allowing ownership group members to approve articles themselves, but the article cannot be published without any approval.
In summary:
The out-of-the-box behavior does require approval (even if the ownership group can approve themselves), but it does not allow for direct publishing without any approval. The glide.knowman.ownership_group.allow_self_approval property helps simplify the approval process by allowing members of the ownership group to approve their own articles, but it does not remove the need for approvals entirely. If you want to allow direct publishing (without approval), this would require a more customized workflow.
Customized Solution Approach:
You would need to modify or bypass the Knowledge article approval workflow. There are two main ways to do this:
Option 1: Customize the Workflow Itself
The approval process for Knowledge Articles is controlled by a Workflow or a Flow (depending on your version). In classic versions (Orlando, Paris, Quebec), it's a Workflow ('Knowledge - Approval Publish' or similar). In newer versions (Rome+, San Diego, Vancouver), it uses Flow Designer Flows instead.
You would customize by opening the Knowledge Publish Approval Flow or Workflow. Then, add a condition: If the current user is a member of the ownership group, skip the approval step and move the article directly to 'Published'. Approval is triggered only if the user is not in the ownership group.
Pseudocode for the Flow condition:
If (current user is in article.ownership_group)
Then: Set article state = Published (Skip approval)
Else
Start approval process
Option 2: Add a Business Rule to Skip Approval
Another lighter option is to add a Business Rule on the kb_knowledge table. This rule would be triggered before insert/update when the article's state changes to 'Review' or 'Ready for Publishing'. The script checks if the user is a member of the ownership group, and if so, automatically publishes the article.
Example Business Rule (script):
if (current.operation() == 'update' && current.workflow_state == 'review') {
var userGR = new GlideRecord('sys_user_grmember');
userGR.addQuery('group', current.ownership_group);
userGR.addQuery('user', gs.getUserID());
userGR.query();
if (userGR.next()) {
current.workflow_state = 'published';
current.setWorkflow(false); // prevent triggering approvals
}
}
This script will auto-publish the article without triggering any approval workflow when the author is a member of the ownership group.
Important Considerations:
- Governance: Skipping approvals can lead to wrong information being published without any review — make sure your client understands the risks.
- Security: Only implement this for trusted ownership groups.
- Testing: Thoroughly test both member and non-member scenarios.
Option 1 is cleaner and scalable by modifying the Workflow or Flow directly. Option 2 is faster to implement using a Business Rule, but it can become harder to maintain if you have many exceptions.