Product

Everything a flag service should be.
Nothing it shouldn't.

RESTFlags is feature flagging distilled to its essence: a predictable HTTP API, honest pricing, and a dashboard engineers actually want to use.

Premium Features
No feature caps, simple pricing
Easy to Reach
Quick Support
$5
per million requests
The API

One endpoint.
Any runtime.

If it speaks HTTPS, it evaluates flags. No library to install, no agent to run, no language binding to maintain.

01
Zero dependencies
cron jobs, edge workers, legacy Rails monoliths, Go microservices — three lines is the full integration
02
HTTP-native caching
Standard Cache-Control headers let your CDN or reverse proxy absorb evaluation traffic transparently
03
Batch evaluation
POST /api/v1/flags with a keys array evaluates up to 100 flags per request — ideal for server-rendered pages
# No installation needed.
curl -X POST \
-H "Authorization: Bearer rf_live_..." \
-d '{"flag":"dark-mode","user":{"id":"u_99"}}' \
https://api.restflags.com/api/v1/flags
{
"value": true,
"variant": "redesign-v2",
"reason": "segment:beta",
"latency_ms": 6
}
Flag types

Not just on/off.

Four primitives to cover every use case from kill switches to dynamic configuration.

Boolean
bool

On/off feature switches, kill switches, and access gates.

"value": true
Feature gating
String
str

A/B test variants, experiment groups, UI themes.

"variant": "redesign-v2"
A/B testing
Number
num

Rate limits, pricing tiers, algorithm parameters.

"value": 0.035
Dynamic config
JSON
json

Structured config objects for complex feature rollouts.

"value": {"limit":50,...}
Complex config
Targeting

Ship to who you want,
when you want.

A composable rule engine that matches on any attribute in your evaluation context.

Rule-based targeting
Match on any attribute you send — plan, country, email domain, custom traits. AND/OR conditions with unlimited depth.
Reusable segments
Define user groups once and reference them by name across many flags, without repeating rule logic.
Sticky percentage rollouts
Gradually release to a percentage of traffic. Consistent by user ID — the same person always sees the same variant.
Scheduled releases
Set a future timestamp and the flag flips automatically. No cron job, no deployment, no midnight heroics.
1
Beta users
serve redesign-v2 · 100%
user.planisbeta
ANDuser.countryinUSCAGB
2
Gradual rollout
serve redesign-v2 · 20%
user.created_atbefore2025-01-01
20%
control
⏱
Scheduled: 2025-06-01 09:00 UTC
Auto-enables for all users · in 4 days
pending
Default
control
Observability

Full audit trail.
Zero config.

Every flip, every rule change, every key rotation — cryptographically chained and streamable.

Tamper-evident log
Each entry is signed and chained to its predecessor. Any retroactive modification invalidates the chain.
Webhook delivery
Stream audit events to your SIEM, Slack channel, or S3 bucket in real time with HMAC-SHA256 signing.
Evaluation metrics
Per-flag counts, unique users, variant distributions, and p50/p95 latency — broken out by environment.
09:47:12
↑
Enabled new-checkout in production
AS
09:46:58
~
Changed rollout 20% → 100% on new-checkout
AS
09:31:04
+
Created flag new-checkout · type boolean
JK
08:12:37
↓
Disabled legacy-search in production
MR
yesterday
k
Rotated API key rf_live_4f2c...
JK

Ship your first flag this afternoon.

100,000 API requests free. No card required.

Create project