Index Jira Tickets
Index Jira Tickets
By the end of this guide, your Jira tickets will be indexed and searchable — from the CLI and from AI assistants like Claude Desktop.
Prerequisites
- Indexed installed
- A Jira Cloud or Server/Data Center instance
- An API token (Cloud) or personal access token (Server/DC)
Create a Jira API Token
- Go to https://id.atlassian.com/manage-profile/security/api-tokens
- Click Create API token
- Give it a label (e.g., "Indexed CLI")
- Copy the token
Add it to your environment:
JIRA_API_TOKEN=your_token_here
JIRA_EMAIL=your-email@company.comKeep tokens out of version control
Store your .env file in the project root and add it to .gitignore.
- Go to your Jira profile → Personal Access Tokens
- Click Create token
- Copy the token
Add it to your environment:
JIRA_API_TOKEN=your_personal_access_tokenCreate a Collection
Use a JQL query to select which tickets to index:
indexed index create jira \
-c eng-tickets \
-u https://company.atlassian.net \
-q "project = ENG AND created >= -90d"Indexing collection 'eng-tickets'...
Fetched 142 issues from Jira
Parsed 142 documents
Created 318 chunks
Generated embeddings
✓ Collection 'eng-tickets' created (318 chunks, 12.4 MB)Verify
indexed index inspect eng-ticketsCollection: eng-tickets
Type: jira
Source: https://company.atlassian.net
Query: project = ENG AND created >= -90d
Documents: 142
Chunks: 318
Size: 12.4 MB
Created: 2025-03-15 14:30:22Search
indexed index search "authentication timeout issues" -c eng-ticketsResults for 'authentication timeout issues' (top 5):
1. [eng-tickets] ENG-1847: SSO refresh token expiration handling
Score: 0.84
...Users are experiencing session drops when the SSO refresh
token expires during long-running operations...
2. [eng-tickets] ENG-2103: Login timeout after IdP migration
Score: 0.78
...After migrating to the new identity provider, login
requests are timing out for users on VPN...Notice how searching "authentication timeout issues" found tickets about "SSO refresh token expiration" and "login timeout after IdP migration" — semantic search understands meaning, not just keywords.
Common JQL Patterns
| Goal | JQL |
|---|---|
| Recent tickets | project = ENG AND created >= -90d |
| Current sprint | project = ENG AND sprint in openSprints() |
| Bugs only | project = ENG AND type = Bug |
| High priority | project = ENG AND priority in (High, Critical) |
| Specific component | project = ENG AND component = "API" |
| Resolved recently | project = ENG AND resolved >= -30d |
| All open issues | project = ENG AND status != Done |
Keep It Fresh
Jira tickets change over time. Update your collection to pull in new and modified tickets:
indexed index update eng-ticketsSee Keep Collections Up to Date for automation patterns.
Troubleshooting
Authentication errors
- Jira Cloud: Ensure both
JIRA_EMAILandJIRA_API_TOKENare set. The email must match the Atlassian account that created the token. - Jira Server/DC: Ensure
JIRA_API_TOKENis set with a valid personal access token.
Empty results
- Verify your JQL returns results by running it in Jira's issue search first.
- Check that the Jira URL is correct and includes the protocol (
https://).
Rate limiting
If you're indexing a large number of tickets and hit rate limits, Indexed will retry automatically. For very large projects (1000+ tickets), consider narrowing your JQL query.