ONLYOFFICE Docs 10.0 is out, and it brings a lot for anyone who builds on top of the editors. Here are the highlights:
- Configurable AI Tools you can control per editor instance or across the whole server
- PDF editing in Document Builder
- New multipart endpoints that accept files directly, with no temporary URLs
- A modernized Plugin API with Promise-based methods
- Security protections switched on by default
This post covers the changes that matter most for your integrations. It also flags a few behavior changes to check before you upgrade, so your production rollout goes smoothly.
🤖 AI Tools you can configure and control
AI Tools now ship in every editor. They do much more than generate text. They understand document structure, recognize elements, connect content across sections, and create clickable references for easier navigation.
You aren't locked into one provider. You can:
- Connect any AI model, including local models for privacy-sensitive use cases
- Assign different models to different tasks, such as one model for summarizing and another for drafting
Server-side AI management
In commercial editions, administrators configure AI providers once in the Admin Panel. Editor users then get ready-to-use AI tools without entering their own API keys. Admins can also:
- Assign specific models to specific tasks
- Connect MCP servers for external tool access
- Control whether web search is available
Once a server-side configuration is saved, users are limited to the approved providers and models. They can no longer add their own keys or switch models. For organizations with strict governance rules, this means one approved setup across every user.
Turn AI on or off at two levels
You decide whether AI tools appear in your product.
Per editor instance. Use editorConfig.customization.ai with the disabled parameter:
const config = {
editorConfig: {
customization: {
ai: {
disabled: true
}
}
}
};
Server-wide. Use the aiSettings.enable server setting to turn off AI features and exclude AI Tools from /plugins.json.
This is handy when you serve different customer tiers, or when some deployments must stay AI-free for compliance reasons.
🧩 Modular apps
Docs 10.0 introduces modular apps, a new way to extend the editors without changing their core. Apps such as AI agents, Forms, Rooms, and Files plug into ONLYOFFICE Docs and add functionality on top.
For developers, this means you can:
- Enable only the capabilities your users actually need
- Keep your integration lean
- Expand step by step as your product grows
🔐 Security improvements: safer by default
Version 10.0 moves several protections to "on by default," so new integrations start from a safer baseline. Some of these changes affect existing behavior, so read this section closely.
-
JWT enabled by default. JWT is now on in
default.json. - Stricter token handling. If a secret is empty or unset, including tenant secrets, the server now rejects the token instead of verifying or signing it.
-
Scoped tokens for service APIs.
/converter,/docbuilder, and/commandno longer accept a token from the editor configuration. A newoperationfield in the token is optional for these requests and required for/converter/from-fileand/docbuilder/from-file. -
Integrity verification for downloaded files. When your integration sends integrity headers, the server checks downloaded files against them. Supported headers include
Content-Digest,Repr-Digest,x-amz-checksum-*, and WOPI SHA256. This is controlled byservices.CoAuthoring.requestDefaults.checksumVerification, which istrueby default. -
Explicit WOPI hosts. WOPI hosts must now be allowed by an IP filter rule. The wildcard
allow: *rule is no longer enough, so list each host explicitly. -
API access controls. Use
services.CoAuthoring.server.convertServiceEnableandservices.CoAuthoring.server.docbuilderEnableto turn off the public conversion and Document Builder APIs. Both aretrueby default. -
Tighter runtime config. Only the log4js logging level can now be changed via
runtime.json.
📄 PDF editing in Document Builder
Document Builder can now edit PDFs, which opens up many new automation scenarios.
-
OpenFilehandles PDFs smartly. PDF forms created in ONLYOFFICE open in the document editor. Other PDFs open in the PDF editor with full access to the PDF API. -
Password-protected PDFs. The new
m_sPasswordparameter inOpenFilelets you open protected files. -
PDF form creation. Call
CreateFilewith thepdftype to create PDF forms.
On the server side, forms saved as a regular PDF are now signed when users submit them. That adds an extra layer of trust to your form workflows.
Alexander Trofimov, Head of the Editor Development Team at ONLYOFFICE, puts it this way:
With ONLYOFFICE Docs 10.0, we've made the editors even more secure for your integrations. On top of that, this release brings full-fledged PDF support to Document Builder, so developers and end users alike can create, edit, and manage PDFs directly from Builder without relying on workarounds or third-party tools.
📤 New multipart endpoints for direct file upload
Until now, the conversion and Document Builder services downloaded source files from a URL. You had to host the file somewhere the server could reach. Version 10.0 removes that step with two new endpoints:
POST /converter/from-filePOST /docbuilder/from-file
Both accept multipart/form-data. You send the file or script directly in the request, so you never need to expose it through a temporary URL.
Here's how to convert a TXT file to DOCX:
curl -f -X POST "https://documentserver/converter/from-file" \
-F 'params={"filetype":"txt","outputtype":"docx","title":"Example Document Title.txt"}' \
-F 'file=@example.txt' \
-o "Example Document Title.docx"
This makes many workflows cleaner. For example, a backend service can convert user uploads on the fly, or run a Document Builder script without staging files first. It also means fewer temporary files sitting on publicly reachable storage.
💡 Remember: requests to these endpoints need the
operationfield in the token.
⚡ Plugin API modernization
The Plugins and Macros API got its biggest refresh in a while.
A new global Editor object
Methods are now regular functions that return a Promise. Instead of routing every call through window.Asc.plugin.executeMethod, you can write clean async code:
const text = await Editor.GetSelectedText();
The result is shorter, more readable code that fits naturally into modern JavaScript projects.
New methods and events
Version 10.0 also adds tools for building richer plugins:
-
Methods:
Editor.RunMacro,GetRestrictions,SetButtonDisabled,GetOFormRole -
Events:
onFloatActionButtonClick,onSelectionEnd,onSelectionCancel
For example, the selection events let your plugin react the moment a user finishes or cancels a selection. That's perfect for context-aware toolbars or inline suggestions.
🗂️ New file format support
Two format updates help you handle more documents with less custom work:
-
OFD viewing and conversion. You can open and convert
ofdfiles. Likexps, they open in view-only mode. -
Conversion to XLS. You can convert any spreadsheet format to the classic
xlsformat. This helps when your users or partners still rely on legacy systems.
🛠️ Deployment and admin updates
Running ONLYOFFICE Docs in production also got easier:
- Admin Panel starts with the server. In commercial editions, the Admin Panel launches automatically by default. It also shows the JWT secret and includes buttons for opening and starting or stopping the test example.
-
CLI admin creation. You now create the first administrator through the
documentserver-adminhost CLI, usingcreate-adminandreset-admin-password. This replaces the old web page that relied on bootstrap logs. -
Automatic recovery of unsaved changes. If the server shuts down, unsaved changes are recovered into "forgotten files" automatically. The separate
changes2forgottenscript has been removed. -
New default port. DEB and RPM installations now use port
8083by default. Update your proxy and firewall rules if needed. -
Better monitoring. The new
coauth.connectionsmetric includesmode(edit, liveview, view) andreplicatags, which makes it easier to track load across replicas. -
Desktop update flag. On Windows, the
--prefer-alternate-urlflag lets Desktop Editors download updates from an alternate source. - Refreshed welcome page. The server welcome page has a new design.
✅ Your upgrade checklist
Here's a quick plan to get the most out of 10.0:
- Review the behavior changes. Check token usage, secrets, WOPI IP filter rules, and the new default port.
-
Update your plugins. Switch to the global
Editorobject and replace any renamed or removed methods. -
Try the new endpoints. Test
/converter/from-fileand/docbuilder/from-filein your conversion workflows. -
Decide on AI. Configure
editorConfig.customization.aioraiSettings.enableto match your product and compliance needs.
🚀 Start building
Version 10.0 gives you cleaner APIs, more automation power, and safer defaults out of the box. Download the developer builds and start testing it in your integration today.
Building with the cloud version instead? Try Docs Connect for an easier way to connect the editors with external platforms and services. Unlike the self-hosted version, which you deploy and maintain on your own servers, Docs Connect handles hosting, maintenance, and regular updates for you.
We'd love to hear what you build. Drop your questions or feedback in the comments! 👇
Top comments (0)