Skip to content

Setup and permissions

HeadsUp is an Atlassian Forge app. It runs entirely on Atlassian infrastructure, operates no servers of its own and defines no external endpoints. The app is built to meet the criteria of Atlassian’s Runs on Atlassian program; the badge has not been awarded yet.

Installation happens per Jira Cloud site through the Atlassian Marketplace. No configuration is required afterwards: users create their own reminders, and there are no site-wide settings to maintain. Changes to the requested permissions always require renewed admin consent on upgrade.

Scope Why the app needs it
read:jira-work Read tickets, comments and change history to evaluate triggers; validate JQL; load status lists for the pickers
read:jira-user Resolve display names for account IDs (“assigned to Jane Doe”)
write:jira-work Send notifications via Jira’s own notify API (email); create optional ticket comments
storage:app Store reminders, notifications and audit logs in Forge hosted storage
read:servicedesk-request Read SLA data of open JSM requests for the SLA early warning (Advanced edition)
manage:jira-configuration Used for one purpose only: to read the number of licensed Jira users, which determines the site’s monthly AI Credits pool.

On that last one: the licensed user count comes from Jira’s license metrics, and Atlassian places that area behind this scope. The app reads a single number per Jira product and changes nothing. Every call an app makes is visible to administrators in the site’s audit log.

HeadsUp runs under its own app user. What that user cannot see does not reach the app: a comment restricted to a project role is not delivered to HeadsUp as an event at all, so a reminder on it does not trigger. That is the default, and it needs no setup.

A project administrator can change this for a single project. The app user appears in the role administration under the app’s Marketplace name, HeadsUp: AI Reminders and Notifications for Jira. Add it in the project settings, in the area for people and roles, to the role the comments are restricted to. From then on the event reaches the app and the reminder triggers.

The content stays hidden either way. Even for a comment the app now sees, notification, inbox entry and audit log carry the neutral sentence “There is a new comment with restricted visibility. Its content is not shown here, open the ticket to read it.”, no auto comment is written, and AI reminders skip the comment without using a credit. The two levels build on each other: role membership decides whether a reminder triggers at all, the suppression decides what is shown.

Internal notes in Service Management behave differently. The app has agent visibility there, so those events always arrive and only the second level applies.

Standard Advanced
Ticket reminders, filter alerts, inbox ✓ ✓
AI detection ✓ ✓
AI Credits per licensed user per month 20 200
SLA early warning (JSM) ✗ ✓

The edition follows the Marketplace license automatically; nothing needs to be configured in the app. A downgrade from Advanced to Standard has two consequences worth planning for.

  • Existing SLA alerts stay stored, but never fire again. In the Standard edition the hourly SLA check ends immediately. The alerts remain in the list and look active, and new ones cannot be created. A filter alert cannot be switched to a different trigger either, so the way out is to delete it and, if needed, create a new alert with another trigger. Back on Advanced, the existing alerts fire again without further action.
  • The AI Credits limit is recalculated at once. The limit follows the current edition, while the usage counter of the running month stays as it is. A site that has already used more than Standard allows is over the limit from that moment on, and AI evaluation stops until the first of the next month. Everything else keeps working.