Skip to content

Permissions & content scope

The single most important thing to understand about the Mereon API: a connection sees exactly what the person behind it can see, and nothing more.

A token is not a separate identity with its own permission set. It resolves to the user who created it, and each request is evaluated against that user’s current access in Mereon at the moment of the call. Permissions are never snapshotted into the token.

So:

  • Grant the user access to more content, and their tokens can read it on the next request.
  • Remove their access, and their tokens lose it immediately. No cache to expire, no token to rotate.
  • A token can never read content its owner cannot read.

Endpoints that return knowledge (topics, items, evidence, duties, issues) and content are filtered to the caller’s visible scope. Two people in the same organization with different access will get different results from the same request, and that is expected.

Some endpoints are inherently personal. For example, assignedToMe on the issues endpoint filters to issues assigned to the connected user.

Most of the API only reads. A connection that changes something needs a scope for it on top of read, and the person behind it must also be allowed to do that thing in Mereon, checked on every request:

Scope What it allows
read Every read. Every token has it.
content:write Adding content: uploading videos and guides, and creating documents and adding YouTube videos. Nothing that edits or deletes what exists.
announcement:write Writing, sending and withdrawing announcements.
narration:synthesize Voice narration, drawn from your organization’s allowance.
training:assign Assigning training: requiring lessons and knowledge of people, retraining them, excusing them or moving their due dates, a lesson’s retraining policy, and pop quizzes. Granted to admins and team admins; a team admin reaches only the people on teams they administer, and only an admin may excuse someone.
content:manage Managing content: renaming resources and changing their summaries, editing and publishing documents, guides, and video or audio transcripts, who in the organization can read them, tags, and what a team holds. Granted to admins and team admins; a team admin changes only the resources shared with teams they administer. Publishing an edit can retrain people, and says how. Nothing that deletes a resource or shares it outside the organization.
content:delete Deleting content: deleting videos, audio, documents and guides from the library. Granted to admins and team admins. A team admin mostly removes resources from the teams they administer, and a guide is deleted for the whole organization. Deleting can close lessons left with nothing to teach, and can stop people part-way through them when you say so. It can retire a topic left with no evidence, and dismiss the open issues that stand in the way, when you say so.
lesson:write Authoring lessons: creating them, changing their settings, what they teach, who can take them and the picture they show, writing their material again, splitting them, and closing, reopening or deleting them. Granted to admins and team admins; a team admin changes only the lessons shared with teams they administer. A lesson anyone has been enrolled in is closed, not deleted.
issue:write Filing an issue about the knowledge base, and who should look at it. Granted to owners, admins and team admins. Every topic or item it names has to be one you can read. Nothing that resolves, dismisses or changes an issue.
public-link:write Public links: sharing a library resource with someone who has no account, by a link that expires and can be turned off, and sending that link by email or text. Granted to anyone who can read content, except an external account. The organization list and the organization settings need permission to update the organization. Barring one resource needs permission to update it.
content-review:write Deciding a content review: approving a submission, which publishes it or applies the issue fix, rejecting it, or asking for changes. Granted to owners and admins. Leaving a retraining choice out retrains nobody.
issue:manage Deciding an issue: dismissing one with your reason, reopening one, assigning it to a person or a role, merging a duplicate, choosing the correct version of a conflict, or filling a content gap. Granted to owners, admins and team admins. Leaving out a retraining choice retrains nobody.
member:manage Managing people: inviting them, changing their organization role, deactivating or reactivating them, removing them, and setting who they report to. Granted to owners and admins. Changing a name, email or phone stays in the app. Who is on a team is Managing teams. Who holds a company role is Managing company roles.
team:manage Managing teams: creating a team, renaming it, deleting it, and adding, removing or setting the team role of people who already belong to the organization. Granted to owners and admins. Someone already on the team keeps their current role when added again. Removing someone is refused when it would take away training their job still requires.
company-role:manage Managing company roles: creating a role, saving and publishing a draft of its name or description, moving it, merging it, deleting it, and choosing who holds it and their standing on its advancement path. Granted to owners and admins. A role’s curriculum is curriculum:manage. What an external role can read is content-grant:manage.
duty:manage Managing duties: assigning, changing, or removing who is Responsible, Accountable, Consulted, or Informed for a topic, item, space, or category, including how far a company role’s duty reaches on its advancement path. Granted to owners and admins. A duty assigned here is recorded as set by a person. Copying duties down to child topics, and handing one role’s duties to another role, stay in the app.
curriculum:manage Add a curriculum item: adding or removing a lesson or a topic on a company role’s training curriculum, including when it is due and whether people who already hold the role must take it. Granted to owners and admins. Changing a curriculum item after it is added stays in the app. What an external role can read is content-grant:manage.
content-grant:manage Add a content grant: granting or removing a video, an audio file, a document, or a guide that an external company role can read. Granted to owners and admins. Granting a resource that is already granted leaves it in place. A lesson stays on the curriculum.
topic:retire Retire a topic: withdrawing a topic the organization no longer follows, and bringing it back. Granted to owners and admins. The videos and documents stay in the library. Leaving out what happens to people part-way through lets them finish. Retiring one item, while the topic continues, is item:retire.
item:retire Retire an item: withdrawing one item the organization no longer follows, and bringing it back. Granted to owners and admins. The topic continues, and the videos and documents stay in the library. Child items go with it. Lessons that teach the topic stay open.
plan:propose Proposing a plan: proposing a plan of the assistant’s changes, reading it back, and changing it before approval. MCP only. Granted to every organization role, because each step is held to the person’s own permissions. Nothing runs until the person opens the plan in Mereon and approves it there.
client:create Create a client: creating a client organization for a solutions partner, on a Pro trial, with an invitation to its owner, and reading the terms a new client would get. Granted to owners, admins and billing admins. Refused on every call in an organization that is not a solutions partner. A reseller client’s trial is billed to the partner. Listing clients and their adoption needs only read.

A personal access token is issued with read only, so the write scopes are granted through the OAuth connect flow today. A POST request such as POST /v1/search is still a read; it exists only to accept long queries in a request body.