Add or Edit a Khoros Community Source

A Khoros Community source is an interactive community that enables users to share digital customer experiences on the Khoros platform. Members of a Coveo organization with the required privileges can add the source to index the content of their Khoros Community instance.

The Khoros Community source can’t include permissions because the Khoros Community API doesn’t allow the retrieval of user permissions for each item. This means that any user who has access to search results from a Khoros community source can find any indexed item, regardless of whether they’re allowed to access these items in Khoros Community (see Private Content and Limiting Source Content Permissions To Specific Users).

Source Key Characteristics

Features Supported Additional information
Khoros Community version Latest cloud version Following available Khoros Community releases.
Searchable content types

Communities, categories, boards, and discussions (also known as threads and conversations) including topics (texts and products), replies (answers, comments, and reviews), messages (also known as posts), and message attachments.

Content update operations Refresh Takes place every hour by default. A rescan or rebuild is required to take account of deleted or modified items.
Rescan Takes place every day by default.
Rebuild
Content security options Determined by source permissions

Source creator
Everyone

Add or Edit a Khoros Community Source

When adding a source, select the Khoros Community Source option.

To edit a source, on the Sources page, click the desired source, and then, in the Action bar, click Edit.

“Configuration” Tab

In the Add/Edit a Khoros Community Source panel, the Configuration tab is selected by default. It contains your source’s general and authentication information, as well as other parameters.

General Information

Source Name

Enter a name for your source.

A source name can’t be modified once it’s saved, therefore be sure to use a short and descriptive name, using letters, numbers, hyphens (-), and underscores (_). Avoid spaces and other special characters.

Community URL

Enter the web address of the Khoros Community server for the community that you want to index. If you want to make more than one address searchable, click the plus sign (+), and then enter the addresses to index on the additional lines.

  • http://company.khoros.com

  • https://community.company.com/

You can also specify a subset of a Khoros community to crawl by copying and pasting the address of a Khoros community category, board, or thread. The URL is in the form:

http://community.company.com/[...]/<KHOROS-OBJECT-LABEL>/<OBJECT-ID>

The possible values for <KHOROS-OBJECT-LABEL> are given in the Label column of the following table:

Label Khoros Community object
ct-p Category
tkbc-p Knowledge base category
bd-p Forum
tkb-p Knowledge base
con-p Contest
idb-p Idea board
qa-p Q&A board
bg-p Blog
gp-p Group
m-p Forum thread
td-p Forum thread
ta-p Knowledge base article
cns-p Contest submission
idi-p Idea
qaq-p Q&A Question
ba-p Blog article
gpm-p Group article
  • Hidden categories or boards aren’t indexed, unless you specifically provide the URL of the desired hidden category/board and your crawling account can access it.

  • The Khoros Community source uses REST API v.1.

  • If you use a reverse proxy, your REST API might not reside at your community root URL. You must therefore add the RestApiUrl hidden parameter to specify the URL address at which your REST API resides (see Khoros Community Source JSON Modification).

  • Be aware, however, that Khoros Community doesn’t recommend using a reverse proxy (see Reverse proxy and Lithium communities while logged in with a Khoros Community account).

Character optical recognition (OCR)

If you want Coveo Cloud to extract text from image files or PDF files containing images, check the appropriate box. OCR-extracted text is processed as item data, meaning that it’s fully searchable and will appear in the item Quick View. See Enable Optical Character Recognition for details on this feature.

Index

When adding a source, if you have more than one logical (non-Elasticsearch) index in your organization, select the index in which the retrieved content will be stored (see Leverage Many Coveo Indexes). If your organization only has one index, this drop-down menu isn’t visible and you have no decision to make.

  • To add a source storing content in an index different than default, you need the View access level on the Logical Index domain (see Manage Privileges and Logical Indexes Domain).

  • Once the source is added, you can’t switch to a different index.

“Authentication” Section

When the Khoros Community is private, you must enter the credentials of a native Khoros Community account, such as an administrator account, that has access to the content you want to index. See Source Credentials Leading Practices. This account must also have permission to make REST API read calls for all boards and categories of your community.

When you have the administrator rights, this setting is available in your Khoros Community Admin section, under Users tab > Permissions navigation bar section > Defaults tab > Make REST API calls with read access.

  • Boards and categories for which the account doesn’t have this permission are skipped during the indexing process and are therefore not searchable in a Coveo-powered search page. Moreover, if your source Community URL is the address of such a board or category, Coveo returns a KHOROS_COMMUNITY_AUTHORIZATION_ERROR error.

  • Some Khoros communities contain public and private items. Private items are only accessible to users allowed to view this content. If you have such a community, you must enter the credentials of an account that is allowed to access all private content. If you don’t do so, private items aren’t indexed (see Khoros Community Permissions and Limiting Source Content Permissions To Specific Users).

  • When your Khoros Community is secured using a basic authentication, you must modify the source JSON configuration (once the source is saved) to add a hidden parameter (see Add a Hidden Source Parameter and Khoros Community Source JSON Modification).

“Content to Include” Section

Optionally, select additional content to index: message tags, user data, and/or message tags.

Indexing attachments and message tags, especially with large Khoros communities, can significantly increase the indexing time, as it requires an additional API call to Khoros per message. Indexing user data can also impact the indexing performance.

You can include users only when indexing an entire community. If you only index a community subset such as a category or a board, users aren’t included.

The Khoros Community connector populates three fields for folding message item types: @foldingcollection, @foldingparent, and @foldingchild. Other item types such as attachments don’t have the folding field set and therefore can’t be folded. Instead, these items appear as a single result in the search interface.

“Content Security” Tab

Select who will be able to access the source items through a Coveo-powered search interface. For details on this parameter, see Content Security.

“Access” Tab

In the Access tab, determine whether each group and API key can view or edit the source configuration (see Resource Access):

  1. In the Access Level column, select View or Edit for each available group.

  2. On the left-hand side of the tab, if available, click Groups or API Keys to switch lists.

Completion

  1. Finish adding or editing your source:

    • When you want to save your source configuration changes without starting a build/rebuild, such as when you know you want to do other changes soon, click Add Source/Save.

      To add the source content or to make your changes effective, on the Sources page, you must click Launch build or Start required rebuild in the source Status column.

      OR

    • When you’re done editing the source and want to make changes effective, click Add and Build Source/Save and Rebuild Source.

      Back on the Sources page, you can review the progress of your source addition or modification.

    Once the source is built or rebuilt, you can review its content in the Content Browser.

  2. Optionally, consider editing or adding mappings.

    You can only manage mapping rules once you build the source (see Refresh, Rescan, or Rebuild Sources).

Restrict Indexed Addresses

You may want to avoid indexing certain boards or categories in your community, or to index only a few of them. To do so, you can specify address filters in your source JSON configuration and Add Source Filters.

  • With the following filter, Coveo doesn’t index the board whose ID is PrivateBoard.

    
      "AddressPatterns": [
      {
          "Expression": ".*board:PrivateBoard/.*",
          "PatternType": "RegEx",
          "Allowed": false
      }
      ],
    
  • With the following filter, Coveo doesn’t index categories whose ID contains Private, private, Moderator, moderator, Archive, or archive.

    
      "AddressPatterns": [
      {
          "Expression": ".*category:([Pp]rivate|[Mm]oderator|[Aa]rchive).*",
          "PatternType": "RegEx",
          "Allowed": false
      }
      ],
    

Once your changes are done, on the Sources page, build or rebuild your Khoros Community source.

What’s Next?

Recommended Articles