Cloud Services FAQ
# How to update the editor bundle?
An editor bundle is the source code of a pre-configured and ready-to-use CKEditor 5, which is minified and built as a single file. To use the document storage, import and export or connection optimization features, you need to upload an exact copy of the editor file from your application to the CKEditor Cloud Services server.
Read more about an editor bundle here.
To ensure data consistency, it is recommended to update the editor bundle every time there is a change in your editor.
For instructions on how to update the editor bundle, check out the documentation.
# How can I update the editor?
After updating CKEditor 5 in your frontend application you may receive the Incompatible bundle version or engine version detected
error while connecting to a document. It means the document was created using an older version of the editor. In such a case, you need to create a new collaboration session to keep working with the document.
There is no way to edit a document using two or more different versions of the editor.
To create a new collaboration session, you can disconnect all users and reconnect after 24 hours. Alternatively, you can end the open collaboration session programmatically using our REST API method.
# How to detect an incompatible bundle version?
To check the bundle version which was used to initialize an editing session, you can perform a request to our REST API.
In the response you will receive bundle_version
which can be compared with the current bundle version.
If the bundle versions are different, users will not be able to connect to the document using the new editor. In that case, you can flush the collaboration session, but keep in mind that flushing it will break the document for the users that are already connected with an old editor. You can check whether anyone is still connected using a dedicated REST API method.
# How to restore a corrupted document?
Sometimes a document can get broken as a result of some invalid operations. They can be caused by custom plugins, using an invalid bundle version, etc. In such a case, you will receive an error saying The document cannot be accessed in the current state. Some operations could not be saved properly
.
The only way to recover such a document is by restoring it to the latest working version via the REST API endpoint. This method will remove the operations that break the document and prevent it from saving.
The restore process flushes the current collaborative session (if one exists) and removes the operations that prevent the document from getting saved. Keep in mind that as a result of this action the recent changes may be lost.
# How to save documents?
CKEditor Cloud Services provide 3 ways of saving documents. By default, our services do not store customer documents permanently. To do so, you need to enable the document storage feature.
You can also store documents in your own storage by using our REST API methods.
The third option is to save a document directly from your frontend application with the help of the autosave plugin.
For more details, including a comparison of the available save methods, check out our documentation.
# How to export the content of a document?
As soon as the document is created, you can make a request to our REST API to fetch its content. As a result, you will receive an HTML with custom tags containing the data added by the plugins.
You can find more information about exporting document content in a dedicated section.
# How to create a document programmatically?
By default, a document is created when the first user connects to it. However, you can import a document before any user connects to it by using some previously exported document content.
For more information about importing document content, check out our documentation.
# How to get comments?
The content of the comments and their metadata are kept in a database. The document content contains tags with comment IDs referencing the data in the database.
You can fetch the content of the chosen comment by performing a request to our REST API. It is also possible to get all comments in the given document.
# How to get suggestions?
Suggestions are embedded in a given document’s content, within dedicated tags. The database contains only the metadata, such as a suggestion’s state, its author, etc.
You can fetch suggestion metadata by performing a request to our REST API.
# How to remove all the data from a given environment?
CKEditor Cloud Services keeps some of the data in a persistent database. However, all of this data is wiped out when removing a given environment.
Instructions on how to remove an environment can be found in a dedicated section.
All billing data stays untouched after such an operation, the monitoring data is removed automatically after 30 days.
# How to resend a webhook?
In some cases, e.g. given an error in the webhook destination server, you may need to resend the webhook request manually. To perform such an operation, visit the Webhooks
section in the Customer Portal for SaaS or in the Management Panel for the On-Premises application.
From the list of created webhooks, select the one you are interested in. Next, on the list of requests, find the one you would like to resend. After selecting the request, click the Resend the request
button, then confirm the operation in the following pop-up.
# Are identifiers such as userId
, documentId
, etc. case-sensitive?
All identifiers such as userId
, documentId
, etc. are case-sensitive. It means that e.g. user1
and User1
will be treated as two separate users. The only exception are CKEditor Collaboration Server On-Premises installations up to 4.12.1
for MySQL which are case-insensitive.
# Migrating from case-insensitive to case-sensitive CKEditor Collaboration Server On-Premises installation
If you would like to migrate from a case-insensitive installation, you can set up a fresh CKEditor Collaboration Server On-Premises installation on a version newer than 4.12.1
and use the Export and Import REST API endpoints to migrate your content. A simple update of an old CKEditor Collaboration Server On-Premises above 4.12.1
does not convert the instance to be case-sensitive. Instead, a fresh installation with the migration process is required.