Private distribution
Distribute your plugin within your organization without publishing to the public marketplace.
Distribution methods
| Method | Best for | Requires server |
|---|---|---|
Archive file (.plugin) | Small teams, one-time installs | No |
| Folder copy | IT-managed deployments | No |
| Self-hosted URL | Automatic updates, multiple users | Yes |
| On-premises admin panel | Enterprise org-wide deployment | Yes (on-premises Docs) |
Method 1: Archive distribution
Package all plugin files into a .zip archive and rename the extension to .plugin.
Important: All files must be at the archive root - not inside a subfolder:
✓ Correct archive structure:
config.json
index.html
icon.png
✗ Wrong archive structure:
my-plugin/
config.json
index.html
icon.png
Share the .plugin file directly. Users install it via Plugins → Plugin Manager → Install plugin manually.
Method 2: Folder copy
Administrators place the plugin folder directly in the sdkjs-plugins directory. Use the plugin GUID from config.json as the folder name. Restart ONLYOFFICE after placing the folder.
- Windows
- macOS
- Linux
%ProgramFiles%\ONLYOFFICE\DesktopEditors\editors\sdkjs-plugins\{PLUGIN-GUID}\
/Applications/ONLYOFFICE.app/Contents/Resources/editors/sdkjs-plugins/{PLUGIN-GUID}/
/opt/onlyoffice/desktopeditors/editors/sdkjs-plugins/{PLUGIN-GUID}/
Method 3: Self-hosted URL
Host your plugin on an internal or public web server and distribute the config.json URL.
- Upload all plugin files to a web server.
- Set
baseUrlinconfig.jsonto the hosted location:{ "baseUrl": "https://plugins.yourcompany.com/my-plugin/" } - Share the URL
https://plugins.yourcompany.com/my-plugin/config.jsonwith users. - Users install via Plugins → Plugin Manager → Add plugin from URL.
Updates are picked up automatically when users reload - no reinstallation required.
Method 4: On-premises admin panel
For ONLYOFFICE Docs on-premises, administrators can deploy a plugin organization-wide:
- Host the plugin on an accessible server (see Method 3).
- Open the ONLYOFFICE Docs admin panel.
- Go to Plugins settings.
- Add the
config.jsonURL. - Save - the plugin is immediately available to all users.
Security considerations
- Distribute only plugins you have reviewed and trust
- Use HTTPS for all hosted plugin URLs
- Restrict installation sources via the admin panel in enterprise deployments
- Audit plugin code before rolling out to the entire organization