Уведомления¶
Уведомления¶
Непрочитанные уведомления¶
URI: /BumsCommonApiV01/Informer/notifications.api|xml
Непрочитанные уведомления - это то, что выводится при нажатии на «синий баблик» в Мегаплане в нижней панели справа.
Важно: в списке будут только те уведомления, которые связаны с задачами, проектами или сотрудниками, т.к. в API поддерживается работа только с этими сущностями.
Входные параметры¶
| Поле | Тип | Поумолчанию | Описание | 
|---|---|---|---|
| Group | bool | false | Группируем уведомления о новых комментариях по subject | 
| TimeUpdated | string | Дата/время в одном из форматов ISO 8601 | Возвращать только те объекты, которые были изменены после указанный даты | 
| Limit | integer | Выбираем количество уведомлении | |
| Offset | integer | Указываем, с какого уведомления по счету необходимо их получить | 
Выходные данные (массив уведомлений с полями)¶
| Поле | Тип | Описание | |
| Id | integer | ID уведомления | |
| Subject | object(Id,Name,Type) | Предмет уведомления (см. пояснение ниже) | |
| Content | string или object(Subject,Text,Author) | Содержимое уведомления (см. пояснение ниже) | |
| TimeCreated | datetime | Время создания уведомления | 
Subject - это модель данных, с которой связано уведомление (задача, проект, сотрудник или комментарий). Если, например, уведомление о том, что задача отклонена, то в Subject будет идентификатор задачи. Subject содержит следующие аттрибуты:
- Id - идентификатор модели 
- Name - название модели 
- Type - тип модели (task/project/employee/comment). 
Структура Content зависит от типа Subject. Для всех типов, кроме комментариев, это простой текст уведомления. В случае с комментариями Content содержит следующие аттрибуты:
- Subject - предмет комментирования (задача или проект) с вложенной структурой, аналогичной Subject в самом уведомлении и добавляется параметор UnreadComments (количество непрочитаных комментариев ) 
- Text - текст комментария 
- Author - автор комментария (Id и Name) 
Пример ответа в JSON-формате¶
{
  "status":
  {
    "code":"ok",
    "message":null
  },
  "data":
  {
    "notifications":
    [
      {
        "Id":680,
        "Name":"",
        "Subject":
        {
          "Id":55,
          "Name":"Простой комментарий к тестовой задаче",
          "Type":"comment"
        },
        "Content":
        {
          "Subject":
          {
            "Id":1000043,
            "Name":"Тестовая задача",
            "Type":"task",
            "UnreadComments":2
          },
          "Text":"Простой комментарий к тестовой задаче",
          "Author":
          {
            "Id":1000018,
            "Name":"Иванов Иван"
          }
        },
        "TimeCreated":"2011-02-16 20:57:37"
      },
      {
        "Id":680,
        "Name":"",
        "Subject":
        {
          "Id":1000043,
          "Name":"Тестовая задача",
          "Type":"task"
        },
        "Content":"Николаев Николай назначил вас ответственным по задаче Тестовая задача.",
        "TimeCreated":"2011-02-16 20:57:37"
      }
    ]
  }
}
Пример ответа в XML-формате¶
<?xml version="1.0" encoding="utf-8"?>
<response>
  <status>
    <code>ok</code>
    <message></message>
  </status>
  <data>
    <notifications>
      <item>
        <id>680</id>
        <name></name>
        <subject>
          <id>55</id>
          <name>Простой комментарий к тестовой задаче</name>
          <type>comment</type>
        </subject>
        <content>
          <subject>
            <id>1000043</id>
            <name>Тестовая задача</name>
            <type>task</type>
            <unreadComments>2</unreadComments>
          </subject>
          <text>Простой комментарий к тестовой задаче</text>
          <author>
            <id>1000018</id>
            <name>Иванов Иван</name>
          </author>
        </content>
        <time_created>2011-02-16 20:57:37</time_created>
      </item>
      <item>
        <id>650</id>
        <name></name>
        <subject>
          <id>1000043</id>
          <name>Тестовая задача</name>
          <type>task</type>
        </subject>
        <content>Николаев Николай назначил вас ответственным по задаче Тестовая задача.</content>
        <time_created>2011-02-16 15:50:00</time_created>
      </item>
    </notifications>
  </data>
