Skip to content

API / API reference / Share links

Change a share link

Lunedo 0.1.0
Other versions
0.1.0 Nov 1, 2026

Opens the documentation of that release on GitHub.

PATCH
/api/v1/pages/{pageId}/share-links/{linkId}
Code sample: cURL
sh
curl -X PATCH -H "Authorization: Bearer ld_..." \
-H "Content-Type: application/json" --data @request.json \
"https://wiki.example.org/api/v1/pages/{pageId}/share-links/{linkId}"

Changes scope, expiry, password or people of a link. The address stays the same.

Requires the permission item.share on the item in pageId.

pageId
required
string format: uuid

ID of the page.

linkId
required
string format: uuid

ID of the share link.

Media typeapplication/json

Changes of a share link.

object
scope

Who can open the link.

string
Allowed values: people organization instance anyone
expiresAt
Any of:
string format: date-time
password
Any of:
string
<= 200 characters
people

For the scope people: who can open the link.

Array<object>
<= 100 items

A person or group.

object
kind
required

account for a person, group for a group.

string
Allowed values: account group
id
required

ID of the account or group.

string format: uuid

Example

{
"expiresAt": "2026-12-31T00:00:00Z"
}

The link.

Media typeapplication/json

A share link of a page.

object
id
required

ID of the link.

string format: uuid
token
required

Secret part of the address: the instance URL followed by /s/ and the token. Shown to people who may share the page.

string | null
itemId
required

The page the link opens.

string format: uuid
scope
required

Who can open the link. New values can be added in later versions; handle unknown values.

string
expiresAt
required
Any of:
string format: date-time
hasPassword
required

Whether the link asks for a password.

boolean
people
required

For the scope people: who can open the link.

Array<object>

A person or group the link is for.

object
kind
required

account for a person, group for a group.

string
Allowed values: account group
id
required

ID of the account or group.

string format: uuid
name
required

Name.

string | null
createdBy
required
Any of:

A person.

object
id
required

ID of the account.

string format: uuid
name
required

Name, or null when hidden.

string | null
createdAt
required

When the link was created. ISO 8601 timestamp in UTC.

string format: date-time
visitors
required

Signed-in people who opened the link.

integer
>= -9007199254740991 <= 9007199254740991

Example

{
"id": "01929b1e-7c3a-7d2e-9f4b-3c2d1e0f5a60",
"token": "Yk3mR0vQx8LfJ2aB7cT9wE4nU6pH1sD5gK0zV3iM8oA2qX7r",
"itemId": "01929b1e-7c3a-7d2e-9f4b-3c2d1e0f5a10",
"scope": "organization",
"expiresAt": "2026-11-30T00:00:00.000Z",
"hasPassword": false,
"people": [],
"createdBy": {
"id": "01929b1e-7c3a-7d2e-9f4b-3c2d1e0f5a21",
"name": "Lukas Hofer"
},
"createdAt": "2026-10-01T09:30:00.000Z",
"visitors": 3
}

ambiguousCredentials: The request carries both a session and an API token. expiryInPast: The expiry lies in the past. expiryRequired: An expiry date is required. expiryTooLate: The expiry exceeds the maximum lifetime. invalidHolder: The holder cannot get a role in this space. invalidInput: The request is not valid. invalidPassword: The link password is not valid. invalidScope: The link scope cannot be used here. peopleRequired: The link needs at least one person or group. tooManyPeople: The link names too many people or groups.

Media typeapplication/problem+json

Error response following RFC 9457 Problem Details.

object
type
required

Stable identifier of the error kind. Clients branch on this value.

string
title
required

Short summary of the error kind. It does not change between occurrences.

string
status
required

HTTP status code of the response.

integer
>= -9007199254740991 <= 9007199254740991
detail

Explanation of this occurrence, for people.

string
code
required

The last part of type, for clients that prefer a short key.

string
fields

Invalid fields, for invalidInput, invalidStorageSettings, invalidBackupSettings and the codes about the address of a chat channel.

Array<string>
denials

Why the request was not allowed, for forbidden.

Array<string>
retryAfterSeconds

Seconds to wait before retrying, for rateLimited, locked and busy.

integer
>= -9007199254740991 <= 9007199254740991
problem

Which password rule failed, for passwordPolicy; why the address of a chat channel was refused, for invalidChatAddress; which storage setting was refused (invalidThresholds, invalidS3Limit, invalidContacts or invalidTeamsWebhook), for invalidStorageSettings; which backup setting was refused, for invalidBackupSettings; whether a backup or a testRestore is running, for backupRunning; why the backup target could not be used (a failure of Test connection, such as notFound or credentials, or missingSecret), for backupTargetFailed.

string
step

What Lunedo was doing with the backup target when it failed, for backupTargetFailed.

string
Allowed values: write read delete list
refusal

What the full storage refuses, for storageFull: an upload, or a large write such as an import.

string
Allowed values: upload largeWrite
minLength

Minimum password length, for passwordPolicy.

integer
>= -9007199254740991 <= 9007199254740991
lockedBy

Level that locked the setting, for settingLocked.

string
minimum

Lowest allowed value, for settingBelowMinimum.

number
maximum
Any of:
number
maxLifetimeDays

Maximum lifetime of API tokens in days, for expiryRequired and expiryTooLate.

integer
>= -9007199254740991 <= 9007199254740991
domains

Domains that belong to another identity provider, for domainInUse.

Array<string>
instanceUrl

The current address of the instance, for instanceMoved.

string
providerId

ID of the identity provider that manages the account, for managedAccount and managedDomain.

string
providerName

Name of the identity provider that manages the account, for managedAccount and managedDomain.

string
accounts

Number of accounts still linked to the identity provider, for providerHasAccounts.

integer
>= -9007199254740991 <= 9007199254740991
maxBytes

Largest allowed file size in bytes, for fileTooLarge and uploadTooLarge; storage limit of the organization’s imports, for organizationImportLimit.

integer
>= -9007199254740991 <= 9007199254740991
usedBytes

Bytes the organization’s imports use already, for organizationImportLimit.

integer
>= -9007199254740991 <= 9007199254740991
missing

Number of parts still missing, for uploadIncomplete.

integer
>= -9007199254740991 <= 9007199254740991
uncoveredPages

Number of pages below that your own role does not cover, for shareBeyondOwnAccess.

integer
>= -9007199254740991 <= 9007199254740991
maxDays

Longest allowed lifetime of a link for anyone in days, for expiryTooLate.

integer
>= -9007199254740991 <= 9007199254740991
pages

Number of pages that give access to groups or through broad links, for confidentialSharing; number of pages that would lose the status, for statusInUse; number of pages the caller cannot open, for hiddenContent.

integer
>= -9007199254740991 <= 9007199254740991
sections

Required sections that are empty or missing, for requiredSectionsEmpty.

Array<object>

A required section.

object
key
required

Key of the section.

string
title
required

Heading of the section.

string
articles

Number of articles more people could read, for audienceWidening and categoryVisibilityWidening.

integer
>= -9007199254740991 <= 9007199254740991
translations

Number of translations into the language, for defaultLanguageTranslated.

integer
>= -9007199254740991 <= 9007199254740991
translationId

The existing translation, for translationExists.

string format: uuid
light

Check of the light mode color, for brandContrast.

object
color
required

The checked color.

string
passes
required

Whether it reaches the contrast WCAG AA asks for.

boolean
onBackground
required

Contrast of the color as text on the background.

number
onBrand
required

Contrast of text on the color.

number
proposal
required

The nearest shade that passes, or null when none exists.

string | null
dark

Check of the dark mode color, for brandContrast.

object
color
required

The checked color.

string
passes
required

Whether it reaches the contrast WCAG AA asks for.

boolean
onBackground
required

Contrast of the color as text on the background.

number
onBrand
required

Contrast of text on the color.

number
proposal
required

The nearest shade that passes, or null when none exists.

string | null
impact

Who gains and who loses access, with the confirmation to send, for moveChangesAccess.

object
gaining
required

Number of people who get access.

integer
>= -9007199254740991 <= 9007199254740991
losing
required

Number of people who lose access.

integer
>= -9007199254740991 <= 9007199254740991
raised
required

Number of people whose role rises.

integer
>= -9007199254740991 <= 9007199254740991
lowered
required

Number of people whose role drops.

integer
>= -9007199254740991 <= 9007199254740991
unlisted
required

Number of affected people the caller may not see; they are counted but not listed.

integer
>= -9007199254740991 <= 9007199254740991
truncated
required

Whether changes lists only the first 100 people.

boolean
changes
required

People whose access changes, ordered by name.

Array<object>

How the access of one person changes.

object
accountId
required

ID of the account.

string format: uuid
name
required

