Khoros Community source JSON modification

Many source configuration parameters can be set through the user interface. Others, such as rarely used or new parameters, must be configured in the Edit configuration with JSON panel. To access this panel from the Sources (platform-ca | platform-eu | platform-au) page, click the source, and then click Edit configuration with JSON in the More menu.

This article explains how to configure Khoros Community source parameters, whether they’re already listed in the JSON or not.

Configuring listed and unlisted parameters

Changing a parameter value in the source JSON configuration | Coveo

If the parameter you want to change is already listed in the parameters section of the source JSON configuration, just modify its value in the JSON configuration.

If the parameter isn’t listed in the parameters section, copy the entire parameter example object from the Reference section below and paste it into that section. Then, update the value in the JSON configuration, if necessary.

Important

If a parameter has a value attribute that contains sensitive information, set the sensitive attribute to true. Otherwise, the value will appear in clear text in the JSON configuration.

Tip

Document the changes you make to the source JSON configuration in the Comments area below the JSON configuration. This ensures that you can easily revert to a previous configuration if needed.

AllowedDeletionPercentage (Integer)

This parameter specifies the maximum allowed percentage of source items that can be deleted from the index at the end of a rescan. If the actual percentage of source items to delete exceeds this value, no items are deleted from the index. By default, this parameter is set to 100, which means that all source items can be deleted.

The purpose of this parameter is to prevent accidental mass item deletions. This can occur, for example, because of an improper source configuration or if the content to index was moved.

For more information about this parameter and its usage, see Forbid item deletion based on a percentage condition.

Example

You can set AllowedDeletionPercentage to 10 in the JSON configuration of your source, as shown in the snippet below. With this configuration, if Coveo detects that more than 10% of the items are flagged for deletion during a rescan, deletion will be blocked. The status on the Sources (platform-ca | platform-eu | platform-au) page will show your source in error, and the error details will indicate the actual percentage of items that were flagged for deletion versus the allowed percentage (in this case, 10%).

"AllowedDeletionPercentage": {
  "sensitive": false,
  "value": "10"
}

BasicAuthenticationUsername and BasicAuthenticationPassword

The BasicAuthenticationUsername and BasicAuthenticationPassword parameters determine the username and password to use when a Khoros community is secured with basic (http) authentication.

For example, KHOROS_COMMUNITY_AUTHORIZATION_ERROR appears in the Activity Browser. A Coveo Support agent instructs you to add the BasicAuthenticationUsername and BasicAuthenticationPassword parameters to fix the issue.

"BasicAuthenticationUsername": {
  "sensitive": false,
  "value": "jsmith@besttech.com"
},
"BasicAuthenticationPassword": {
  "sensitive": true,
  "value": "mypassword"
}

The BasicAuthenticationUsername and BasicAuthenticationPassword parameters must also be added to the JSON of the security provider for that Khoros Source. See Manage security identities for instructions on how to configure that JSON.

Important

The sensitive attribute must be set to true for the BasicAuthenticationPassword parameter. Otherwise, the password will appear in clear text in the JSON configuration.

RestApiUrl

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.

Note

Khoros Community doesn’t recommend using a reverse proxy (see Reverse proxy and Lithium communities while logged in with a Khoros community account).

Example

Your community root URL is https://www.example.com/community/, and your REST API resides at https://www.example.com/community/thisisourapi/.

"RestApiUrl": {
  "sensitive": false,
  "value": "https://www.example.com/community/thisisourapi/"
},