Markso Editor is built on Atlassian Forge — Atlassian's own serverless platform. Your page content never leaves Atlassian infrastructure. This page explains exactly how Markso handles data, what permissions it uses, and why.
Markso targets and maintains eligibility for Atlassian's Runs on Atlassian badge — their highest trust certification for Marketplace apps. Eligibility is verified before every Marketplace submission using the official forge eligibility check.
Every piece of data Markso touches stays within Atlassian.
| What | Where | Who can access |
|---|---|---|
| Markdown content | Confluence macro parameter | Page viewers/editors per Confluence permissions |
| XHTML edits | Confluence Content API | Page editors per Confluence permissions |
| User preferences (dark mode) | Forge KV Store, keyed by accountId | That user only |
| Export files | Generated client-side, downloaded locally | User's device only — never stored |
Markso requests the minimum set of scopes required for its features to function. Each scope is justified below.
| Scope | Why it's needed |
|---|---|
| read:confluence-content.all | Read page XHTML for Source Editor |
| write:confluence-content | Save edited pages from Source Editor |
| read:confluence-space.summary | Space context for Export page tree |
| read:confluence-user | Load saved user preferences |
| read:page:confluence | Read pages via Confluence v2 API |
| write:page:confluence | Write pages via Confluence v2 API |
| read:attachment:confluence | Read .md file attachments for rendering |
| write:confluence-file | Upload images as page attachments |
| storage:app | Store user preferences in Forge KV Store |
If you have questions about Markso's data handling, security posture, or compliance documentation, get in touch and we'll respond within one business day.