Browse documentation
Docs/AI Portal Chat/Permissions, data and limits

Permissions, data and limits

What the app can access, what it stores, its limits, and what to check when something breaks.

This page is for you when something is not working, and for your security team when they ask what the app can reach.

Limits worth knowing

LimitValue
Attachment size, per file5 MB
Attachment size, per conversation10 MB
Attachments at allOnly when the request type accepts them
Knowledge base scopeOnly the Confluence spaces you list, and only what the customer can already see
Audit retention90 days, one row per event, no per-day cap
Where AI runsForge LLM, inside Atlassian, with Atlassian-hosted models
Outbound network accessNone. The manifest declares no external address at all.

Permissions the app requests

Atlassian shows this list when you install. Each item is a scope; the app can do nothing outside it.

ScopeWhy it is needed
read:servicedesk-request, write:servicedesk-requestList service desks and request types, read which fields each one has, read the customer's requests, and create new ones.
manage:servicedesk-customerIdentify the portal customer in the conversation.
read:jira-work, write:jira-workRead and write the underlying issue, and attach the customer's files to it.
read:jira-userResolve names of users and agents.
search:confluence, read:space:confluenceSearch the knowledge base spaces you listed.
storage:appStore conversations, configuration, branding and statistics. The audit log itself is Forge SQL, one row per event.
report:personal-dataAtlassian's Personal Data Reporting cycle. Once a day the app reports the account IDs it holds — walking both stores, the key-value store and the SQL audit table — and erases what belongs to an account Atlassian reports as closed.

The app declares no external network access at all — there is no external.fetch block in its manifest, so there is no address anywhere it is permitted to reach. Everything, the AI included, happens inside Atlassian.

What the app stores

Conversations
The messages, the status, the desks and spaces the session could search, timestamps and any feedback. Chat text is stored as written, so if a customer types personal data into the chat, it is kept until the conversation is deleted or the app is uninstalled.
Configuration
Your instructions at all three levels, knowledge base spaces, branding, and the API token.
Statistics
Daily counters of conversations, tickets created and feedback.
Audit entries
One row per event in Forge SQL, kept for 90 days: what happened, on which desk and conversation, who acted, and the token usage of each AI call. Filterable and exportable as CSV from the Audit Log tab.

The privacy policy is the full, authoritative list, including exactly what goes into a prompt.

Statistics, and how to read them

Jira → Apps → AI Portal Chat → StatisticsIllustration

AI Portal Chat

••• Help
StatisticsPortal AssistantBrandingAPIAudit Log
TodayThis WeekThis MonthCustom
Refreshing…
Conversations
1,842
Tickets created
712
Feedback
👍 486 👎 41
Last 12 WeeksLast 12 Months
Tickets Created
2026-W232026-W252026-W272026-W292026-W312026-W33
Conversations
2026-W232026-W252026-W272026-W292026-W312026-W33

Pick a range with Today, This Week, This Month or Custom. The tab shows three counters and two charts, switchable between Last 12 Weeks and Last 12 Months.

Conversations
How many chat sessions happened in the range.
Tickets created
How many of those ended in a request being created.
Feedback
Thumbs up and thumbs down counts from the end of conversations.
Charts
Tickets Created and Conversations per ISO week.
The number to watch is the gap between the first two
Conversations minus tickets created is roughly your deflection: questions the assistant answered without adding to your queue. The app does not calculate it for you, but the two counters sit side by side. Track the ratio month to month, because that is the figure that justifies the app.

What happens without an active licence

Exactly three things stop, and they are the three that end in a model call: starting a conversation, sending a message and confirming a ticket. Everything else stays open — reading a conversation back, deleting one, leaving feedback on an answer already given, attaching a file to a request that already exists, and the whole admin surface of configuration, branding, the API tab, statistics and the audit log.

The customer is not the person who let the licence lapse
A portal customer meeting this gate is somebody trying to raise a support request. They cannot renew a subscription and should never be shown one failing. So the refusal is not an error: the chat window renders a calm note — “The assistant is unavailable”, explaining that they can still raise the request the usual way from the help centre — and hides the composer. It is the same treatment the portal already gives a desk that has not been enabled.

The gate is on the resolvers rather than on a trigger, and that is not an implementation detail: a resolver is an endpoint, reachable by anyone with an account on the site without going near the portal, so it is the right place for the check. Nothing is deleted, every conversation already held stays readable, and renewing restores the assistant with no reconfiguration.

Uninstalling

Uninstalling erases what the app holds. A preUninstall handler empties the audit table first, then sweeps the key-value store — conversations, configuration at all three levels, branding, the API token and statistics — repeating until a pass finds nothing left, to a 45-second budget.

Requests the assistant created stay in Jira, because they are ordinary Jira issues. See Where your data goes.

Troubleshooting

The chat does not appear in the portal
The desk is not enabled. Open Portal Assistant, select that service desk, and check Enable AI Portal Chat. Also confirm you are looking at the desk you configured.
Customers see “The assistant is unavailable”
Two causes look identical from the portal: the desk is not enabled, or the installation has no active licence. Check the desk first, then Atlassian Marketplace. The admin screens give no warning about the licence, so this note in the chat window is the signal — and the customer sees it before you do.
It never uses the knowledge base
Three things to check: Enable Knowledge Base Search is on for that desk, the space keys are correct, and the customer can actually open those Confluence pages.
Attachments are refused
Either the file is over 5 MB, the conversation total is over 10 MB, or the request type does not accept attachments. The assistant says which.
It picks the wrong request type
Add request type instructions that say what each type is for, especially for two types that overlap. This is the same fix as for a confusing portal menu, written once in one place.
It mentions an outage that is over
An operational notice with no expiry. Clear it on the project's Agent Instructions page and set Auto-expire next time.

Still stuck? Open a ticket with the service desk name, roughly when the conversation happened, and what you expected.

Something missing or wrong on this page? Tell us in the support portal or email contact@synapseoasis.com.