Hi everyone,
I recently worked on a problem where we needed to migrate attachments across Jira instances.
Most available approaches depend on:
- Jira admins with elevated access
- External tools or paid plugins
I wanted to explore if this could be solved using only Jira’s REST APIs.
So I built a Java-based solution that:
- Migrates attachments from source to target issues
- Supports bulk migration using CSV (1000+ issues)
- Handles multiple attachments per issue
- Streams files directly without storing them locally
During implementation, I faced a few challenges:
- 403 authentication issues
- 303 redirect handling while downloading attachments
- Designing a streaming approach using InputStream / OutputStream
This helped me understand Jira beyond UI capabilities and approach it from an engineering perspective.
I’m curious to know:
Has anyone tried a similar approach for attachment migration?
Are there any best practices or limitations I should be aware of?
Happy to share more details if needed.