Skip to content



A comprehensive JSON schema is available for flagd configuration at It comprises definitions for flags as well as targeting. You can use this schema to validate flagd configurations by using any JSON Schema validation library compliant with JSON Schema draft-07. Additionally, most IDEs will automatically validate JSON documents if the document contains a $schema key and the schema is available at the specified URL.

The example below is automatically validated in most IDEs:

  "$schema": "",
  "flags": {
    "basic-flag": {
      "state": "ENABLED",
      "variants": {
        "on": true,
        "off": false
      "defaultVariant": "on"
    "fractional-flag": {
      "state": "ENABLED",
      "variants": {
        "clubs": "clubs",
        "diamonds": "diamonds",
        "hearts": "hearts",
        "spades": "spades",
        "wild": "wild"
      "defaultVariant": "wild",
      "targeting": {
        "fractional": [
          { "var": "email" },
          ["clubs", 25],
          ["diamonds", 25],
          ["hearts", 25],
          ["spades", 25]


In addition to the flags schema above, there's a schema available specifically for flagd targeting rules at This validates only the targeting property of a flag. Please note that the flags schema also validates the targeting for each flag, so it's not necessary to specifically use the targeting schema unless you which to validate a targeting field individually.