Orgs Users APIs
Return a page of users in your organization that match the supplied parameters. By default, users in all your directories and all your managed accounts are returned (including managed accounts that aren’t in a directory).
To get users in a directory only, use the directoryIds field. To get your managed accounts, regardless if they’re in a directory or not, use the claimStatus field.
string
Requiredstring
Requiredstring
integer
array<string>
array<string>
array<string>
array<string>
boolean
string
array<string>
array<string>
Success
1
2
3
4
curl --request GET \
--url 'https://api.atlassian.com/admin/v2/orgs/{orgId}/directories/{directoryId}/users' \
--header 'Authorization: Bearer <access_token>' \
--header 'Accept: application/json'1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
{
"data": [
{
"accountId": "12345678-1234-1234-1234-123456789012",
"accountType": "atlassian",
"status": "active",
"accountStatus": "active",
"membershipStatus": "active",
"addedToOrg": "2024-01-01T00:00:00.000Z",
"name": "John Doe",
"nickname": "Jonny",
"email": "email@example.com",
"emailVerified": true,
"claimStatus": "unmanaged",
"platformRoles": [
"atlassian/org-admin"
],
"picture": "https://picture.example.com/picture.png",
"avatar": "https://avatar.example.com/avatar.png",
"managementSource": "invited",
"mfaEnabled": true,
"jobTitle": "Senior Business Analyst",
"department": "Human Resources",
"organization": "Talent",
"location": "New York",
"timeZone": "America/New_York",
"counts": {
"resources": 10
},
"links": {
"self": "ECg53CukK1twBo0LK1u9nw"
}
}
],
"links": {
"self": "ObSbZxpM1f1fzia2_GnuJw",
"prev": "LIZFEbzCT2pCCkQhPIUgIQ",
"next": "kloHX1ZQVasDAkx_P48NYQ"
}
}Returns detailed information about a specific user in a directory within an organization.
string
Requiredstring
Requiredstring
RequiredSuccess
1
2
3
4
curl --request GET \
--url 'https://api.atlassian.com/admin/v2/orgs/{orgId}/directories/{directoryId}/users/{userId}' \
--header 'Authorization: Bearer <access_token>' \
--header 'Accept: application/json'1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
{
"accountId": "12345678-1234-1234-1234-123456789012",
"accountType": "atlassian",
"status": "active",
"accountStatus": "active",
"membershipStatus": "active",
"addedToOrg": "2024-01-01T00:00:00.000Z",
"name": "John Doe",
"nickname": "Jonny",
"email": "email@example.com",
"emailVerified": true,
"claimStatus": "unmanaged",
"platformRoles": [
"atlassian/org-admin"
],
"picture": "https://picture.example.com/picture.png",
"avatar": "https://avatar.example.com/avatar.png",
"managementSource": "invited",
"mfaEnabled": true,
"jobTitle": "Senior Business Analyst",
"department": "Human Resources",
"organization": "Talent",
"location": "New York",
"timeZone": "America/New_York",
"counts": {
"resources": 10
},
"links": {
"self": "ECg53CukK1twBo0LK1u9nw"
}
}Returns a list of managed accounts in an organization.
string
Requiredstring
Successful operation
1
2
3
4
curl --request GET \
--url 'https://api.atlassian.com/admin/v1/orgs/{orgId}/users' \
--header 'Authorization: Bearer <access_token>' \
--header 'Accept: application/json'1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
{
"data": [
{
"account_id": "<string>",
"account_type": "atlassian",
"account_status": "active",
"name": "<string>",
"picture": "<string>",
"email": "<string>",
"access_billable": true,
"last_active": "<string>",
"product_access": [
{
"key": "jira-software",
"name": "<string>",
"url": "<string>",
"last_active": "<string>"
}
],
"links": {
"self": "<string>"
}
}
],
"meta": {
"total": 35
},
"links": {
"self": "<string>",
"prev": "<string>",
"next": "<string>"
}
}Invite people to your organization. When you invite someone:
sendNotification field is set to true and the notificationText field contains a message to include in the email invitation.This API is only available to customers who have at least one paid subscription in their organization.
string
Requiredarray<string>
Requiredarray<MultidirectoryInviteRoleAssociation>
array<string>
boolean
string
Success
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
curl --request POST \
--url 'https://api.atlassian.com/admin/v2/orgs/{orgId}/users/invite' \
--header 'Authorization: Bearer <access_token>' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data '{
"emails": [
"<string>"
],
"permissionRules": [
{
"resource": "ari:cloud:jira::site/70ef3a32-d0da-4e09-b35e-0109f91969c3",
"role": "atlassian/user"
}
],
"additionalGroups": [
"<string>"
],
"sendNotification": true,
"notificationText": "<string>"
}'1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
{
"data": [
{
"id": "<string>",
"email": "<string>",
"results": [
{
"roleAssignmentResult": [
{}
],
"groupAssignmentResult": [
{}
]
}
]
}
]
}Returns a page of role assignments for a user that match the supplied parameters.
string
Requiredstring
Requiredstring
Requiredstring
integer
array<string>
array<string>
array<string>
array<string>
Returned if the request is successful.
1
2
3
4
curl --request GET \
--url 'https://api.atlassian.com/admin/v2/orgs/{orgId}/directories/{directoryId}/users/{accountId}/role-assignments' \
--header 'Authorization: Bearer <access_token>' \
--header 'Accept: application/json'1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
{
"data": [
{
"resourceId": "ari:cloud:jira-core::site/1",
"resourceOwner": "jira-core",
"roles": [
"atlassian/org-admin",
"atlassian/site-admin",
"atlassian/user-access-admin"
],
"directoryId": "<string>",
"userDirectoryStatus": "active"
}
],
"links": {
"self": "ObSbZxpM1f1fzia2_GnuJw",
"prev": "LIZFEbzCT2pCCkQhPIUgIQ",
"next": "kloHX1ZQVasDAkx_P48NYQ"
}
}The API is available for customers using the new user management experience only.
This API can be used to grant Platform Roles to a user.
string
Requiredstring
Requiredstring
Requiredstring
Role Assigned Successfully.
1
2
3
4
5
6
7
8
curl --request POST \
--url 'https://api.atlassian.com/admin/v1/orgs/{orgId}/users/{userId}/roles/assign' \
--header 'Authorization: Bearer <access_token>' \
--header 'Content-Type: application/json' \
--data '{
"role": "atlassian/user",
"resource": "ari:cloud:platform::site/70ef3a32-d0da-4e09-b35e-0109f91969c3"
}'The API is available for customers using the new user management experience only.
This API can be used to revoke Platform Roles from a user.
string
Requiredstring
Requiredstring
Requiredstring
Role Revoked Successfully.
1
2
3
4
5
6
7
8
curl --request POST \
--url 'https://api.atlassian.com/admin/v1/orgs/{orgId}/users/{userId}/roles/revoke' \
--header 'Authorization: Bearer <access_token>' \
--header 'Content-Type: application/json' \
--data '{
"role": "atlassian/user",
"resource": "ari:cloud:platform::site/70ef3a32-d0da-4e09-b35e-0109f91969c3"
}'Suspend a user’s access in a directory to remove their access to apps temporarily. You’re not billed for a user when their access is suspended. They regain their roles and group memberships when you restore their access.
string
Requiredstring
Requiredstring
RequiredSuccess
1
2
3
curl --request POST \
--url 'https://api.atlassian.com/admin/v2/orgs/{orgId}/directories/{directoryId}/users/{accountId}/suspend' \
--header 'Authorization: Bearer <access_token>'Restore a user’s access in a directory to let them access apps again. They regain their roles and group memberships from before their access was suspended. We resume billing you for this user.
string
Requiredstring
Requiredstring
RequiredSuccess
1
2
3
curl --request POST \
--url 'https://api.atlassian.com/admin/v2/orgs/{orgId}/directories/{directoryId}/users/{accountId}/restore' \
--header 'Authorization: Bearer <access_token>'Remove a user from a directory if you don’t want them to appear in your directory or have access to your apps anymore. You’re not billed for a user once they’re removed. You must invite the user to your organization again if you want to reinstate their access to your apps. You’ll need to assign their roles and group memberships again.
string
Requiredstring
Requiredstring
RequiredSuccess
1
2
3
curl --request DELETE \
--url 'https://api.atlassian.com/admin/v2/orgs/{orgId}/directories/{directoryId}/users/{accountId}' \
--header 'Authorization: Bearer <access_token>'Assign an organization-level role to a user. These are roles that have organization-wide privileges, like organization admin.
This operation follows eventual consistency. Changes may take up to 30 seconds to be reflected after the operation is performed.
string
Requiredstring
Requiredstring
RequiredSuccess.
1
2
3
4
5
6
7
curl --request POST \
--url 'https://api.atlassian.com/admin/v1/orgs/{orgId}/users/{userId}/role-assignments/assign' \
--header 'Authorization: Bearer <access_token>' \
--header 'Content-Type: application/json' \
--data '{
"role": "atlassian/org-admin"
}'Remove an organization-level role from a user. These are roles that have organization-wide privileges, like organization admin.
This operation follows eventual consistency. Changes may take up to 30 seconds to be reflected after the operation is performed.
string
Requiredstring
Requiredstring
RequiredSuccess.
1
2
3
4
5
6
7
curl --request POST \
--url 'https://api.atlassian.com/admin/v1/orgs/{orgId}/users/{userId}/role-assignments/revoke' \
--header 'Authorization: Bearer <access_token>' \
--header 'Content-Type: application/json' \
--data '{
"role": "atlassian/org-admin"
}'Returns a count of users in an organization that match the supplied parameters. By default, users in all your directories and all your managed accounts are counted (including managed accounts that aren’t in a directory).
To count users in a directory only, use the directoryIds field. To count your managed accounts, regardless if they’re in a directory or not, use the claimStatus field.
string
Requiredstring
Requiredarray<string>
array<string>
array<string>
array<string>
boolean
string
array<string>
array<string>
array<string>
array<string>
Success
1
2
3
4
curl --request GET \
--url 'https://api.atlassian.com/admin/v2/orgs/{orgId}/directories/{directoryId}/users/count' \
--header 'Authorization: Bearer <access_token>' \
--header 'Accept: application/json'1
2
3
{
"count": 48
}Return user stats for the organization.
string
Requiredstring
RequiredSuccess
1
2
3
4
curl --request GET \
--url 'https://api.atlassian.com/admin/v2/orgs/{orgId}/directories/{directoryId}/users/stats' \
--header 'Authorization: Bearer <access_token>' \
--header 'Accept: application/json'1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
{
"roles": [
{
"roleId": "atlassian/org-admin",
"count": 3
}
],
"accountStatus": [
{
"status": "active",
"count": 5
},
{
"status": "inactive",
"count": 1
},
{
"status": "closed",
"count": 2
}
]
}Additional response parameters of the API (for e.g., added_to_org) are available only to customers using the new user management experience. Learn more about the new user management experience.
Specifications:
product_access response field will be empty.Learn the fastest way to call the API with a detailed tutorial.
string
Requiredstring
Requiredstring
Successful operation
1
2
3
4
curl --request GET \
--url 'https://api.atlassian.com/admin/v1/orgs/{orgId}/directory/users/{accountId}/last-active-dates' \
--header 'Authorization: Bearer <access_token>' \
--header 'Accept: application/json'1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
{
"data": {
"product_access": [
{
"id": "<string>",
"key": "jira-software",
"last_active": "<string>",
"last_active_timestamp": "<string>"
}
],
"added_to_org": "<string>",
"added_to_org_timestamp": "<string>"
},
"links": {
"next": "<string>"
}
}This API is deprecated and will no longer work after June 30, 2026. Use the Get users in an organization endpoint instead.
The API is available for customers using the new user management experience only. How the new user management experience works
Returns a list of users within an organization, offering search functionality through multiple parameters for more precise results.
string
Requiredarray<string>
array<string>
array<string>
NamesOrNicknames
EmailUsernames
EmailDomains
boolean
string
integer
array<string>
Organization found. Response contains user search results
1
2
3
4
5
6
7
8
curl --request POST \
--url 'https://api.atlassian.com/admin/v1/orgs/{orgId}/users/search' \
--header 'Authorization: Bearer <access_token>' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data '{
"limit": 20
}'1
2
3
4
5
6
7
8
9
10
11
12
13
{
"data": [
{
"accountId": "123e4567-e89b-12d3-a456-426614174000",
"accountType": "atlassian",
"accountStatus": "active"
}
],
"links": {
"next": "MDNlZWRmNzMtMWYwMi00NGM5LWI4NjgtZGQ1NTIwMjIwYjhj",
"self": "MDI0MzkwOGEtMmYyOC00NzgzLWI5YTktMDUwZTExNzJjZDU4"
}
}The API is presently accessible exclusively to customers who hold a paid subscription.
The API is available for customers using the new user management experience only.
This API will:
This API will not:
string
Requiredstring
RequiredRoleAssociation
boolean
string
Invitation successfully sent
array<string>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
curl --request POST \
--url 'https://api.atlassian.com/admin/v1/orgs/{orgId}/users/invite' \
--header 'Authorization: Bearer <access_token>' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data '{
"email": "<string>",
"permissionRule": {
"resource": "ari:cloud:jira::site/70ef3a32-d0da-4e09-b35e-0109f91969c3",
"role": "atlassian/user"
},
"sendNotification": true,
"notificationText": "<string>"
}'1
2
3
[
"619034:4eb0cd3f-3cb6-4561-8d6a-0546e66cab3d"
]This API is deprecated and will no longer work after June 30, 2026. Use the Suspend user access in directory endpoint instead.
The API is available for customers using the new user management experience only. Learn more about the new user management experience.
Specifications:
User access can be restored anytime via the Restore access API
Learn the fastest way to call the API with a detailed tutorial.
string
Requiredstring
RequiredUser was successfully suspended in the organization directory.
1
2
3
4
curl --request POST \
--url 'https://api.atlassian.com/admin/v1/orgs/{orgId}/directory/users/{accountId}/suspend-access' \
--header 'Authorization: Bearer <access_token>' \
--header 'Accept: application/json'1
2
3
{
"message": "Access to organization 6665kc2j-4644-14k8-j32c-68cc0b1d15b8 was suspended for user 637194fa77acd224b33bfae3"
}This API is deprecated and will no longer work after June 30, 2026. Use the Restore user access in directory endpoint instead.
The API is available for customers using the new user management experience only. Learn more about the new user management experience.
This API will:
This API will not:
Learn the fastest way to call the API with a detailed tutorial.
string
Requiredstring
RequiredUser's access is successfully restored in the organization directory.
1
2
3
4
curl --request POST \
--url 'https://api.atlassian.com/admin/v1/orgs/{orgId}/directory/users/{accountId}/restore-access' \
--header 'Authorization: Bearer <access_token>' \
--header 'Accept: application/json'1
2
3
{
"message": "Access to organization 6665kc2j-4644-14k8-j32c-68cc0b1d15b8 was restored for user 637194fa77acd224b33bfae3"
}This API is deprecated and will no longer work after June 30, 2026. Use the Remove user from directory endpoint instead.
The API is available for customers using the new user management experience only. Learn more about the new user management experience.
Specifications:
The users are not removed immediately; instead, they are placed in a queue for deletion. Please note that it may take some time for all users to be completely removed.
Users with emails whose domain is claimed can still be found in Managed accounts in Directory.
Learn the fastest way to call the API with a detailed tutorial.
string
Requiredstring
RequiredUser access removed from organization. Everything went fine, nothing to return. The users are not removed immediately; instead, they are placed in a queue for deletion. Please note that it may take some time for all users to be completely removed.
1
2
3
curl --request DELETE \
--url 'https://api.atlassian.com/admin/v1/orgs/{orgId}/directory/users/{accountId}' \
--header 'Authorization: Bearer <access_token>'Rate this page: