метод REST scope: calendar

calendar.event.add

Добавить событие

Кто может выполнять: любой пользователь

Описание

Метод добавляет новое событие в календарь.

Параметры

type string обязательный

Тип календаря:
- user — календарь пользователя
- group — календарь группы
- company_calendar — календарь компании

ownerId integer обязательный

Идентификатор владельца календаря.

Для календаря компании параметр ownerId имеет значение 0

from datetime обязательный

Дата и время начала события.

Можно указать дату без времени. Для этого передайте значение Y в параметре skip_time

to datetime обязательный

Дата окончания события.

Можно указать дату без времени. Для этого передайте значение Y в параметре skip_time

from_ts integer необязательный

Дата и время в формате timestamp. Можно использовать вместо параметра from

to_ts integer необязательный

Дата и время в формате timestamp. Можно использовать вместо параметра to

section integer обязательный

Идентификатор календаря.

Параметр обязателен, если auto_detect_section передан и не равен Y

auto_detect_section string необязательный

Режим автоопределения секции.

Возможные значения:

  • Y — включить автоопределение секции
  • N — использовать переданный section

Если параметр не передан, метод пытается автоопределить секцию

name string обязательный

Название события

skip_time string необязательный

Передать значение даты без времени в параметрах from и to. Возможные значения:
- Y — использовать только дату
- N — использовать дату и время

Формат даты по стандарту ISO-8601

timezone_from string необязательный

Часовой пояс даты и времени начала события. По умолчанию — таймзона текущего пользователя.

Значение нужно передавать в виде строки, например, Europe/Riga.

Особенности работы с часовыми поясами

timezone_to string необязательный

Часовой пояс даты и времени окончания события. Значение по умолчанию — таймзона текущего пользователя.

Значение нужно передавать в виде строки, например, Europe/Riga.

Особенности работы с часовыми поясами

description text необязательный

Описание события

color string необязательный

Цвет фона события.

Символ # в цвете необходимо передавать в формате unicode — %23

text_color string необязательный

Цвет текста события.

Символ # в цвете необходимо передавать в формате unicode — %23

accessibility string необязательный

Доступность на время события:
- busy — занят
- absent — отсутствую
- quest — под вопросом
- free — свободен

importance string необязательный

Важность события:
- high — высокая
- normal — средняя
- low — низкая

private_event string необязательный

Отметка, что событие частное. Возможные значения:
- Y — частное
- N — не частное

rrule object необязательный

Повторяемость события в виде объекта в терминах стандарта iCalendar. Структура описана ниже

is_meeting string необязательный

Признак встречи с участниками события. Возможные значения:

  • Y — встреча с участниками
  • N — встреча без участников

Для встречи с участниками передайте список участников attendees

location string необязательный

Место проведения

remind array необязательный

Массив объектов с описанием напоминаний о событии. Структура описана ниже

attendees array необязательный

Список идентификаторов участников события.

Если не передать параметр для встречи с участниками, участником будет пользователь, от имени которого выполняется метод

meeting object необязательный

Объект с параметрами встречи. Структура описана ниже

crm_fields array необязательный

Массив идентификаторов объектов CRM для привязки к событию. Чтобы привязать объекты, перечислите их идентификаторы с префиксами:
- CO_ — компания
- C_ — контакт
- L_ — лид
- D_ — сделка

Параметр rrule

FREQ string необязательный

Частота повторения
- DAILY — ежедневно
- WEEKLY — еженедельно
- MONTHLY — ежемесячно
- YEARLY — ежегодно

COUNT integer необязательный

Количество повторений

INTERVAL integer необязательный

Интервал между повторениями

BYDAY array необязательный

Дни недели
- SU — воскресенье
- MO — понедельник
- TU — вторник
- WE — среда
- TH — четверг
- FR — пятница
- SA — суббота

UNTIL date необязательный

Дата окончания повторений

Параметр remind

type string необязательный

Временной тип напоминания
- min — минуты
- hour – часы
- day — дни

count integer необязательный

Числовое значение временного промежутка

Параметр meeting

notify boolean необязательный

Флаг оповещения о подтверждении или отказе участников

reinvite boolean необязательный

Флаг запроса повторного подтверждения участия при редактировании события

allow_invite boolean необязательный

Флаг разрешения участникам приглашать других в событие

hide_guests boolean необязательный

Флаг скрытия списка участников

Примеры запроса

curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"type":"user","ownerId":2,"name":"New Event Name","description":"Description for event","from":"2024-06-14","to":"2024-06-14","skip_time":"Y","section":5,"color":"#9cbe1c","text_color":"#283033","accessibility":"absent","importance":"normal","is_meeting":"Y","private_event":"N","remind":[{"type":"min","count":20}],"location":"London","attendees":[1,2,3],"meeting":{"notify":true,"reinvite":false,"allow_invite":false,"hide_guests":false},"rrule":{"FREQ":"WEEKLY","BYDAY":["MO","WE"],"COUNT":10,"INTERVAL":1},"crm_fields":["C_5","L_11"]}' \
https://**put_your_bitrix24_address**/rest/**put_your_user_id_here**/**put_your_webhook_here**/calendar.event.add

Ответ

HTTP-статус: 200

{
    "result": 1246,
    "time": {
        "start": 1733318565.183275,
        "finish": 1733318565.695058,
        "duration": 0.5117831230163574,
        "processing": 0.29406094551086426,
        "date_start": "2024-12-04T13:22:45+00:00",
        "date_finish": "2024-12-04T13:22:45+00:00"
    }
}

Возвращаемые данные

result integer

Идентификатор созданного события

Обработка ошибок

HTTP-статус: 400

{
    "error": "",
    "error_description": "Не задан обязательный параметр \"name\" для метода \"calendar.event.add\""
}
Код Описание Значение
— Не задан обязательный параметр "type" для метода "calendar.event.add" Не передан обязательный параметр type
— Не задан обязательный параметр "ownerId" для метода "calendar.event.add" Не передан обязательный параметр ownerId
— Не задан обязательный параметр "name" для метода "calendar.event.add" Не передан обязательный параметр name
— Не задан обязательный параметр "from" для метода "calendar.event.add" Не передан обязательный параметр from или from_ts
— Не задан обязательный параметр "to" для метода "calendar.event.add" Не передан обязательный параметр to или to_ts
— Недопустимое значение параметра "name" Передан неверный формат данных в поле name
— Недопустимое значение параметра "description" Передан неверный формат данных в поле description
— Доступ запрещен Запрещено создание событий в указанном календаре
— Вы задали неверный ID секции календаря или у данного пользователя нет к ней доступа Передан идентификатор недоступного или несуществующего календаря
— Список связей события с CRM должен быть массивом Передан неверный формат данных в поле crm_fields
— При создании события произошла ошибка Другая ошибка

Что будем искать? Например,Продвижение