Complete ZiziCache REST API Reference

Updated on 10. 2. 2026

REST API Overview

ZiziCache exposes a REST API for cache control, configuration, monitoring, and optimization tools. This reference reflects the actual implemented routes.

Base URL & Namespaces

Endpoints are registered under multiple namespaces for compatibility. Preferred base:

/wp-json/zizi-cache/v1/...

Also available:

/wp-json/zizi-cache/...
/wp-json/{plugin-dir}/...

Note: LCP collection is additionally available under /wp-json/zizicache/v1/lcp.

Authentication & Permissions

Most endpoints use Authority::rest_api_permission_callback, which requires a logged-in user with an allowed role (default: administrator, editor) and a valid nonce for state-changing requests (POST/PUT/DELETE).

Headers:
X-WP-Nonce: [nonce_value]
Content-Type: application/json

Allowed roles can be customized via the zizi_cache_allowed_roles filter.

Public endpoints (no auth required)

POST /wp-json/zizi-cache/v1/lcp
POST /wp-json/zizi-cache/v1/cwv/metrics
GET  /wp-json/zizi-cache/v1/cwv/page-summary?url=...
POST /wp-json/zizi-cache/v1/font-intelligence/collect

These endpoints allow public access. CWV and font collection are rate-limited (see Rate Limiting).

Cache Management

GET  /wp-json/zizi-cache/v1/cached-pages-count
GET  /wp-json/zizi-cache/v1/cache-stats
POST /wp-json/zizi-cache/v1/purge-pages
POST /wp-json/zizi-cache/v1/purge-current-page
POST /wp-json/zizi-cache/v1/purge-pages-and-preload
POST /wp-json/zizi-cache/v1/purge-everything
POST /wp-json/zizi-cache/v1/purge-everything-and-preload
POST /wp-json/zizi-cache/v1/preload-cache
POST /wp-json/zizi-cache/v1/preload-single-url
POST /wp-json/zizi-cache/v1/purge-critical-css
GET  /wp-json/zizi-cache/v1/cache-status-breakdown
POST /wp-json/zizi-cache/v1/litespeed-preload/start
POST /wp-json/zizi-cache/v1/litespeed-preload/stop
GET  /wp-json/zizi-cache/v1/litespeed-preload/progress

Notes: cache-status-breakdown and LiteSpeed preload endpoints are only meaningful in LiteSpeed Cache Only mode. purge-current-page and preload-single-url expect a url parameter.

Cache URLs Tracking (Pages Not Cached)

GET  /wp-json/zizi-cache/v1/uncached-urls
GET  /wp-json/zizi-cache/v1/cache-urls-stats
POST /wp-json/zizi-cache/v1/sync-cache-urls
POST /wp-json/zizi-cache/v1/refresh-cache-urls
GET  /wp-json/zizi-cache/v1/cache-urls-post-types

Pagination parameters for uncached-urls: page, per_page, post_type, search.

Cache Settings & Exclusions

GET  /wp-json/zizi-cache/v1/cache-settings
POST /wp-json/zizi-cache/v1/cache-settings
GET  /wp-json/zizi-cache/v1/cache-exclusions
POST /wp-json/zizi-cache/v1/cache-exclusions

Configuration

GET  /wp-json/zizi-cache/v1/config
POST /wp-json/zizi-cache/v1/config
GET  /wp-json/zizi-cache/v1/config/defaults

Database Management

POST /wp-json/zizi-cache/v1/optimize-db-tables
POST /wp-json/zizi-cache/v1/optimize-db-tables-batch
GET  /wp-json/zizi-cache/v1/database-statistics
GET  /wp-json/zizi-cache/v1/database-growth-history
POST /wp-json/zizi-cache/v1/db-event-log
GET  /wp-json/zizi-cache/v1/database-operation-logs
GET  /wp-json/zizi-cache/v1/database-status
GET  /wp-json/zizi-cache/v1/cleanup-counts
POST /wp-json/zizi-cache/v1/cleanup-counts
GET  /wp-json/zizi-cache/v1/index-recommendations
POST /wp-json/zizi-cache/v1/apply-index-recommendations
POST /wp-json/zizi-cache/v1/cleanup-database
POST /wp-json/zizi-cache/v1/save-settings

OPcache

GET  /wp-json/zizi-cache/v1/opcache/stats
POST /wp-json/zizi-cache/v1/opcache/flush
GET  /wp-json/zizi-cache/v1/opcache/domain-usage

Redis

GET  /wp-json/zizi-cache/v1/redis-status
POST /wp-json/zizi-cache/v1/redis-flush

Memcached

GET  /wp-json/zizi-cache/v1/memcached-status
POST /wp-json/zizi-cache/v1/memcached-test
POST /wp-json/zizi-cache/v1/memcached-flush
GET  /wp-json/zizi-cache/v1/memcached-environment

CDN (lightweight endpoints)

GET  /wp-json/zizi-cache/v1/cdn/status
POST /wp-json/zizi-cache/v1/cdn/clear-cache
GET  /wp-json/zizi-cache/v1/cdn/recommended-settings

These endpoints currently return placeholder responses (status/ok, success, recommended).

Cloudflare

POST /wp-json/zizi-cache/v1/cloudflare/test-connection
GET  /wp-json/zizi-cache/v1/cloudflare/status
POST /wp-json/zizi-cache/v1/cloudflare/purge-urls
GET  /wp-json/zizi-cache/v1/cloudflare/cache-rules/status
POST /wp-json/zizi-cache/v1/cloudflare/cache-rules/create
POST /wp-json/zizi-cache/v1/cloudflare/cache-rules/delete
POST /wp-json/zizi-cache/v1/cloudflare/cache-rules/toggle
POST /wp-json/zizi-cache/v1/cloudflare/failover/regenerate-secret
GET  /wp-json/zizi-cache/v1/cloudflare/zones
POST /wp-json/zizi-cache/v1/cloudflare/auto-detect-zone
POST /wp-json/zizi-cache/v1/cloudflare/validate-zone
POST /wp-json/zizi-cache/v1/cloudflare/disconnect

