Доступность:Jira 6.2 и более поздние.
На этой странице представлен обзор свойств сущности Jira.
Для документации облака Atlassian по свойствам Jira Entity Properties перейдите по ссылке: Хранение данных без базы данных.
Что такое свойства сущности?
Свойства сущности позволяют приложениям добавлять хранилища ключей / значений в сущности Jira, такие как задачи или проекты. Эти значения могут быть проиндексированы Jira и запрошены через REST API или JQL.
Как хранить данные в отношении сущности с помощью REST?
Ниже приведены примеры скручивания, показывающие, как вы можете хранить данные в отношении задачи и извлекать данные из задачи с помощью REST.
- Информацию о том, как управлять свойствами других сущностей Jira (например, проектов), см. В документации Jira REST API.
 - Плагины P2 могут хранить / извлекать данные с помощью IssuePropertyService, которые вы можете ввести IssuePropertyService с помощью Atlassian Spring Scanner.
 
Чтобы изменить, добавить или удалить свойства, пользователь, выполняющий запрос (request), должен иметь разрешение на редактирование сущности. Например, чтобы добавить новое свойство для задачи ENPR-4, вам необходимо получить разрешение на редактирование задачи. Чтобы получить свойство, пользователь должен иметь разрешения на чтение для сущности.
Пример 1: Хранение данных
В следующем примере будет храниться объект JSON {«content»: «Тестирует работает ли в облаке Jira», «завершено»: 1} против задачи (issue) ENPR-4 с ключем tasks.
curl -X PUT \
  -H "Content-type: application/json" \
  -d '{"content":"Test if works on JIRA Cloud", "completed" : 1}' \
  https://jira-instance1.net/rest/api/2/issue/ENPR-4/properties/tasks
Обратите внимание на следующее:
- Длина ключа key не должна превышать 255 символов.
 - Значение value должно быть допустимым объектом JSON и иметь максимальный размер 32 КБ.
 
Пример 2: Получение данных
В следующем примере показано, как получить все свойства, сохраненные в отношении задачи:
curl -X GET https://jira-instance1.net/rest/api/2/issue/ENPR-4/properties/
Ответ от сервера будет содержать ключи и URL-адреса всех свойств задачи ENPR-4.
{
   "keys" : [
      {
         "key" : "tasks",
         "self" : "https://jira-instance1.net/rest/api/2/issue/ENPR-4/properties/tasks"
      }
   ]
}
Пример 3: Удаление свойства
В следующем примере показано, как удалить свойство из задачи:
curl -X DELETE https://jira-instance1.net/rest/api/2/issue/ENPR-4/properties/tasks
Как сделать свойства сущности доступными для поиска?
Приложения Jira Server могут предоставить дескриптор модуля, который сделает свойства задачи доступными с помощью JQL. Например, чтобы индексировать данные из первого примера, приложения Jira Server могут предоставить следующий дескриптор модуля:
<index-document-configuration 
  entity-key="IssueProperty" 
  key="jira-issue-tasklist-indexing">
  <key property-key="tasks">
    <extract path="content" type="text" />
  </key>
</index-document-configuration>
Дескрипторы, показанные выше, заставят Jira индексировать объект content свойств задачи задач (tasks) как текст.
Доступные типы данных индекса:
- number - индексируется как число и позволяет упорядочивать диапазон и искать в этом поле.
 - text - токенизируется перед индексированием и позволяет искать определенные слова.
 - string - индексируется как есть и позволяет искать только точную фразу.
 - date - индексируется как дата и позволяет искать и упорядочивать диапазон дат. Ожидаемый формат даты: [YYYY]-[MM]-[DD]. Формат ожидаемого формата даты - [YYYY]-[MM]-[DD]T[hh]:[mm]:[ss] с дополнительным смещением от UTC: +/- [чч]: [мм] или Z без смещения , Для справки см. Стандарт ISO_8601.
 
Индексированные данные доступны для поиска в JQL. Результат JQL-запроса - issue.property \ [tasks \]. Completed = 1 И issue.property \ [tasks \]. Content ~ "works" - показан на скриншоте ниже.
РИСУНОК
Подробные объяснения того, как использовать дескрипторы модуля, см. В настройке индексирования документа.
По материалам Atlassian JIRA Server Developer Entity properties