Skip to main content
The local resolver sidecar is a container that resolves flags locally in your network. For an alternative approach using OpenFeature SDK providers, see Local Resolver.

Create API Client and Credentials

1

Go to Confidence

2

Select Admin > API Clients

On the bottom of the left sidebar, select Admin > API Clients.
3

Click Create

4

Give the API client a name

For example, “local resolver.”
5

Select Admin > Policies

On the bottom of the left sidebar, select Admin > Policies.
6

Click Create

7

Add the role Flags Resolver Sidecar

Add the role Flags Resolver Sidecar to the principal with the name you just created, “local resolver”.
8

Click Create

Make note of the Client ID and client secret.

Run with Docker

Set the following environment variables: The examples use the Europe Artifact Registry mirror. Use the Asia or United States mirror when closer to where you deploy the sidecar: asia-docker.pkg.dev/spotify-confidence/public/flags-resolver-sidecar:latest or us-docker.pkg.dev/spotify-confidence/public/flags-resolver-sidecar:latest. The image registry region only controls which mirror serves the image. Keep CONFIDENCE_REGION set to your Confidence account region, EU or US. Run the local resolver:
The local resolver is available at http://localhost:8090.

Deploy in Kubernetes

Add the sidecar container configuration to your Kubernetes pod spec:

Do Not Propagate Apply Logs

By default, the sidecar sends apply logs to Confidence for exposure and experiment analysis. In certain cases, such as when you have critical privacy concerns, you might need to keep apply data within your network. Set CONFIDENCE_SEND_APPLY_LOGS to false. The sidecar continues to accept and validate ApplyFlags requests and resolves with apply=true. It doesn’t send assignment events or apply distinct counts to Confidence. The sidecar continues to send aggregate operational metadata, including the apply request rate.
Disabling apply logs degrades Confidence functionality. Confidence can’t observe which entities were exposed to each variant. Experiments and rollouts that use flags resolved by this sidecar won’t work correctly: exposure counts, experiment results, and rollout monitoring will be missing or incomplete. Only disable apply logs if you accept this loss of functionality or provide equivalent assignment data through another source.
This setting doesn’t disable resolve telemetry or other communication required to fetch resolver state. For more information, see Data Transfer.

Local Resolver Reference

Deep dive into local resolver configuration

Data Transfer

Understand flag resolution options

Manage Clients

Configure API clients and credentials

SDKs Reference

Learn about SDK integrations