Skip to main content

Public documents

Public documents are documents with the isPublic flag set to true. They can be viewed by anyone, but can only be annotated by members of the document (by default).

To make a document public, you can use the editDocument API, or pass the isPublic option when calling loadDocument.

Creating a public document

await client.loadDocument('', {
documentId: randomId(),
isPublic: true

Editing a document to be public

await client.editDocument(client.getDocumentId(), {
isPublic: true

Joining public documents#

Users have the ability to join public documents without an invite. This is required to annotate on the document.

To add the current user to a public document, use the joinDocument API.


This API does not load the document, it just adds the user as a member of the document. To load the document after joining, use the loadDocument API.

For more info on document memberships, please refer to the core concepts guide.

joinDocument(id): Promise<Document>#

  • id (string) The ID of the document to join.

Returns a promise that resolves to the new document object.

Throws an error if no user is signed in.