Content API

The first-party filament-content-api plugin adds a JSON write surface (/api/v1) for the Filament resources on your panel. It is not a default composer require of the Qcentic Edge template — enable it on a clone when you need an agent or curl write path (ADR 0007). The agency-site docs instance enables it; a fresh GitHub clone of the template does not.

composer require mamenein/filament-content-api
php artisan filament-content-api:install
$panel->plugin(\Mamenein\FilamentContentApi\FilamentContentApiPlugin::make());

Install publishes three tables and registers the API settings page. After enable, the plugin reads $panel->getResources() — each resource's model becomes a key ability ({prefix}:create|read|update|delete), a /api/v1/{prefix} CRUD route, and webhook events. User, Role/Shield, Media, and Drive are skipped by default; opt out per resource with shouldRegisterWithContentApi(): false or ->except([...]).

Table Holds
api_keys hashed agk_… Bearer keys, abilities, last_used_at
webhook_endpoints named URLs, encrypted whsec_… secrets, subscribed events
webhook_deliveries one row per outbound POST: success, status, error, duration_ms

Auth is Bearer agk_… (hashed, plaintext shown once), env API_KEY, or a Passport personal-access token. Key abilities and panel policies both apply.

See also: Overview, Keys and abilities, REST discovery, Webhooks, Plugins, Passport and OAuth

Built by Qcentic