Name of the person.

string
before
required
Any of:

Space role: reader reads, commenter also comments, editor also creates, edits and moves content, admin also manages the space and its permissions.

string
Allowed values: reader commenter editor admin
after
required
Any of:

Space role: reader reads, commenter also comments, editor also creates, edits and moves content, admin also manages the space and its permissions.

string
Allowed values: reader commenter editor admin
leavesConfidential
required

True when the content leaves a confidential space and loses its protection.

boolean
confirmation
required

Send this with the move to confirm exactly this change, or null when access does not change. Valid for one hour.

string | null
copyImpact

Who could read the copy but not the source, with the confirmation to send, for copyChangesAccess.

object
gaining
required

Number of people who get access.

integer
>= -9007199254740991 <= 9007199254740991
losing
required

Number of people who lose access.

integer
>= -9007199254740991 <= 9007199254740991
raised
required

Number of people whose role rises.

integer
>= -9007199254740991 <= 9007199254740991
lowered
required

Number of people whose role drops.

integer
>= -9007199254740991 <= 9007199254740991
unlisted
required

Number of affected people the caller may not see; they are counted but not listed.

integer
>= -9007199254740991 <= 9007199254740991
truncated
required

Whether changes lists only the first 100 people.

boolean
changes
required

People whose access changes, ordered by name.

Array<object>

How the access of one person changes.

object
accountId
required

ID of the account.

string format: uuid
name
required

Name of the person.

string
before
required
Any of:

Space role: reader reads, commenter also comments, editor also creates, edits and moves content, admin also manages the space and its permissions.

string
Allowed values: reader commenter editor admin
after
required
Any of:

Space role: reader reads, commenter also comments, editor also creates, edits and moves content, admin also manages the space and its permissions.

string
Allowed values: reader commenter editor admin
leavesConfidential
required

True when the copy leaves a confidential space and is not protected by it.

boolean
widerAccess
required

True when people can read the copy who cannot read the source; the copy then needs the confirmation.

boolean
confirmation
required

Send this with the copy to confirm exactly this access, or null when nobody gains access. Valid for one hour.

string | null
items
required

Number of items the copy creates.

integer
>= -9007199254740991 <= 9007199254740991
hidden
required

Number of items below that are left out because the caller cannot read them.

integer
>= -9007199254740991 <= 9007199254740991
skipped
required

Number of items below that are left out because they cannot be copied.

integer
>= -9007199254740991 <= 9007199254740991
background
required

True when the copy is large and runs in the background.

boolean
formerParent
Any of:
object
id
required

ID of the former parent page.

string format: uuid
title
required

Title of the former parent page.

string
parentEntries

Number of trash entries of former parent pages the caller can restore together with the content, for restrictedParentInTrash; 0 when the caller cannot restore all of them.

integer
>= -9007199254740991 <= 9007199254740991
fileVersion

Format or editor schema version of the file, for newerTemplateFormat.

integer
>= -9007199254740991 <= 9007199254740991
supportedVersion

Highest format or editor schema version this Lunedo reads, for newerTemplateFormat.

integer
>= -9007199254740991 <= 9007199254740991
templateIndex

Position of the template in the file, counted from 0, for templateNameTaken.

integer
>= -9007199254740991 <= 9007199254740991
templateProblems

What is wrong with the templates of the file, for invalidTemplatesInFile.

Array<object>

A problem in a template of the file.

object
place
required

Where in the template, such as field 3 or content.

string | null
message
required

Explanation for people, naming the template and the place.

string
maintenanceMessage

The message of the instance administrators about the maintenance, for maintenanceMode and signInPaused. Empty when they wrote none.

string
problems

What is wrong with the document, for invalidDocument and invalidComment.

Array<object>

A problem in the document.

object
path
required

Position in the document, such as .content[2].content[0].

string
code
required

Kind of problem, such as unknownNode or invalidAttribute.

string
message
required

Explanation for people.

string

Examples

{
"type": "urn:lunedo:problem:ambiguousCredentials",
"title": "The request carries both a session and an API token",
"status": 400,
"code": "ambiguousCredentials"
}

invalidApiToken: The API token is not valid. notSignedIn: Sign in or send an API token.

Media typeapplication/problem+json

Error response following RFC 9457 Problem Details.

object
type
required

Stable identifier of the error kind. Clients branch on this value.

string
title
required

Short summary of the error kind. It does not change between occurrences.

string
status
required

HTTP status code of the response.

integer
>= -9007199254740991 <= 9007199254740991
detail

Explanation of this occurrence, for people.

string
code
required

The last part of type, for clients that prefer a short key.

string
fields

Invalid fields, for invalidInput, invalidStorageSettings, invalidBackupSettings and the codes about the address of a chat channel.

Array<string>
denials

Why the request was not allowed, for forbidden.

Array<string>
retryAfterSeconds

Seconds to wait before retrying, for rateLimited, locked and busy.

integer
>= -9007199254740991 <= 9007199254740991
problem

Which password rule failed, for passwordPolicy; why the address of a chat channel was refused, for invalidChatAddress; which storage setting was refused (invalidThresholds, invalidS3Limit, invalidContacts or invalidTeamsWebhook), for invalidStorageSettings; which backup setting was refused, for invalidBackupSettings; whether a backup or a testRestore is running, for backupRunning; why the backup target could not be used (a failure of Test connection, such as notFound or credentials, or missingSecret), for backupTargetFailed.

string
step

What Lunedo was doing with the backup target when it failed, for backupTargetFailed.

string
Allowed values: write read delete list
refusal

What the full storage refuses, for storageFull: an upload, or a large write such as an import.

string
Allowed values: upload largeWrite
minLength

Minimum password length, for passwordPolicy.

integer
>= -9007199254740991 <= 9007199254740991
lockedBy

Level that locked the setting, for settingLocked.

string
minimum

Lowest allowed value, for settingBelowMinimum.

number
maximum
Any of:
number
maxLifetimeDays

Maximum lifetime of API tokens in days, for expiryRequired and expiryTooLate.

integer
>= -9007199254740991 <= 9007199254740991
domains

Domains that belong to another identity provider, for domainInUse.

Array<string>
instanceUrl

The current address of the instance, for instanceMoved.

string
providerId

ID of the identity provider that manages the account, for managedAccount and managedDomain.

string
providerName

Name of the identity provider that manages the account, for managedAccount and managedDomain.

string
accounts

Number of accounts still linked to the identity provider, for providerHasAccounts.

integer
>= -9007199254740991 <= 9007199254740991
maxBytes

Largest allowed file size in bytes, for fileTooLarge and uploadTooLarge; storage limit of the organization’s imports, for organizationImportLimit.

integer
>= -9007199254740991 <= 9007199254740991
usedBytes

Bytes the organization’s imports use already, for organizationImportLimit.

integer
>= -9007199254740991 <= 9007199254740991
missing

Number of parts still missing, for uploadIncomplete.

integer
>= -9007199254740991 <= 9007199254740991
uncoveredPages

Number of pages below that your own role does not cover, for shareBeyondOwnAccess.

integer
>= -9007199254740991 <= 9007199254740991
maxDays

Longest allowed lifetime of a link for anyone in days, for expiryTooLate.

integer
>= -9007199254740991 <= 9007199254740991
pages

Number of pages that give access to groups or through broad links, for confidentialSharing; number of pages that would lose the status, for statusInUse; number of pages the caller cannot open, for hiddenContent.

integer
>= -9007199254740991 <= 9007199254740991
sections

Required sections that are empty or missing, for requiredSectionsEmpty.

Array<object>

A required section.

object
key
required

Key of the section.

string
title
required

Heading of the section.

string
articles

Number of articles more people could read, for audienceWidening and categoryVisibilityWidening.

integer
>= -9007199254740991 <= 9007199254740991
translations

Number of translations into the language, for defaultLanguageTranslated.

integer
>= -9007199254740991 <= 9007199254740991
translationId

The existing translation, for translationExists.

string format: uuid
light

Check of the light mode color, for brandContrast.

object
color
required

The checked color.

string
passes
required

Whether it reaches the contrast WCAG AA asks for.

boolean
onBackground
required

Contrast of the color as text on the background.

number
onBrand
required

Contrast of text on the color.

number
proposal
required

The nearest shade that passes, or null when none exists.

string | null
dark

Check of the dark mode color, for brandContrast.

object
color
required

The checked color.

string
passes
required

Whether it reaches the contrast WCAG AA asks for.

boolean
onBackground
required

Contrast of the color as text on the background.

number
onBrand
required

Contrast of text on the color.

number
proposal
required

The nearest shade that passes, or null when none exists.

string | null
impact

Who gains and who loses access, with the confirmation to send, for moveChangesAccess.

