Link11 WAAP
v5
v5
  • Link11 WAAP Documentation
  • Release Notes
  • Known Issues
  • User Guide
    • Introduction to Link11 WAAP
  • How Link11 WAAP Works
    • Traffic Filtering Process
    • Traffic Reporting and Analytics
    • Policy Mapping and Traffic Routing
    • Tagging
    • UI Overview and Common Elements
  • Console UI Walkthrough
    • Analytics
      • Dashboard
      • Events Log
    • Security
      • Global Filters
      • Flow Control Policies
      • Security Policies
      • Rate Limit Rules
      • ACL Profiles
      • Actions
      • Dynamic Rules
      • Quarantined
      • Content Filter
        • Content Filter Profiles
        • Content Filter Rules
    • Sites
      • Server Groups
      • Proxy Templates
      • Mobile Application Groups
      • Backend Services
      • Edge Functions
      • DNS Records
      • SSL
        • Load Balancers
        • Certificates
    • System
      • Interactive Challenge
      • SSO Configuration
      • Purge CDN Cache
      • Users Management
      • Security Alerts
      • Log Exporters
      • Version Control
      • System DB
      • Publish Changes
    • Account
  • Using the product
    • Best Practices
      • Saving and Publishing Your Changes
      • Enabling Passive Challenges
      • Understanding and Diagnosing Traffic Issues
    • How Do I...
      • Authenticate mobile app users
      • Ban, unban, and allowlist traffic sources
      • Bypass Link11 WAAP for loadtesting or other purposes
      • Configure a new path/section of a site
      • Control caching behavior
      • Enable GraphQL traffic
      • Enable mTLS (mutual TLS)
      • Protect sensitive information in logs and analytics
      • Quickly block an attacker
      • Redirect or block HTTP traffic
      • Run custom code
      • Set rate limits and exemptions
      • Stream event data to a SIEM solution or other destination
    • The Link11 WAAP API
      • Overview
      • Internal data structures
      • Using Swagger UI
      • Using curl
  • Reference Information
    • Acronyms
    • API
      • API access to traffic data
      • Types of namespaces
      • Namespace reference
        • ACL Profiles
        • Actions
        • Backend Services
        • Certificates
        • Configs
        • Content Filter Profiles
        • Content Filter Rules
        • Data queries
        • Dynamic Rules
        • Edge Functions
        • Flow Control Policies
        • Global Filters
        • Load Balancers
        • Log Exporters
        • Mobile Application Groups
        • Planets
        • Proxy Templates
        • Rate Limit Rules
        • Security Alerts
        • Security Policies
        • Server Groups
        • Tags
        • Tools
        • Users
    • Hostile Bot Detection / LWCSI
      • Environmental detection and browser verification
      • Client authentication
      • Biometric behavioral verification
    • HTTP Response Codes
    • Log Exporter Output
    • Pattern Matching Syntax
    • Query Filter Syntax and Best Practices
  • Support
Powered by GitBook
On this page

Was this helpful?

Export as PDF
  1. Reference Information
  2. API
  3. Namespace reference

Rate Limit Rules

PreviousProxy TemplatesNextSecurity Alerts

Last updated 5 months ago

Was this helpful?

Delete Rate Limit Rules

delete

Delete all Rate Limit Rules in a configuration

Path parameters
configstringRequired
Responses
200
Rate Limit Rules deleted successfully
application/json
422
Validation Error
application/json
delete
DELETE /api/v4.0/conf/{config}/rate-limit-rules HTTP/1.1
Host: 
Accept: */*
{
  "message": "Successfully deleted entry"
}

Get specific Rate Limit Rule

get

Get a Rate Limit Rule from the specified configuration

Path parameters
configstringRequired
entry_idstringRequired
Responses
200
Rate Limit Rule retrieved successfully
application/json
422
Validation Error
application/json
get
GET /api/v4.0/conf/{config}/rate-limit-rules/{entry_id} HTTP/1.1
Host: 
Accept: */*
{
  "action": "text",
  "active": true,
  "description": "text",
  "exclude": {
    "relation": "OR",
    "tags": [
      "text"
    ]
  },
  "global": true,
  "id": "text",
  "include": {
    "relation": "OR",
    "tags": [
      "text"
    ]
  },
  "is_action_ban": true,
  "key": 1,
  "last_activated": 1,
  "name": "text",
  "pairwith": null,
  "tags": [
    "text"
  ],
  "threshold": 1,
  "timeframe": 1,
  "ttl": 1
}

Delete single Rate Limit Rule

delete

Delete an individual Rate Limit Rule from the specified configuration

