Join the #BuildWithBuildAgent Challenge! Get recognized, earn exclusive swag, and inspire the ServiceNow Community with what you can build using Build Agent.  Join the Challenge.

KB Article not visible in the portal

Shivani_singh
Tera Contributor

I have created a knowledge base with the Can read -snc_internal role.
But in the service portal that Knowledge base article is not visible to the user even though the user is having snc_internal role.
The kb article is published, and the knowledge base is article.
Have attached the screenshot.
Being an admin i can see the kb article in portal ,but the snc_internal user.

2 REPLIES 2

anand-bhosle
Tera Guru

@Shivani_singh Try these steps

Here’s a checklist of the most common reasons a published KB won’t show up for a non-admin in the Service Portal—even when they have the “snc_internal” role on the KB record:

  1. Portal assignment
    By default, a KB only appears in portals you explicitly assign.

    • Open your KB record (table kb_knowledge_base)

    • Look for the Portals (or “Available on”) multi-select field and make sure your Service Portal’s entry (e.g. “Service Portal” or whatever your portal title is) is in that list.

    • Save and clear cache (System Diagnostics → Cache.do).

  2. “Use KB roles” vs. article-level roles
    Each article can either inherit the KB’s “Can read” roles or use its own.

    • Open your article record (table kb_knowledge)

    • Make sure Use roles from KB (sometimes a checkbox on the article form) is checked so it actually honors the KB’s “snc_internal” grant.

    • If it’s unchecked, either turn it on or add “snc_internal” to the article’s own roles list.

  3. Article workflow state & date range
    The portal widget only pulls Published articles within any valid date range.

    • Verify each article’s Workflow state = Published

    • Check “Valid from” / “Valid to” fields (if populated) to ensure the current date (May 2, 2025) is within that window.

  4. Portal widget configuration
    If you’ve customized your portal’s Knowledge widget:

    • Inspect the widget’s server script to ensure it isn’t filtering out your KB by context or hard-coded sys_id

    • By default it calls $sp.getKBs() which respects the KB’s portal assignments and roles—if yours is a custom widget, compare it to the out-of-the-box version.

  5. Impersonate & debug

    • Impersonate a “snc_internal” user and load the KB page in the portal

    • Open your browser’s Network tab and watch the AJAX call to /api/now/sp/knowledge (or similar): you should see your KB in the JSON payload.

    • If it’s missing, you know it’s an ACL/assignment issue, if it’s there but not rendering, it’s a widget‐configuration issue.

Hi @anand-bhosle 
It's still remain the same.