В документах коробки указано, что событие TAG_ITEM_CREATE
происходит, когда «Тег был добавлен в файл или папку». Есть ли способ узнать, к какой папке/файлу был добавлен тег, не повторяя их все?
box.com TAG_ITEM_CREATE событие
Ответы (1)
Если вы выбираете события для предприятия Box вы можете заставить Box выполнять фильтрацию событий на стороне сервера. Однако при выборе событий для стандартной учетной записи Box вы должны сделать фильтрацию в своем приложении. Параметр next_stream_position
можно использовать для установки более низкой временной границы для получаемых вами событий, что может значительно сократить объем метаданных, которые необходимо отсортировать.
EDIT: ответы на вопросы из комментариев.
В: Не знаете, как фильтрация событий помогает определить, какая папка была отмечена тегом?
Возвращаемый вам объект event
будет выглядеть следующим образом:
{
"next_stream_position":1348790499819,
"entries":[
{
"event_type":"TAG_ITEM_CREATE",
"source":{
"type":"folder",
"id":"11446498",
... more event info ...
}
},
... more events ...
]
}
В вашем приложении вы можете искать те события, у которых event_type
равно TAG_ITEM_CREATE
. Затем вы можете использовать source
, чтобы определить, какой конкретный ресурс был помечен.
В: Вы хотите сказать, что я могу запросить все папки, измененные после данного события TAG_ITEM_CREATE?
Нет. Воспринимайте свойство next_stream_position как прокси для метки времени. Вы можете использовать его, чтобы сказать Box: «Расскажи мне обо всех событиях, которые произошли после этой «позиции» во времени». Но это все равно даст вам все типы произошедших событий. Вам нужно будет выбрать события, представляющие интерес в вашем приложении.
Это одно из больших различий в корпоративных и пользовательских API. На предприятии вы можете сказать Box: «Мне нужна информация обо всех событиях TAG_ITEM_CREATE, которые произошли на предприятии между вчера и сегодня». В пользовательском API лучшее, что вы можете сказать Box, это: «Мне нужна информация обо всех событиях, которые произошли в ящике этого пользователя со вчерашнего дня».
{"chunk_size":1,"next_stream_position":1396624522869,"entries":[{"type":"event","event_id":"45d0ec20a09b0a606119b99fe574b6b05b328b5f","created_by":{"type":"user","id":"210999093","name":"me","login":"[email protected]"},"created_at":"2014-04-04T08:14:58-07:00","recorded_at":"2014-04-04T08:14:59-07:00","event_type":"TAG_ITEM_CREATE","session_id":"1433097989533eac15fffff","source":null}]}
- person PaulW; 04.04.2014