Path parameters
configstringRequired
entry_idstringRequired
Responses
200
Rate Limit Rule deleted successfully
application/json
422
Validation Error
application/json
delete
DELETE /api/v4.0/conf/{config}/rate-limit-rules/{entry_id} HTTP/1.1
Host: 
Accept: */*
{
  "message": "Successfully deleted entry"
}

Get Rate Limit Rules version list

get

Get list of versions of Rate Limit Rules in a configuration

Path parameters
configstringRequired
Responses
200
Rate Limit Rules version list retrieved successfully
application/json
422
Validation Error
application/json
get
GET /api/v4.0/conf/{config}/rate-limit-rules/versions HTTP/1.1
Host: 
Accept: */*
{
  "total": 1,
  "items": [
    {
      "author": "text",
      "email": "name@gmail.com",
      "message": "text",
      "date": "2025-05-17T07:32:19.270Z",
      "version": "42bcc1282349db1e5791484c3d69420b1d8a8bc1",
      "parents": [
        "f44073242093228b45bff7eb7a065559fa9b46aa"
      ]
    }
  ]
}

Get version of Rate Limit Rule

get

Get a specific version of a Rate Limit Rule

Path parameters
configstringRequired
versionstringRequired
Responses
200
Rate Limit Rule retrieved successfully
application/json
422
Validation Error
application/json
get
GET /api/v4.0/conf/{config}/rate-limit-rules/versions/{version} HTTP/1.1
Host: 
Accept: */*
{
  "total": 1,
  "items": [
    {
      "action": "text",
      "active": true,
      "description": "text",
      "exclude": {
        "relation": "OR",
        "tags": [
          "text"
        ]
      },
      "global": true,
      "id": "text",
      "include": {
        "relation": "OR",
        "tags": [
          "text"
        ]
      },
      "is_action_ban": true,
      "key": 1,
      "last_activated": 1,
      "name": "text",
      "pairwith": null,
      "tags": [
        "text"
      ],
      "threshold": 1,
      "timeframe": 1,
      "ttl": 1
    }
  ]
}

Revert a Rate Limit Rule to the specified version

put

Set a previous Rate Limit Rule version to be the current one

Path parameters
configstringRequired
versionstringRequired
Responses
200
Rate Limit Rule reversion was successful
application/json
422
Validation Error
application/json
put
PUT /api/v4.0/conf/{config}/rate-limit-rules/versions/{version}/revert HTTP/1.1
Host: 
Accept: */*
{
  "message": "Successfully updated entry"
}
  • GETGet Rate Limit Rules
  • PUTModify Rate Limit Rules
  • POSTCreate Rate Limit Rules
  • DELETEDelete Rate Limit Rules
  • GETGet specific Rate Limit Rule
  • PUTModify a single Rate Limit Rule
  • POSTCreate single Rate Limit Rule
  • DELETEDelete single Rate Limit Rule
  • GETGet Rate Limit Rules version list
  • GETGet version of Rate Limit Rule
  • PUTRevert a Rate Limit Rule to the specified version

Get Rate Limit Rules

get

Get all Rate Limit Rules in a configuration

