| Install | |
|---|---|
composer require notwonderful/filament-cloudflare |
|
| Latest Version: | 0.1.3 |
| PHP: | ^8.3 |
Manage Cloudflare settings, firewall rules, cache, page rules, analytics, access apps, and edge caching directly from your Filament admin panel.
composer require notwonderful/filament-cloudflare
php artisan vendor:publish --tag=cloudflare-config
Add to your .env file:
# Option 1: API Token (recommended)
CLOUDFLARE_TOKEN=your_api_token
CLOUDFLARE_ZONE_ID=your_zone_id
CLOUDFLARE_ACCOUNT_ID=your_account_id
# Option 2: Email + Global API Key
CLOUDFLARE_EMAIL=you@example.com
CLOUDFLARE_API_KEY=your_global_api_key
CLOUDFLARE_ZONE_ID=your_zone_id
CLOUDFLARE_ACCOUNT_ID=your_account_id
In your Filament panel provider:
use notwonderful\FilamentCloudflare\CloudflarePlugin;
public function panel(Panel $panel): Panel
{
return $panel
->plugin(CloudflarePlugin::make());
}
| Feature | Description |
|---|---|
| DNS Records | Full CRUD for A, AAAA, CNAME, MX, TXT, NS, SRV, CAA records. Proxy toggle, export BIND file |
| Zone Settings | View and edit SSL mode, security level, HTTPS enforcement, browser integrity check, and more |
| Firewall Access Rules | Block, challenge, or whitelist IPs, IP ranges, and countries |
| User Agent Rules | Block or challenge requests by user agent string |
| Custom Firewall Rules | View custom WAF rules (read-only) |
| Cache Management | Purge everything, or by specific files, tags, or hosts |
| Cache Rules | Create, edit, and delete cache rules via the Rulesets API |
| Page Rules | Manage page rules with forwarding URLs, cache levels, SSL settings |
| Analytics | Requests, bandwidth, unique visitors, cached vs uncached, threats — with chart widgets |
| Access Apps | View, create, and delete Cloudflare Access applications |
| Edge Caching | One-click guest page caching and media attachment caching via cache rules |
zones/{id}/dns_records)zones/{id}/settings)zones, zones/{id})zones/{id}/firewall/access_rules/rules)zones/{id}/firewall/ua_rules)zones/{id}/rulesets/phases/http_request_firewall_custom/entrypoint)zones/{id}/purge_cache)zones/{id}/rulesets/phases/http_request_cache_settings/...)zones/{id}/pagerules)accounts/{id}/access/apps)accounts/{id}/access/groups)accounts/{id}/access/identity_providers)When creating a Cloudflare API Token, assign these permissions:
| Scope | Permission | Level |
|---|---|---|
| Zone | DNS | Read, Edit |
| Zone | Zone Settings | Read, Edit |
| Zone | Zone | Read |
| Zone | Firewall Services | Edit |
| Zone | Cache Purge | Purge |
| Zone | Page Rules | Edit |
| Account | Access: Apps and Policies | Edit |
| Account | Account Settings | Read |
For read-only analytics, no additional permissions are needed beyond Zone Read (GraphQL API uses the same token).
Some endpoints used by this plugin are deprecated by Cloudflare:
| Feature | Endpoint | Status |
|---|---|---|
| Firewall Access Rules | firewall/access_rules/rules |
Functional, but Cloudflare recommends WAF Custom Rules |
| User Agent Rules | firewall/ua_rules |
Deprecated in favor of Custom Rules with http.user_agent |
| Page Rules | pagerules |
Deprecated, being replaced by Redirect Rules / Cache Rules |
These features continue to work. Future versions of this plugin may migrate to their replacements.
Inspired by the DigitalPoint App for Cloudflare for XenForo.