Rate limits
Manage rate-limit rules through the unified /admin/rules surface. The rule type is selected by the request body, not the URL. See the Rate limiting guide for operator-flow patterns.
Endpoints
Rate-limit rules are CRUD'd through the same /admin/rules surface as policy, transformation, and routing rules. There is no /admin/rate-limits path. On create and update, the rule type is carried in the request body as {"type": "rate-limit"}; on read and delete it is resolved from the rule's name, which is unique across all rule types.
GET /admin/rules?type=rate-limit
Lists rules. Add ?type=rate-limit to return only rate-limit rules.
POST /admin/rules
Creates a rule. The body must include "type": "rate-limit" plus the RateLimitRule fields. Returns 409 if the name is already taken by any rule type, not just an existing rate-limit rule.
GET /admin/rules/{name}
Returns one rule by name.
PUT /admin/rules/{name}
Updates an existing rule. This is not an upsert — if no rule by that name exists, it returns 404. If the body carries a type, it must match the existing rule's type; you cannot reassign a rule's type via PUT (delete and recreate instead).
DELETE /admin/rules/{name}
Deletes a rule by name.
d3x-edgectl (-key /
D3X_EDGE_ADMIN_KEY or -token, default
-addr 127.0.0.1:9091). Path names below are historical labels for
EdgeControl RPCs. See Admin API overview.Rule shape
A RateLimitRule is a flat JSON object. The token-bucket rate is rps (requests per second) with a burst ceiling. The NF dimension is the flat string source_nf_type — there is no nested match object. key selects the bucket dimension; valid values are "" (default: per source IP for SBI, per Origin-Host for Diameter), "global", "diameter_origin_host", "diameter_origin_realm", "diameter_app_id", "diameter_command_code", and "imsi_prefix:N". To cap per subscriber, set the separate boolean key_by_supi. See Policy schema for the full field reference.
Examples
Where to go next
- Policy schema —
RateLimitRuleshape. - Configuring rate limiting — operator patterns, key choice, cardinality.
- Metrics —
edge_rate_limit_exceeded_total.