Skip to content

Features

A feature is a single capability key in your catalog. Each has a kind that never changes after create.

Kind Meaning Check result
flag On/off capability (sso, csv_export) allowed: true \| false
limit Numeric entitlement (seats, storage_gb) limit: N \| null (null = unlimited)
config A value per plan (support_tier, export_timeout) value of the feature's value_type, or null when nothing sets it
  • One feature = one gate. Don’t overload a key to mean three product behaviors.
  • Keys are an API contract with your app — rename means a code change.
  • Prefer a limit when the product question is “how many,” not “yes/no.”
  • Use a config when the question is “which one” or “what setting”: a support tier, a region, a timeout, a model name.
  • e10s does not track usage against limits — only the entitled value. You own the count, the period, and the reset (periodic quotas).

Config value types

A config feature's value_type is set at create and never changes, like kind.

value_type Values Example
string Any text up to 2,000 characters, "" included "#0a84ff"
number Any finite number 30.5
boolean true or false false
enum One of the feature's options "priority"
json Any JSON except null, up to 8 KB { "name": "fast", "max_tokens": 4096 }
  • No default. A config feature that isn't on the subscriber's plan (and has no override) checks as value: null with source: "none". Your app picks the fallback. To give every subscriber a value, put the feature on every plan.
  • null is never a value you set. To unset one, remove the grant or override.
  • A boolean config differs from a flag only when nothing sets it: a flag is allowed: false, a boolean config is null. Use a flag for access; use a boolean config for a setting.
  • enum options can be added or reordered any time. Removing an option that a plan grant or live override still uses is refused with 409 OPTION_IN_USE, naming where it's used. Removing an unused option is allowed, but check your code first: it may still compare against that value. Fields and endpoints: Features API.