Уведомления

Уведомления

Непрочитанные уведомления

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 Количество запросов