You may want to provide more detailed control over the specific types of changes users can make in a doc. This can prevent accidental changes and provide a cleaner experience for contributors who only need to make certain changes. If you're on a Team plan or higher, you'll have access to doc locking.
Accessing doc locking
You'll find your Locking options under the Doc Settings menu:
The locking menu has three parts: This Page, All Pages, and Settings.
Let's start with the All Pages menu. Here's where you can determine the default behavior for all the pages across your doc. Not to worry, you can always customize behavior for each individual pages too. You'll have three choices:
- Full control: This option means that Editors and above will be able to take all actions inside your doc. This includes adding, deleting, and configuring objects like tables, views, buttons, and controls.
- Interact only: Here, you can toggle on and off the various activities editors should be able to perform without needing the ability to unlock the doc.
- Read only: Users with read only permissions will not be able to make any changes to the doc or see the formulas or other table settings.
Let's explore the definitions of the Interact only options in a bit more detail:
- Buttons & controls: This allows users to press buttons both on the canvas and in tables, and to change control values on the canvas.
- Change table values: This includes changing the values of rows in tables, and views with other display types. It also includes the ability to re-order rows.
- Add rows: This allows users to add rows and also to modify any rows they've added previously.
- Comment: These comments controls apply only to commenting from the toolbar. Users can always comment on table rows from the row detail view, unless comments are set to hidden in the detail view layout.
No matter what settings you select in Interact only, users will not be able to add, delete or configure objects like tables, views, buttons and controls. Those are only possible under Full Control.
But, you might have a page or two that needs special treatment. No problem, you'll also have access to a This Page menu where you can give any page different settings from your default.
When you change settings in This Page or All Pages, those behaviors are restricted by default, but any user can still choose to temporarily unlock a page and make any change.
To change this, you can go to the Settings tab and change Who can unlock from All Users to Individual users. Then, only the users you specify have the ability to unlock. Other users will not be able to unlock and make restricted changes.
Once you specify Doc Admins here, other users will not be able to:
- Unlock locked pages
- Add, move, or delete pages
- Configure Packs or automations
- Change the doc's title or icon
- Change the doc's timezone.
By default, everyone can see the unlock button icon on the right of toolbar. Only those with permission to unlock the doc will be able to click the icon to make changes.
The page will stay unlocked until you navigate to another page, or click again to re-lock. It will remain locked for other users.
To restrict which users can unlock, use the Settings menu.
Doc locking examples
Example 1 - Separating Data and Interactions
Many Coda docs have one table that powers all of the views inside it. In the past, we recommended that you keep those subpages nested under a top-level page called DATA. But with doc locking, you can make your data pages read only. That way your collaborators will only make changes in the active pages of the doc.
Example 2 - Data Entry
Some Coda docs only require people to add new information like deals, bugs, or tasks. For these situations, you can change the default to limit interactions to using buttons and controls or adding rows. That way, nothing else will change.
Locking is not a security feature. While this feature removes the most direct way to make changes in a doc, anyone with Edit access to this doc can still make changes through other mechanisms, like our API. (Learn more here.)
In more technical terms, Locking is currently a usability improvement enforced by the Coda client, and is not enforced on Coda servers.