Sizes
| Limit | Value |
|---|---|
| Variations of a string, number or object flag | 2 to 20 |
| A variation’s value | 32 KB of JSON |
| Rules per config | 100 |
| A rule’s description | 200 characters |
| Clauses per rule | 10 |
| Values per clause | 1,000 |
| Individual target values per config | 10,000 |
| A segment’s included and excluded targetingKeys | 10,000 each |
| An environment’s compiled flags | 8 MB |
| An evaluation context | 8 KB |
| A request to the API | 1 MiB |
A change that would make an environment’s compiled flags larger than 8 MB (a long list of targets,
or a segment many flags use) is refused with 400 snapshot_too_large, and nothing changes. Move
long lists into segments, or trim them.
Requests to the API are at most 1 MiB, so one config or segment can’t carry every list its limits allow if the values are long: 10,000 targets of 120 characters don’t fit in one request. Typical ID lists (thousands of user or account IDs) fit; longer ones must be split across segments or kept short.
Evaluation rate limits
Per environment, on https://flags.ezghcloud.com:
| Limit | Default |
|---|---|
| OFREP requests | 2,000 a second, in bursts of up to 10,000 |
| Flag downloads by server providers | 10 a second, in bursts of up to 100 |
| Open server provider streams | 500 |
Open client streams (web providers with live: true) |
10,000 |
| Requests with a missing or wrong key, per client address | 20 a minute |
Over a limit answers 429 with Retry-After; EZGH’s providers wait for it and retry. Server
providers evaluate locally, so evaluations don’t count. To raise a limit, contact support.
Quotas
| Quota | Default |
|---|---|
flags.flags.perProject |
2,000 flags per project (archived flags count) |
flags.environments.perProject |
20 environments per project |
flags.segments.perProject |
200 segments per project |
flags.sdkKeys.perProject |
200 unrevoked SDK keys per project |
Creating past a quota answers 409 quota_exceeded. See and request quotas in
Service quotas.