30-minute cache. Project-admin erasure. One external egress to a public holiday API. Everything else stays in Atlassian.
This page summarizes how Fairlog handles personal data. The full authoritative document is the Privacy Policy linked from the Marketplace listing — this is the operator-facing version with more detail on the storage internals.
Fairlog does not collect or process passwords, payment information (handled by Atlassian Marketplace), or any data from outside the Jira instance it is installed on.
All data is processed and stored within Atlassian's Forge
infrastructure (Key-Value Store and compute). The app makes
no calls to any external host — no analytics services,
no telemetry, no third-party APIs. Every API call goes to the Jira
Cloud instance the app is installed on, via Atlassian's Forge
requestJira SDK.
| What | Where | How long |
|---|---|---|
| Insights cache (author IDs, display names, worklog details, comment text) | Forge Key-Value Store, per project + filter | 30 minutes (automatic expiry). Self-service views bypass the cache entirely. |
| Export tokens (account ID + export scope) | Forge Key-Value Store | 2 minutes, deleted on first use (one-shot). |
| Per-project settings (thresholds, hours-per-story-point) | Forge Key-Value Store | Until a project admin clears or erases them. Contains no personal data. |
No personal data is stored permanently. Display names, account IDs, and worklog content exist only in the 30-minute cache. The per-project settings contain only numeric thresholds and a story-point ratio — no personal data.
Exclusively to:
Fairlog does not use the data for advertising, profiling, training models, or any purpose unrelated to its functionality.
Fairlog does not share any data with third parties. The data never leaves Atlassian's infrastructure. There are no sub-processors beyond Atlassian.
This static documentation site does not use cookies and does not track you. It has no analytics, no advertising, and no third-party scripts.
The only thing the site stores is the language you choose in the language switcher, so the site stays in that language as you move between pages. The choice is kept in two places, both entirely inside your own browser:
fairlog-docs-lang) — used when the
site is served over http(s), so the choice survives a return visit.?lang=…) — carries the choice
across pages on every origin, including when you open the HTML files
directly from disk (file://), where a browser gives each page
its own separate local storage.Neither of these is sent to any server. They are a functional preference that you set yourself, which is the "strictly necessary for the service requested by the user" case under the ePrivacy Directive (Art. 5(3)) and Art. 6(1)(b) GDPR — so the site does not ask for your consent and does not show a cookie banner. To clear the preference, remove the site's local-storage entry in your browser's site-data settings, or simply switch the language back to English.
Because no personal data is stored permanently, exercising your right to erasure is straightforward:
To request erasure, ask a project admin of any project you appear in to use the Erase action, or uninstall the app.
Fairlog runs entirely within Atlassian's Forge sandbox. It has no access to secrets, no ability to make outbound network calls except to the Jira instance it is installed on, and no filesystem. All data in transit uses HTTPS. Access to the audit view is enforced server-side on every API call — not just hidden in the UI.
Fairlog stores data in Atlassian's Forge infrastructure. Atlassian's data residency and transfer practices are governed by Atlassian's own policies. The app itself makes no transfers — all data stays within the Forge environment.
| Scope | Why Fairlog needs it |
|---|---|
read:jira-work |
Reads worklogs and issue metadata to detect suspicious time entries (the app's core feature). |
read:jira-user |
Resolves worklog author account IDs to display names for the member filter and Worker column. |
storage:app |
Stores per-project settings, a 30-minute insights cache, and one-shot export tokens in Forge KVS. |
read:project:jira |
Lists assignable project members for the audit tab's member filter. |
read:board-scope:jira-software |
Maps Scrum boards to sprints for sprint-mode filtering. |
read:sprint:jira-software |
Lists sprints for the sprint picker. |
read:issue-details:jira |
Reads sprint membership directly (the sprint-issues endpoint) instead of the laggy search index, so freshly-added issues appear immediately. |
read:jql:jira |
Searches issues by updated >= date for
range-mode filtering. |