Query Atlassian Cloud
Query Atlassian Cloud Jira, Confluence, and Admin with cnquery
Mondoo's atlassian provider lets you use cnquery to query and inventory your Atlassian Cloud resources. You can explore Jira projects and issues, Confluence spaces and pages, Admin organization settings, and SCIM user provisioning.
Requirements
To analyze your Atlassian Cloud environment with cnquery, you must have:
- cnquery installed on your workstation
- An Atlassian Cloud account with appropriate access
- API tokens for the Atlassian products you want to query (to learn how to create API tokens, read Manage API tokens for your Atlassian account in the Atlassian documentation)
Configure access to Atlassian
The Atlassian provider supports four products, each with its own authentication. You only need to configure the products you want to query.
Jira
To query Jira, provide your Atlassian site host, email address, and API token:
cnquery shell atlassian jira --host https://example.atlassian.net --user your@email.com --user-token YOUR_USER_TOKEN| For... | Substitute... |
|---|---|
--host | Your Atlassian site URL (such as https://yoursite.atlassian.net) |
--user | The email address for your Atlassian account |
--user-token | Your Atlassian API token |
You can also set these environment variables instead of passing flags:
ATLASSIAN_HOSTATLASSIAN_USERATLASSIAN_USER_TOKEN
Confluence
Confluence uses the same authentication as Jira. Provide your host, email address, and API token:
cnquery shell atlassian confluence --host https://example.atlassian.net --user your@email.com --user-token YOUR_USER_TOKENThe same ATLASSIAN_HOST, ATLASSIAN_USER, and ATLASSIAN_USER_TOKEN environment variables work for Confluence.
Atlassian Admin
To query Atlassian Admin (organization-level settings), you need an admin API token. To learn how to create one, read Manage an organization with the admin APIs in the Atlassian documentation.
cnquery shell atlassian admin --admin-token YOUR_ADMIN_TOKENYou can also set the ATLASSIAN_ADMIN_TOKEN environment variable.
SCIM
To query SCIM (user provisioning through an identity provider), provide your directory ID and SCIM token. You receive these when you configure an identity provider in Atlassian.
cnquery shell atlassian scim DIRECTORY_ID --scim-token YOUR_SCIM_TOKEN| For... | Substitute... |
|---|---|
DIRECTORY_ID | The directory ID from your identity provider configuration |
--scim-token | The SCIM API token generated during identity provider setup |
Example queries
Jira
List all Jira projects:
cnquery> atlassian.jira.projects
atlassian.jira.projects: [
0: atlassian.jira.project name="Engineering"
1: atlassian.jira.project name="Support"
...
]Retrieve details about a specific project:
cnquery> atlassian.jira.projects[0] { name key archived private }
atlassian.jira.projects[0]: {
name: "Engineering"
key: "ENG"
archived: false
private: false
}List all Jira users and their account types:
cnquery> atlassian.jira.users { name type }
atlassian.jira.users: [
0: {
name: "Alice Johnson"
type: "atlassian"
}
1: {
name: "CI Bot"
type: "app"
}
...
]List all Jira issues with their status and project:
cnquery> atlassian.jira.issues { id status project typeName }
atlassian.jira.issues: [
0: {
id: "10042"
status: "In Progress"
project: "Engineering"
typeName: "Bug"
}
1: {
id: "10043"
status: "To Do"
project: "Engineering"
typeName: "Task"
}
...
]List all Jira groups:
cnquery> atlassian.jira.groups
atlassian.jira.groups: [
0: atlassian.jira.group name="jira-admins"
1: atlassian.jira.group name="jira-software-users"
...
]Retrieve Jira server information:
cnquery> atlassian.jira.serverInfo { baseUrl serverTitle deploymentType }
atlassian.jira.serverInfo: {
baseUrl: "https://example.atlassian.net"
serverTitle: "My Company Jira"
deploymentType: "Cloud"
}Confluence
List all Confluence users:
cnquery> atlassian.confluence.users
atlassian.confluence.users: [
0: atlassian.confluence.user name="Alice Johnson"
1: atlassian.confluence.user name="Bob Smith"
...
]Retrieve details about a specific Confluence user:
cnquery> atlassian.confluence.users[0] { name type }
atlassian.confluence.users[0]: {
name: "Alice Johnson"
type: "atlassian"
}Admin
List organizations in Atlassian Admin:
cnquery> atlassian.admin.organization { name type }
atlassian.admin.organization: {
name: "My Company"
type: "organization"
}List domains associated with your organization:
cnquery> atlassian.admin.organization.domains { name type }
atlassian.admin.organization.domains: [
0: {
name: "mycompany.com"
type: "domain"
}
...
]List managed users and their status:
cnquery> atlassian.admin.organization.managedUsers { name email status lastActive }
atlassian.admin.organization.managedUsers: [
0: {
name: "Alice Johnson"
email: "alice@mycompany.com"
status: "active"
lastActive: 2025-01-15 10:30:00 +0000 UTC
}
1: {
name: "Bob Smith"
email: "bob@mycompany.com"
status: "active"
lastActive: 2025-01-14 16:45:00 +0000 UTC
}
...
]List organization policies:
cnquery> atlassian.admin.organization.policies { name policyType status }
atlassian.admin.organization.policies: [
0: {
name: "data-residency"
policyType: "data-residency"
status: "enabled"
}
...
]SCIM
List SCIM-provisioned users with their details:
cnquery> atlassian.scim.users { name displayName title organization }
atlassian.scim.users: [
0: {
name: "Alice Johnson"
displayName: "Alice Johnson"
title: "Software Engineer"
organization: "Engineering"
}
1: {
name: "Bob Smith"
displayName: "Bob Smith"
title: "Product Manager"
organization: "Product"
}
...
]List SCIM groups:
cnquery> atlassian.scim.groups
atlassian.scim.groups: [
0: atlassian.scim.group name="Engineering"
1: atlassian.scim.group name="Product"
...
]Learn more
-
To learn more about how the MQL query language works, read Write Effective MQL.
-
For a list of all the Atlassian resources and fields you can query, read the Atlassian Resource Pack Reference.