Коллекция

/api/collection методы. По умолчанию эти методы работают с коллекциями в пространстве имен ‘default’, которое содержит такие вещи, как панели инструментов и карточки. Также существуют другие пространства имен коллекций, такие как :snippet (в интерфейсе пользователя называется “Папки сниппетов”). Эти пространства имен являются полностью независимыми иерархиями. Чтобы использовать эти конечные точки для других пространств имен коллекций, вы можете передать параметр ?namespace= (например, ?namespace=snippet).

GET /api/collection/

Получить список всех коллекций, для которых текущий пользователь имеет разрешения на чтение (свойство :can_write возвращается как дополнительное свойство каждой коллекции, так что вы можете узнать, над какой из них у вас есть разрешения на запись). По умолчанию возвращаются неархивированные коллекции, но вместо этого вы можете показать архивные, передав ?archived=true. Пользователь администратор может видеть все коллекции. Чтобы скрыть коллекции других пользователей вы можете передать ?exclude-other-user-collections=true

Если personal-only равно true, то возвращаются только персональные коллекции, где personal_owner_id не равен nil.

Параметры:

  • archived допустимая логическая строка (true или false) или null.

  • exclude-other-user-collections допустимая логическая строка (true или false) или null.

  • namespace непустая строка или null.

  • personal-only обнуляемое значение должно быть допустимой булевой строкой (’true’ или ‘false’).

GET /api/collection/:id

Получить конкретную коллекцию с добавленными стандартными данными.

Параметры:

  • id целое число больше нуля.

GET /api/collection/:id/items

Получить определенные элементы коллекции со следующими параметрами:

  • models - включает только объекты определенного набора моделей. Если не указано, возвращает объекты всех моделей

  • archived - когда true, возвращать заархивированные объекты вместо разархивированных. По умолчанию - false.

  • pinned_state: + когда is_pinned - возвращать только закрепленные объекты; + когда is_not_pinned - возвращать только незакрепленные объекты; + когда all - вернуть все. Является значением по умолчанию.

Параметры:

  • id целое число больше нуля.

  • models последовательность из следующих элементов: dashboard, dataset, no_models, timeline, snippet, collection, pulse, card; может быть пустой; или один из элементов dashboard, dataset, no_models, timeline, snippet, collection, pulse, card.

  • archived допустимая логическая строка (true или false) или null.

  • pinned_state один из элементов is_not_pinned, is_pinned, all или null.

  • sort_column один из элементов model, name, last_edited_by, last_edited_at или null.

  • sort_direction один из элементов desc, asc или null.

GET /api/collection/:id/timelines

Получить timelines конкретной коллекции.

Параметры:

  • id целое число больше нуля.

  • include значение должно быть равно events или null.

  • archived логическое значение или null.

GET /api/collection/graph

Получить граф всех разрешений для всех коллекций.

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

Параметры:

  • namespace непустая строка или null.

GET /api/collection/root

Возвращает объект корневой коллекции со стандартными деталями.

Параметры:

  • namespace непустая строка или null.

GET /api/collection/root/items

Получить объекты, которые текущий пользователь должен видеть на своем базовом уровне. Как упоминалось ранее, коллекция “Root” на самом деле не существует как конкретная строка в базе данных приложения: это просто виртуальная коллекция, где элементы хранятся без привязки к collection_id. Однако у нее есть свой собственный набор разрешений.

Этот метод фактически будет показывать объекты без collection_id для пользователей, которые имеют разрешения на корневую коллекцию, для пользователей же без разрешений мы просто покажем объекты, которые имеют эффективное расположение “/”.

Этот метод предназначен для показа “Представления корневой папки” для текущего пользователя, поэтому он сможет увидеть все объекты верхнего уровня, к которым у него есть доступ. По умолчанию будет показано пространство имен Коллекций ‘по умолчанию’; чтобы просмотреть другое пространство имен, например snippets, вы можете передать параметр ?namespace=.

Параметры:

  • models последовательность из следующих элементов: dashboard, dataset, no_models, timeline, snippet, collection, pulse, card; может быть пустой; или один из элементов dashboard, dataset, no_models, timeline, snippet, collection, pulse, card.

  • archived допустимая логическая строка (true или false) или null.

  • namespace непустая строка или null.

  • pinned_state один из элементов is_not_pinned, is_pinned, all или null.

  • sort_column один из элементов model, name, last_edited_by, last_edited_at или null.

  • sort_direction один из элементов desc, asc или null.

GET /api/collection/root/timelines

Получить timelines основной коллекции.

Параметры:

  • include значение должно быть равно events или null.

  • archived логическое значение или null.

GET /api/collection/tree

Аналогично GET /, возвращает древовидную структуру коллекций, например:

[{:name     "A"
:below    #{:card :dataset}
:children [{:name "B"}
           {:name     "C"
            :here     #{:dataset :card}
            :below    #{:dataset :card}
            :children [{:name     "D"
                        :here     #{:dataset}
                        :children [{:name "E"}]}
                       {:name     "F"
                        :here     #{:card}
                        :children [{:name "G"}]}]}]}
{:name "H"}]

Ключи “here” и “below” указывают на типы элементов на конкретном уровне дерева (here) и в его поддереве (below).

Параметры:

  • exclude-archived логическое значение или null.

  • exclude-other-user-collections логическое значение или null.

  • namespace непустая строка или null.

  • shallow логическое значение или null.

  • collection-id целое число больше нуля или null.

POST /api/collection/

Создать новую коллекцию.

Параметры:

  • name непустая строка.

  • description непустая строка или null.

  • parent_id целое число больше нуля или null.

  • namespace непустая строка или null.

  • authority_level значение одно из official или null.

PUT /api/collection/:id

Изменить существующую коллекцию, включая ее архивирование, разархивирование или перемещение.

Параметры:

  • id целое число больше нуля.

  • name непустая строка или null.

  • color null или строка, соответствующая регулярному выражению ^#[0-9A-Fa-f]{6}$.

  • description непустая строка или null.

  • archived допустимая логическая строка (true или false) или null.

  • parent_id целое число больше нуля или null.

  • authority_level значение одно из official или null.

  • collection-updates

PUT /api/collection/graph

Выполните пакетное обновление разрешений коллекций, передав измененный граф. Эта операция перезапишет элементы графа, которые получены из запроса и оставит остальные элементы графа нетронутыми.

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

Параметры:

  • namespace непустая строка или null.

  • body карта.


<< Назад к разделу API