Перейти к содержимому
FormFlow

v1.29: статус «Обработано» попадает в экспорт и API

FormFlow v1.29.0 записывает время, когда отправку пометили «Обработано», в экспорты CSV, Excel и JSON и в API управления. Что означает это время и где его возможности заканчиваются.

Эта статья переведена машинным способом. Читать оригинал на английском

A dark plate titled 'v1.29: handled status reaches exports and the API', listing a Handled column in CSV, Excel and JSON, a handled time that stays empty while open, and the same status in the API.

FormFlow v1.29.0, выпущенная 2026-10-02, выводит статус «Обработано» за пределы входящих. До сих пор пометка отправки как «Обработано» была видна только внутри FormFlow. Начиная с этого релиза экспорты CSV, Excel и JSON фиксируют, когда это произошло, а API управления возвращает то же время и умеет по нему фильтровать.

Что изменилось

  • В экспортах CSV и Excel появляется столбец «Обработано». В файле его заголовок — _handled_at, он записан так же, как другие столбцы с подробностями отправки (например, _id).

  • Экспорты JSON содержат ключ handled_at в каждой отправке.

  • API управления возвращает handled_at в каждой отправке — и в списке, и в отдельной отправке.

  • Список отправок принимает handled=true или handled=false, чтобы получать только обработанные или только открытые отправки.

  • Окно выбора столбцов экспорта показывает этот столбец, так что вы можете снять с него отметку.

Что фиксирует время

Значение — это момент, когда команда пометила отправку как «Обработано», в виде временной метки ISO 8601, например 2026-10-02T09:30:00+00:00. Часы приложения FormFlow установлены на UTC, поэтому смещение равно +00:00. Статус принадлежит команде, а не одному участнику: исполнителя нет, и экспорт содержит время, а не человека.

Из того, как записывается статус, вытекают три поведения. Повторная пометка уже обработанной отправки ничего не делает, поэтому сохраняется первое время. Повторное открытие отправки стирает время, и пока отправка открыта, ячейка снова пуста. Если вы откроете её повторно, а потом снова пометите как «Обработано», в столбце окажется новое время, а прежнее исчезнет. Ответ отправителю, отправленный из FormFlow, тоже помечает отправку как «Обработано», так что время может исходить от ответа, а не от щелчка.

В окне выбора столбцов экспорта

Для CSV и Excel в окне выбора столбцов экспорта перечислены столбцы, которые можно включить. Экспорт, в котором выбраны все столбцы, теперь содержит столбец «Обработано». Снимите с него отметку, и файл сохранит прежнюю структуру — это важно, если другой инструмент читает файл по позициям. Но всё же надёжнее читать файл по названиям заголовков.

Для JSON окно выбора не показывается. Экспорт JSON всегда включает handled_at, и пока отправка открыта, значение равно null. Экспорт в очереди — это копия на определённый момент, поэтому файлы, скачанные до v1.29.0, не меняются, а новый экспорт отражает статус на момент постановки в очередь.

Что показывает API

В API управления обработанная отправка содержит handled_at в том же формате временной метки. У открытой отправки ключ отсутствует полностью, так же как read_at уже отсутствует, пока отправка не прочитана. Это отличается от экспорта JSON, где ключ сохраняется со значением null, поэтому потребитель, который работает с обоими, должен считать отсутствующий ключ и null одним и тем же.

В списке handled=true возвращает только отправки, у которых есть время обработки, а handled=false — только открытые. Если параметр опустить, вернутся и те, и другие. Он сочетается с существующими фильтрами is_spam и unread и с поиском q.

Где он груб

  • Это время, а не история. Экспортируется только последнее время обработки, поэтому увидеть, что отправку открывали повторно, нельзя.

  • Он никого не называет. Не используйте столбец для сравнения участников.

  • «Обработано» означает, что с отправкой разобрались, но не обязательно что на неё ответили. Отправка может быть обработана, и никто не напишет отправителю.

  • Сам по себе он не показатель времени ответа. Можно вычислить разрыв между временем получения и временем обработки, но этот разрыв включает любую причину, по которой отправка оставалась открытой, а повторное открытие его обнуляет.

  • Он не переписывает ничего, что уже экспортировано.

Этот пост объясняет релиз. Запись в «Списке изменений» для v1.29.0 остаётся записью о том, что было выпущено.