BFCache

GET  /wp-json/zizi-cache/v1/bfcache/status
POST /wp-json/zizi-cache/v1/bfcache/diagnostics
POST /wp-json/zizi-cache/v1/bfcache/test
POST /wp-json/zizi-cache/v1/bfcache/clear-tokens

Action Scheduler

GET  /wp-json/zizi-cache/v1/actionscheduler-status
POST /wp-json/zizi-cache/v1/clean-actionscheduler

Server Info & Performance

GET  /wp-json/zizi-cache/v1/server-info
GET  /wp-json/zizi-cache/v1/performance-metrics

Image Converter

GET  /wp-json/zizi-cache/v1/image-converter/settings
POST /wp-json/zizi-cache/v1/image-converter/settings
GET  /wp-json/zizi-cache/v1/image-converter/environment
GET  /wp-json/zizi-cache/v1/image-converter/diagnostics
POST /wp-json/zizi-cache/v1/image-converter/bulk/start
GET  /wp-json/zizi-cache/v1/image-converter/bulk/status
POST /wp-json/zizi-cache/v1/image-converter/bulk/stop
POST /wp-json/zizi-cache/v1/image-converter/bulk-original-cleanup
GET  /wp-json/zizi-cache/v1/image-converter/performance-analysis
POST /wp-json/zizi-cache/v1/image-converter/run-performance-analysis
POST /wp-json/zizi-cache/v1/image-converter/performance-settings
POST /wp-json/zizi-cache/v1/image-converter/apply-recommended-settings
POST /wp-json/zizi-cache/v1/image-converter/convert
GET  /wp-json/zizi-cache/v1/image-converter/stats
POST /wp-json/zizi-cache/v1/image-converter/media-indexer/scan
GET  /wp-json/zizi-cache/v1/image-converter/media-indexer/stats

Notes: image-converter/convert expects attachment_id. Media indexer endpoints require upload_files capability in addition to admin permissions.

Thumbnail Management

GET  /wp-json/zizi-cache/v1/thumbnail/sizes
POST /wp-json/zizi-cache/v1/thumbnail/sizes
GET  /wp-json/zizi-cache/v1/thumbnail/settings
POST /wp-json/zizi-cache/v1/thumbnail/settings
POST /wp-json/zizi-cache/v1/thumbnail/analyze
GET  /wp-json/zizi-cache/v1/thumbnail/stats
POST /wp-json/zizi-cache/v1/thumbnail/cleanup/preview
POST /wp-json/zizi-cache/v1/thumbnail/cleanup/execute
POST /wp-json/zizi-cache/v1/thumbnail/woocommerce/analyze
GET  /wp-json/zizi-cache/v1/thumbnail/woocommerce/orphaned
POST /wp-json/zizi-cache/v1/thumbnail/woocommerce/cleanup
GET  /wp-json/zizi-cache/v1/thumbnail/builders/detect
POST /wp-json/zizi-cache/v1/thumbnail/builders/analyze
POST /wp-json/zizi-cache/v1/thumbnail/advanced/analyze
GET  /wp-json/zizi-cache/v1/thumbnail/quick-stats

Font Statistics

GET  /wp-json/zizi-cache/v1/font-statistics
POST /wp-json/zizi-cache/v1/font-intelligence/collect
POST /wp-json/zizi-cache/v1/font-statistics/generate-optimized-fonts
POST /wp-json/zizi-cache/v1/reset-statistics

Core Web Vitals (CWV)

POST   /wp-json/zizi-cache/v1/cwv/metrics
GET    /wp-json/zizi-cache/v1/cwv/page-summary
GET    /wp-json/zizi-cache/v1/cwv/issues
POST   /wp-json/zizi-cache/v1/cwv/reset-metrics
DELETE /wp-json/zizi-cache/v1/cwv/reset-all-metrics

LCP Collection

POST /wp-json/zizi-cache/v1/lcp
POST /wp-json/zizi-cache/lcp
POST /wp-json/{plugin-dir}/lcp
POST /wp-json/zizicache/v1/lcp

AJAX fallback (non-REST): /wp-admin/admin-ajax.php?action=zizi_lcp_data

License Management

POST /wp-json/zizi-cache/v1/license/activate
GET  /wp-json/zizi-cache/v1/license/status
POST /wp-json/zizi-cache/v1/license/validate
POST /wp-json/zizi-cache/v1/license/deactivate
GET  /wp-json/zizi-cache/v1/license/updater-status
POST /wp-json/zizi-cache/v1/license/updater-status
GET  /wp-json/zizi-cache/v1/license/updaterstatus
POST /wp-json/zizi-cache/v1/license/updaterstatus
GET  /wp-json/zizi-cache/v1/license/debug
GET  /wp-json/zizi-cache/v1/license/test-cache

Rate Limiting

Rate limiting is implemented for public collection endpoints:

  • cwv/metrics uses filters zizicache_cwv_rate_limit_window and zizicache_cwv_rate_limit.
  • font-intelligence/collect uses filter zizicache_font_rate_limit.

Error Handling

Endpoints return standard WordPress REST errors (rest_forbidden, rest_invalid_param, etc.) and may include additional fields like success or message depending on the handler.

What are your feelings