--- title: Khoros Community source JSON modification slug: '2033' canonical_url: https://docs.coveo.com/en/2033/ collection: index-content source_format: adoc --- # Khoros Community source JSON modification Many [source](https://docs.coveo.com/en/246/) 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**](https://platform.cloud.coveo.com/admin/#/orgid/content/sources/) ([platform-ca](https://platform-ca.cloud.coveo.com/admin/#/orgid/content/sources/) | [platform-eu](https://platform-eu.cloud.coveo.com/admin/#/orgid/content/sources/) | [platform-au](https://platform-au.cloud.coveo.com/admin/#/orgid/content/sources/)) 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 [float-group] -- ![Changing a parameter value in the source JSON configuration | Coveo](https://docs.coveo.com/en/assets/images/index-content/changing-parameter-values.gif) 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](#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](https://docs.coveo.com/en/246/) [items](https://docs.coveo.com/en/210/) that can be deleted from the index at the end of a [rescan](https://docs.coveo.com/en/2711/). 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](https://docs.coveo.com/en/2006#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**](https://platform.cloud.coveo.com/admin/#/orgid/content/sources/) ([platform-ca](https://platform-ca.cloud.coveo.com/admin/#/orgid/content/sources/) | [platform-eu](https://platform-eu.cloud.coveo.com/admin/#/orgid/content/sources/) | [platform-au](https://platform-au.cloud.coveo.com/admin/#/orgid/content/sources/)) 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%). ```json "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](https://connect.coveo.com/s/case/Case/Default) agent instructs you to add the `BasicAuthenticationUsername` and `BasicAuthenticationPassword` parameters to fix the issue. ```json "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](https://docs.coveo.com/en/1905#edit-a-security-identity-provider) 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](https://community.lithium.com/t5/Launching-your-site/Reverse-proxy-and-Lithium-communities/ta-p/224993) 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/+`. ```json "RestApiUrl": { "sensitive": false, "value": "https://www.example.com/community/thisisourapi/" }, ```