Documentation
Attestation Flow for Confluence
Attestation Flow lets you require named people to confirm that they have read and understood a Confluence page. Each confirmation is stored as a receipt bound to the exact page version. When the page is edited, earlier receipts are kept as history, but required readers are asked to acknowledge the new version.
Attestation Flow is an Atlassian Forge app published by Stanki Guild sp. z o.o. It runs entirely on Atlassian's platform.
Install
#- A Confluence site administrator installs Attestation Flow from the Atlassian Marketplace.
- During installation the administrator approves the permissions listed under Permissions and why we need them.
- Billing, trials and licences are handled by Atlassian. See Editions.
There is nothing to configure globally after installation. Requirements are set page by page, or per space with a space default.
Where to find it in Confluence
#| Surface | What it is called | How to open it |
|---|---|---|
| Page macro | Attestation Flow | Edit a page and insert the macro from the macro browser (search for "Attestation Flow"). It shows the acknowledgement button, the current state and the requirement editor. |
| Report macro | Attestation Flow - report | Insert it on any page to show a completion table for the space that page is in. Paid feature. |
| Page byline | Attestation Flow | Shown in the byline under the page title. Click it to open a small popup where you can acknowledge the page. |
| Global page | Attestation Flow - Compliance | Opened from the Apps menu in Confluence's top navigation. Contains the tabs Compliance report and My outstanding acknowledgements. |
| Space page | Attestation Flow - Space report | Opened from the space's sidebar, under apps. Contains Compliance report, My outstanding acknowledgements and Space default policy. |
Features
#Require acknowledgement on a page
In the macro, click Require acknowledgement and choose the required readers with the people picker. You can also add:
- Required groups (paid): Confluence groups whose current members must acknowledge. Membership is read live each time it is needed and is never stored as a frozen list, so a person who joins the group later is required too. Up to 10 groups per page.
- A due date: shown as "Due ..." and, once passed, "Overdue since ...".
- A re-acknowledgement window (paid): readers must acknowledge again every 30 to 730 days, even if the page has not changed.
- A note for readers.
Only the person who created a requirement can edit or remove it. Readers cannot remove their own obligation. Remove requirement deactivates the requirement; receipts already collected are kept and still appear in reports.
If a group cannot be resolved (for example, it is too large to read in full, or the lookup fails), the app marks it as unresolved instead of treating it as "no members". A page with an unresolved group is never shown as fully acknowledged.
Acknowledge a page
A required reader clicks I have read and understood, either in the macro or in the byline popup. The receipt records the reader's Atlassian account, the page, the page version, the time, and the reader's display name at that moment.
- Receipts are write-once. Clicking again on the same version does not change the original timestamp.
- When the page is edited, the version changes and the macro shows that the page changed and asks for a new acknowledgement. Receipts for earlier versions remain as history.
- With a re-acknowledgement window, an expired receipt no longer counts, and the reader's next acknowledgement creates a new renewal receipt. The original receipt is never modified.
My outstanding acknowledgements
On the global page and the space page, this tab lists every page that requires you and where your acknowledgement for the current version is missing or has expired, with due dates and a link to each page. Requirements that name you directly are included in every edition. Requirements that reach you through a group are a paid feature. If the app cannot confirm whether a page requires you, it says so instead of reporting that you are up to date.
Space default policy
On the space page, the Space default policy tab lets you set default required readers, groups (paid), a due date, a re-acknowledgement window (paid) and a note for the space. On any page in that space without a requirement, the macro then offers Apply space default. The space report shows whether each page matches or differs from the space default.
Only the person who set the space default can change, remove or bulk-apply it.
Apply the space default by label (paid)
On the space page you can apply the space default to every page that carries a given label. You first see a preview: how many pages will receive the default, how many already have a requirement and are left alone, how many belong to someone else and are never touched, how many are in other spaces, and how many could not be read. Nothing is written until you confirm.
- Up to 200 requirements are written per run; running it again continues where it stopped.
- At most 500 labelled pages are examined per run. If the label has more, the run stops with an error and applies nothing.
- The optional overwrite setting replaces only requirements you created yourself. Receipts are never touched.
Compliance report (paid)
The Compliance report tab, on the global page (all spaces) or the space page (one space), shows for each page with a requirement who has and has not acknowledged the current version, with due and overdue status. On the global page, the report includes only pages that you yourself are allowed to open in Confluence, and says when pages were left out for that reason.
- Audit export (CSV): the report can be shown as CSV text to copy. It includes outstanding readers and unresolved groups, not only completed receipts.
- Per-user record: pick a person to see every receipt they have across pages, what they still owe, and a per-person CSV.
- Daily outstanding digest: once a day the app computes who is still outstanding and shows the result on the dashboard. No emails or notifications are sent.
You must be signed in to see any report.
Report macro (paid)
The Attestation Flow - report macro shows a read-only table for the space of the page it is placed on: page, current version, acknowledged and required counts, outstanding count and status. It shows counts only, never names or account IDs.
Editions: free and paid
#Attestation Flow is paid via Atlassian. Without an active paid licence the app keeps working with a reduced feature set.
| Feature | Without a paid licence | With a paid licence |
|---|---|---|
| Acknowledgement button, version-bound receipts, re-acknowledgement after edits | Yes | Yes |
| Pages with a requirement | 1 per space | Unlimited |
| Named required readers | Yes | Yes |
| Required groups | No | Yes |
| Due dates | Yes | Yes |
| Re-acknowledgement window | No | Yes |
| My outstanding acknowledgements | Named requirements | Named and group requirements |
| Space default policy | Yes | Yes |
| Apply space default by label | No | Yes |
| Compliance report, CSV export, per-user record | No | Yes |
| Daily outstanding digest | No | Yes |
| Report macro | No | Yes |
Where a paid feature is unavailable, the app shows a Start free trial button that opens the Atlassian trial flow.
If a licence lapses, paid settings already saved on a requirement (required groups, re-acknowledgement window) are kept: editing the requirement without a licence neither changes nor clears them. A space default that uses groups cannot be applied to a page until the licence is active again.
Permissions and why we need them
#| Scope | Why |
|---|---|
storage:app | Stores requirements, receipts, space defaults and the daily digest in Atlassian's Forge storage for your site. |
read:confluence-user | Turns account IDs into display names in the macro, the reports and the stored receipt. |
read:page:confluence | Reads a page's title, current version number and space. The page body is never requested. |
read:confluence-content.summary | Lists the pages that carry a label, for the "apply space default by label" action. |
read:confluence-groups | Reads the current members of the groups a requirement names. |
The app has no write access to Confluence content. It declares no external network access, so it cannot send data anywhere outside Atlassian.
Your data, and what happens on uninstall
#- All data is stored in Forge hosted storage on your own Atlassian site. Stanki Guild operates no servers and has no access to your data.
- Stored: required readers and groups (as IDs), due dates, re-acknowledgement windows, notes, receipts (account ID, page ID, page version, time, display name at the time of acknowledgement), space defaults, and the latest daily digest.
- Not stored or read: page bodies, email addresses, passwords or tokens.
- Receipts are kept as compliance history while the app is installed, including receipts for earlier page versions. They are not deleted when a page is edited or a requirement is removed.
- On uninstall, the app runs a clean-up that deletes its stored data: every receipt, every page requirement, every space default, the digest and the page index. If the clean-up cannot finish, Atlassian holds the remaining data only for its 28-day retention window after uninstall and does not restore it automatically on reinstall; we cannot read it during that time.
- Uninstalling permanently deletes all records. Reinstalling does not bring them back: from the app's point of view the deletion is final. Export first (paid edition).
Full details: Privacy Policy, Security Policy, Data Processing Addendum.
Support
#- Documentation and policies: https://stankiguild.com/
- Support: support@stankiguild.com, 09:00-17:00 Monday to Friday, Europe/Warsaw. See Support for response targets and what to include.
- Security issues: security@stankiguild.com
- Privacy and data protection: privacy@stankiguild.com