> For the complete documentation index, see [llms.txt](https://developer.harness.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developer.harness.io/internal-developer-portal/use-idp/plugins/available-plugins/harness-native-plugins/harness-fme.md).

# Feature Management & Experimentation

| Plugin details |                                                        |
| -------------- | ------------------------------------------------------ |
| **Created by** | Harness                                                |
| **Category**   | Feature Management                                     |
| **Source**     | [GitHub](https://github.com/harness/backstage-plugins) |
| **Type**       | Open-source plugin                                     |

## Configuration <a href="#configuration" id="configuration"></a>

### Application configuration YAML <a href="#application-configuration-yaml" id="application-configuration-yaml"></a>

This plugin requires a backend proxy configuration to make calls to the Split.io API with authentication. Add the following configuration to your app-config.yaml file:

```yaml
proxy:
  endpoints:
    /harnessfme:
      target: https://api.split.io/
      pathRewrite:
        /api/proxy/harnessfme/?: /
      headers:
        Authorization: Bearer ${SPLIT_API_TOKEN}
```

### Secrets <a href="#secrets" id="secrets"></a>

This plugin requires a Split API token for authentication. The token is referenced as `${SPLIT_API_TOKEN}` in the proxy configuration.

To obtain and manage your API tokens, refer to the [Harness Feature Management API Keys documentation](/feature-management-experimentation/management-and-administration/api-keys.md).

### Delegate proxy <a href="#delegate-proxy" id="delegate-proxy"></a>

*No action required*

This plugin does not require a delegate proxy to be set up because Split.io API is publicly accessible.

## Layout <a href="#layout" id="layout"></a>

To add the FME tab to your service component pages, go to **Configure** → **Layout**, select **Service** in the dropdown menu, and add the following YAML code:

```yaml
- name: EntityHarnessFMEFeatureFlagContent
  path: /harnessfme
  title: FME
  contents:
    - component: EntityHarnessFMEFeatureFlagContent
```

This will add a Feature Management & Experimentation tab to services that have the proper FME annotations configured.

![](/files/ZCtx8Mtu7SZrLS7SVDvw)

## Annotations <a href="#annotations" id="annotations"></a>

To connect a service in your software catalog with its corresponding Harness FME project, add the following annotations to its `catalog-info.yaml` definition file:

```yaml
metadata:
  annotations:
    harnessfme/projectId: <project_id>
    harnessfme/accountId: <account_id>
```

Replace `<project_id>` with your Split project ID and `<account_id>` with your Split account ID. These annotations allow the plugin to fetch the appropriate feature flags and experiments for the service.

## Support <a href="#support" id="support"></a>

The plugin is owned by Harness and managed in the [Harness plugins repository](https://github.com/harness/backstage-plugins) as an open-source project. Create a GitHub issue to report bugs or suggest new features for the plugin.
