Apply quota on region basis

Can we set different quota policies for different-different geogrophical locations.   

0 1 78
1 REPLY 1

Probably yes, but can you say more about your requirement?

The Apigee Quota policy allows you to specify an Identifier as the ID for the quota bucket. The Identifier can be any variable, and you can set that variable to contain whatever you like. You can use a token as the identifier, in which case the rate limit will be enforced independently on EACH distinct token. You can use the client id as the identifier, and in that case the rate limit will be enforced on the aggregate API call volume across all instances of that API client. (suppose it is a mobile client with 800,000 installs, then the rate limit will be the AGGREGATE across all those client instances. Be careful!)

If you want to apply some sort of regional aspect to the limit, then you can specify a variable that indicates the region name or identifier.

The Quota identifier can be composite - you can use an ID that combines region as well as client id. Or Region as well as Developer ID. Or 3 or more elements. It's very flexible. In Apigee X, there is a variable system.region.name (cite) which identifies the region in which the Apigee resource is running. You could use that variable as one element in the Quota identifier. Keep in mind this region might be different that the region in which the client originates. If you want to enforce a limit based on the client's region, then you would need a way, within the proxy, of getting that information.  Maybe a GeoIP service that tells you "this client is coming from Eastern Europe" or etc.  And then use THAT location within the Quota identifier.