Jira Action Block
What it does: Create, update, search, and transition issues in Jira automatically. Manage comments, sprints, projects, and boards from your workflow.
In simple terms: Connect your workflows to Jira so you can create issues, move them through stages, add comments, and search your backlog — all without leaving your automation.
When to Use This
Use the Jira action when you need to:
- ✅ Create Jira issues automatically from form submissions, emails, or alerts
- ✅ Transition issues through workflow stages (e.g., To Do → In Progress → Done)
- ✅ Add comments to issues with context from other systems
- ✅ Search for issues using JQL (Jira Query Language)
- ✅ Assign issues to team members based on rules
- ✅ Move issues between sprints automatically
- ✅ Sync data between Jira and other tools (Slack, HubSpot, email, etc.)
Example: When a customer submits a support request, automatically create a Jira bug ticket, assign it to the on-call engineer, and notify the team on Slack.
Features
- Issue Management: Create, update, get, search, delete, assign, and transition issues
- Comment Management: Add, update, and retrieve comments on issues
- Project & Board: List projects, boards, and sprints
- Sprint Management: Move issues between sprints
- JQL Search: Query issues using Jira's powerful query language
- Multi-Auth: Supports Jira Cloud (API Token), Server (Password), and Server (PAT)
- Variable Support: Use
{{variables}}from previous workflow steps in any field
Getting Your Jira Credentials
Jira supports three authentication methods depending on your deployment type. Follow the guide that matches your setup.
Option A: Jira Cloud (Recommended)
Jira Cloud uses Email + API Token authentication.
Step 1: Go to your Atlassian API token page
Open https://id.atlassian.com/manage-profile/security/api-tokens (opens in a new tab) in your browser.
Step 2: Create a new API token
- Click Create API token
- Give it a label (e.g.,
InditeAI Workflow) - Click Create
- Copy the token immediately — you won't be able to see it again
Step 3: Note your details
You will need three things:
- Email: The email address you use to log in to Jira Cloud
- API Token: The token you just created
- Domain: Your Jira Cloud URL (e.g.,
https://yourcompany.atlassian.net)
API tokens inherit the permissions of the user who creates them. Make sure your account has access to the projects you want to automate.
Option B: Jira Server (Self-Hosted) — Password
For self-hosted Jira Server or Data Center instances using basic auth.
Step 1: Gather your details
- Email: Your Jira login email
- Password: Your Jira login password
- Domain: Your Jira Server URL (e.g.,
https://jira.yourcompany.com)
Basic auth with passwords is deprecated in newer Jira Server versions. Consider using a Personal Access Token (PAT) instead.
Option C: Jira Server (Self-Hosted) — Personal Access Token (PAT)
For Jira Server 8.14+ and Data Center.
Step 1: Create a Personal Access Token
- In Jira, click your profile picture → Profile
- Click Personal Access Tokens in the left sidebar
- Click Create token
- Give it a name (e.g.,
InditeAI) - Set an expiry date (optional but recommended)
- Click Create
- Copy the token immediately
Step 2: Note your details
- Personal Access Token: The token you just created
- Domain: Your Jira Server URL (e.g.,
https://jira.yourcompany.com)
Setup in InditeAI
1. Connect Your Jira Account
- Add the Jira action block to your workflow
- Click Select Credentials → Create New
- Choose your Jira Version (Cloud, Server, or Server PAT)
- Enter your credentials (see above)
- Enter your Domain (your Jira instance URL)
- Click Save Credentials
2. Select an Action
Choose what you want to do:
| Category | Actions |
|---|---|
| Issues | Create Issue, Update Issue, Get Issue, Search Issues, Delete Issue, Assign Issue, Transition Issue |
| Comments | Add Comment, Update Comment, Get Comments |
| Projects | Get Projects, Get Project |
| Sprints / Boards | Get Boards, Get Sprints, Move to Sprint |
| Users | Get Users, Get Current User |
3. Configure Action Fields
Each action requires different fields. See the detailed sections below.
Working with Issues
Create Issue
Project Key (Required): The Jira project key
PROJ
{{trigger.projectKey}}Issue Type (Required): The type of issue to create
Bug
Task
Story
Epic
Sub-taskSummary (Required): The issue title
{{trigger.subject}}
Bug: Login page not loading on mobileDescription: Detailed issue description
{{trigger.description}}
Steps to reproduce:
1. Open the app on iOS
2. Navigate to login
3. Page shows blank screenPriority: Issue priority level
Highest
High
Medium
Low
LowestAssignee: Account ID of the assignee
{{trigger.assigneeId}}
5b10a2844c20165700ede21gUpdate Issue
Issue Key (Required): The issue to update
PROJ-123
{{previousStep.issueKey}}Update any combination of: Summary, Description, Priority, Assignee.
Get Issue
Issue Key (Required): Retrieve full issue details
PROJ-123
{{trigger.issueKey}}Returns all issue fields including status, assignee, reporter, comments, and custom fields.
Search Issues (JQL)
JQL Query (Required): Jira Query Language expression
project = PROJ AND status = "In Progress"
assignee = currentUser() AND sprint in openSprints()
project = PROJ AND created >= -7d ORDER BY priority DESC
labels = "bug" AND resolution = UnresolvedMax Results: Number of results to return (default: 50)
50
100JQL Tip: Use ORDER BY to sort results. Common fields: priority, created, updated, status, assignee.
Assign Issue
Issue Key (Required): The issue to assign
PROJ-123Assignee (Required): The account ID of the user
5b10a2844c20165700ede21g
{{lookup.accountId}}Transition Issue
Move an issue through workflow stages (e.g., To Do → In Progress → Done).
Issue Key (Required): The issue to transition
PROJ-123Transition ID (Required): The ID of the target transition
21
31
41Finding Transition IDs: Use the "Get Issue" action first — the response includes available transitions with their IDs. Or call /rest/api/2/issue/PROJ-123/transitions via an HTTP Request block.
Delete Issue
Issue Key (Required): The issue to delete
PROJ-123Deleting an issue is permanent and cannot be undone. Make sure you have the correct issue key.
Working with Comments
Add Comment
Issue Key (Required): The issue to comment on
PROJ-123Comment Body (Required): The comment text
{{trigger.message}}
Automatically generated from customer support ticket #{{ticket.id}}Update Comment
Issue Key + Comment ID + New Body: All required.
Get Comments
Issue Key (Required): Returns all comments on the specified issue.
Working with Projects
Get Projects
No fields required. Returns a list of all projects accessible to the authenticated user.
Get Project
Project Key (Required): Returns details for a specific project.
PROJWorking with Sprints & Boards
Get Boards
No fields required. Returns all boards visible to the authenticated user.
Get Sprints
Board ID (Required): Returns sprints for a specific board.
42
{{boards.id}}Move to Sprint
Sprint ID (Required): Target sprint
78
{{sprint.id}}Issue Key (Required): Issue to move
PROJ-123Response Mapping
Map Jira response data to workflow variables:
Available Values:
- Issue ID: Internal Jira issue ID
- Issue Key: Human-readable key (e.g.,
PROJ-123) - Issue Summary: Issue title
- Issue Status: Current status name
- Issue Assignee: Assigned user
- Issue Reporter: Creator of the issue
- Issue Priority: Priority level
- Issue Type: Type (Bug, Task, Story, etc.)
- Project Key: Project identifier
- Project Name: Project display name
- Comment ID: Comment identifier
- Sprint ID / Name: Sprint details
- Board ID: Board identifier
- Created / Updated Date: Timestamps
- Full Response: Complete JSON response
Common Use Cases
1. Auto-Create Bug Reports from Support
Trigger: Customer support email or form Jira: Create Issue
Project Key: SUPPORT
Issue Type: Bug
Summary: {{email.subject}}
Description: {{email.body}}
Priority: {{calculatePriority(email)}}
Labels: ["customer-reported"]2. Sprint Automation
Trigger: Schedule (every Monday) Workflow:
- Search for unresolved issues from last sprint
- Move them to the current sprint
JQL: project = PROJ AND sprint in closedSprints() AND resolution = Unresolved
Move to: {{currentSprint.id}}3. Status Sync with Slack
Trigger: Jira Trigger (issue updated) Workflow:
- Get issue details
- Send Slack notification
Message: "{{issue.key}} moved to {{issue.status}} by {{user.displayName}}"
Channel: #project-updates4. Auto-Assign Based on Label
Trigger: Jira Trigger (issue created) Workflow:
- Check issue labels with Condition block
- Assign to appropriate team member
If label = "frontend" → Assign to frontend-lead
If label = "backend" → Assign to backend-lead
If label = "urgent" → Assign to team-lead + Slack alert5. Cross-Platform Project Sync
Trigger: HubSpot deal closed Jira: Create Epic
Project Key: DELIVERY
Issue Type: Epic
Summary: "Onboarding: {{deal.companyName}}"
Description: "New customer onboarding for {{deal.companyName}}, deal value: ${{deal.amount}}"
Priority: HighBest Practices
Data Quality
- ✅ Always include Project Key and Issue Type when creating issues
- ✅ Use JQL to check for duplicates before creating
- ✅ Keep summaries concise and descriptive
- ✅ Use consistent labels across automations
Security
- ✅ Use API Tokens (Cloud) or PATs (Server) instead of passwords
- ✅ Create a dedicated service account for automation
- ✅ Limit permissions to only the projects and actions needed
- ✅ Rotate tokens regularly
Automation
- ✅ Use Condition blocks to avoid unnecessary API calls
- ✅ Handle errors gracefully — Jira may return 404 for deleted issues
- ✅ Use transitions instead of directly setting status fields
- ✅ Cache project/board/sprint IDs when possible
Performance
- ✅ Limit JQL search results with
maxResults - ✅ Use specific JQL filters instead of broad queries
- ✅ Avoid polling — use the Jira Trigger block for real-time events
Troubleshooting
Issue Not Created
Check:
- Jira credentials are valid and connected
- Project Key exists and you have permission to create issues in it
- Issue Type is valid for the selected project
- Summary is not empty
- Required custom fields are populated (check project configuration)
Authentication Errors (401/403)
Fix:
- Verify your API Token hasn't expired
- Check that your email matches your Atlassian account
- Ensure the domain URL is correct (no trailing slash)
- For Server: confirm your PAT is still valid
- Verify your account has the necessary project permissions
Transition Errors
Fix:
- Use "Get Issue" to check available transitions — not all transitions are available from every status
- Verify the Transition ID is correct (it's a number, not the status name)
- Check if the transition requires additional fields (e.g., resolution)
JQL Search Returns Empty
Fix:
- Test your JQL query directly in Jira's issue search first
- Check field names — use internal names, not display names
- Verify the authenticated user has access to the target projects
- Ensure date formats are correct (
-7d,"2024-01-01")
Limitations
- API Rate Limits (Jira Cloud):
- Standard: Up to 100 requests per minute per user
- Heavy operations may be throttled further
- Server/Data Center: Rate limits depend on your instance configuration
- JQL Complexity: Very complex queries may time out on large instances
- Attachments: Not supported in the current version — use an HTTP Request block for file uploads
- Webhooks: For real-time events, use the Jira Trigger block instead of polling
Tip: Create a dedicated Jira service account (e.g., automation@yourcompany.com) with appropriate permissions. This makes it easy to audit automated changes and prevents disruption when individual accounts change.
Example Workflow
Flow:
- Support email triggers the workflow
- A Jira issue is created with details from the email
- Priority is checked
- High-priority: assigned to on-call engineer + Slack alert
- Normal priority: assigned to support queue + email confirmation
- Workflow complete
Related Blocks
- Jira Trigger: Start workflows when Jira events occur
- Condition: Route logic based on issue fields
- Slack: Notify teams about issue changes
- Send Email: Send confirmations or updates
- HTTP Request: Advanced Jira API calls
- Set Variable: Prepare and format Jira data
Need Help?
- Review Jira Cloud REST API documentation (opens in a new tab)
- Check JQL syntax guide (opens in a new tab)
- Verify your API token at Atlassian API Tokens (opens in a new tab)
- Test API calls in Jira's built-in API browser
Pro Tip: Use the "Search Issues" action with JQL before creating issues to prevent duplicates. For example: summary ~ "{{trigger.subject}}" AND project = PROJ AND created >= -1d