Editor
The editorConfig section allows you to change the parameters pertaining to the editor interface: opening mode (viewer or editor), interface language, additional buttons, etc.
actionLink
type: object
Specifies the data received from the document editing service using the onMakeActionLink event or the onRequestSendNotify event in data.actionLink parameter, which contains the information about the action in the document that will be scrolled to.
Example: ACTION_DATA
callbackUrl
type: string | required
Specifies absolute URL to the document storage service (which must be implemented by the software integrators who use ONLYOFFICE Docs on their own server).
Example: "https://example.com/url-to-callback"
coEditing
type: object
Defines the co-editing mode and the possibility to change it. This parameter is used to apply the co-editing and viewing modes.
Example:
{
"mode": "fast",
"change": true
}
coEditing.mode
type: string | default: "fast"
The co-editing mode. Can be fast or strict.
In case mode setting is changed in the editor interface, it will be stored in the browser local storage and will overwrite any values sent as the editorConfig.coEditing.mode parameter.
Example: "fast"
coEditing.change
type: boolean | default: true
Defines if the co-editing mode can be changed in the editor interface or not.
Example: true

createUrl
type: string
Defines the absolute URL of the document where it will be created and available after creation. If not specified, there will be no creation button. Instead of this field, you can use the onRequestCreateNew event.
Example: "https://example.com/url-to-create-document"

lang
type: string | default: "en"
Defines the editor interface language. Uses two-letter (de, ru, it, etc.) language codes.
To translate the editor interface into Portuguese (Portugal) or Chinese (Traditional, Taiwan) (these languages were added in version 7.2), you need to use the four-letter language codes - pt-PT or zh-TW, respectively. The two-letter pt language code sets Portuguese (Brazil) and the zh code specifies Chinese (People's Republic of China).
Example: "en"
location
type: string | default: ""
Defines the default measurement units. Specify us or ca to set inches.
Starting from version 8.2, please use the region parameter instead.
Example: ""
mode
type: string | default: "edit"
Defines the editor opening mode. Can be either view to open the document for viewing, or edit to open the document in the editing mode allowing you to apply changes to the document data.
Example: "edit"
recent
type: object[]
Defines the presence or absence of the documents in the Open Recent... menu option.
Example:
[
{
"folder": "Example Files",
"title": "exampledocument1.docx",
"url": "https://example.com/exampledocument1.docx"
}
]
recent.folder
type: string
The folder where the document is stored (can be empty in case the document is stored in the root folder).
Example: "Example Files"
recent.title
type: string
The document title that will be displayed in the Open Recent... menu option.
Example: "exampledocument1.docx"
recent.url
type: string
The absolute URL to the document where it is stored.
Example: "https://example.com/exampledocument1.docx"

region
type: string | default: "en-US"
Defines the default display format for currency and date and time (in the Spreadsheet Editor only). Is set using the four-letter (en-US, fr-FR, etc.) language codes.
If lang is defined and a matching regional setting exists, the default value is taken from the lang parameter. Otherwise, en-US is used.
Starting from version 8.2, this parameter also defines the default measurement units in all editor types. For the ...-US or ...-CA regions, inches are used by default if other values are not specified in the editorConfig.customization.unit parameter.
Example: "en-US"
templates
type: object[]
Defines the presence or absence of the templates in the Create New... menu option.
Example:
[
{
"image": "https://example.com/exampletemplate1.png",
"title": "exampletemplate1.docx",
"url": "https://example.com/url-to-create-template1"
}
]
templates.image
type: string
The absolute URL to the image for template.
Example: "https://example.com/exampletemplate1.png"
templates.title
type: string
The template title that will be displayed in the Create New... menu option.
Example: "exampletemplate1.docx"
templates.url
type: string
The absolute URL to the document where it will be created and available after creation.
Example: "https://example.com/url-to-create-template1"

user
type: object
Defines the user currently viewing or editing the document.
The request to the user's avatar is sent without authorization because the avatar URL is inserted into the HTML of the editor frame. Moreover, the CORS problem may occur. In this case, use the avatar in the base64 format. For example, "data:image/png;base64,*****".
If you are subscribed to the onRequestUsers event and send an avatar using the setUsers method, the user.image field in the initialization config is not required. We especially don't recommend to specify this parameter if the avatar is sent in the base64 format and the initialization config is signed with JWT. In this case, the token will be too long.
Example:
{
"group": "Group1,Group2",
"id": "78e1e841",
"image": "https://example.com/url-to-user-avatar.png",
"name": "John Smith"
}
user.group
type: string
The group (or several groups separated with commas) the user belongs to.
Example: "Group1,Group2"
user.id
type: string
The identification of the user. The length is limited to 128 symbols. This information is stored and used to distinguish co-authors, indicate the author of the last changes when saving and highlighting history (in the list of changes), and count users with access for a license based on the number of users. We recommend using some unique anonymized hash. Do not use sensitive data, like name or email for this field.
Example: "78e1e841"
user.image
type: string
The path to the user's avatar.
Example: "https://example.com/url-to-user-avatar.png"
user.name
type: string
The full name of the user. The length is limited to 128 symbols.
Example: "John Smith"
customization
type: object
The editor customization section. See the standard branding and white label pages for available parameters.
embedded
type: object
The embedded mode configuration section. See the embedded page for available parameters.
plugins
type: object
The plugins configuration section. See the plugins page for available parameters.
Example
const config = {
// ...
editorConfig: {
actionLink: "ACTION_DATA",
callbackUrl: "https://example.com/url-to-callback",
coEditing: {
mode: "fast",
change: true,
},
createUrl: "https://example.com/url-to-create-document",
lang: "en",
mode: "edit",
recent: [
{
folder: "Example Files",
title: "exampledocument1.docx",
url: "https://example.com/exampledocument1.docx",
},
],
region: "en-US",
templates: [
{
image: "https://example.com/exampletemplate1.png",
title: "exampletemplate1.docx",
url: "https://example.com/url-to-create-template1",
},
],
user: {
group: "Group1,Group2",
id: "78e1e841",
image: "https://example.com/url-to-user-avatar.png",
name: "John Smith",
},
customization: {
// ...
},
embedded: {
// ...
},
plugins: {
// ...
},
},
};
const docEditor = new DocsAPI.DocEditor("placeholder", config);
The example.com is the name of the server where document manager and document storage service are installed. See the How it works section to find out more on ONLYOFFICE Docs service client-server interactions.