Core modules overview
Typeroll core modules are CMS capabilities with their own configuration, runtime behavior, validation, and lifecycle. A module can add code to a published site, expose server-side endpoints, contribute forms or blocks, or unlock an admin feature. Some modules are always available; others are enabled per site.
“Typeroll Apps” is a different term: it names the separately sold premium app collection operated exclusively in Typeroll-controlled accounts. It is not a synonym for the open-source core module registry. A self-hosted CMS contains the Extension support needed to buy and use Typeroll Apps, but never hosts the premium app backend.
Modules, Apps, Extensions, and recipes
Section titled “Modules, Apps, Extensions, and recipes”| Label | Meaning | Public documentation |
|---|---|---|
| Core module | A general capability implemented in the CMS core | One stable module reference |
| Typeroll App | A premium app operated in Typeroll’s own accounts | Product documentation and subscription terms |
| Extension | A SaaS or bespoke app operated in its developer’s accounts | Extension documentation |
| Integration module | A core adapter for external services | One reference plus its supported provider catalog |
| Recipe | A reusable configuration of one or more modules | A task-focused guide with no customer-specific values |
| Bespoke Extension | Behavior built for one customer’s domain or workflow | Documented privately unless it becomes reusable |
The distinction is about product scope, not who may enable a capability. Public module docs describe what exists and how it behaves. Account availability and rollout policy can change independently.
Available core modules
Section titled “Available core modules”| Module | Type | What it provides | Runtime |
|---|---|---|---|
| Analytics | Core module | Traffic, Core Web Vitals, AI referrals, campaign attribution, first-party events, and conversion reporting | Browser runtimes, event intake, and portal reports |
| Forms | Core module | Contact forms, multi-step funnels, partial saves, submissions, and notifications | Published-site runtime and forms service |
| Integrations | Integration module | Maintained tags for analytics, advertising, marketing, and support providers | Build-time tag injection with consent gating |
| Directory | Core module | Passwordless self-service editing for directory listings | Server endpoints, forms, and collection writes |
Lifecycle
Section titled “Lifecycle”Optional core modules use a code-defined registry. Each definition declares its configuration fields, validation, public build data, and any forms, blocks, actions, or endpoints it contributes. Always-on core modules can expose the same primitives without requiring a per-site activation switch. Modules that affect a static build require a deploy before the new runtime reaches visitors.
Manage modules with the publishing API key
Section titled “Manage modules with the publishing API key”An admin-scoped Typeroll API key can manage the same legacy apps registry as the portal.
This is the recommended surface for agents and automated publishing systems:
GET /api/v1/sites/{siteId}/appsGET /api/v1/sites/{siteId}/apps/{appId}PUT /api/v1/sites/{siteId}/apps/{appId}The list and read responses include each module’s field schema and masked state.
The write body is { "enabled": true, "config": { ... } }. Omitted fields
preserve their current values. Secret fields are encrypted server-side and are
never returned; audit entries record only the names of submitted config fields,
not their values. Analytics provisioning and module-provided forms or blocks run
through the same service whether the change comes from the portal or API.
MCP clients expose this contract as list_apps, read_app, and update_app.
Use trigger_deploy after a successful update when affects_build is true.
Module management requires admin permission; a read- or write-only site share
cannot change activation or configuration.
The public reference for each module covers:
- capability and intended scope;
- configuration and validation;
- visitor data, cookies, and consent;
- build or server runtime behavior;
- agent and API surfaces;
- operational verification.
Narrow solutions should link back to these references instead of duplicating the platform contract.