Jira
Visualize Jira projects, users, and issues, map Jira users to employees, and monitor changes through queries and alerts.
- Installation
- Data Model
- Types
Installation
To use this integration, JupiterOne requires the hostname for your Jira organization, credentials for API access, and optionally an Assets mapping configuration for CMDB ingestion.
The integration supports Jira Cloud with Jira API v3 and Jira Data Center with Jira API v2. Other setups may work.
Configure a Jira User
Create or designate a Jira user for the JupiterOne integration:
Option 1: Create a New Service Account (Recommended)
- Log in to Jira as an administrator
- Navigate to User Management
- Create a new user (e.g.,
jupiterone-integration@yourcompany.com) - Grant the necessary permissions (see User Permissions below)
Option 2: Use an Existing User
Verify the user has the required permissions and that you can log in to generate an API token.
User Permissions
The Jira user needs the following permissions:
- Browse Users - Grant the "Browse Users" global permission to read groups and users
- Project Access - Authorize browse access to projects using Jira permission features
- Create Issues (optional) - Required only if using JupiterOne Alert Rules to create Jira issues
- Assets Access (optional) - Required for CMDB ingestion. The user must have access to Jira Service Management Assets.
For read-only access, see How to Create a Read Only User.
Create an API Token
- Log in to Jira as the JupiterOne integration user
- Go to Atlassian Account Settings > API Tokens
- Click Create API token
- Give it a descriptive label (e.g., "JupiterOne Integration")
- Copy and save the token value
The token is only shown once. Store it securely.
Assets (CMDB) Requirements
To ingest Jira Assets (CMDB), the integration user must have:
- Access to Jira Service Management
- Permission to view Assets in your Jira organization
- The API token must be from a user with these permissions
No special OAuth configuration is required - the standard API token works if the user has Assets access.
Configuration in JupiterOne
Navigate to Integrations > Jira > New Instance and provide:
| Field | Description |
|---|---|
| Account Name | Identifier for this Jira account in JupiterOne |
| Description | Optional description |
| Polling Interval | How often to sync data |
| Hostname | Your Jira hostname (e.g., yourcompany.atlassian.net) |
| User Email | Email of the Jira integration user |
| API Token | The API token created above |
| Project Keys | Comma-separated list of project keys to ingest |
| Assets Mapping | JSON file for CMDB ingestion (see below) |
Assets (CMDB) Configuration
To ingest assets from Jira Service Management Assets, upload a JSON mapping configuration that defines which object types to ingest and how to map their attributes to JupiterOne entities.
Mapping Structure
{
"version": "1.0",
"description": "My organization's asset mappings",
"objectTypes": [
{
"objectTypeId": "15",
"objectTypeName": "Laptop",
"_class": "Device",
"enabled": true,
"propertyToAttributeMap": {
"hostname": { "attributeId": "135", "attributeName": "Hostname" },
"serial": { "attributeId": "136", "attributeName": "Serial Number" },
"category": { "attributeId": null, "default": "laptop" }
}
}
]
}
Object Type Configuration
| Property | Type | Required | Description |
|---|---|---|---|
objectTypeName | string | Yes | Jira Object Type name (generates entity _type automatically) |
objectTypeId | string | No | Jira Object Type ID (more stable for queries) |
_class | string or string[] | Yes | JupiterOne entity class |
enabled | boolean | Yes | Whether to ingest this object type |
filter | string | No | Additional AQL filter (e.g., Status = Active) |
propertyToAttributeMap | object | Yes | Maps J1 properties to Jira attributes |
Attribute Mapping
| Property | Type | Required | Description |
|---|---|---|---|
attributeId | string or null | Yes | Jira attribute ID. Use null for default-only values |
attributeName | string | No | Human-readable name (documentation only) |
type | string | No | Type conversion: string, number, boolean, date, array, json |
default | any | No | Default value when attribute is missing |
transform | string | No | Transform: lowercase, uppercase, trim, slug |
pattern | string | No | Regex pattern to extract value |
Complete Example: Devices and Servers
This example maps laptops and servers from Jira Assets:
{
"version": "1.0",
"description": "IT Asset inventory mapping",
"objectTypes": [
{
"objectTypeId": "15",
"objectTypeName": "Laptop",
"_class": "Device",
"enabled": true,
"propertyToAttributeMap": {
"hostname": { "attributeId": "135", "attributeName": "Hostname" },
"serial": { "attributeId": "136", "attributeName": "Serial Number" },
"make": { "attributeId": "137", "attributeName": "Manufacturer" },
"model": { "attributeId": "138", "attributeName": "Model" },
"macAddress": { "attributeId": "139", "attributeName": "MAC Address" },
"osName": { "attributeId": "141", "attributeName": "Operating System" },
"osVersion": { "attributeId": "142", "attributeName": "OS Version" },
"deviceId": { "attributeId": "144", "attributeName": "Asset Tag" },
"category": { "attributeId": null, "default": "laptop" }
}
},
{
"objectTypeId": "17",
"objectTypeName": "Server",
"_class": "Host",
"enabled": true,
"filter": "Status != Decommissioned",
"propertyToAttributeMap": {
"hostname": { "attributeId": "201", "attributeName": "Hostname" },
"fqdn": { "attributeId": "202", "attributeName": "FQDN" },
"serial": { "attributeId": "203", "attributeName": "Serial Number" },
"make": { "attributeId": "204", "attributeName": "Manufacturer" },
"model": { "attributeId": "205", "attributeName": "Model" },
"ipAddress": { "attributeId": "207", "attributeName": "IP Address" },
"osName": { "attributeId": "210", "attributeName": "Operating System" },
"osVersion": { "attributeId": "211", "attributeName": "OS Version" },
"category": { "attributeId": null, "default": "server" }
}
}
]
}
Supported JupiterOne Classes
| Class | Use For | Key Properties |
|---|---|---|
Device | Laptops, desktops, phones, printers | hostname, serial, make, model, macAddress, category |
Host | Servers, VMs | hostname, fqdn, ipAddress, osName, osVersion, category |
Application | Software | name, version |
Person | Employees, contractors | firstName, lastName, email |
User | User accounts | username, email, firstName, lastName |
Finding Object Type and Attribute IDs
To find the IDs needed for your mapping configuration:
Finding Object Type ID:
- Go to Jira Service Management > Assets
- Click on an Object Schema
- Click on an Object Type (e.g., "Laptop")
- The Object Type ID is in the URL:
.../object-type/{objectTypeId}
Finding Attribute IDs:
- From the Object Type page, click Attributes
- Click on an attribute to see its details
- The Attribute ID is in the URL or settings panel
Use your browser's network inspector when viewing an asset to see the API responses with all IDs.
Auto-Generated Properties
These properties are automatically set by the integration and don't need mapping:
_key,_type,_class- Entity identifiersname,displayName- From Jira object labelid- Jira object IDwebLink- Link to asset in JiracreatedOn,updatedOn- TimestampsobjectKey,objectTypeName,objectTypeId- Jira metadata
Entities Created
Assets ingestion creates:
| Entity | _type | _class |
|---|---|---|
| Assets Workspace | jira_assets_workspace | Repository |
| Asset Objects | jira_assets_{objectTypeName} | As configured |
For example, objectTypeName: "Laptop" creates entities with _type: jira_assets_laptop.
Relationships Created
| Source | Relationship | Target |
|---|---|---|
jira_account | HAS | jira_assets_workspace |
jira_assets_workspace | HAS | jira_assets_* |
Next Steps
Now that your integration instance has been configured, it will begin running on the polling interval you provided, populating data within JupiterOne. Continue on to our Instance management guide to learn more about working with and editing integration instances.
Entities
The following entities are created:
| Resources | Entity _type | Entity _class |
|---|---|---|
| Account | jira_account | Account |
| Assets Workspace | jira_assets_workspace | Repository |
| Jira Issue | jira_issue | Record, Issue |
| Jira Project | jira_project | Project |
| Jira User | jira_user | User |
Relationships
The following relationships are created:
Source Entity _type | Relationship _class | Target Entity _type |
|---|---|---|
jira_account | HAS | jira_project |
jira_account | HAS | jira_user |
jira_account | HAS | jira_assets_workspace |
jira_issue | LINKS | jira_issue |
jira_project | HAS | jira_issue |
jira_user | CREATED | jira_issue |
jira_user | REPORTED | jira_issue |
jira_user | ASSIGNED | jira_issue |
Jira Assets Workspace
jira_assets_workspace inherits from Repository
| Property | Type | Description | Specifications |
|---|---|---|---|
webLink | string | ||
workspaceId * | string |