object
gaining
required

Number of people who get access.

integer
>= -9007199254740991 <= 9007199254740991
losing
required

Number of people who lose access.

integer
>= -9007199254740991 <= 9007199254740991
raised
required

Number of people whose role rises.

integer
>= -9007199254740991 <= 9007199254740991
lowered
required

Number of people whose role drops.

integer
>= -9007199254740991 <= 9007199254740991
unlisted
required

Number of affected people the caller may not see; they are counted but not listed.

integer
>= -9007199254740991 <= 9007199254740991
truncated
required

Whether changes lists only the first 100 people.

boolean
changes
required

People whose access changes, ordered by name.

Array<object>

How the access of one person changes.

object
accountId
required

ID of the account.

string format: uuid
name
required

Name of the person.

string
before
required
Any of:

Space role: reader reads, commenter also comments, editor also creates, edits and moves content, admin also manages the space and its permissions.

string
Allowed values: reader commenter editor admin
after
required
Any of:

Space role: reader reads, commenter also comments, editor also creates, edits and moves content, admin also manages the space and its permissions.

string
Allowed values: reader commenter editor admin
leavesConfidential
required

True when the content leaves a confidential space and loses its protection.

boolean
confirmation
required

Send this with the move to confirm exactly this change, or null when access does not change. Valid for one hour.

string | null
copyImpact

Who could read the copy but not the source, with the confirmation to send, for copyChangesAccess.

object
gaining
required

Number of people who get access.

integer
>= -9007199254740991 <= 9007199254740991
losing
required

Number of people who lose access.

integer
>= -9007199254740991 <= 9007199254740991
raised
required

Number of people whose role rises.

integer
>= -9007199254740991 <= 9007199254740991
lowered
required

Number of people whose role drops.

integer
>= -9007199254740991 <= 9007199254740991
unlisted
required

Number of affected people the caller may not see; they are counted but not listed.

integer
>= -9007199254740991 <= 9007199254740991
truncated
required

Whether changes lists only the first 100 people.

boolean
changes
required

People whose access changes, ordered by name.

Array<object>

How the access of one person changes.

object
accountId
required

ID of the account.

string format: uuid
name
required

Name of the person.

string
before
required
Any of:

Space role: reader reads, commenter also comments, editor also creates, edits and moves content, admin also manages the space and its permissions.

string
Allowed values: reader commenter editor admin
after
required
Any of:

Space role: reader reads, commenter also comments, editor also creates, edits and moves content, admin also manages the space and its permissions.

string
Allowed values: reader commenter editor admin
leavesConfidential
required

True when the copy leaves a confidential space and is not protected by it.

boolean
widerAccess
required

True when people can read the copy who cannot read the source; the copy then needs the confirmation.

boolean
confirmation
required

Send this with the copy to confirm exactly this access, or null when nobody gains access. Valid for one hour.

string | null
items
required

Number of items the copy creates.

integer
>= -9007199254740991 <= 9007199254740991
hidden
required

Number of items below that are left out because the caller cannot read them.

integer
>= -9007199254740991 <= 9007199254740991
skipped
required

Number of items below that are left out because they cannot be copied.

integer
>= -9007199254740991 <= 9007199254740991
background
required

True when the copy is large and runs in the background.

boolean
formerParent
Any of:
object
id
required

ID of the former parent page.

string format: uuid
title
required

Title of the former parent page.

string
parentEntries

Number of trash entries of former parent pages the caller can restore together with the content, for restrictedParentInTrash; 0 when the caller cannot restore all of them.

integer
>= -9007199254740991 <= 9007199254740991
fileVersion

Format or editor schema version of the file, for newerTemplateFormat.

integer
>= -9007199254740991 <= 9007199254740991
supportedVersion

Highest format or editor schema version this Lunedo reads, for newerTemplateFormat.

integer
>= -9007199254740991 <= 9007199254740991
templateIndex

Position of the template in the file, counted from 0, for templateNameTaken.

integer
>= -9007199254740991 <= 9007199254740991
templateProblems

What is wrong with the templates of the file, for invalidTemplatesInFile.

Array<object>

A problem in a template of the file.

object
place
required

Where in the template, such as field 3 or content.

string | null
message
required

Explanation for people, naming the template and the place.

string
maintenanceMessage

The message of the instance administrators about the maintenance, for maintenanceMode and signInPaused. Empty when they wrote none.

string
problems

What is wrong with the document, for invalidDocument and invalidComment.

Array<object>

A problem in the document.

object
path
required

Position in the document, such as .content[2].content[0].

string
code
required

Kind of problem, such as unknownNode or invalidAttribute.

string
message
required

Explanation for people.

string

Examples

{
"type": "urn:lunedo:problem:invalidApiToken",
"title": "The API token is not valid",
"status": 401,
"code": "invalidApiToken"
}

confidentialGuestsBySpaceAdmins: Only space administrators give guests access to a confidential space. csrfRejected: The request failed the cross-site request check. forbidden: Not allowed.

Media typeapplication/problem+json

Error response following RFC 9457 Problem Details.

object
type
required

Stable identifier of the error kind. Clients branch on this value.

string
title
required

Short summary of the error kind. It does not change between occurrences.

string
status
required

HTTP status code of the response.

integer
>= -9007199254740991 <= 9007199254740991
detail

Explanation of this occurrence, for people.

string
code
required

The last part of type, for clients that prefer a short key.

string
fields

Invalid fields, for invalidInput, invalidStorageSettings, invalidBackupSettings and the codes about the address of a chat channel.

Array<string>
denials

Why the request was not allowed, for forbidden.

Array<string>
retryAfterSeconds

Seconds to wait before retrying, for rateLimited, locked and busy.

integer
>= -9007199254740991 <= 9007199254740991
problem

Which password rule failed, for passwordPolicy; why the address of a chat channel was refused, for invalidChatAddress; which storage setting was refused (invalidThresholds, invalidS3Limit, invalidContacts or invalidTeamsWebhook), for invalidStorageSettings; which backup setting was refused, for invalidBackupSettings; whether a backup or a testRestore is running, for backupRunning; why the backup target could not be used (a failure of Test connection, such as notFound or credentials, or missingSecret), for backupTargetFailed.

string
step

What Lunedo was doing with the backup target when it failed, for backupTargetFailed.

string
Allowed values: write read delete list
refusal

What the full storage refuses, for storageFull: an upload, or a large write such as an import.

string
Allowed values: upload largeWrite
minLength

Minimum password length, for passwordPolicy.

integer
>= -9007199254740991 <= 9007199254740991
lockedBy

Level that locked the setting, for settingLocked.

string
minimum

Lowest allowed value, for settingBelowMinimum.

number
maximum
Any of:
number
maxLifetimeDays

Maximum lifetime of API tokens in days, for expiryRequired and expiryTooLate.

integer
>= -9007199254740991 <= 9007199254740991
domains

Domains that belong to another identity provider, for domainInUse.

Array<string>
instanceUrl

The current address of the instance, for instanceMoved.

string
providerId

ID of the identity provider that manages the account, for managedAccount and managedDomain.

string
providerName

Name of the identity provider that manages the account, for managedAccount and managedDomain.

string
accounts

Number of accounts still linked to the identity provider, for providerHasAccounts.

integer
>= -9007199254740991 <= 9007199254740991
maxBytes

Largest allowed file size in bytes, for fileTooLarge and uploadTooLarge; storage limit of the organization’s imports, for organizationImportLimit.

integer
>= -9007199254740991 <= 9007199254740991
usedBytes

Bytes the organization’s imports use already, for organizationImportLimit.

integer
>= -9007199254740991 <= 9007199254740991
missing

Number of parts still missing, for uploadIncomplete.

integer
>= -9007199254740991 <= 9007199254740991
uncoveredPages

Number of pages below that your own role does not cover, for shareBeyondOwnAccess.

integer
>= -9007199254740991 <= 9007199254740991
maxDays

Longest allowed lifetime of a link for anyone in days, for expiryTooLate.

integer
>= -9007199254740991 <= 9007199254740991
pages

Number of pages that give access to groups or through broad links, for confidentialSharing; number of pages that would lose the status, for statusInUse; number of pages the caller cannot open, for hiddenContent.

integer
>= -9007199254740991 <= 9007199254740991
sections

Required sections that are empty or missing, for requiredSectionsEmpty.

Array<object>

A required section.

object
key
required

Key of the section.

string
title
required

Heading of the section.

string
articles

Number of articles more people could read, for audienceWidening and categoryVisibilityWidening.

integer
>= -9007199254740991 <= 9007199254740991
translations

Number of translations into the language, for defaultLanguageTranslated.

