Skip to main content

Atlassian users (WIP)

Pulls the user directory for an Atlassian Cloud organisation, including product access, role assignments, MFA state and last-active dates.

Type nameatlassian_users
CreatesUsers
Runs onA sensor with outbound reach to api.atlassian.com and admin.atlassian.com
Presence flagatlassian_user_exists
Field prefixatlassian_

What it contributes

  • Identity — account ID, display name, email, account type
  • Organisation — organisation, job title, department, groups, org roles
  • Access — product access, access billable flag
  • Account state — active, status, membership status, email verified, claim status, MFA enabled, for-deletion flag
  • Lifecycle — added to org, added-to-org timestamp, last active
  • Locale — time zone, locale
MFA state and billable access are the two fields to filter on

atlassian_mfaEnabled is a direct control gap when false. atlassian_access_billable combined with atlassian_last_active finds seats being paid for and not used. Neither is visible anywhere else in the inventory.

Requirements

The integration is outbound-only: it is a scheduled API client, so nothing is installed in the Atlassian organisation and nothing has to reach into the deployment.

Network access

FromToProtocolPort
The sensor running the integrationapi.atlassian.com — the user list and last-active datesHTTPS over TCP443
The sensor running the integrationadmin.atlassian.com — per-user directory detail and role assignmentsHTTPS over TCP443
The sensor running the integrationYour site, e.g. company.atlassian.netHTTPS over TCP443

Three hosts, because Atlassian splits the directory across the organisation APIs and the site itself — the same split that makes two credentials necessary. If the sensor reaches the internet through a proxy, point Proxy settings at it rather than opening direct egress.

Access in Atlassian

NeedWhy
An organisation admin accountThe directory, role-assignment and last-active endpoints are all admin-scoped — see Permissions in Atlassian
The ability to create a user API token for the sitePaired with the account's email as basic auth against the site
The ability to create an organisation API tokenA separate admin key for the organisation-level endpoints; the two are not interchangeable
The organisation IDRead from the admin console URL — not the site name, as the warning under Permissions in Atlassian explains

In this deployment

NeedWhy
A registered, healthy sensorThe integration runs on a sensor, on the platform's schedule — see Sensors

There are no special host requirements beyond a sensor that is checking in. Note that per-user directory and role calls make the run scale with directory size rather than with anything on the sensor host.

Configuration

This integration needs two credentials, because Atlassian splits the directory across two APIs.

FieldRequiredNotes
NameYesLabel for this instance
Atlassian domainYesYour site, e.g. company.atlassian.net
Atlassian emailYesEmail of the account owning the API token
API tokenYesUser API token for the site
Organization API tokenYesToken for the Atlassian Admin API
Organization IDYesAtlassian organisation ID
Proxy settingsNohttp://host:port
SensorYesSensor that will run the integration
Ignore SSLNoSkips certificate validation
Two tokens, two scopes of access

The API token is a personal token for the site, paired with the email address as basic auth. The organization API token is an admin key that authorises the organisation-level endpoints. They are created in different places and are not interchangeable.

Permissions in Atlassian

The account holding the organisation API token must be an organisation admin — the directory, role-assignment and last-active endpoints are all admin-scoped.

The integration reads:

EndpointProvides
api.atlassian.com/admin/v1/orgs/{orgId}/usersThe user list
admin.atlassian.com/gateway/api/admin/v2/orgs/{orgId}/directories/-/users/{accountId}Per-user directory detail
.../users/{accountId}/role-assignmentsOrg role assignments
api.atlassian.com/admin/v1/orgs/{orgId}/directory/users/{accountId}/last-active-datesLast-active dates per product
Organisation ID is not the site name

Find it in the admin console URL at admin.atlassian.com/o/<orgId>/. Using the site domain in its place produces 404s on every organisation endpoint while the site-level token still authenticates, so the run looks half-working.

TODO

Document the API-token rotation story: Atlassian tokens can be given an expiry, and the failure mode for an expired org token versus an expired user token differs.

See also