Реклама

crm.item.list заблокирован, а портал работает: откуда в Битрикс24 берётся 429 OPERATION_TIME_LIMIT

#Выгрузка #HTTP #Увеличение #REST #Разбираемся
crm.item.list заблокирован, а портал работает: откуда в Битрикс24 берётся 429 OPERATION_TIME_LIMIT

Выгрузка сделок из Битрикс24 годами работает без проблем, а потом начинает тормозить и возвращать HTTP 429. Увеличение пауз между запросами не помогает, хотя остальные методы REST API продолжают отвечать как обычно. Разбираемся, как устроен лимит OPERATION_TIME_LIMIT , куда уходит серверное время и как ускорить выгрузку в сотни раз. Разобраться с лимитами

Привет, Хабр!

Принято считать, что лимит у REST API Битрикс24 один: не больше двух запросов в секунду. Интеграцию пишут с паузой в полсекунды между вызовами, ловят редкие QUERY_LIMIT_EXCEEDED повтором через секунду и больше о лимитах не думают. Для небольшого портала этого и правда хватает.

Со временем портал вырастает до сотен тысяч сделок. Ночная выгрузка сделок в хранилище, которая год отрабатывала за несколько минут, начинает идти часами и падать с HTTP 429.

Повтор через секунду не помогает, повтор через минуту тоже. А crm.item.get, задачи, контакты — всё остальное отвечает как обычно, и со стороны портал выглядит совершенно здоровым.