integer
>= -9007199254740991 <= 9007199254740991
translationId

The existing translation, for translationExists.

string format: uuid
light

Check of the light mode color, for brandContrast.

object
color
required

The checked color.

string
passes
required

Whether it reaches the contrast WCAG AA asks for.

boolean
onBackground
required

Contrast of the color as text on the background.

number
onBrand
required

Contrast of text on the color.

number
proposal
required

The nearest shade that passes, or null when none exists.

string | null
dark

Check of the dark mode color, for brandContrast.

object
color
required

The checked color.

string
passes
required

Whether it reaches the contrast WCAG AA asks for.

boolean
onBackground
required

Contrast of the color as text on the background.

number
onBrand
required

Contrast of text on the color.

number
proposal
required

The nearest shade that passes, or null when none exists.

string | null
impact

Who gains and who loses access, with the confirmation to send, for moveChangesAccess.

object
gaining
required

Number of people who get access.

integer
>= -9007199254740991 <= 9007199254740991
losing
required

Number of people who lose access.

integer
>= -9007199254740991 <= 9007199254740991
raised
required

Number of people whose role rises.

integer
>= -9007199254740991 <= 9007199254740991
lowered
required

Number of people whose role drops.

integer
>= -9007199254740991 <= 9007199254740991
unlisted
required

Number of affected people the caller may not see; they are counted but not listed.

integer
>= -9007199254740991 <= 9007199254740991
truncated
required

Whether changes lists only the first 100 people.

boolean
changes
required

People whose access changes, ordered by name.

Array<object>

How the access of one person changes.

object
accountId
required

ID of the account.

string format: uuid
name
required

Name of the person.

string
before
required
Any of:

Space role: reader reads, commenter also comments, editor also creates, edits and moves content, admin also manages the space and its permissions.

string
Allowed values: reader commenter editor admin
after
required
Any of:

Space role: reader reads, commenter also comments, editor also creates, edits and moves content, admin also manages the space and its permissions.

string
Allowed values: reader commenter editor admin
leavesConfidential
required

True when the content leaves a confidential space and loses its protection.

boolean
confirmation
required

Send this with the move to confirm exactly this change, or null when access does not change. Valid for one hour.

string | null
copyImpact

Who could read the copy but not the source, with the confirmation to send, for copyChangesAccess.

object
gaining
required

Number of people who get access.

integer
>= -9007199254740991 <= 9007199254740991
losing
required

Number of people who lose access.

integer
>= -9007199254740991 <= 9007199254740991
raised
required

Number of people whose role rises.

integer
>= -9007199254740991 <= 9007199254740991
lowered
required

Number of people whose role drops.

integer
>= -9007199254740991 <= 9007199254740991
unlisted
required

Number of affected people the caller may not see; they are counted but not listed.

integer
>= -9007199254740991 <= 9007199254740991
truncated
required

Whether changes lists only the first 100 people.

boolean
changes
required

People whose access changes, ordered by name.

Array<object>

How the access of one person changes.

object
accountId
required

ID of the account.

string format: uuid
name
required

Name of the person.

string
before
required
Any of:

Space role: reader reads, commenter also comments, editor also creates, edits and moves content, admin also manages the space and its permissions.

string
Allowed values: reader commenter editor admin
after
required
Any of:

Space role: reader reads, commenter also comments, editor also creates, edits and moves content, admin also manages the space and its permissions.

string
Allowed values: reader commenter editor admin
leavesConfidential
required

True when the copy leaves a confidential space and is not protected by it.

boolean
widerAccess
required

True when people can read the copy who cannot read the source; the copy then needs the confirmation.

boolean
confirmation
required

Send this with the copy to confirm exactly this access, or null when nobody gains access. Valid for one hour.

string | null
items
required

Number of items the copy creates.

integer
>= -9007199254740991 <= 9007199254740991
hidden
required

Number of items below that are left out because the caller cannot read them.

integer
>= -9007199254740991 <= 9007199254740991
skipped
required

Number of items below that are left out because they cannot be copied.

integer
>= -9007199254740991 <= 9007199254740991
background
required

True when the copy is large and runs in the background.

boolean
formerParent
Any of:
object
id
required

ID of the former parent page.

string format: uuid
title
required

Title of the former parent page.

string
parentEntries

Number of trash entries of former parent pages the caller can restore together with the content, for restrictedParentInTrash; 0 when the caller cannot restore all of them.

integer
>= -9007199254740991 <= 9007199254740991
fileVersion

Format or editor schema version of the file, for newerTemplateFormat.

integer
>= -9007199254740991 <= 9007199254740991
supportedVersion

Highest format or editor schema version this Lunedo reads, for newerTemplateFormat.

integer
>= -9007199254740991 <= 9007199254740991
templateIndex

Position of the template in the file, counted from 0, for templateNameTaken.

integer
>= -9007199254740991 <= 9007199254740991
templateProblems

What is wrong with the templates of the file, for invalidTemplatesInFile.

Array<object>

A problem in a template of the file.

object
place
required

Where in the template, such as field 3 or content.

string | null
message
required

Explanation for people, naming the template and the place.

string
maintenanceMessage

The message of the instance administrators about the maintenance, for maintenanceMode and signInPaused. Empty when they wrote none.

string
problems

What is wrong with the document, for invalidDocument and invalidComment.

Array<object>

A problem in the document.

object
path
required

Position in the document, such as .content[2].content[0].

string
code
required

Kind of problem, such as unknownNode or invalidAttribute.

string
message
required

Explanation for people.

string

Examples

{
"type": "urn:lunedo:problem:confidentialGuestsBySpaceAdmins",
"title": "Only space administrators give guests access to a confidential space",
"status": 403,
"code": "confidentialGuestsBySpaceAdmins"
}

linkNotFound: The link does not exist, has expired or was revoked. notFound: Not found.

Media typeapplication/problem+json

Error response following RFC 9457 Problem Details.

object
type
required

Stable identifier of the error kind. Clients branch on this value.

string
title
required

Short summary of the error kind. It does not change between occurrences.

string
status
required

HTTP status code of the response.

integer
>= -9007199254740991 <= 9007199254740991
detail

Explanation of this occurrence, for people.

string
code
required

The last part of type, for clients that prefer a short key.

string
fields

Invalid fields, for invalidInput, invalidStorageSettings, invalidBackupSettings and the codes about the address of a chat channel.

Array<string>
denials

Why the request was not allowed, for forbidden.

Array<string>
retryAfterSeconds

Seconds to wait before retrying, for rateLimited, locked and busy.

integer
>= -9007199254740991 <= 9007199254740991
problem

Which password rule failed, for passwordPolicy; why the address of a chat channel was refused, for invalidChatAddress; which storage setting was refused (invalidThresholds, invalidS3Limit, invalidContacts or invalidTeamsWebhook), for invalidStorageSettings; which backup setting was refused, for invalidBackupSettings; whether a backup or a testRestore is running, for backupRunning; why the backup target could not be used (a failure of Test connection, such as notFound or credentials, or missingSecret), for backupTargetFailed.

string
step

What Lunedo was doing with the backup target when it failed, for backupTargetFailed.

string
Allowed values: write read delete list
refusal

What the full storage refuses, for storageFull: an upload, or a large write such as an import.

string
Allowed values: upload largeWrite
minLength

Minimum password length, for passwordPolicy.

integer
>= -9007199254740991 <= 9007199254740991
lockedBy

Level that locked the setting, for settingLocked.

string
minimum

Lowest allowed value, for settingBelowMinimum.

number
maximum
Any of:
number
maxLifetimeDays

Maximum lifetime of API tokens in days, for expiryRequired and expiryTooLate.

integer
>= -9007199254740991 <= 9007199254740991
domains

Domains that belong to another identity provider, for domainInUse.

Array<string>
instanceUrl

The current address of the instance, for instanceMoved.

string
providerId

ID of the identity provider that manages the account, for managedAccount and managedDomain.

string
providerName

Name of the identity provider that manages the account, for managedAccount and managedDomain.

string
accounts

Number of accounts still linked to the identity provider, for providerHasAccounts.

integer
>= -9007199254740991 <= 9007199254740991
maxBytes

Largest allowed file size in bytes, for fileTooLarge and uploadTooLarge; storage limit of the organization’s imports, for organizationImportLimit.

integer
>= -9007199254740991 <= 9007199254740991
usedBytes

Bytes the organization’s imports use already, for organizationImportLimit.

integer
>= -9007199254740991 <= 9007199254740991
missing

Number of parts still missing, for uploadIncomplete.

integer
>= -9007199254740991 <= 9007199254740991
uncoveredPages

Number of pages below that your own role does not cover, for shareBeyondOwnAccess.

