Коллекция¶
/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
карта.