</response>
Пометить уведомление как прочитанное¶
URI: /BumsCommonApiV01/Informer/deactivateNotification.api|xml
Входные параметры¶
| Параметр | Тип | Описание | |
| Ids | array | Массив идентификаторов уведомлений. Обязательный параметр | 
Выходные данные¶
Отсутствуют
Предупреждения¶
Список запросов¶
URI: /BumsCommonApiV01/Informer/approvals.api|xml
Предупреждения (запросы) - это то, что выводится при нажатии на иконку «восклицательный знак» справа в нижней панели Мегаплана.
Важно: в списке будут только те предупреждения, которые связаны с задачами и проектами, т.к. в API поддерживается работа только с этими сущностями.
Входные параметры¶
| Параметр | Тип | Допустимые значения | Значение по умолчанию | Описание | 
|---|---|---|---|---|
| ShowActions | bool | Нужно ли показывать в списке возможные действия над задачей | 
Выходные данные (массив предупреждений с полями)¶
| Поле | Тип | Описание | ||
| Tasks | array | Список задач, см. структуру в списоке задач | ||
| Projects | array | Список проектов, см. структуру в списке проектов | 
Для каждой задачи или проекта добавляется дополнительный ключ Message, содержащий сообщение по предупреждению, которое должен увидеть пользователь.
Пример ответа в JSON-формате¶
{
  "status":
    {
      "code" : "ok",
      "message" : null
    },
  "data":
    {
      "Tasks":
        [
          {
            "Id" : 1000005,
            "Name" : "Заполнить   личную   карточку",
            "Status" : "assigned",
            "Deadline" : "",
            "Owner" :
              {
               "Id" : 1000001,
               "Name" : "Тестов тест"
              },
            "Responsible" :
               {
                 "Id":1000006,
                 "Name" : "Тестов Тест"
               },
            "Favorite" : "1",
            "TimeCreated" : "2011-02-08 20:49:10",
            "Message": "Вам назначена задача «Проверка ссылок»"
          }
        ]
      "Projects":
        [
          {
            "Id" : 1000041,
            "Name" : "Проект 2",
            "Status" : "done",
            "Deadline" : "",
            "Owner" :
             {
               "Id" : 1000006,
               "Name" : "Боткин Бот"
             },
            "Responsible":
             {
               "Id" : 1000007,
               "Name" : "Тестов Тест"
             },
            "Favorite" : "",
            "TimeCreated" : "2011-02-09 18:40:12",
            "Message": "Проект «Обновление сайта» завершен"
          }
        ]
    }
}
Пример ответа в XML-формате¶
<?xml version="1.0" encoding="utf-8"?>
<response>
  <status>
    <code>ok</code>
    <message></message>
  </status>
  <data>
    <tasks>
      <item>
        <id>1000005</id>
        <name>Заполнить   личную   карточку</name>
        <status>assigned</status>
        <deadline></deadline>
        <owner>
          <id>1000001</id>
          <name>Тестов тест</name>
        </owner>
        <responsible>
          <id>1000006</id>
          <name>Тестов Тест</name>
        </responsible>
        <favorite>1</favorite>
        <time_created>2011-02-08 20:49:10</time_created>
      </item>
    </tasks>
    <projects>
      <item>
        <id>1000041</id>
        <name>Проект 2</name>
        <status>done</status>
        <deadline></deadline>
        <owner>
          <id>1000006</id>
          <name>Боткин Бот</name>
        </owner>
        <responsible>
          <id>1000007</id>
          <name>Тестов Тест</name>
        </responsible>
        <favorite>1</favorite>
        <time_created>2011-02-09 18:40:12</time_created>
      </item>
    </projects>
  </data>
</response>
Количество запросов¶
URI: /BumsCommonApiV01/Informer/approvalsCount.api|xml
Предупреждения (запросы) - это то, что выводится при нажатии на иконку «восклицательный знак» справа в нижней панели Мегаплана.
Входные параметры¶
Отсутствуют
Выходные данные¶
| Поле | Тип | Описание | 
|---|---|---|
| Count | integer | Количество запросов |