integer
>= -9007199254740991 <= 9007199254740991
maxDays

Longest allowed lifetime of a link for anyone in days, for expiryTooLate.

integer
>= -9007199254740991 <= 9007199254740991
pages

Number of pages that give access to groups or through broad links, for confidentialSharing; number of pages that would lose the status, for statusInUse; number of pages the caller cannot open, for hiddenContent.

integer
>= -9007199254740991 <= 9007199254740991
sections

Required sections that are empty or missing, for requiredSectionsEmpty.

Array<object>

A required section.

object
key
required

Key of the section.

string
title
required

Heading of the section.

string
articles

Number of articles more people could read, for audienceWidening and categoryVisibilityWidening.

integer
>= -9007199254740991 <= 9007199254740991
translations

Number of translations into the language, for defaultLanguageTranslated.

integer
>= -9007199254740991 <= 9007199254740991
translationId

The existing translation, for translationExists.

string format: uuid
light

Check of the light mode color, for brandContrast.

object
color
required

The checked color.

string
passes
required

Whether it reaches the contrast WCAG AA asks for.

boolean
onBackground
required

Contrast of the color as text on the background.

number
onBrand
required

Contrast of text on the color.

number
proposal
required

The nearest shade that passes, or null when none exists.

string | null
dark

Check of the dark mode color, for brandContrast.

object
color
required

The checked color.

string
passes
required

Whether it reaches the contrast WCAG AA asks for.

boolean
onBackground
required

Contrast of the color as text on the background.

number
onBrand
required

Contrast of text on the color.

number
proposal
required

The nearest shade that passes, or null when none exists.

string | null
impact

Who gains and who loses access, with the confirmation to send, for moveChangesAccess.

object
gaining
required

Number of people who get access.

integer
>= -9007199254740991 <= 9007199254740991
losing
required

Number of people who lose access.

integer
>= -9007199254740991 <= 9007199254740991
raised
required

Number of people whose role rises.

integer
>= -9007199254740991 <= 9007199254740991
lowered
required

Number of people whose role drops.

integer
>= -9007199254740991 <= 9007199254740991
unlisted
required

Number of affected people the caller may not see; they are counted but not listed.

integer
>= -9007199254740991 <= 9007199254740991
truncated
required

Whether changes lists only the first 100 people.

boolean
changes
required

People whose access changes, ordered by name.

Array<object>

How the access of one person changes.

object
accountId
required

ID of the account.

string format: uuid
name
required

Name of the person.

string
before
required
Any of:

Space role: reader reads, commenter also comments, editor also creates, edits and moves content, admin also manages the space and its permissions.

string
Allowed values: reader commenter editor admin
after
required
Any of:

Space role: reader reads, commenter also comments, editor also creates, edits and moves content, admin also manages the space and its permissions.

string
Allowed values: reader commenter editor admin
leavesConfidential
required

True when the content leaves a confidential space and loses its protection.

boolean
confirmation
required

Send this with the move to confirm exactly this change, or null when access does not change. Valid for one hour.

string | null
copyImpact

Who could read the copy but not the source, with the confirmation to send, for copyChangesAccess.

object
gaining
required

Number of people who get access.

integer
>= -9007199254740991 <= 9007199254740991
losing
required

Number of people who lose access.

integer
>= -9007199254740991 <= 9007199254740991
raised
required

Number of people whose role rises.

integer
>= -9007199254740991 <= 9007199254740991
lowered
required

Number of people whose role drops.

integer
>= -9007199254740991 <= 9007199254740991
unlisted
required

Number of affected people the caller may not see; they are counted but not listed.

integer
>= -9007199254740991 <= 9007199254740991
truncated
required

Whether changes lists only the first 100 people.

boolean
changes
required

People whose access changes, ordered by name.

Array<object>

How the access of one person changes.

object
accountId
required

ID of the account.

string format: uuid
name
required

Name of the person.

string
before
required
Any of:

Space role: reader reads, commenter also comments, editor also creates, edits and moves content, admin also manages the space and its permissions.

string
Allowed values: reader commenter editor admin
after
required
Any of:

Space role: reader reads, commenter also comments, editor also creates, edits and moves content, admin also manages the space and its permissions.

string
Allowed values: reader commenter editor admin
leavesConfidential
required

True when the copy leaves a confidential space and is not protected by it.

boolean
widerAccess
required

True when people can read the copy who cannot read the source; the copy then needs the confirmation.

boolean
confirmation
required

Send this with the copy to confirm exactly this access, or null when nobody gains access. Valid for one hour.

string | null
items
required

Number of items the copy creates.

integer
>= -9007199254740991 <= 9007199254740991
hidden
required

Number of items below that are left out because the caller cannot read them.

integer
>= -9007199254740991 <= 9007199254740991
skipped
required

Number of items below that are left out because they cannot be copied.

integer
>= -9007199254740991 <= 9007199254740991
background
required

True when the copy is large and runs in the background.

boolean
formerParent
Any of:
object
id
required

ID of the former parent page.

string format: uuid
title
required

Title of the former parent page.

string
parentEntries

Number of trash entries of former parent pages the caller can restore together with the content, for restrictedParentInTrash; 0 when the caller cannot restore all of them.

integer
>= -9007199254740991 <= 9007199254740991
fileVersion

Format or editor schema version of the file, for newerTemplateFormat.

integer
>= -9007199254740991 <= 9007199254740991
supportedVersion

Highest format or editor schema version this Lunedo reads, for newerTemplateFormat.

integer
>= -9007199254740991 <= 9007199254740991
templateIndex

Position of the template in the file, counted from 0, for templateNameTaken.

integer
>= -9007199254740991 <= 9007199254740991
templateProblems

What is wrong with the templates of the file, for invalidTemplatesInFile.

Array<object>

A problem in a template of the file.

object
place
required

Where in the template, such as field 3 or content.

string | null
message
required

Explanation for people, naming the template and the place.

string
maintenanceMessage

The message of the instance administrators about the maintenance, for maintenanceMode and signInPaused. Empty when they wrote none.

string
problems

What is wrong with the document, for invalidDocument and invalidComment.

Array<object>

A problem in the document.

object
path
required

Position in the document, such as .content[2].content[0].

string
code
required

Kind of problem, such as unknownNode or invalidAttribute.

string
message
required

Explanation for people.

string

Examples

{
"type": "urn:lunedo:problem:linkNotFound",
"title": "The link does not exist, has expired or was revoked",
"status": 404,
"code": "linkNotFound"
}

anyoneLinksDisabled: Links for anyone are turned off. restrictedPage: A restricted page cannot be opened by anyone with a link.

Media typeapplication/problem+json

Error response following RFC 9457 Problem Details.

object
type
required

Stable identifier of the error kind. Clients branch on this value.

string
title
required

Short summary of the error kind. It does not change between occurrences.

string
status
required

HTTP status code of the response.

integer
>= -9007199254740991 <= 9007199254740991
detail

Explanation of this occurrence, for people.

string
code
required

The last part of type, for clients that prefer a short key.

string
fields

Invalid fields, for invalidInput, invalidStorageSettings, invalidBackupSettings and the codes about the address of a chat channel.

Array<string>
denials

Why the request was not allowed, for forbidden.

Array<string>
retryAfterSeconds

Seconds to wait before retrying, for rateLimited, locked and busy.

integer
>= -9007199254740991 <= 9007199254740991
problem

Which password rule failed, for passwordPolicy; why the address of a chat channel was refused, for invalidChatAddress; which storage setting was refused (invalidThresholds, invalidS3Limit, invalidContacts or invalidTeamsWebhook), for invalidStorageSettings; which backup setting was refused, for invalidBackupSettings; whether a backup or a testRestore is running, for backupRunning; why the backup target could not be used (a failure of Test connection, such as notFound or credentials, or missingSecret), for backupTargetFailed.

string
step

What Lunedo was doing with the backup target when it failed, for backupTargetFailed.

string
Allowed values: write read delete list
refusal

What the full storage refuses, for storageFull: an upload, or a large write such as an import.

string
Allowed values: upload largeWrite
minLength

Minimum password length, for passwordPolicy.

integer
>= -9007199254740991 <= 9007199254740991
lockedBy

Level that locked the setting, for settingLocked.

string
minimum

Lowest allowed value, for settingBelowMinimum.

number
maximum
Any of:
number
maxLifetimeDays

Maximum lifetime of API tokens in days, for expiryRequired and expiryTooLate.

integer
>= -9007199254740991 <= 9007199254740991
domains

Domains that belong to another identity provider, for domainInUse.

Array<string>
instanceUrl

The current address of the instance, for instanceMoved.

string
providerId

ID of the identity provider that manages the account, for managedAccount and managedDomain.

