Календарь

Облачный Pyrus
Безоблачный Pyrus

Календарь – это список задач в календарном представлении, в которых участвует пользователь. В этот список попадают задачи и события, срок которых начинается в указанный промежуток, а также задачи, в которых установлено напоминание в заданном временном интервале.

Выбрать типы событий в календаре можно, комбинируя фильтры:

  1. Due — события, срок которых находится в указанном временном интервале, в тайм-зоне UTC+0.

  2. DueDate - задачи, срок которых находится в указанные календарные даты (значение времени игнорируется).

  3. DueForCurrentStep - задачи, в которых срок на текущем этапе попадает в выбранный временной промежуток в тайм-зоне UTC+0.

  4. Reminded - Задачи, для которых было установлено напоминание.

Методы

GET /calendar

Метод возвращает список задач.

GET https://api.pyrus.com/v4/calendar
  ?start_date_utc=2021-12-15T20:30Z
  &end_date_utc=2022-01-01T20:30Z
  &item_count=50
  &all_accessed_tasks=false
  &filter_mask=7

Тело ответа

{
  "has_more": true,
  "task": {
    "id": 11613,
    "text": "Payments",
    "create_date": "2017-08-17T14:31:18Z",
    "last_modified_date": "2017-08-18T10:00:11Z",
    "author": {
      "id": 1731,
      "first_name": "Bob",
      "last_name": "Smith",
      "email": "Bob.Smith@gmail.com",
      "type": "user"
    },
    "form_id": 1345,
    "approvals": [
      [
        {
          "person": {
            "id": 1733,
            "first_name": "John",
            "last_name": "Snow",
            "email": "John.Snow@gmail.com",
            "type": "user"
          },
          "approval_choice": "waiting"
        }
      ],
      [
        {
          "person": {
            "id": 1731,
            "first_name": "Bob",
            "last_name": "Smith",
            "email": "Bob.Smith@gmail.com",
            "type": "user"
          },
          "approval_choice": "waiting"
        }
      ]
    ],
    "fields": [
      {
        "id": 1,
        "type": "text",
        "name": "Purpose",
        "value": "IT conference in Amsterdam"
      }
    ],
    "comments": [
      {
        "id": 13767,
        "create_date": "2017-08-17T14:31:18Z",
        "author": {
          "id": 1731,
          "first_name": "Bob",
          "last_name": "Smith",
          "email": "Bob.Smith@gmail.com",
          "type": "user"
        },
        "reassigned_to": {
          "id": 1730,
          "first_name": "John",
          "last_name": "Snow",
          "email": "John.Snow@gmail.com",
          "type": "user"
        },
        "approvals_added": [
          [
            {
              "person": {
                "id": 1733,
                "first_name": "John",
                "last_name": "Snow",
                "email": "John.Snow@gmail.com",
                "type": "user"
              },
              "step": 1
            }
          ],
        ],
        "field_updates": [
          {
            "id": 1,
            "type": "text",
            "name": "Purpose",
            "value": "IT conference in Amsterdam"
          },
          {
            "id": 4,
            "type": "table",
            "name": "Payment Schedule",
          }
        ]
      }
    ]
  }
}

curl

curl -X GET \
  'https://api.pyrus.com/v4/calendar?start_date_utc=2021-12-15T20:30Z&end_date_utc=2022-01-01T20:30Z&item_count=50&all_accessed_tasks=false&filter_mask=7' \
  -H 'Authorization: Bearer <YOUR_ACCESS_TOKEN>' \
  -H 'Content-Type: application/json'

Параметры

start_date_utcДата и время начала интервала в формате YYYY-MM-dd**T**HH:mm:ss**Z**.
end_date_utcДата и время конца интервала в формате YYYY-MM-dd**T**HH:mm:ss**Z**.
item_countМаксимальное количество задач, которые вернутся в ответе. По-умолчанию: 50, максимально: 100.
all_accessed_tasksТребуется ли возвращать все доступные пользователям задачи, в том числе задачи всех ролей пользователя и задачи всех доступных пользователю форм, в противном случае, вернутся задачи, в которых пользователь является ответственным и/или согласующим и/или наблюдателем, который еще не согласовал задачу.

filter_mask

битовая маска, определяющая комбинацию фильтров: Due = 1, DueDate = 2, DueForCurrentStep = 4, Reminded = 8;.

Due = 1, DueDate = 2, Due ИЛИ DueDate = 3, DueForCurrentStep = 4, Due ИЛИ DueForCurrentStep = 5, DueDate ИЛИ DueForCurrentStep = 6, Due ИЛИ DueDate ИЛИ DueForCurrentStep = 7, Reminded = 8, Due ИЛИ Reminded = 9, DueDate ИЛИ Reminded = 10, Due ИЛИ DueDate ИЛИ Reminded =11, DueForCurrentStep ИЛИ Reminded = 12, Due ИЛИ DueForCurrentStep ИЛИ Reminded = 13, DueForCurrentStep ИЛИ Reminded = 14, Due ИЛИ DueDate ИЛИ DueForCurrentStep ИЛИ Reminded = 15.

Была ли эта статья полезной?