Path parameters
configstringRequired
Responses
200
Rate Limit Rules retrieved successfully
application/json
get
GET /api/v4.0/conf/{config}/rate-limit-rules HTTP/1.1
Host: 
Accept: */*
200

Rate Limit Rules retrieved successfully

{
  "total": 1,
  "items": [
    {
      "action": "text",
      "active": true,
      "description": "text",
      "exclude": {
        "relation": "OR",
        "tags": [
          "text"
        ]
      },
      "global": true,
      "id": "text",
      "include": {
        "relation": "OR",
        "tags": [
          "text"
        ]
      },
      "is_action_ban": true,
      "key": 1,
      "last_activated": 1,
      "name": "text",
      "pairwith": null,
      "tags": [
        "text"
      ],
      "threshold": 1,
      "timeframe": 1,
      "ttl": 1
    }
  ]
}

Modify Rate Limit Rules

put

Update an existing set of Rate Limit Rules for a configuration

Path parameters
configstringRequired
Body
actionstringRequired
activebooleanRequired
descriptionstringOptional
globalbooleanRequired
idstringRequired
is_action_banbooleanOptional
keyany ofOptional
integerOptional
or
numberOptional
or
booleanOptional
or
anyOptional
or
last_activatedintegerOptional
namestringRequired
pairwithanyOptional
tagsstring[]Optional
thresholdintegerRequired
timeframeintegerRequired
ttlintegerOptional
Responses
200
Rate Limit Rules updated successfully
application/json
422
Validation Error
application/json
put
PUT /api/v4.0/conf/{config}/rate-limit-rules HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 298

[
  {
    "action": "text",
    "active": true,
    "description": "text",
    "exclude": {
      "relation": "OR",
      "tags": [
        "text"
      ]
    },
    "global": true,
    "id": "text",
    "include": {
      "relation": "OR",
      "tags": [
        "text"
      ]
    },
    "is_action_ban": true,
    "key": 1,
    "last_activated": 1,
    "name": "text",
    "pairwith": null,
    "tags": [
      "text"
    ],
    "threshold": 1,
    "timeframe": 1,
    "ttl": 1
  }
]
{
  "message": "Successfully updated entry"
}

Create Rate Limit Rules

post

Create a complete set of Rate Limit Rules for a configuration

Path parameters
configstringRequired
Body
actionstringRequired
activebooleanRequired
descriptionstringOptional
globalbooleanRequired
idstringRequired
is_action_banbooleanOptional
keyany ofOptional
integerOptional
or
numberOptional
or
booleanOptional
or
anyOptional
or
last_activatedintegerOptional
namestringRequired
pairwithanyOptional
tagsstring[]Optional
thresholdintegerRequired
timeframeintegerRequired
ttlintegerOptional
Responses
201
Rate Limit Rules created successfully
application/json
422
Validation Error
application/json
post
POST /api/v4.0/conf/{config}/rate-limit-rules HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 298

[
  {
    "action": "text",
    "active": true,
    "description": "text",
    "exclude": {
      "relation": "OR",
      "tags": [
        "text"
      ]
    },
    "global": true,
    "id": "text",
    "include": {
      "relation": "OR",
      "tags": [
        "text"
      ]
    },
    "is_action_ban": true,
    "key": 1,
    "last_activated": 1,
    "name": "text",
    "pairwith": null,
    "tags": [
      "text"
    ],
    "threshold": 1,
    "timeframe": 1,
    "ttl": 1
  }
]
{
  "message": "Successfully created entry"
}

Modify a single Rate Limit Rule

put

Update an individual Rate Limit Rule within a configuration

Path parameters
configstringRequired
entry_idstringRequired
Body
actionstringRequired
activebooleanRequired
descriptionstringOptional
globalbooleanRequired
idstringRequired
is_action_banbooleanOptional
keyany ofOptional
integerOptional
or
numberOptional
or
booleanOptional
or
anyOptional
or
last_activatedintegerOptional
namestringRequired
pairwithanyOptional
tagsstring[]Optional
thresholdintegerRequired
timeframeintegerRequired
ttlintegerOptional
Responses
200
Rate Limit Rule updated successfully
application/json
422
Validation Error
application/json
put
PUT /api/v4.0/conf/{config}/rate-limit-rules/{entry_id} HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 296

{
  "action": "text",
  "active": true,
  "description": "text",
  "exclude": {
    "relation": "OR",
    "tags": [
      "text"
    ]
  },
  "global": true,
  "id": "text",
  "include": {
    "relation": "OR",
    "tags": [
      "text"
    ]
  },
  "is_action_ban": true,
  "key": 1,
  "last_activated": 1,
  "name": "text",
  "pairwith": null,
  "tags": [
    "text"
  ],
  "threshold": 1,
  "timeframe": 1,
  "ttl": 1
}
{
  "message": "Successfully updated entry"
}

Create single Rate Limit Rule

post

Create an individual Rate Limit Rule within a configuration

Path parameters
configstringRequired
entry_idstringRequired
Body
actionstringRequired
activebooleanRequired
descriptionstringOptional
globalbooleanRequired
idstringRequired
is_action_banbooleanOptional
keyany ofOptional
integerOptional
or
numberOptional
or
booleanOptional
or
anyOptional
or
last_activatedintegerOptional
namestringRequired
pairwithanyOptional
tagsstring[]Optional
thresholdintegerRequired
timeframeintegerRequired
ttlintegerOptional
Responses
201
Rate Limit Rule created successfully
application/json
422
Validation Error
application/json
post
POST /api/v4.0/conf/{config}/rate-limit-rules/{entry_id} HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 296

{
  "action": "text",
  "active": true,
  "description": "text",
  "exclude": {
    "relation": "OR",
    "tags": [
      "text"
    ]
  },
  "global": true,
  "id": "text",
  "include": {
    "relation": "OR",
    "tags": [
      "text"
    ]
  },
  "is_action_ban": true,
  "key": 1,
  "last_activated": 1,
  "name": "text",
  "pairwith": null,
  "tags": [
    "text"
  ],
  "threshold": 1,
  "timeframe": 1,
  "ttl": 1
}
{
  "message": "Successfully created entry"
}