Skip to content

Rate Limits

Nick edited this page Nov 27, 2025 · 1 revision

Rate Limits

Masker API implements rate limiting to ensure fair usage and system stability.


Current Limits

Limit Type Value Description
Requests per minute 100 Maximum requests per minute per IP
Payload size 64KB Maximum JSON payload size
Text field size 32KB Maximum text field size

Rate Limit Behavior

When rate limits are exceeded:

  • HTTP Status: 429 Too Many Requests
  • Response:
{
  "detail": "Too many requests. Please try again later."
}

Best Practices

  1. Implement exponential backoff when receiving 429 errors
  2. Cache results when processing the same data multiple times
  3. Batch requests when possible
  4. Monitor response headers for rate limit information

Error Handling

Python Example

import requests
import time

def redact_with_backoff(text, max_retries=3):
    url = "https://masker.kikuai.dev/v1/redact"
    
    for attempt in range(max_retries):
        response = requests.post(
            url,
            json={"text": text, "mode": "placeholder"}
        )
        
        if response.status_code == 200:
            return response.json()
        elif response.status_code == 429:
            # Rate limit - wait and retry
            wait_time = 2 ** attempt
            time.sleep(wait_time)
            continue
        else:
            response.raise_for_status()
    
    raise Exception("Max retries exceeded")

Last Updated: 2025-11-27

Clone this wiki locally