Skip to content

Templates

Templates list the API calls an integration needs for each supported service type. They are a starting policy that you should review against the features you actually use.

The official template repository includes integrations such as Homepage, Seerr, Bazarr, and Recyclarr. The available list is shown in your installation and can change when repositories sync.

Choose a template when creating or editing an app. Every proxy belonging to that app uses the template’s block for its own service type, with its local overrides applied afterward.

Open each proxy’s Endpoints tab to review the effective permissions. Templates can include write and delete methods. Selecting a template is a permission change, not just a label.

To configure permissions entirely yourself, choose No template and grant endpoints on the proxy.

Open Settings → Templates. The official source is seeded on first startup. Add a custom source with Add repository, using its Git URL and optional branch.

The repository’s display name and description come from its optional repository.json. A template’s identity includes its source, for example middlewarr/templates:homepage, so identically named files in different repositories remain distinct.

Templates come from the configured branch’s current commit. There is no release/tag selector. Use a branch you control when you need predictable changes.

The official source is protected from being disabled or deleted. Custom sources can be managed from this screen, subject to checks for templates still in use.

Middlewarr syncs enabled repositories at startup. Use Sync all in Settings → Templates to request a sync while it is running. Review each repository’s last-sync information and any error.

A failed source can retain cached templates. An error does not mean the instance has received the latest permissions. Check the result before relying on a repository update.

Template changes affect running proxies:

  • Newly granted methods can become available automatically where a local override does not replace that path.
  • When a sync would remove access a proxy was serving, Middlewarr preserves that path’s previous method list as a local override.
  • If a path both gains and loses methods, preserving the whole previous list also withholds that path’s new methods.
  • Existing local overrides continue to replace their paths’ template methods.

Review Tools → Recent changes and the affected proxy’s History and Endpoints tabs after a sync. You can subscribe to template events in Notifications.

Create a JSON file for the integration at the root of a template repository. Include only required API paths and methods, and test the integration’s actual features. See the template format reference for the schema and contribution checklist.