Ticketing
Jira Service Management
API integration
Ship Ticketing features without building the integration. Full Jira Service Management API access via Proxy, normalized data through Unified APIs, and 30+ MCP-ready tools for AI agents — all extensible to your exact use case.
Talk to usUse Cases
Why integrate with Jira Service Management
Common scenarios for SaaS companies building Jira Service Management integrations for their customers.
Automate incident creation from monitoring and security tools
SaaS companies in observability, CSPM, or cybersecurity can automatically create JSM incident tickets when anomalies or vulnerabilities are detected, attach relevant logs, and track resolution status — giving their users a seamless alert-to-remediation pipeline without leaving their platform.
Bridge customer support escalations to engineering teams
Helpdesk and CRM platforms can offer a native JSM integration that lets support agents escalate Tier 3 issues directly into a customer's Jira Service Management project, with bi-directional comment and status sync so agents stay informed without context-switching.
Trigger IT provisioning workflows from HR and identity platforms
HRIS, IAM, and onboarding tools can automatically create JSM service requests — like laptop provisioning or access grants — when employees are hired or request resources, then poll for approval status and close the loop by confirming provisioning back in JSM.
Sync product feedback and feature requests into engineering backlogs
Customer success and product analytics platforms can let their users push feature requests or bug reports into JSM projects with the correct issue types and custom fields, then track status changes and engineering comments back to keep customer-facing teams in the loop.
Surface ITSM queue and ticket data inside operational dashboards
Analytics, BI, and internal tooling platforms can pull JSM service desk queues, ticket statuses, organizations, and SLA-relevant data to give operations leaders a unified view of IT service health without requiring direct Jira access.
What You Can Build
Ship these features with Truto + Jira Service Management
Concrete product features your team can ship faster by leveraging Truto’s Jira Service Management integration instead of building from scratch.
Two-way ticket and comment sync
Create, read, and update JSM tickets and comments from your product, keeping both systems in sync with bi-directional status and conversation mirroring using the Unified Ticketing API.
Dynamic ticket creation with custom field discovery
Fetch each customer's specific JSM projects, issue types, and required custom fields at runtime using createmeta and field metadata endpoints, so your ticket creation forms always match their Jira configuration.
Queue-aware issue routing dashboard
Let your users browse their JSM service desks and queues, then list and act on issues within specific queues — replicating the agent experience inside your own product.
Organization and customer mapping for multi-tenant SLA tracking
Pull JSM organizations and customers to map incoming alerts or tickets to the correct end-client, enabling accurate SLA enforcement and data segregation within your platform.
Attachment sync with file download
Push and pull issue attachments — including downloading files — so that logs, screenshots, and evidence travel between your product and JSM without manual re-uploads.
JQL-powered ticket polling and smart filters
Use JQL-based search via the search issues endpoint to poll for tickets matching complex criteria like status, assignee, or label, enabling webhook-free near-real-time sync workflows.
SuperAI
Jira Service Management AI agent tools
Comprehensive AI agent toolset with fine-grained control. Integrates with MCP clients like Cursor and Claude, or frameworks like LangChain.
list_all_jiraservicemanagement_me
Retrieves Jira Service Management instance details like version, build, and links
list_all_jiraservicemanagement_accessible_resources
Get list of accessible resources in Jira Service Management. Returns id, name, url, scopes, and avatarUrl for each resource.
list_all_jiraservicemanagement_service_desks
Get all service desks in Jira Service Management. Returns id, projectId, projectName, and projectKey for each service desk.
get_single_jiraservicemanagement_service_desk_by_id
Get service desk details by id in Jira Service Management. Returns id, projectId, projectName, projectKey, and self link.
list_all_jiraservicemanagement_queues
Get queues for a service desk in Jira Service Management using service_desk_id. Returns id, name, jql, fields, and issueCount (customer request count) for each queue.
get_single_jiraservicemanagement_queue_by_id
Get a specific queue by serviceDeskId and id in Jira Service Management. Returns fields id, name, jql, fields, issueCount, and _links.self.
list_all_jiraservicemanagement_users
Get all users in Jira Service Management. Returns a list of users including active, inactive, and deleted Atlassian accounts with fields accountId, accountType, active status, avatarUrls, displayName, and self URL.
get_single_jiraservicemanagement_user_by_id
Get user details by account_id in Jira Service Management. Returns accountId, accountType, active status, applicationRoles, avatarUrls, displayName, emailAddress, groups, self link, and timeZone. Privacy controls apply.
list_all_jiraservicemanagement_issue_attachments
Get issue attachments by issue id in Jira Service Management. Returns attachment details including id, filename, author, created date, size, mimeType, content URL, and thumbnail URL.
get_single_jiraservicemanagement_issue_attachment_by_id
Get metadata for an issue attachment by id in Jira Service Management. Returns author details, filename, mimeType, size, created date, content URL, and thumbnail URL.
jiraservicemanagement_issue_attachments_download
Use this endpoint to download a specific file or attachment from the given file path or URL reference provided by the API.
list_all_jiraservicemanagement_issue_createmeta
Get create issue metadata including projects and issue types with fields for each issue type in Jira Service Management. Returns projects with id, key, name, avatarUrls, and issue types with id, name, description, iconUrl, and fields.
list_all_jiraservicemanagement_search_issues
Search issues using JQL in Jira Service Management. Requires jql parameter. Returns issues array with fields like id, key, fields (including status, project, description, comments, attachments).
get_single_jiraservicemanagement_issue_by_id
Get details for a specific issue by id in Jira Service Management. Returns fields like watcher status, attachments, sub-tasks, description, project info, comments, issue links, worklogs, and timetracking.
list_all_jiraservicemanagement_queue_issues
Get issues in queue with service_desk_id and queue_id in Jira Service Management. Returns fields configured in the queue such as summary, issuetype, duedate, created, reporter, id, and key.
list_all_jiraservicemanagement_issue_comments
Get all comments for an issue in Jira Service Management by issueIdOrKey. Returns comment id, author, body, created and updated timestamps, and visibility details.
get_single_jiraservicemanagement_issue_comment_by_id
Get comment for issue with issue_id_or_key and id in Jira Service Management. Returns author, body, created, id, updateAuthor, updated, and visibility fields.
list_all_jiraservicemanagement_field_metadata
Get create field metadata for a project and issueTypeId in Jira Service Management. Returns fields with fieldId, name, required status, and operations for creating issues.
list_all_jiraservicemanagement_issue_type_createmeta
Get create metadata issue types for a project in Jira Service Management using projectIdOrKey. Returns issueTypes array with id, name, description, iconUrl, self, and subtask fields.
list_all_jiraservicemanagement_organizations
Get a list of organizations in Jira Service Management. Returns organization id, name, and scimManaged status. Use accountId to filter organizations for a specific user.
get_single_jiraservicemanagement_organization_by_id
Get organization details by id in Jira Service Management. Returns id, name, scimManaged fields. Customers can only retrieve organizations they are members of.
list_all_jiraservicemanagement_organization_users
Get users in organization using organization_id. Returns accountId, emailAddress, displayName, active status, and timeZone for each user in Jira Service Management.
list_all_jiraservicemanagement_customers
Get a list of customers for a service desk in Jira Service Management using service_desk_id. Returns accountId, name, emailAddress, displayName, active status, and timeZone for each customer.
list_all_jiraservicemanagement_projects
Get a paginated list of projects visible to the user in Jira Service Management. Returns fields including id, key, name, projectCategory, and insight with totalIssueCount and lastIssueUpdateTime.
get_single_jiraservicemanagement_project_by_id
Get project details for project with id in Jira Service Management. Returns fields including assigneeType, avatarUrls, components, description, email, id, insight, issueTypes, key, lead, name, projectCategory, properties, roles, self, simplified, style, url, and versions.
list_all_jiraservicemanagement_organization_issues
Get customer requests filtered by searchTerm, requestOwnership, requestStatus, approvalStatus, organizationId, serviceDeskId, and requestTypeId in Jira Service Management. Returns issueId, issueKey, summary, createdDate, reporter, requestFieldValues, and currentStatus.
list_all_jiraservicemanagement_project_statuses
Get all statuses for project using project_id_or_key in Jira Service Management. Returns statuses grouped by issue type including id, name, description, and iconUrl fields.
list_all_jiraservicemanagement_statuses
Get a paginated list of statuses filtered by searchString and statusCategory in Jira Service Management. Returns id, name, description, statusCategory, scope, usages, and workflowUsages for each status.
list_all_jiraservicemanagement_roles
Use this endpoint to retrieve a list of all global project roles available in your Jira instance.
get_single_jiraservicemanagement_role_by_id
Use this endpoint to fetch detailed information about a specific project role by its ID.
Why Truto
Why use Truto’s MCP server for Jira Service Management
Other MCP servers give you a static tool list for one app. Truto gives you a managed, multi-tenant MCP infrastructure across 650+ integrations.
Auto-generated, always up to date
Tools are dynamically generated from curated documentation — not hand-coded. As integrations evolve, tools stay current without manual maintenance.
Fine-grained access control
Scope each MCP server to read-only, write-only, specific methods, or tagged tool groups. Expose only what your AI agent needs — nothing more.
Multi-tenant by design
Each MCP server is scoped to a single connected account with its own credentials. The URL itself is the auth token — no shared secrets, no credential leaking across tenants.
Works with every MCP client
Standard JSON-RPC 2.0 protocol. Paste the URL into Claude, ChatGPT, Cursor, or any MCP-compatible agent framework — tools are discovered automatically.
Built-in auth, rate limits, and error handling
Tool calls execute through Truto’s proxy layer with automatic OAuth refresh, rate-limit handling, and normalized error responses. No raw API plumbing in your agent.
Expiring and auditable servers
Create time-limited MCP servers for contractors or automated workflows. Optional dual-auth requires both the URL and a Truto API token for high-security environments.
Unified APIs
Unified APIs for Jira Service Management
Skip writing code for every integration. Use Truto’s category-specific Unified APIs out of the box or customize the mappings with AI.
Unified User Directory API
Activities
Activities are the actions performed by users in the source application.
Groups
Groups are a collection of users in the source application. In some applications, they might also be called Teams.
Licenses
Licenses represent concepts like user seats in apps that support them
Roles
The Role object represents a role of a User.
Users
The User object represents a User.
Unified Ticketing API
Attachments
Attachments are the files associated with a ticket or a comment.
Collections
Tickets and contacts can be grouped into Collections. Collection resource usually maps to the various grouping systems used in the underlying product. Some examples are lists, projects, epics, etc. You can differentiate between these grouping systems using the type attribute of a Collection.
Comments
Comments represent the communication happening on a Ticket, both between a User and a Contact and the internal things like notes, private comments, etc. A Ticket can have one or more Comments.
Contacts
Contact represent the external people you are in contact with. These could be customers, leads, etc. Contacts can be associated with an Account if the underlying product supports it.
Fields
Fields represent the attributes defined for various entities in the underlying product. Depending on the underlying product, custom attributes can be defined by a User on various entities like Ticket, Contact, etc. is_user_defined attribute within Field can be used to differentiate between custom and system defined Fields.
Teams
Teams represent the grouping system used for Users. These are usually called groups, teams, agent groups, etc. in the underlying products. A User can belong to one or more Teams.
Ticket Status
Ticket Status represents the completion level of the Ticket. Some products provide customizing the Ticket Status.
Ticket Types
Ticket Types represent the classification system used by the underlying products for Tickets. Some examples are bugs, feature, incident, etc.
Tickets
Core resource which represents some work that needs to be carried out. Tickets are usually mapped to issues, tasks, work items, etc. depending on the underlying product.
Users
Users represent the people using the underlying ticketing system. They are usually called agents, team members, admins, etc.
Workspaces
Workspaces represent the top-level subdivision in a ticketing system. They usually have their own set of settings, tickets, statuses, priorities and users. Some of the usual terminologies used by the products for the top-level subdivision are projects, bases, spaces, workspace, etc. A Workspace could belong to an Organization.
How It Works
From zero to integrated
Go live with Jira Service Management in under an hour. No boilerplate, no maintenance burden.
Link your customer’s Jira Service Management account
Use Truto’s frontend SDK to connect your customer’s Jira Service Management account. We handle all OAuth and API key flows — you don’t need to create the OAuth app.
We handle authentication
Don’t spend time refreshing access tokens or figuring out secure storage. We handle it and inject credentials into every API request.
Call our API, we call Jira Service Management
Truto’s Proxy API is a 1-to-1 mapping of the Jira Service Management API. You call us, we call Jira Service Management, and pass the response back in the same cycle.
Unified response format
Every response follows a single format across all integrations. We translate Jira Service Management’s pagination into unified cursor-based pagination. Data is always in the result attribute.
FAQs
Common questions about Jira Service Management on Truto
Authentication, rate limits, data freshness, and everything else you need to know before you integrate.
What authentication method does the Jira Service Management integration use?
The integration uses Atlassian's OAuth 2.0 (3LO) flow. Your end users authorize access to their Atlassian account, and Truto handles token refresh and secure credential storage. After auth, accessible Atlassian sites are resolved via the accessible_resources endpoint.
How does Truto handle Jira's highly customized fields and issue types?
Truto exposes the createmeta and field_metadata endpoints, which let you dynamically discover the required and optional fields for each project and issue type in a customer's JSM instance. This ensures your integration adapts to any Jira configuration without hardcoding schemas.
Can I query tickets using JQL through Truto?
Yes. The list_all_jiraservicemanagement_search_issues tool supports JQL queries, letting you filter issues by status, assignee, project, labels, date ranges, and any other JQL-compatible criteria. This is the most flexible way to retrieve tickets from JSM.
How does pagination work for large JSM datasets?
Truto automatically handles Jira's offset-based pagination across all list endpoints — including search results, queue issues, comments, and attachments — so you receive complete result sets without writing pagination logic yourself.
What Unified API models map to Jira Service Management resources?
JSM is covered by both the Unified Ticketing API (mapping issues to Tickets, service desks to Workspaces, queues to Collections, comments to Comments, attachments to Attachments, organizations to Teams, customers to Contacts, statuses and issue types to Ticket Status and Ticket Types, and fields to Fields) and the Unified User Directory API (mapping users and roles).
Does the integration support multi-site Atlassian accounts?
Yes. After OAuth, Truto calls the accessible_resources endpoint to enumerate all Atlassian Cloud sites the user has access to. Your application can then target the correct site, which is essential for customers with multiple Jira instances under one Atlassian account.
Jira Service Management
Get Jira Service Management integrated into your app
Our team understands what it takes to make a Jira Service Management integration successful. A short, crisp 30 minute call with folks who understand the problem.
Talk to us