Skip to main content

OpenFeature Remote Evaluation Protocol (OFREP)

The OpenFeature Remote Evaluation Protocol (OFREP) is an API specification for feature flagging that enables vendor-agnostic communication between applications and flag management systems. It defines a standard API layer between the provider and the flag management system, allowing any OpenSource or commercial system to implement the protocol and be compatible with community-maintained providers.

Key Benefitsโ€‹

  • Vendor Agnostic: Connect to any OFREP-compliant flag management system without vendor-specific implementations
  • Standardized: Built on a common OpenAPI specification for consistent integration
  • Flexible: Works on both client-side and server-side applications
  • Community Maintained: Generic OFREP providers maintained by the OpenFeature project

How It Worksโ€‹

OFREP is a protocol, not a provider. It defines how to communicate with feature flag management systems and works on top of OpenFeature SDKs by providing standardized providers.

  1. Your application uses the OpenFeature SDK
  2. The OpenFeature SDK uses an OFREP provider
  3. The OFREP provider communicates with your flag management system via the standardized OFREP API
  4. Your flag management system implements the OFREP specification

Server vs Clientโ€‹

OFREP supports both paradigms defined by OpenFeature:

Server-Side (Dynamic Context)โ€‹

  • Evaluation happens by calling the OFREP API with context
  • API request with evaluation context is made on every evaluation
  • Context per evaluation

Client-Side (Static Context)โ€‹

  • All flags are evaluated in one OFREP API call using a common static context
  • Then local flag evaluation happens against the cached static context
  • Context represents a single user or session

Using OFREPโ€‹

Available Providersโ€‹

The OpenFeature community maintains OFREP providers for multiple languages. View the complete list of OFREP providers in the ecosystem.

Available Flag Management Systemsโ€‹

Several flag management systems support OFREP. View the complete list of OFREP-compliant systems in the ecosystem.

Implementing OFREPโ€‹

For Provider Developersโ€‹

To create an OFREP provider for a new language:

  1. Review the server provider guideline or client provider guideline
  2. Implement the provider for your SDK according to the guidelines
  3. Register your provider in the OpenFeature ecosystem

For Flag Management System Developersโ€‹

To make your flag management system OFREP-compliant:

  1. Implement the OFREP OpenAPI specification
  2. Test your implementation with existing OFREP providers
  3. Register your system in the OpenFeature ecosystem