[wp-trac] [WordPress Trac] #64791: Connectors: Extensibility API allowing plugins to register custom connector cards
WordPress Trac
noreply at wordpress.org
Wed Mar 4 10:58:43 UTC 2026
#64791: Connectors: Extensibility API allowing plugins to register custom connector
cards
-------------------------+-----------------------------
Reporter: gziolo | Owner: (none)
Type: enhancement | Status: new
Priority: normal | Milestone: Awaiting Review
Component: General | Version: trunk
Severity: normal | Keywords:
Focuses: |
-------------------------+-----------------------------
The Connectors screen needs a formal extensibility API so that third-party
plugins can register their own connector cards — including custom UI for
OAuth flows, multi-step configuration, or non-API-key authentication
methods — without being limited to the default API key input card.
The Connectors screen was introduced in
[Gutenberg#75833](https://github.com/WordPress/gutenberg/pull/75833).
[Gutenberg#76014](https://github.com/WordPress/gutenberg/pull/76014) added
dynamic registration from the WP AI Client PHP registry, so provider
plugins using `AiClient::defaultRegistry()->registerProvider()` with
`api_key` authentication now appear automatically. This was a significant
step, but the extensibility story remains incomplete.
=== Current behavior
- Only providers with `api_key` authentication are surfaced on the
Connectors screen. All other authentication methods are filtered out.
- Every connector card renders the same default UI: a text input for the
API key, with save/remove actions.
- Third-party plugins can register a provider in PHP and have it appear on
the screen, but they cannot customize how their card looks or behaves.
- There is no mechanism for plugins to add connector types that go beyond
AI providers (e.g., OAuth-based services, webhook configurations, or other
integration patterns the Connectors screen could support in the future).
=== Expected behavior
Plugins should be able to:
1. **Register a connector card with custom UI** — for example, an OAuth
flow with an "Authorize" button and token status, or a multi-field
configuration form.
2. **Register connectors using authentication methods other than API
keys** — OAuth, app passwords, bearer tokens, etc.
3. **Provide card metadata from PHP** without needing to enqueue their own
JavaScript for simple cases. The current `script_module_data` bridge from
PHP to JS is a reasonable pattern, but the API should be explicit about
what metadata plugins can provide (name, description, icon, credentials
URL, authentication type, status).
4. **Inject custom rendering on the JS side** when the default card layout
is insufficient — via a formal JS API that was marked as experimental
initially.
=== Proposed scope
- Define a PHP API for registering connector cards with metadata (name,
description, icon, credentials URL, authentication type, custom fields).
- Provide a JS-side API for plugins that need custom card rendering.
- Ensure the default API key card remains the automatic fallback.
- Document the extensibility API with examples for both PHP-only and
PHP+JS integration patterns.
--
Ticket URL: <https://core.trac.wordpress.org/ticket/64791>
WordPress Trac <https://core.trac.wordpress.org/>
WordPress publishing platform
More information about the wp-trac
mailing list