This resource represents system and custom avatars. Use it to obtain the details of system or custom avatars, add and remove avatars from a project, issue type or priority and obtain avatar images.
Returns a list of system avatar details by owner type, where the owner types are issue type, project, user or priority.
This operation can be accessed anonymously.
Permissions required: None.
manage:jira-configuration
read:avatar:jira
Connect app scope required: ADMIN
string
RequiredReturned if the request is successful.
List of system avatars.
1
2
3
4
5
6
7
8
9
10
11
12
// This sample uses Atlassian Forge
// https://developer.atlassian.com/platform/forge/
import api, { route } from "@forge/api";
const response = await api.asUser().requestJira(route`/rest/api/3/avatar/{type}/system`, {
headers: {
'Accept': 'application/json'
}
});
console.log(`Response: ${response.status} ${response.statusText}`);
console.log(await response.json());
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
{
"system": [
{
"id": "1000",
"isDeletable": false,
"isSelected": false,
"isSystemAvatar": true,
"urls": {
"16x16": "/secure/useravatar?size=xsmall&avatarId=10040&avatarType=project",
"24x24": "/secure/useravatar?size=small&avatarId=10040&avatarType=project",
"32x32": "/secure/useravatar?size=medium&avatarId=10040&avatarType=project",
"48x48": "/secure/useravatar?avatarId=10040&avatarType=project"
}
}
]
}
Returns the system and custom avatars for a project, issue type or priority.
This operation can be accessed anonymously.
Permissions required:
manage:jira-configuration
read:avatar:jira
Connect app scope required: ADMIN
string
Requiredstring
RequiredReturned if the request is successful.
Details about system and custom avatars.
1
2
3
4
5
6
7
8
9
10
11
12
// This sample uses Atlassian Forge
// https://developer.atlassian.com/platform/forge/
import api, { route } from "@forge/api";
const response = await api.asUser().requestJira(route`/rest/api/3/universal_avatar/type/{type}/owner/{entityId}`, {
headers: {
'Accept': 'application/json'
}
});
console.log(`Response: ${response.status} ${response.statusText}`);
console.log(await response.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
{
"custom": [
{
"id": "1010",
"isDeletable": true,
"isSelected": false,
"isSystemAvatar": false,
"urls": {
"16x16": "https://your-domain.atlassian.net/secure/viewavatar?size=xsmall&avatarId=10080&avatarType=project",
"24x24": "https://your-domain.atlassian.net/secure/viewavatar?size=small&avatarId=10080&avatarType=project",
"32x32": "https://your-domain.atlassian.net/secure/viewavatar?size=medium&avatarId=10080&avatarType=project",
"48x48": "https://your-domain.atlassian.net/secure/viewavatar?avatarId=10080&avatarType=project"
}
}
],
"system": [
{
"id": "1000",
"isDeletable": false,
"isSelected": false,
"isSystemAvatar": true,
"urls": {
"16x16": "https://your-domain.atlassian.net/secure/viewavatar?size=xsmall&avatarId=10040&avatarType=project",
"24x24": "https://your-domain.atlassian.net/secure/viewavatar?size=small&avatarId=10040&avatarType=project",
"32x32": "https://your-domain.atlassian.net/secure/viewavatar?size=medium&avatarId=10040&avatarType=project",
"48x48": "https://your-domain.atlassian.net/secure/viewavatar?avatarId=10040&avatarType=project"
}
}
]
}
Loads a custom avatar for a project, issue type or priority.
Specify the avatar's local file location in the body of the request. Also, include the following headers:
X-Atlassian-Token: no-check
To prevent XSRF protection blocking the request, for more information see Special Headers.Content-Type: image/image type
Valid image types are JPEG, GIF, or PNG.For example:
curl --request POST
--user email@example.com:<api_token>
--header 'X-Atlassian-Token: no-check'
--header 'Content-Type: image/< image_type>'
--data-binary "<@/path/to/file/with/your/avatar>"
--url 'https://your-domain.atlassian.net/rest/api/3/universal_avatar/type/{type}/owner/{entityId}'
The avatar is cropped to a square. If no crop parameters are specified, the square originates at the top left of the image. The length of the square's sides is set to the smaller of the height or width of the image.
The cropped image is then used to create avatars of 16x16, 24x24, 32x32, and 48x48 in size.
After creating the avatar use:
Permissions required: Administer Jira global permission.
manage:jira-configuration
write:avatar:jira
, read:avatar:jira
Connect app scope required: ADMIN
string
Requiredstring
Requiredinteger
integer
integer
Requiredany
Returned if the request is successful.
Details of an avatar.
1
2
3
4
5
6
7
8
9
10
11
12
13
// This sample uses Atlassian Forge
// https://developer.atlassian.com/platform/forge/
import api, { route } from "@forge/api";
const response = await api.asUser().requestJira(route`/rest/api/3/universal_avatar/type/{type}/owner/{entityId}?size={size}`, {
method: 'POST',
headers: {
'Accept': 'application/json'
}
});
console.log(`Response: ${response.status} ${response.statusText}`);
console.log(await response.json());
1
2
3
4
5
6
{
"id": "1010",
"isDeletable": true,
"isSelected": false,
"isSystemAvatar": false
}
Deletes an avatar from a project, issue type or priority.
Permissions required: Administer Jira global permission.
manage:jira-configuration
delete:avatar:jira
Connect app scope required: ADMIN
string
Requiredstring
Requiredinteger
RequiredReturned if the request is successful.
1
2
3
4
5
6
7
8
9
10
// This sample uses Atlassian Forge
// https://developer.atlassian.com/platform/forge/
import api, { route } from "@forge/api";
const response = await api.asUser().requestJira(route`/rest/api/3/universal_avatar/type/{type}/owner/{owningObjectId}/avatar/{id}`, {
method: 'DELETE'
});
console.log(`Response: ${response.status} ${response.statusText}`);
console.log(await response.text());
Returns the default project, issue type or priority avatar image.
This operation can be accessed anonymously.
Permissions required: None.
read:jira-work
read:avatar:jira
Connect app scope required: READ
string
Requiredstring
string
Returned if the request is successful.
any
1
2
3
4
5
6
7
8
9
10
11
12
// This sample uses Atlassian Forge
// https://developer.atlassian.com/platform/forge/
import api, { route } from "@forge/api";
const response = await api.asUser().requestJira(route`/rest/api/3/universal_avatar/view/type/{type}?size={size}&format={format}`, {
headers: {
'Accept': '*/*'
}
});
console.log(`Response: ${response.status} ${response.statusText}`);
console.log(await response.text());
Returns a project, issue type or priority avatar image by ID.
This operation can be accessed anonymously.
Permissions required:
read:jira-work
read:avatar:jira
Connect app scope required: READ
string
Requiredinteger
Requiredstring
string
Returned if the request is successful.
any
1
2
3
4
5
6
7
8
9
10
11
12
// This sample uses Atlassian Forge
// https://developer.atlassian.com/platform/forge/
import api, { route } from "@forge/api";
const response = await api.asUser().requestJira(route`/rest/api/3/universal_avatar/view/type/{type}/avatar/{id}?size={size}&format={format}`, {
headers: {
'Accept': '*/*'
}
});
console.log(`Response: ${response.status} ${response.statusText}`);
console.log(await response.text());
Returns the avatar image for a project, issue type or priority.
This operation can be accessed anonymously.
Permissions required:
read:jira-work
read:avatar:jira
Connect app scope required: READ
string
Requiredstring
Requiredstring
string
Returned if the request is successful.
any
1
2
3
4
5
6
7
8
9
10
11
12
// This sample uses Atlassian Forge
// https://developer.atlassian.com/platform/forge/
import api, { route } from "@forge/api";
const response = await api.asUser().requestJira(route`/rest/api/3/universal_avatar/view/type/{type}/owner/{entityId}?size={size}&format={format}`, {
headers: {
'Accept': '*/*'
}
});
console.log(`Response: ${response.status} ${response.statusText}`);
console.log(await response.text());
Rate this page: