{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "#/components/schemas/FeatureFlagBody", "title": "FeatureFlagBody", "type": "object", "description": "The request body for creating a new feature flag.", "required": [ "name", "key" ], "properties": { "name": { "type": "string", "description": "The human-readable name of the feature flag." }, "key": { "type": "string", "description": "The unique key identifying this feature flag.", "pattern": "^[a-z0-9]([a-z0-9._-])*$" }, "description": { "type": "string", "description": "A description of the feature flag purpose." }, "tags": { "type": "array", "description": "Tags to apply to the feature flag.", "items": { "type": "string" } }, "variations": { "type": "array", "description": "The variations this flag can serve.", "items": { "$ref": "#/components/schemas/Variation" } }, "temporary": { "type": "boolean", "description": "Whether this flag is intended to be temporary." }, "clientSideAvailability": { "type": "object", "description": "Client-side SDK availability settings.", "properties": { "usingEnvironmentId": { "type": "boolean", "description": "Whether this flag is available to client-side SDKs using the environment ID." }, "usingMobileKey": { "type": "boolean", "description": "Whether this flag is available to mobile SDKs." } } }, "defaults": { "type": "object", "description": "Default variation settings for new environments.", "properties": { "onVariation": { "type": "integer", "description": "The index of the variation to serve when the flag is on." }, "offVariation": { "type": "integer", "description": "The index of the variation to serve when the flag is off." } } } } }