string
providerName

Name of the identity provider that manages the account, for managedAccount and managedDomain.

string
accounts

Number of accounts still linked to the identity provider, for providerHasAccounts.

integer
>= -9007199254740991 <= 9007199254740991
maxBytes

Largest allowed file size in bytes, for fileTooLarge and uploadTooLarge; storage limit of the organization’s imports, for organizationImportLimit.

integer
>= -9007199254740991 <= 9007199254740991
usedBytes

Bytes the organization’s imports use already, for organizationImportLimit.

integer
>= -9007199254740991 <= 9007199254740991
missing

Number of parts still missing, for uploadIncomplete.

integer
>= -9007199254740991 <= 9007199254740991
uncoveredPages

Number of pages below that your own role does not cover, for shareBeyondOwnAccess.

integer
>= -9007199254740991 <= 9007199254740991
maxDays

Longest allowed lifetime of a link for anyone in days, for expiryTooLate.

integer
>= -9007199254740991 <= 9007199254740991
pages

Number of pages that give access to groups or through broad links, for confidentialSharing; number of pages that would lose the status, for statusInUse; number of pages the caller cannot open, for hiddenContent.

integer
>= -9007199254740991 <= 9007199254740991
sections

Required sections that are empty or missing, for requiredSectionsEmpty.

Array<object>

A required section.

object
key
required

Key of the section.

string
title
required

Heading of the section.

string
articles

Number of articles more people could read, for audienceWidening and categoryVisibilityWidening.

integer
>= -9007199254740991 <= 9007199254740991
translations

Number of translations into the language, for defaultLanguageTranslated.

integer
>= -9007199254740991 <= 9007199254740991
translationId

The existing translation, for translationExists.

string format: uuid
light

Check of the light mode color, for brandContrast.

object
color
required

The checked color.

string
passes
required

Whether it reaches the contrast WCAG AA asks for.

boolean
onBackground
required

Contrast of the color as text on the background.

number
onBrand
required

Contrast of text on the color.

number
proposal
required

The nearest shade that passes, or null when none exists.

string | null
dark

Check of the dark mode color, for brandContrast.

object
color
required

The checked color.

string
passes
required

Whether it reaches the contrast WCAG AA asks for.

boolean
onBackground
required

Contrast of the color as text on the background.

number
onBrand
required

Contrast of text on the color.

number
proposal
required

The nearest shade that passes, or null when none exists.

string | null
impact

Who gains and who loses access, with the confirmation to send, for moveChangesAccess.

object
gaining
required

Number of people who get access.

integer
>= -9007199254740991 <= 9007199254740991
losing
required

Number of people who lose access.

integer
>= -9007199254740991 <= 9007199254740991
raised
required

Number of people whose role rises.

integer
>= -9007199254740991 <= 9007199254740991
lowered
required

Number of people whose role drops.

integer
>= -9007199254740991 <= 9007199254740991
unlisted
required

Number of affected people the caller may not see; they are counted but not listed.

integer
>= -9007199254740991 <= 9007199254740991
truncated
required

Whether changes lists only the first 100 people.

boolean
changes
required

People whose access changes, ordered by name.

Array<object>

How the access of one person changes.

object
accountId
required

ID of the account.

string format: uuid
name
required

Name of the person.

string
before
required
Any of:

Space role: reader reads, commenter also comments, editor also creates, edits and moves content, admin also manages the space and its permissions.

string
Allowed values: reader commenter editor admin
after
required
Any of:

Space role: reader reads, commenter also comments, editor also creates, edits and moves content, admin also manages the space and its permissions.

string
Allowed values: reader commenter editor admin
leavesConfidential
required

True when the content leaves a confidential space and loses its protection.

boolean
confirmation
required

Send this with the move to confirm exactly this change, or null when access does not change. Valid for one hour.

string | null
copyImpact

Who could read the copy but not the source, with the confirmation to send, for copyChangesAccess.

object
gaining
required

Number of people who get access.

integer
>= -9007199254740991 <= 9007199254740991
losing
required

Number of people who lose access.

integer
>= -9007199254740991 <= 9007199254740991
raised
required

Number of people whose role rises.

integer
>= -9007199254740991 <= 9007199254740991
lowered
required

Number of people whose role drops.

integer
>= -9007199254740991 <= 9007199254740991
unlisted
required

Number of affected people the caller may not see; they are counted but not listed.

integer
>= -9007199254740991 <= 9007199254740991
truncated
required

Whether changes lists only the first 100 people.

boolean
changes
required

People whose access changes, ordered by name.

Array<object>

How the access of one person changes.

object
accountId
required

ID of the account.

string format: uuid
name
required

Name of the person.

string
before
required
Any of:

Space role: reader reads, commenter also comments, editor also creates, edits and moves content, admin also manages the space and its permissions.

string
Allowed values: reader commenter editor admin
after
required
Any of:

Space role: reader reads, commenter also comments, editor also creates, edits and moves content, admin also manages the space and its permissions.

string
Allowed values: reader commenter editor admin
leavesConfidential
required

True when the copy leaves a confidential space and is not protected by it.

boolean
widerAccess
required

True when people can read the copy who cannot read the source; the copy then needs the confirmation.

boolean
confirmation
required

Send this with the copy to confirm exactly this access, or null when nobody gains access. Valid for one hour.

string | null
items
required

Number of items the copy creates.

integer
>= -9007199254740991 <= 9007199254740991
hidden
required

Number of items below that are left out because the caller cannot read them.

integer
>= -9007199254740991 <= 9007199254740991
skipped
required

Number of items below that are left out because they cannot be copied.

integer
>= -9007199254740991 <= 9007199254740991
background
required

True when the copy is large and runs in the background.

boolean
formerParent
Any of:
object
id
required

ID of the former parent page.

string format: uuid
title
required

Title of the former parent page.

string
parentEntries

Number of trash entries of former parent pages the caller can restore together with the content, for restrictedParentInTrash; 0 when the caller cannot restore all of them.

integer
>= -9007199254740991 <= 9007199254740991
fileVersion

Format or editor schema version of the file, for newerTemplateFormat.

integer
>= -9007199254740991 <= 9007199254740991
supportedVersion

Highest format or editor schema version this Lunedo reads, for newerTemplateFormat.

integer
>= -9007199254740991 <= 9007199254740991
templateIndex

Position of the template in the file, counted from 0, for templateNameTaken.

integer
>= -9007199254740991 <= 9007199254740991
templateProblems

What is wrong with the templates of the file, for invalidTemplatesInFile.

Array<object>

A problem in a template of the file.

object
place
required

Where in the template, such as field 3 or content.

string | null
message
required

Explanation for people, naming the template and the place.

string
maintenanceMessage

The message of the instance administrators about the maintenance, for maintenanceMode and signInPaused. Empty when they wrote none.

string
problems

What is wrong with the document, for invalidDocument and invalidComment.

Array<object>

A problem in the document.

object
path
required

Position in the document, such as .content[2].content[0].

string
code
required

Kind of problem, such as unknownNode or invalidAttribute.

string
message
required

Explanation for people.

string

Examples

{
"type": "urn:lunedo:problem:anyoneLinksDisabled",
"title": "Links for anyone are turned off",
"status": 409,
"code": "anyoneLinksDisabled"
}

rateLimited: Too many requests.

Media typeapplication/problem+json

Error response following RFC 9457 Problem Details.

object
type
required

Stable identifier of the error kind. Clients branch on this value.

string
title
required

Short summary of the error kind. It does not change between occurrences.

string
status
required

HTTP status code of the response.

integer
>= -9007199254740991 <= 9007199254740991
detail

Explanation of this occurrence, for people.

string
code
required

The last part of type, for clients that prefer a short key.

string
fields

Invalid fields, for invalidInput, invalidStorageSettings, invalidBackupSettings and the codes about the address of a chat channel.

Array<string>
denials

Why the request was not allowed, for forbidden.

Array<string>
retryAfterSeconds

Seconds to wait before retrying, for rateLimited, locked and busy.

integer
>= -9007199254740991 <= 9007199254740991
problem

Which password rule failed, for passwordPolicy; why the address of a chat channel was refused, for invalidChatAddress; which storage setting was refused (invalidThresholds, invalidS3Limit, invalidContacts or invalidTeamsWebhook), for invalidStorageSettings; which backup setting was refused, for invalidBackupSettings; whether a backup or a testRestore is running, for backupRunning; why the backup target could not be used (a failure of Test connection, such as notFound or credentials, or missingSecret), for backupTargetFailed.

string
step

What Lunedo was doing with the backup target when it failed, for backupTargetFailed.

string
Allowed values: write read delete list
refusal

What the full storage refuses, for storageFull: an upload, or a large write such as an import.

