diff --git a/docs/reference/sdks/client/kotlin.mdx b/docs/reference/sdks/client/kotlin.mdx index 5341b3cd8..d2757a6b5 100644 --- a/docs/reference/sdks/client/kotlin.mdx +++ b/docs/reference/sdks/client/kotlin.mdx @@ -10,7 +10,7 @@ This content has been automatically generated from kotlin-sdk. Edits should be made here: https://github.com/open-feature/kotlin-sdk Once a repo has been updated, docs can be generated by running: yarn update:sdk-docs -Last updated at Fri Apr 17 2026 08:43:12 GMT+0000 (Coordinated Universal Time) +Last updated at Mon Apr 20 2026 08:55:16 GMT+0000 (Coordinated Universal Time) --> import MCPInstall from '@site/src/partials/mcp-install'; diff --git a/docs/reference/sdks/client/swift.mdx b/docs/reference/sdks/client/swift.mdx index dd28ff84e..0fb193afa 100644 --- a/docs/reference/sdks/client/swift.mdx +++ b/docs/reference/sdks/client/swift.mdx @@ -10,7 +10,7 @@ This content has been automatically generated from swift-sdk. Edits should be made here: https://github.com/open-feature/swift-sdk Once a repo has been updated, docs can be generated by running: yarn update:sdk-docs -Last updated at Fri Apr 17 2026 08:43:12 GMT+0000 (Coordinated Universal Time) +Last updated at Mon Apr 20 2026 08:55:17 GMT+0000 (Coordinated Universal Time) --> import MCPInstall from '@site/src/partials/mcp-install'; diff --git a/docs/reference/sdks/client/web/angular.mdx b/docs/reference/sdks/client/web/angular.mdx index 4947aa5f4..bbf1652cd 100644 --- a/docs/reference/sdks/client/web/angular.mdx +++ b/docs/reference/sdks/client/web/angular.mdx @@ -10,7 +10,7 @@ This content has been automatically generated from js-sdk. Edits should be made here: https://github.com/open-feature/js-sdk Once a repo has been updated, docs can be generated by running: yarn update:sdk-docs -Last updated at Fri Apr 17 2026 08:43:12 GMT+0000 (Coordinated Universal Time) +Last updated at Mon Apr 20 2026 08:55:17 GMT+0000 (Coordinated Universal Time) -->
diff --git a/docs/reference/sdks/client/web/index.mdx b/docs/reference/sdks/client/web/index.mdx index fa5cd721d..eb0dfd575 100644 --- a/docs/reference/sdks/client/web/index.mdx +++ b/docs/reference/sdks/client/web/index.mdx @@ -10,7 +10,7 @@ This content has been automatically generated from js-sdk. Edits should be made here: https://github.com/open-feature/js-sdk Once a repo has been updated, docs can be generated by running: yarn update:sdk-docs -Last updated at Fri Apr 17 2026 08:43:12 GMT+0000 (Coordinated Universal Time) +Last updated at Mon Apr 20 2026 08:55:16 GMT+0000 (Coordinated Universal Time) --> import MCPInstall from '@site/src/partials/mcp-install'; diff --git a/docs/reference/sdks/client/web/react.mdx b/docs/reference/sdks/client/web/react.mdx index 6a7683903..aa5b95f00 100644 --- a/docs/reference/sdks/client/web/react.mdx +++ b/docs/reference/sdks/client/web/react.mdx @@ -10,7 +10,7 @@ This content has been automatically generated from js-sdk. Edits should be made here: https://github.com/open-feature/js-sdk Once a repo has been updated, docs can be generated by running: yarn update:sdk-docs -Last updated at Fri Apr 17 2026 08:43:12 GMT+0000 (Coordinated Universal Time) +Last updated at Mon Apr 20 2026 08:55:16 GMT+0000 (Coordinated Universal Time) --> import MCPInstall from '@site/src/partials/mcp-install'; diff --git a/docs/reference/sdks/server/dart.mdx b/docs/reference/sdks/server/dart.mdx index 2f7707b3c..47d70227f 100644 --- a/docs/reference/sdks/server/dart.mdx +++ b/docs/reference/sdks/server/dart.mdx @@ -9,7 +9,7 @@ This content has been automatically generated from dart-server-sdk. Edits should be made here: https://github.com/open-feature/dart-server-sdk Once a repo has been updated, docs can be generated by running: yarn update:sdk-docs -Last updated at Fri Apr 17 2026 08:43:12 GMT+0000 (Coordinated Universal Time) +Last updated at Mon Apr 20 2026 08:55:17 GMT+0000 (Coordinated Universal Time) -->
diff --git a/docs/reference/sdks/server/dotnet.mdx b/docs/reference/sdks/server/dotnet.mdx
index 50905c4b8..c7d625d18 100644
--- a/docs/reference/sdks/server/dotnet.mdx
+++ b/docs/reference/sdks/server/dotnet.mdx
@@ -10,7 +10,7 @@ This content has been automatically generated from dotnet-sdk.
Edits should be made here: https://github.com/open-feature/dotnet-sdk
Once a repo has been updated, docs can be generated by running: yarn update:sdk-docs
-Last updated at Fri Apr 17 2026 08:43:11 GMT+0000 (Coordinated Universal Time)
+Last updated at Mon Apr 20 2026 08:55:16 GMT+0000 (Coordinated Universal Time)
-->
import MCPInstall from '@site/src/partials/mcp-install';
diff --git a/docs/reference/sdks/server/go.mdx b/docs/reference/sdks/server/go.mdx
index f307426fd..b9dfc631d 100644
--- a/docs/reference/sdks/server/go.mdx
+++ b/docs/reference/sdks/server/go.mdx
@@ -9,7 +9,7 @@ This content has been automatically generated from go-sdk.
Edits should be made here: https://github.com/open-feature/go-sdk
Once a repo has been updated, docs can be generated by running: yarn update:sdk-docs
-Last updated at Fri Apr 17 2026 08:43:11 GMT+0000 (Coordinated Universal Time)
+Last updated at Mon Apr 20 2026 08:55:16 GMT+0000 (Coordinated Universal Time)
-->
import MCPInstall from '@site/src/partials/mcp-install';
@@ -25,7 +25,7 @@ import MCPInstall from '@site/src/partials/mcp-install';
-
+
@@ -172,7 +172,7 @@ client.AddHooks(ExampleClientHook{})
// add a hook for this evaluation only
value, err := client.BooleanValue(
- context.TODO(), "boolFlag", false, openfeature.EvaluationContext{}, WithHooks(ExampleInvocationHook{}),
+ context.TODO(), "boolFlag", false, openfeature.EvaluationContext{}, openfeature.WithHooks(ExampleInvocationHook{}),
)
```
@@ -184,12 +184,12 @@ For example, a flag enhancing the appearance of a UI component might drive user
```go
// initialize a client
-client := openfeature.NewClient('my-app')
+client := openfeature.NewClient("my-app")
// trigger tracking event action
client.Track(
context.TODO(),
- 'visited-promo-page',
+ "visited-promo-page",
openfeature.EvaluationContext{},
openfeature.NewTrackingEventDetails(99.77).Add("currencyCode", "USD"),
)
@@ -255,12 +255,15 @@ See [hooks](#hooks) for more information on configuring hooks.
Clients can be assigned to a domain. A domain is a logical identifier that can be used to associate clients with a particular provider. If a domain has no associated provider, the default provider is used.
```go
-import "github.com/open-feature/go-sdk/openfeature"
+import (
+ "github.com/open-feature/go-sdk/openfeature"
+ "github.com/open-feature/go-sdk/openfeature/memprovider"
+)
// Registering the default provider
-openfeature.SetProviderAndWait(NewLocalProvider())
+openfeature.SetProviderAndWait(openfeature.NoopProvider{})
// Registering a named provider
-openfeature.SetNamedProvider("clientForCache", NewCachedProvider())
+openfeature.SetNamedProvider("clientForCache", memprovider.NewInMemoryProvider(map[string]memprovider.InMemoryFlag{}))
// A Client backed by default provider
clientWithDefault := openfeature.NewDefaultClient()
@@ -423,7 +426,7 @@ func (i MyFeatureProvider) EventChannel() <-chan openfeature.Event {
To develop a hook, you need to create a new project and include the OpenFeature SDK as a dependency.
This can be a new repository or included in [the existing contrib repository](https://github.com/open-feature/go-sdk-contrib) available under the OpenFeature organization.
-Implement your own hook by conforming to the [Hook interface](https://github.com/open-feature/go-sdk/blob/main/pkg/openfeature/hooks.go).
+Implement your own hook by conforming to the [Hook interface](https://github.com/open-feature/go-sdk/blob/main/openfeature/hooks.go).
To satisfy the interface, all methods (`Before`/`After`/`Finally`/`Error`) need to be defined.
To avoid defining empty functions make use of the `UnimplementedHook` struct (which already implements all the empty functions).
diff --git a/docs/reference/sdks/server/java.mdx b/docs/reference/sdks/server/java.mdx
index 90c01cdc6..45c33b5c7 100644
--- a/docs/reference/sdks/server/java.mdx
+++ b/docs/reference/sdks/server/java.mdx
@@ -9,7 +9,7 @@ This content has been automatically generated from java-sdk.
Edits should be made here: https://github.com/open-feature/java-sdk
Once a repo has been updated, docs can be generated by running: yarn update:sdk-docs
-Last updated at Fri Apr 17 2026 08:43:11 GMT+0000 (Coordinated Universal Time)
+Last updated at Mon Apr 20 2026 08:55:15 GMT+0000 (Coordinated Universal Time)
-->
import MCPInstall from '@site/src/partials/mcp-install';
diff --git a/docs/reference/sdks/server/javascript/index.mdx b/docs/reference/sdks/server/javascript/index.mdx
index 7819e715d..e8c8758ed 100644
--- a/docs/reference/sdks/server/javascript/index.mdx
+++ b/docs/reference/sdks/server/javascript/index.mdx
@@ -10,7 +10,7 @@ This content has been automatically generated from js-sdk.
Edits should be made here: https://github.com/open-feature/js-sdk
Once a repo has been updated, docs can be generated by running: yarn update:sdk-docs
-Last updated at Fri Apr 17 2026 08:43:11 GMT+0000 (Coordinated Universal Time)
+Last updated at Mon Apr 20 2026 08:55:16 GMT+0000 (Coordinated Universal Time)
-->
import MCPInstall from '@site/src/partials/mcp-install';
diff --git a/docs/reference/sdks/server/javascript/nestjs.mdx b/docs/reference/sdks/server/javascript/nestjs.mdx
index ef67674f0..435530f74 100644
--- a/docs/reference/sdks/server/javascript/nestjs.mdx
+++ b/docs/reference/sdks/server/javascript/nestjs.mdx
@@ -10,7 +10,7 @@ This content has been automatically generated from js-sdk.
Edits should be made here: https://github.com/open-feature/js-sdk
Once a repo has been updated, docs can be generated by running: yarn update:sdk-docs
-Last updated at Fri Apr 17 2026 08:43:11 GMT+0000 (Coordinated Universal Time)
+Last updated at Mon Apr 20 2026 08:55:16 GMT+0000 (Coordinated Universal Time)
-->
import MCPInstall from '@site/src/partials/mcp-install';
diff --git a/docs/reference/sdks/server/php.mdx b/docs/reference/sdks/server/php.mdx
index 8acdb6568..0d52e9e94 100644
--- a/docs/reference/sdks/server/php.mdx
+++ b/docs/reference/sdks/server/php.mdx
@@ -9,7 +9,7 @@ This content has been automatically generated from php-sdk.
Edits should be made here: https://github.com/open-feature/php-sdk
Once a repo has been updated, docs can be generated by running: yarn update:sdk-docs
-Last updated at Fri Apr 17 2026 08:43:12 GMT+0000 (Coordinated Universal Time)
+Last updated at Mon Apr 20 2026 08:55:16 GMT+0000 (Coordinated Universal Time)
-->
import MCPInstall from '@site/src/partials/mcp-install';
diff --git a/docs/reference/sdks/server/python.mdx b/docs/reference/sdks/server/python.mdx
index 0b98f1e1b..14c8c558f 100644
--- a/docs/reference/sdks/server/python.mdx
+++ b/docs/reference/sdks/server/python.mdx
@@ -9,7 +9,7 @@ This content has been automatically generated from python-sdk.
Edits should be made here: https://github.com/open-feature/python-sdk
Once a repo has been updated, docs can be generated by running: yarn update:sdk-docs
-Last updated at Fri Apr 17 2026 08:43:11 GMT+0000 (Coordinated Universal Time)
+Last updated at Mon Apr 20 2026 08:55:16 GMT+0000 (Coordinated Universal Time)
-->
import MCPInstall from '@site/src/partials/mcp-install';
@@ -139,11 +139,11 @@ If the flag management system you're using supports targeting, you can provide t
```python
from openfeature.api import (
get_client,
- get_provider,
set_provider,
get_evaluation_context,
set_evaluation_context,
)
+from openfeature.evaluation_context import EvaluationContext
global_context = EvaluationContext(
targeting_key="targeting_key1", attributes={"application": "value1"}
@@ -156,7 +156,7 @@ request_context = EvaluationContext(
set_evaluation_context(global_context)
# merge second context
-client = get_client(name="No-op Provider")
+client = get_client(domain="No-op Provider")
client.get_string_value("email", "fallback", request_context)
```
@@ -169,6 +169,7 @@ If the hook you're looking for hasn't been created yet, see the [develop a hook]
Once you've added a hook as a dependency, it can be registered at the global, client, or flag invocation level.
```python
+from openfeature import api
from openfeature.api import add_hooks
from openfeature.flag_evaluation import FlagEvaluationOptions
@@ -176,12 +177,12 @@ from openfeature.flag_evaluation import FlagEvaluationOptions
add_hooks([MyHook()])
# or configure them in the client
-client = OpenFeatureClient()
+client = api.get_client()
client.add_hooks([MyHook()])
# or at the invocation-level
options = FlagEvaluationOptions(hooks=[MyHook()])
-client.get_boolean_flag("my-flag", False, flag_evaluation_options=options)
+client.get_boolean_value("my-flag", False, flag_evaluation_options=options)
```
### Tracking
@@ -251,7 +252,7 @@ Please refer to the documentation of the provider you're using to see what event
```python
from openfeature import api
-from openfeature.provider import ProviderEvent
+from openfeature.event import EventDetails, ProviderEvent
def on_provider_ready(event_details: EventDetails):
print(f"Provider {event_details.provider_name} is ready")
@@ -500,10 +501,11 @@ Implement your own hook by creating a hook that inherits from the `Hook` class.
Any of the evaluation life-cycle stages (`before`/`after`/`error`/`finally_after`) can be override to add the desired business logic.
```python
-from openfeature.hook import Hook
+from openfeature.hook import Hook, HookContext, HookHints
+from openfeature.flag_evaluation import FlagEvaluationDetails, FlagValueType
class MyHook(Hook):
- def after(self, hook_context: HookContext, details: FlagEvaluationDetails, hints: dict):
+ def after(self, hook_context: HookContext, details: FlagEvaluationDetails[FlagValueType], hints: HookHints):
print("This runs after the flag has been evaluated")
```
diff --git a/docs/reference/sdks/server/ruby.mdx b/docs/reference/sdks/server/ruby.mdx
index b1c53d901..219b9192d 100644
--- a/docs/reference/sdks/server/ruby.mdx
+++ b/docs/reference/sdks/server/ruby.mdx
@@ -10,7 +10,7 @@ This content has been automatically generated from ruby-sdk.
Edits should be made here: https://github.com/open-feature/ruby-sdk
Once a repo has been updated, docs can be generated by running: yarn update:sdk-docs
-Last updated at Fri Apr 17 2026 08:43:12 GMT+0000 (Coordinated Universal Time)
+Last updated at Mon Apr 20 2026 08:55:17 GMT+0000 (Coordinated Universal Time)
-->
import MCPInstall from '@site/src/partials/mcp-install';
diff --git a/docs/reference/sdks/server/rust.mdx b/docs/reference/sdks/server/rust.mdx
index 0d877af95..664c85f6b 100644
--- a/docs/reference/sdks/server/rust.mdx
+++ b/docs/reference/sdks/server/rust.mdx
@@ -9,7 +9,7 @@ This content has been automatically generated from rust-sdk.
Edits should be made here: https://github.com/open-feature/rust-sdk
Once a repo has been updated, docs can be generated by running: yarn update:sdk-docs
-Last updated at Fri Apr 17 2026 08:43:12 GMT+0000 (Coordinated Universal Time)
+Last updated at Mon Apr 20 2026 08:55:17 GMT+0000 (Coordinated Universal Time)
-->