Partitioned policy when field not set in key

When “per_api” is set to true it is only accepting the rate limit from “limit” field inside “access_rights” of policy. If “limit” field is not defined then rate limit in that policy set using “rate” and “per” fields is used.

It is not taking the rate limit in key anyhow.

If rate is set in key or rate is not set in key as well, it is always taking from policy based on if “limit” field is present or not.

I just want to add one related observation I found.

"partitions": {
            "quota": false,
            "rate_limit": false,
            "acl": false,
            "complexity": false,
            "per_api": true
        }
  • When “acl” field inside “partition” is set to false rate limiting is always taken from policy.

  • On the other hand if “acl” is set to true, suppose rate_limiting is set to true then it is taken from policy else taken from key.(Which is obviously correct as per documentation)