You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Adds read-only taxonomy access to the plugin content API: plugins with `content:read` can now list taxonomy definitions, fetch the terms of a taxonomy, and read the terms assigned to a content entry via `ctx.content.getTaxonomies()`, `ctx.content.getTaxonomyTerms()`, and `ctx.content.getEntryTerms()` — in-process and in both sandbox runners.
@@ -44,6 +44,7 @@ Declare only what the plugin actually needs. Capability declarations are also wh
44
44
A few things worth knowing:
45
45
46
46
-**Implications.**`content:write` automatically implies `content:read`; `media:write` implies `media:read`; `network:request:unrestricted` implies `network:request`. You don't need to list both.
47
+
-**Taxonomies are part of the content read surface.**`content:read` also grants read-only access to taxonomy definitions, their terms, and the terms assigned to an entry — terms classify content, so no separate capability is needed. There is no taxonomy *write* access from plugins.
47
48
-**`network:request:unrestricted` exists for user-configured URLs.** A webhook plugin where the operator types in the destination URL needs to reach hosts that aren't in the manifest. Plugins that always call known APIs should use `network:request` + `allowedHosts`.
48
49
-**`email:send` is gated by configuration, not just the capability.** A plugin can declare `email:send`, but `ctx.email` will only be populated if some other plugin has registered an `email:deliver` transport.
0 commit comments