Attachment Scanner OCR: User & Admin Guide for Jira Configuration and Usage
Attachment Scanner OCR: User & Admin Guide
A single-page reference for Jira admins installing, configuring, and
operating Attachment Scanner OCR.
What the app does
Attachment Scanner OCR scans Jira attachments for text patterns you
define. It reads images, scanned PDFs, screenshots, Office documents,
CSVs, and text files, and reports every match with file context.
Useful for finding passwords in screenshots, PII in support PDFs,
credit card numbers in spreadsheets, or any custom pattern across
your Jira issues.
Quick start (5 minutes)
Install from the Atlassian Marketplace. Requires Jira
administrator permissions.Open Jira → Apps → Attachment Scanner OCR.
Click Create template:
Name:
Password detectionJQL scope:
project = MYPROJ AND created >= -30dPattern type: Simple text
Search pattern:
password*Scan mode: Full scan
Click Create, then Run scan on the new template.
When the scan finishes, the results page opens automatically.
Review matches; select offending files and click Delete
selected attachments to remove them from Jira.
Core concepts
Term | Meaning |
|---|---|
Template | A reusable scan definition: name, JQL scope, search pattern, and scan mode. |
Scan | A single run of a template. Discovers matching issues, processes their attachments, and saves results. |
Match | One occurrence of your pattern in an attachment. Stored with surrounding context. |
Credit | One unit of OCR work. Image OCR = 1 credit; scanned PDF page OCR = 1 credit. Direct text extraction (Office, CSV, text) = 0 credits. |
Scan mode | Full (with OCR, uses credits) or Document-only (no OCR, zero credits). |
Tier | Your monthly credit allowance, set by your Marketplace user count. |
Creating a template
Open the Scan Templates tab and click Create template.
Name: descriptive label.
JQL scope: defines which Jira issues to look at. Live-validated.
Examples:project = HR AND created >= -90d: recent HR tickets onlyproject in (SUPPORT, IT) AND status != Done: open service ticketsattachments is not EMPTY: any issue with attachments
Scan mode: pick one:
Full scan: reads everything, including images and every kind
of PDF (text, scanned, mixed). Uses one credit per image and per
OCR'd PDF page; pure text-layer PDF pages and Office / text files
don't consume credits.Document-only: only Office files (XLSX, DOCX, PPTX) and plain
text files (TXT, CSV, JSON, MD, …). Images and PDFs of any kind
are skipped entirely. Costs nothing and never contacts the OCR
service.
Pattern type: Simple text (with
*wildcards) or Regex.Search pattern: what to look for. Validated live.
Simple:
password*,credit card,SSN*Regex:
\\b\\d{3}-\\d{2}-\\d{4}\\b(US SSN),\\b[A-Z]{2}\\d{2}\\s?\\d{4}(IBAN-ish)
The pattern is matched case-insensitively against extracted text.
Running a scan
Click Run scan on a template.
The app discovers attachments, processes each one, and saves
results. Progress shows current file and overall position.Pause / Resume / Cancel are available while a scan is running.
Pausing preserves progress; resuming picks up where you left off.If multiple admins start scans simultaneously, the app queues them
so each gets a fair turn.When complete, the results page opens automatically.
Reviewing results
The results page shows:
Summary cards: issues scanned, files processed, matches found,
errors, scan mode used.Mode banner: explains exactly what the scan looked at and what
it skipped, so a low match count is never misread.Match table: issue key (clickable to Jira), attachment name,
extraction type (OCR or Direct), matched text, and surrounding
context.Bulk delete: select rows, click Delete selected attachments,
confirm, and the files are removed from their Jira issues. Audit
log captures every deletion.
Scan modes: when to use which
Full scan: choose this when:
You need to find sensitive text inside screenshots, scanned PDFs,
or any PDF (text-layer or mixed).Your team uploads a mix of file types and you want full coverage.
You're doing a one-off compliance audit.
Document-only scan: choose this when:
Your team's content is primarily Office files and plain-text files.
You don't need to scan PDFs (or you'll do those separately with
Full scan).You want a free, fast, repeatable monthly sweep with zero GPU cost.
You've used up your OCR credits but want to keep scanning text content.
Important: in document-only mode, PDFs of every kind are
skipped: even a PDF with a perfectly readable text layer. PDF
extraction currently routes through our OCR-capable service, so
skipping PDFs is what makes document-only mode honestly free of GPU
contact. If you need PDF coverage, run a Full scan.
You can change a template's mode any time. Switching is one click.
Credits & monthly budget (admins)
Your monthly credit allowance is set automatically by your Atlassian
Marketplace user count tier:
User count | Monthly credits |
|---|---|
Up to 10 users | 100 |
11–100 | 1,000 |
101–250 | 3,000 |
251–1,000 | 10,000 |
1,001–2,500 | 25,000 |
2,501–5,000 | 50,000 |
5,001–7,500 | 75,000 |
7,501–10,000 | 100,000 |
10,001–15,000 | 150,000 |
15,001–25,000 | 250,000 |
25,001+ | 500,000 |
Evaluation licenses get 100 credits/month so you can fully test
OCR scanning before subscribing.
The Credits pill in the app header shows your monthly usage at a
glance. Click the ↻ refresh icon if your tier looks wrong (the
detection caches for 1 hour); refresh re-checks your active user count
and updates the allowance.
Credits reset automatically at the start of each calendar month.
Unused credits do not roll over.
If you exceed your monthly limit, Document-only scans continue to
work (they use zero credits). Full scans are blocked until next
month or until you upgrade.
Privacy & data handling (summary)
All persistent data lives in Atlassian's Forge storage, isolated
per Jira site. Nothing is stored on Actonic servers.OCR processing happens on dedicated EU-based GPU infrastructure
managed by Actonic. No public AI services are involved (no OpenAI,
Google, Anthropic).Attachment binaries are processed in memory and discarded
immediately after extraction.Only matched text snippets (with short context) are stored ,
never the full attachment content, never the full extracted text.The app does not read or store reporter, assignee, or any
user-identity field from your issues. Audit logs reference the
Atlassian accountId of the admin who triggered actions; no display
names or emails are stored.See the in-app Privacy Policy, Terms of Service, and How
It Works panels (footer) for the full text.
Permissions the app requests
Scope | Used for |
|---|---|
| Read issues and attachment metadata for the JQL scopes you define. |
| Reserved for future user-context features; no user data is currently stored. |
| Delete attachments when an admin uses the bulk-delete feature. |
| Store templates, scan results, and audit logs in your isolated Atlassian storage. |
| Send attachment binaries to the OCR service for text recognition. |
Statistics dashboard
The dashboard (alongside your templates) aggregates stats across all
completed scans:
Templates, scans run, issues scanned, files processed, matches
found, match rateMatches by source (OCR vs direct extraction)
Top matched words
Top patterns (which template found the most)
Most violated projects (clickable to Jira)
Most violated work items (clickable to Jira)
Statistics update on every visit and only count completed scans.
Troubleshooting
A scan is stuck on "Waiting for OCR"
The first scan after an idle period takes 30–90 seconds while the
OCR service warms up. Subsequent scans run normally. If a scan
exceeds the per-job time budget, the file is skipped with a warning
and the scan continues.
A scan auto-paused with "repeated errors"
After three consecutive errors on full-scan mode, the app pauses
automatically to avoid burning credits on a broken state. Use Resume
scan once whatever was wrong (network, OCR availability) clears.
Document-only scans never auto-pause.
A specific file shows "Could not read… encrypted, password-protected,
or unsupported format"
The file is one of: password-protected, in a non-standard binary
format (e.g. XLSB instead of XLSX), or corrupted. Open it locally to
verify, then either re-save it in a standard format or remove it from
the issue.
The Credits pill shows the wrong tier
Click the ↻ refresh icon. The tier is detected from your active
Atlassian user count and cached for one hour; refresh forces an
immediate re-check.
An attachment didn't get scanned
Either it isn't a supported file type, it exceeds the per-file size
limit (50 MB PDF / 20 MB image), or the issue wasn't returned by
your JQL. Check the scan result's "skipped" count and the warnings
list for details.
FAQ
Q. Does the app delete attachments automatically?
No. Deletion always requires an explicit click and confirmation by an
admin from the results page.
Q. Can the app scan archived attachments / old issues?
Yes, define a JQL scope that includes them.
Q. Does the app work with Jira Service Management?
Yes. The app is compatible with both Jira Cloud and Jira Service
Management. Service desk attachments (customer-uploaded screenshots,
ID scans, exports) are exactly the kind of attachments most worth
scanning.
Q. Where is data stored?
In Atlassian's Forge storage, isolated to your Jira site. OCR
processing is ephemeral (RAM only) on EU-based GPU servers managed by
Actonic. No data on Actonic servers.
Q. Are credits per-user or per-instance?
Per-instance (per Jira site). All admins on the same site share the
same monthly allowance.