WSO2 · JSON Structure

Admin Api Subscription Throttle Policy Structure

SubscriptionThrottlePolicy schema from WSO2 API Manager

Type: Properties: 0
API ManagementGatewaysOpen SourceAPI LifecycleGraphQLSOAPREST

Subscription Throttling Policy is a JSON Structure definition published by WSO2. It conforms to the https://json-structure.org/meta/core/v0/# meta-schema.

Meta-schema: https://json-structure.org/meta/core/v0/#

JSON Structure

Raw ↑
{
  "$schema": "https://json-structure.org/meta/core/v0/#",
  "$id": "https://raw.githubusercontent.com/api-evangelist/wso2/refs/heads/main/json-structure/admin-api-subscription-throttle-policy-structure.json",
  "name": "Subscription Throttling Policy",
  "description": "SubscriptionThrottlePolicy schema from WSO2 API Manager",
  "allOf": [
    {
      "$ref": "#/components/schemas/ThrottlePolicy"
    },
    {
      "$ref": "#/components/schemas/GraphQLQuery"
    },
    {
      "required": [
        "defaultLimit"
      ],
      "type": "object",
      "properties": {
        "defaultLimit": {
          "$ref": "#/components/schemas/ThrottleLimit"
        },
        "monetization": {
          "$ref": "#/components/schemas/MonetizationInfo"
        },
        "rateLimitCount": {
          "type": "int32",
          "description": "Burst control request count",
          "example": 10
        },
        "rateLimitTimeUnit": {
          "type": "string",
          "description": "Burst control time unit",
          "example": "min"
        },
        "subscriberCount": {
          "type": "int32",
          "description": "Number of subscriptions allowed",
          "example": 10
        },
        "customAttributes": {
          "type": "array",
          "description": "Custom attributes added to the Subscription Throttling Policy\n",
          "example": [],
          "items": {
            "$ref": "#/components/schemas/CustomAttribute"
          }
        },
        "stopOnQuotaReach": {
          "type": "boolean",
          "description": "This indicates the action to be taken when a user goes beyond the allocated quota. If checked, the user's requests will be dropped. If unchecked, the requests will be allowed to pass through.\n",
          "default": false
        },
        "billingPlan": {
          "type": "string",
          "description": "define whether this is Paid or a Free plan. Allowed values are FREE or COMMERCIAL.\n",
          "example": "FREE"
        },
        "permissions": {
          "$ref": "#/components/schemas/SubscriptionThrottlePolicyPermission"
        }
      }
    }
  ]
}