string
Allowed values: upload largeWrite
minLength

Minimum password length, for passwordPolicy.

integer
>= -9007199254740991 <= 9007199254740991
lockedBy

Level that locked the setting, for settingLocked.

string
minimum

Lowest allowed value, for settingBelowMinimum.

number
maximum
Any of:
number
maxLifetimeDays

Maximum lifetime of API tokens in days, for expiryRequired and expiryTooLate.

integer
>= -9007199254740991 <= 9007199254740991
domains

Domains that belong to another identity provider, for domainInUse.

Array<string>
instanceUrl

The current address of the instance, for instanceMoved.

string
providerId

ID of the identity provider that manages the account, for managedAccount and managedDomain.

string
providerName

Name of the identity provider that manages the account, for managedAccount and managedDomain.

string
accounts

Number of accounts still linked to the identity provider, for providerHasAccounts.

integer
>= -9007199254740991 <= 9007199254740991
maxBytes

Largest allowed file size in bytes, for fileTooLarge and uploadTooLarge; storage limit of the organization’s imports, for organizationImportLimit.

integer
>= -9007199254740991 <= 9007199254740991
usedBytes

Bytes the organization’s imports use already, for organizationImportLimit.

integer
>= -9007199254740991 <= 9007199254740991
missing

Number of parts still missing, for uploadIncomplete.

integer
>= -9007199254740991 <= 9007199254740991
uncoveredPages

Number of pages below that your own role does not cover, for shareBeyondOwnAccess.

integer
>= -9007199254740991 <= 9007199254740991
maxDays

Longest allowed lifetime of a link for anyone in days, for expiryTooLate.

integer
>= -9007199254740991 <= 9007199254740991
pages

Number of pages that give access to groups or through broad links, for confidentialSharing; number of pages that would lose the status, for statusInUse; number of pages the caller cannot open, for hiddenContent.

integer
>= -9007199254740991 <= 9007199254740991
sections

Required sections that are empty or missing, for requiredSectionsEmpty.

Array<object>

A required section.

object
key
required

Key of the section.

string
title
required

Heading of the section.

string
articles

Number of articles more people could read, for audienceWidening and categoryVisibilityWidening.

integer
>= -9007199254740991 <= 9007199254740991
translations

Number of translations into the language, for defaultLanguageTranslated.

integer
>= -9007199254740991 <= 9007199254740991
translationId

The existing translation, for translationExists.

string format: uuid
light

Check of the light mode color, for brandContrast.

object
color
required

The checked color.

string
passes
required

Whether it reaches the contrast WCAG AA asks for.

boolean
onBackground
required

Contrast of the color as text on the background.

number
onBrand
required

Contrast of text on the color.

number
proposal
required

The nearest shade that passes, or null when none exists.

string | null
dark

Check of the dark mode color, for brandContrast.

object
color
required

The checked color.

string
passes
required

Whether it reaches the contrast WCAG AA asks for.

boolean
onBackground
required

Contrast of the color as text on the background.

number
onBrand
required

Contrast of text on the color.

number
proposal
required

The nearest shade that passes, or null when none exists.

string | null
impact

Who gains and who loses access, with the confirmation to send, for moveChangesAccess.

object
gaining
required

Number of people who get access.

integer
>= -9007199254740991 <= 9007199254740991
losing
required

Number of people who lose access.

integer
>= -9007199254740991 <= 9007199254740991
raised
required

Number of people whose role rises.

integer
>= -9007199254740991 <= 9007199254740991
lowered
required

Number of people whose role drops.

integer
>= -9007199254740991 <= 9007199254740991
unlisted
required

Number of affected people the caller may not see; they are counted but not listed.

integer
>= -9007199254740991 <= 9007199254740991
truncated
required

Whether changes lists only the first 100 people.

boolean
changes
required

People whose access changes, ordered by name.

Array<object>

How the access of one person changes.

object
accountId
required

ID of the account.

string format: uuid
name
required

Name of the person.

string
before
required
Any of:

Space role: reader reads, commenter also comments, editor also creates, edits and moves content, admin also manages the space and its permissions.

string
Allowed values: reader commenter editor admin
after
required
Any of:

Space role: reader reads, commenter also comments, editor also creates, edits and moves content, admin also manages the space and its permissions.

string
Allowed values: reader commenter editor admin
leavesConfidential
required

True when the content leaves a confidential space and loses its protection.

boolean
confirmation
required

Send this with the move to confirm exactly this change, or null when access does not change. Valid for one hour.

string | null
copyImpact

Who could read the copy but not the source, with the confirmation to send, for copyChangesAccess.

object
gaining
required

Number of people who get access.

integer
>= -9007199254740991 <= 9007199254740991
losing
required

Number of people who lose access.

integer
>= -9007199254740991 <= 9007199254740991
raised
required

Number of people whose role rises.

integer
>= -9007199254740991 <= 9007199254740991
lowered
required

Number of people whose role drops.

integer
>= -9007199254740991 <= 9007199254740991
unlisted
required

Number of affected people the caller may not see; they are counted but not listed.

integer
>= -9007199254740991 <= 9007199254740991
truncated
required

Whether changes lists only the first 100 people.

boolean
changes
required

People whose access changes, ordered by name.

Array<object>

How the access of one person changes.

object
accountId
required

ID of the account.

string format: uuid
name
required

Name of the person.

string
before
required
Any of:

Space role: reader reads, commenter also comments, editor also creates, edits and moves content, admin also manages the space and its permissions.

string
Allowed values: reader commenter editor admin
after
required
Any of:

Space role: reader reads, commenter also comments, editor also creates, edits and moves content, admin also manages the space and its permissions.

string
Allowed values: reader commenter editor admin
leavesConfidential
required

True when the copy leaves a confidential space and is not protected by it.

boolean
widerAccess
required

True when people can read the copy who cannot read the source; the copy then needs the confirmation.

boolean
confirmation
required

Send this with the copy to confirm exactly this access, or null when nobody gains access. Valid for one hour.

string | null
items
required

Number of items the copy creates.

integer
>= -9007199254740991 <= 9007199254740991
hidden
required

Number of items below that are left out because the caller cannot read them.

integer
>= -9007199254740991 <= 9007199254740991
skipped
required

Number of items below that are left out because they cannot be copied.

integer
>= -9007199254740991 <= 9007199254740991
background
required

True when the copy is large and runs in the background.

boolean
formerParent
Any of:
object
id
required

ID of the former parent page.

string format: uuid
title
required

Title of the former parent page.

string
parentEntries

Number of trash entries of former parent pages the caller can restore together with the content, for restrictedParentInTrash; 0 when the caller cannot restore all of them.

integer
>= -9007199254740991 <= 9007199254740991
fileVersion

Format or editor schema version of the file, for newerTemplateFormat.

integer
>= -9007199254740991 <= 9007199254740991
supportedVersion

Highest format or editor schema version this Lunedo reads, for newerTemplateFormat.

integer
>= -9007199254740991 <= 9007199254740991
templateIndex

Position of the template in the file, counted from 0, for templateNameTaken.

integer
>= -9007199254740991 <= 9007199254740991
templateProblems

What is wrong with the templates of the file, for invalidTemplatesInFile.

Array<object>

A problem in a template of the file.

object
place
required

Where in the template, such as field 3 or content.

string | null
message
required

Explanation for people, naming the template and the place.

string
maintenanceMessage

The message of the instance administrators about the maintenance, for maintenanceMode and signInPaused. Empty when they wrote none.

string
problems

What is wrong with the document, for invalidDocument and invalidComment.

Array<object>

A problem in the document.

object
path
required

Position in the document, such as .content[2].content[0].

string
code
required

Kind of problem, such as unknownNode or invalidAttribute.

string
message
required

Explanation for people.

string

Examples

ExamplerateLimited
{
"type": "urn:lunedo:problem:rateLimited",
"title": "Too many requests",
"status": 429,
"code": "rateLimited"
}

maintenanceMode: The instance is in maintenance mode.

Media typeapplication/problem+json

Error response following RFC 9457 Problem Details.

object
type
required

Stable identifier of the error kind. Clients branch on this value.

string
title
required

Short summary of the error kind. It does not change between occurrences.

string
status
required

HTTP status code of the response.

integer
>= -9007199254740991 <= 9007199254740991
detail

Explanation of this occurrence, for people.

string
code
required

The last part of type, for clients that prefer a short key.

string
fields

Invalid fields, for invalidInput, invalidStorageSettings, invalidBackupSettings and the codes about the address of a chat channel.

Array<string>
denials

Why the request was not allowed, for forbidden.

Array<string>
retryAfterSeconds

Seconds to wait before retrying, for rateLimited, locked and busy.

