All articles
WordPress Security

WordPress REST API Rate Limits for Application Passwords

HandL WP Engineering·
WordPress REST API Rate Limits for Application Passwords

WordPress application passwords give external systems REST API access without sharing the main user password. That does not make them harmless. Unknown owners, broad roles, noisy scripts, and missing rate limits can turn a helpful integration into a quiet security risk.

Use this for WordPress sites with CRMs, publishing tools, automation scripts, mobile apps, headless frontends, or vendors that authenticate to the REST API.

Quick answer

WordPress REST API Rate Limits for Application Passwords should be handled with a narrow evidence-first workflow: map owners, review api logs, add rate limits, then verify the result before making broader changes.

What to check first

  • List users that own application passwords and match each credential to a named integration.
  • Review recent REST API traffic for failed authentication, high request volume, and unusual IPs.
  • Rate limit authenticated REST API requests without blocking normal publishing or CRM syncs.
  • Revoke credentials for old vendors, staff, test scripts, and retired integrations.
  • Rotate credentials after malware cleanup, staff changes, or vendor handoffs.

Diagnostic table

Use this table to keep the work practical. It connects the symptom to evidence and a verification step.

ActionEvidence to collectHow to verify
Map ownersList users that own application passwords and match each credential to a named integration.Every active application password has a named owner and business purpose.
Review API logsReview recent REST API traffic for failed authentication, high request volume, and unusual IPs.Normal integrations work after rate limits are applied.
Add rate limitsRate limit authenticated REST API requests without blocking normal publishing or CRM syncs.Stale vendor credentials are revoked and documented.
Revoke stale keysRevoke credentials for old vendors, staff, test scripts, and retired integrations.Security logs show no repeated failed REST API authentication bursts.

Useful command or data shape

Adapt paths, IDs, and privacy handling to the site before running commands or storing data on production.

wp user list --fields=ID,user_login,user_email,roles
wp user application-password list 12
wp user application-password delete 12 app-password-uuid
# Check access logs for /wp-json/ requests by IP, method, status, and user agent.
REST API credential rate limit audit for WordPress REST API Rate Limits for Application Passwords

Safe fix order

Do the work in a sequence that makes each result easy to prove. Stop if a step produces new evidence that changes the incident scope.

  1. Map owners
  2. Review API logs
  3. Add rate limits
  4. Revoke stale keys
  5. Rotate after changes

Production verification checklist

  • Every active application password has a named owner and business purpose.
  • Normal integrations work after rate limits are applied.
  • Stale vendor credentials are revoked and documented.
  • Security logs show no repeated failed REST API authentication bursts.

Mistakes to avoid

  • Do not judge the fix by one browser or the homepage only.
  • Do not delete evidence before recording usernames, file paths, timestamps, and response headers.
  • Do not add a cache, security, or tracking plugin while the original problem is still unclear.
  • Do not leave test users, temporary debug logs, or broad API keys active after verification.

When HandL WP should help

Bring in help when this affects leads, checkout, search visibility, malware risk, paid media reporting, or a client production site. HandL WP can trace the issue through WordPress, hosting, cache, tracking, and Search Console, then verify the workflow after the technical fix.

If this is active on a production site, audit WordPress REST API credentials.

Helpful references

Ready when you are

Get WordPress help, before the next lead is lost.

Tell us what’s broken or what you need built. We’ll review your request and reply with clear next steps, usually within a few business hours.

Same-day emergency triage · Backed by HandL Digital