Skip to content

Bulk Evaluation

The bulk evaluation endpoint lets you evaluate multiple flags and fetch multiple configs in a single request. This is the recommended approach for client applications that need several values at once.

Request

Terminal window
curl -X POST \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"context": {
"user_id": "u_123",
"email": "[email protected]",
"plan": "premium",
"custom": {
"country": "US",
"beta_enrolled": true
}
},
"flags": ["new_checkout", "dark_mode", "premium_feature"],
"configs": ["payment_providers", "api_limits"]
}' \
"https://edgeflags.net/api/v1/evaluate"

Request body

FieldTypeRequiredDescription
contextobjectYesUser context for targeting evaluation
flagsstring[]NoFlag keys to evaluate (omit to skip flags)
configsstring[]NoConfig keys to retrieve (omit to skip configs)

The context object is limited to 64KB.

Response

{
"flags": {
"new_checkout": true,
"dark_mode": true,
"premium_feature": false
},
"configs": {
"payment_providers": {
"stripe_public_key": "pk_test_123",
"paypal_enabled": true,
"apple_pay_enabled": false
},
"api_limits": {
"requests_per_minute": 1000,
"burst_limit": 2000
}
}
}

Flags return their evaluated value directly (not the full evaluation response with reason and type). Configs return the value for the environment specified in context.environment, falling back to the default value.

Permissions

The evaluate endpoint checks permissions based on what you request:

  • flags array requires read:flags permission
  • configs array requires read:configs permission

If you have read:flags but not read:configs, you can still evaluate flags — the configs portion will be empty. A 403 Forbidden is only returned if you lack both permissions.

Rate limits

The evaluate endpoint has a higher rate limit (10,000 requests/minute) compared to management endpoints (1,000 requests/minute). See Rate Limiting for details.

Method restriction

Only POST is accepted. A GET request to /api/v1/evaluate returns 405 Method Not Allowed.