integer
>= -9007199254740991 <= 9007199254740991
problem

Which password rule failed, for passwordPolicy; why the address of a chat channel was refused, for invalidChatAddress; which storage setting was refused (invalidThresholds, invalidS3Limit, invalidContacts or invalidTeamsWebhook), for invalidStorageSettings; which backup setting was refused, for invalidBackupSettings; whether a backup or a testRestore is running, for backupRunning; why the backup target could not be used (a failure of Test connection, such as notFound or credentials, or missingSecret), for backupTargetFailed.

string
step

What Lunedo was doing with the backup target when it failed, for backupTargetFailed.

string
Allowed values: write read delete list
refusal

What the full storage refuses, for storageFull: an upload, or a large write such as an import.

string
Allowed values: upload largeWrite
minLength

Minimum password length, for passwordPolicy.

integer
>= -9007199254740991 <= 9007199254740991
lockedBy

Level that locked the setting, for settingLocked.

string
minimum

Lowest allowed value, for settingBelowMinimum.

number
maximum
Any of:
number
maxLifetimeDays

Maximum lifetime of API tokens in days, for expiryRequired and expiryTooLate.

integer
>= -9007199254740991 <= 9007199254740991
domains

Domains that belong to another identity provider, for domainInUse.

Array<string>
instanceUrl

The current address of the instance, for instanceMoved.

string
providerId

ID of the identity provider that manages the account, for managedAccount and managedDomain.

string
providerName

Name of the identity provider that manages the account, for managedAccount and managedDomain.

string
accounts

Number of accounts still linked to the identity provider, for providerHasAccounts.

integer
>= -9007199254740991 <= 9007199254740991
maxBytes

Largest allowed file size in bytes, for fileTooLarge and uploadTooLarge; storage limit of the organization’s imports, for organizationImportLimit.

integer
>= -9007199254740991 <= 9007199254740991
usedBytes

Bytes the organization’s imports use already, for organizationImportLimit.

integer
>= -9007199254740991 <= 9007199254740991
missing

Number of parts still missing, for uploadIncomplete.

integer
>= -9007199254740991 <= 9007199254740991
uncoveredPages

Number of pages below that your own role does not cover, for shareBeyondOwnAccess.

integer
>= -9007199254740991 <= 9007199254740991
maxDays

Longest allowed lifetime of a link for anyone in days, for expiryTooLate.

integer
>= -9007199254740991 <= 9007199254740991
pages

Number of pages that give access to groups or through broad links, for confidentialSharing; number of pages that would lose the status, for statusInUse; number of pages the caller cannot open, for hiddenContent.

integer
>= -9007199254740991 <= 9007199254740991
sections

Required sections that are empty or missing, for requiredSectionsEmpty.

Array<object>

A required section.

object
key
required

Key of the section.

string
title
required

Heading of the section.

string
articles

Number of articles more people could read, for audienceWidening and categoryVisibilityWidening.

integer
>= -9007199254740991 <= 9007199254740991
translations

Number of translations into the language, for defaultLanguageTranslated.

integer
>= -9007199254740991 <= 9007199254740991
translationId

The existing translation, for translationExists.

string format: uuid
light

Check of the light mode color, for brandContrast.

object
color
required

The checked color.

string
passes
required

Whether it reaches the contrast WCAG AA asks for.

boolean
onBackground
required

Contrast of the color as text on the background.

number
onBrand
required

Contrast of text on the color.

number
proposal
required

The nearest shade that passes, or null when none exists.

string | null
dark

Check of the dark mode color, for brandContrast.

object
color
required

The checked color.

string
passes
required

Whether it reaches the contrast WCAG AA asks for.

boolean
onBackground
required

Contrast of the color as text on the background.

number
onBrand
required

Contrast of text on the color.

number
proposal
required

The nearest shade that passes, or null when none exists.

string | null
impact

Who gains and who loses access, with the confirmation to send, for moveChangesAccess.

object
gaining
required

Number of people who get access.

integer
>= -9007199254740991 <= 9007199254740991
losing
required

Number of people who lose access.

integer
>= -9007199254740991 <= 9007199254740991
raised
required

Number of people whose role rises.

integer
>= -9007199254740991 <= 9007199254740991
lowered
required

Number of people whose role drops.

integer
>= -9007199254740991 <= 9007199254740991
unlisted
required

Number of affected people the caller may not see; they are counted but not listed.

integer
>= -9007199254740991 <= 9007199254740991
truncated
required

Whether changes lists only the first 100 people.

boolean
changes
required

People whose access changes, ordered by name.

Array<object>

How the access of one person changes.

object
accountId
required

ID of the account.

string format: uuid
name
required

Name of the person.

string
before
required
Any of:

Space role: reader reads, commenter also comments, editor also creates, edits and moves content, admin also manages the space and its permissions.

string
Allowed values: reader commenter editor admin
after
required
Any of:

Space role: reader reads, commenter also comments, editor also creates, edits and moves content, admin also manages the space and its permissions.

string
Allowed values: reader commenter editor admin
leavesConfidential
required

True when the content leaves a confidential space and loses its protection.

boolean
confirmation
required

Send this with the move to confirm exactly this change, or null when access does not change. Valid for one hour.

string | null
copyImpact

Who could read the copy but not the source, with the confirmation to send, for copyChangesAccess.

object
gaining
required

Number of people who get access.

integer
>= -9007199254740991 <= 9007199254740991
losing
required

Number of people who lose access.

integer
>= -9007199254740991 <= 9007199254740991
raised
required

Number of people whose role rises.

integer
>= -9007199254740991 <= 9007199254740991
lowered
required

Number of people whose role drops.

integer
>= -9007199254740991 <= 9007199254740991
unlisted
required

Number of affected people the caller may not see; they are counted but not listed.

integer
>= -9007199254740991 <= 9007199254740991
truncated
required

Whether changes lists only the first 100 people.

boolean
changes
required

People whose access changes, ordered by name.

Array<object>

How the access of one person changes.

object
accountId
required

ID of the account.

string format: uuid
name
required

Name of the person.

string
before
required
Any of:

Space role: reader reads, commenter also comments, editor also creates, edits and moves content, admin also manages the space and its permissions.

string
Allowed values: reader commenter editor admin
after
required
Any of:

Space role: reader reads, commenter also comments, editor also creates, edits and moves content, admin also manages the space and its permissions.

string
Allowed values: reader commenter editor admin
leavesConfidential
required

True when the copy leaves a confidential space and is not protected by it.

boolean
widerAccess
required

True when people can read the copy who cannot read the source; the copy then needs the confirmation.

boolean
confirmation
required

Send this with the copy to confirm exactly this access, or null when nobody gains access. Valid for one hour.

string | null
items
required

Number of items the copy creates.

integer
>= -9007199254740991 <= 9007199254740991
hidden
required

Number of items below that are left out because the caller cannot read them.

integer
>= -9007199254740991 <= 9007199254740991
skipped
required

Number of items below that are left out because they cannot be copied.

integer
>= -9007199254740991 <= 9007199254740991
background
required

True when the copy is large and runs in the background.

boolean
formerParent
Any of:
object
id
required

ID of the former parent page.

string format: uuid
title
required

Title of the former parent page.

string
parentEntries

Number of trash entries of former parent pages the caller can restore together with the content, for restrictedParentInTrash; 0 when the caller cannot restore all of them.

integer
>= -9007199254740991 <= 9007199254740991
fileVersion

Format or editor schema version of the file, for newerTemplateFormat.

integer
>= -9007199254740991 <= 9007199254740991
supportedVersion

Highest format or editor schema version this Lunedo reads, for newerTemplateFormat.

integer
>= -9007199254740991 <= 9007199254740991
templateIndex

Position of the template in the file, counted from 0, for templateNameTaken.

integer
>= -9007199254740991 <= 9007199254740991
templateProblems

What is wrong with the templates of the file, for invalidTemplatesInFile.

Array<object>

A problem in a template of the file.

object
place
required

Where in the template, such as field 3 or content.

string | null
message
required

Explanation for people, naming the template and the place.

string
maintenanceMessage

The message of the instance administrators about the maintenance, for maintenanceMode and signInPaused. Empty when they wrote none.

string
problems

What is wrong with the document, for invalidDocument and invalidComment.

Array<object>

A problem in the document.

object
path
required

Position in the document, such as .content[2].content[0].

string
code
required

Kind of problem, such as unknownNode or invalidAttribute.

string
message
required

Explanation for people.

string

Examples

ExamplemaintenanceMode
{
"type": "urn:lunedo:problem:maintenanceMode",
"title": "The instance is in maintenance mode",
"status": 503,
"code": "maintenanceMode"
}