Test Rate Limit Check · Schema
APIQuota
An API usage quota defining the total request allowance for a consumer over a longer period, distinct from per-second or per-minute rate limits.
API GovernanceAPI ManagementAPI TestingPerformance TestingRate LimitingTesting
Properties
| Name | Type | Description |
|---|---|---|
| id | string | Unique identifier for the quota. |
| consumer_id | string | Identifier of the API consumer this quota applies to. |
| api_name | string | Name of the API this quota applies to. |
| tier | string | Subscription tier or plan this quota is associated with (e.g., free, basic, pro, enterprise). |
| total_limit | integer | Maximum total number of requests allowed in the quota period. |
| used | integer | Number of requests used so far in the current quota period. |
| remaining | integer | Number of requests remaining in the current quota period. |
| period | string | Duration of the quota period. |
| period_start | string | ISO 8601 timestamp when the current quota period started. |
| period_end | string | ISO 8601 timestamp when the current quota period ends. |
| overage_enabled | boolean | Whether requests beyond the quota are allowed (possibly at additional cost). |
| overage_rate | number | Cost per request for overage requests beyond the quota limit. |
| percentage_used | number | Percentage of quota consumed in the current period. |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/test-rate-limit-check/refs/heads/main/json-schema/test-rate-limit-check-quota-schema.json",
"title": "APIQuota",
"description": "An API usage quota defining the total request allowance for a consumer over a longer period, distinct from per-second or per-minute rate limits.",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Unique identifier for the quota."
},
"consumer_id": {
"type": "string",
"description": "Identifier of the API consumer this quota applies to."
},
"api_name": {
"type": "string",
"description": "Name of the API this quota applies to."
},
"tier": {
"type": "string",
"description": "Subscription tier or plan this quota is associated with (e.g., free, basic, pro, enterprise)."
},
"total_limit": {
"type": "integer",
"minimum": 0,
"description": "Maximum total number of requests allowed in the quota period."
},
"used": {
"type": "integer",
"minimum": 0,
"description": "Number of requests used so far in the current quota period."
},
"remaining": {
"type": "integer",
"minimum": 0,
"description": "Number of requests remaining in the current quota period."
},
"period": {
"type": "string",
"enum": ["daily", "weekly", "monthly", "yearly"],
"description": "Duration of the quota period."
},
"period_start": {
"type": "string",
"format": "date-time",
"description": "ISO 8601 timestamp when the current quota period started."
},
"period_end": {
"type": "string",
"format": "date-time",
"description": "ISO 8601 timestamp when the current quota period ends."
},
"overage_enabled": {
"type": "boolean",
"description": "Whether requests beyond the quota are allowed (possibly at additional cost)."
},
"overage_rate": {
"type": "number",
"minimum": 0,
"description": "Cost per request for overage requests beyond the quota limit."
},
"percentage_used": {
"type": "number",
"minimum": 0,
"maximum": 100,
"description": "Percentage of quota consumed in the current period."
}
},
"required": ["id", "consumer_id", "total_limit", "period"]
}