Newly created icons not returned in response

In the Jira Assets REST API, I noticed that the PUT/PATCH /importsource/{id}/mapping endpoints do not return an iconSchema field even if I provide one in a request to create new icons. Is that a known bug? I’d like to know the details of created icons as well, so I know their id’s and can use them in other API requests.

Background: In order to create additional object types with e.g. POST /objecttype/create, it is required to provide an iconId → but since the mapping endpoint response does not include icons and there’s no way to retrieve custom icons (you can only retrieve the default icons using GET /icon/global), I don’t know the iconId of my custom icons…

Example request json for mapping:

  {
    $schema: "...",
    schema: {
      objectSchema: {
        name: "SchemaName",
        description: "SchemaDescription",
        objectTypes: [...],
      },
      iconSchema: {
        icons: [{
          "key": "icon-key",
          "name": "icon name",
          "png48": "..."
        }]
      }
    },
    mapping: {
      objectTypeMappings: [...],
    },
  }

The mapping response does include schema.objectSchema.objectTypes and mapping.objectTypeMappings but the iconSchema.icons field is not included. And I can only use an icon-key to reference an icon in object types that are created via this mapping endpoint. But it does not help if I want to create object types using the dedicated endpoint.

Besides that, it would be great if we could upload these icons via a separate REST API endpoint because the current approach requires us to include at least one object type in schema.objectSchema.objectTypes and mapping.objectTypeMappings.

1 Like