ffv2_check_experiment_eligibility

Check experiment eligibility

read-onlyidempotentopen-world

Check if a feature configuration is eligible to run an A/B experiment on the Experimentation Platform (ExP). Returns eligibility status and the reasons why it is or isn't eligible.

Parameters

NameTypeRequiredDescription
client string yes Client platform: 'web-rwc' for React Web Client, 'desktop-tcns' for Teams Client Native Shell
Allowed: web-rwc, desktop-tcns
category string yes Feature category
Allowed: config, userOverride
audience string yes Target audience
Allowed: consumer, enterprise
featureFlags object yes Feature flag configuration object (e.g. { "myNamespace": { "myFlag": true } })
controlConfigs object yes Control/default configuration — same keys as featureFlags but with default values (e.g. { "myNamespace": { "myFlag": false } })
filters object no Optional targeting filters (same shape as rollout filters)
Raw input JSON Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "client": {
      "type": "string",
      "enum": [
        "web-rwc",
        "desktop-tcns"
      ],
      "description": "Client platform: 'web-rwc' for React Web Client, 'desktop-tcns' for Teams Client Native Shell"
    },
    "category": {
      "type": "string",
      "enum": [
        "config",
        "userOverride"
      ],
      "description": "Feature category"
    },
    "audience": {
      "type": "string",
      "enum": [
        "consumer",
        "enterprise"
      ],
      "description": "Target audience"
    },
    "featureFlags": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {},
      "description": "Feature flag configuration object (e.g. { \"myNamespace\": { \"myFlag\": true } })"
    },
    "controlConfigs": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {},
      "description": "Control/default configuration — same keys as featureFlags but with default values (e.g. { \"myNamespace\": { \"myFlag\": false } })"
    },
    "filters": {
      "description": "Optional targeting filters (same shape as rollout filters)",
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {}
    }
  },
  "required": [
    "client",
    "category",
    "audience",
    "featureFlags",
    "controlConfigs"
  ]
}