API ReferenceOpenFeature (OFREP)
Provider Configuration
Configure OpenFeature SDKs to use Kaiten as your flag provider.
Provider Configuration
Use Kaiten as your feature flag provider with any OpenFeature SDK via OFREP.
Go
import (
"github.com/open-feature/go-sdk/openfeature"
"github.com/open-feature/go-sdk-contrib/providers/ofrep"
)
func main() {
provider := ofrep.NewProvider("http://localhost:6000/api", ofrep.WithHeaders(map[string]string{
"Authorization": "Bearer ksh_your_token_here",
}))
openfeature.SetProvider(provider)
client := openfeature.NewClient("my-app")
value, err := client.BooleanValue(
context.Background(),
"beta-feature",
false, // default value
openfeature.NewEvaluationContext("", map[string]interface{}{
"tenantSlug": "sakura-tokyo",
}),
)
}Python
from openfeature import api
from openfeature.contrib.provider.ofrep import OFREPProvider
provider = OFREPProvider(
base_url="http://localhost:6000/api",
headers={"Authorization": "Bearer ksh_your_token_here"},
)
api.set_provider(provider)
client = api.get_client("my-app")
value = client.get_boolean_value(
"beta-feature",
default_value=False,
evaluation_context={"tenantSlug": "sakura-tokyo"},
)JavaScript / TypeScript
import { OpenFeature } from '@openfeature/server-sdk';
import { OFREPProvider } from '@openfeature/ofrep-provider';
const provider = new OFREPProvider({
baseUrl: 'http://localhost:6000/api',
headers: {
Authorization: 'Bearer ksh_your_token_here',
},
});
OpenFeature.setProvider(provider);
const client = OpenFeature.getClient('my-app');
const value = await client.getBooleanValue('beta-feature', false, {
tenantSlug: 'sakura-tokyo',
});Key Points
- The OFREP base URL is your Kaiten API URL:
http://localhost:6000/api(local) orhttps://api.kaiten.sh/api(cloud) - Authentication is via
ksh_*API tokens in theAuthorizationheader - The token must have
read:feature_flagsscope - Context variables are passed as evaluation context and used in CEL targeting rules

