Коллекция¶
/api/collection
методы. По умолчанию эти методы работают с коллекциями в пространстве имен ‘default’, которое содержит такие вещи, как панели инструментов и карточки. Также существуют другие пространства имен коллекций, такие как :snippet (в интерфейсе пользователя называется “Папки сниппетов”). Эти пространства имен являются полностью независимыми иерархиями. Чтобы использовать эти конечные точки для других пространств имен коллекций, вы можете передать параметр ?namespace= (например, ?namespace=snippet).
GET /api/collection/
¶
Получить список всех коллекций, для которых текущий пользователь имеет разрешения на чтение (свойство :can_write возвращается как дополнительное свойство каждой коллекции, так что вы можете узнать, над какой из них у вас есть разрешения на запись). По умолчанию возвращаются неархивированные коллекции, но вместо этого вы можете показать архивные, передав ?archived=true.
Пользователь администратор может видеть все коллекции. Чтобы скрыть коллекции других пользователей вы можете передать ?exclude-other-user-collections=true
Параметры:¶
archived
логическое значение, может быть пустым.exclude-other-user-collections
логическое значение, может быть пустым.namespace
непустая строка или null.
GET /api/collection/:id
¶
Получить конкретную коллекцию с добавленными стандартными данными.
Параметры:¶
id
целое число больше нуля.
GET /api/collection/:id/items
¶
Получить определенные элементы коллекции со следующими параметрами:
models
- включает только объекты определенного наборамоделей
. Если не указано, возвращает объекты всех моделейarchived
- когдаtrue
, возвращать заархивированные объекты вместо разархивированных. По умолчанию -false
.pinned_state
- когдаis_pinned
, возвращать только закрепленные объекты.когда `is_not_pinned`, возвращать только незакрепленные объекты. когда `all`, вернуть все. Является значением по умолчанию.
Параметры:¶
id
целое число больше нуля.models
Значение может быть пустым, а если не пустое, должно удовлетворять одному из следующих требований: 1) Значение является массивом, каждый элемент которого должен быть одним из следующих:card
,collection
,dashboard
,dataset
,no_models
,pulse
,snippet
,timeline
. 2) значение должно быть одним из:card
,collection
,dashboard
,dataset
,no_models
,pulse
,snippet
,timeline
.archived
логическое значение, может быть пустым.pinned_state
Значение может быть пустым, а если не пустое, значение должно быть одним из:all
,is_not_pinned
,is_pinned
.sort_column
Значение может быть пустым, а если не пустое, значение должно быть одним из:last_edited_at
,last_edited_by
,model
,name
.sort_direction
Значение может быть пустым, а если не пустое, значение должно быть одним из:asc
,desc
.
GET /api/collection/:id/timelines
¶
Получить timelines
конкретной коллекции.
Параметры:¶
id
целое число больше нуля.include
значение должно быть равноevents
, может быть пустым.archived
логическое значение, может быть пустым.
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
Значение может быть пустым, а если не пустое, значение должно отвечать следующим требованиям: 1) Значение должно представлять собой массив из следующих элементов:app
,card
,collection
,dashboard
,dataset
,no_models
,page
,pulse
,snippet
,timeline
. 2) значение должно быть одним из:app
,card
,collection
,dashboard
,dataset
,no_models
,page
,pulse
,snippet
,timeline
.archived
логическое значение, может быть пустым.namespace
непустая строка или null.pinned_state
Значение может быть пустым, а если не пустое, значение должно быть одним из:all
,is_not_pinned
,is_pinned
.sort_column
Значение может быть пустым, а если не пустое, значение должно быть одним из:last_edited_at
,last_edited_by
,model
,name
.sort_direction
Значение может быть пустым, а если не пустое, значение должно быть одним из:asc
,desc
.
GET /api/collection/root/timelines
¶
Получить timelines основной коллекции.
Параметры:¶
include
значение должно быть равноevents
, может быть пустым.archived
логическое значение, может быть пустым.
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
логическое значение, может быть пустым.exclude-other-user-collections
логическое значение, может быть пустым.namespace
непустая строка или null.
POST /api/collection/
¶
Создать новую коллекцию.
Параметры:¶
name
непустая строка.color
строка, соответствующая регулярному выражению^#[0-9A-Fa-f]{6}$
.description
непустая строка или null.parent_id
целое число больше нуля или null.namespace
непустая строка или null.authority_level
Значение может быть пустым, а если не пустое, значение должно быть одним из:official
.
PUT /api/collection/:id
¶
Изменить существующую коллекцию, включая ее архивирование, разархивирование или перемещение.
Параметры:¶
id
name
непустая строка или null.color
null или строка, соответствующая регулярному выражению^#[0-9A-Fa-f]{6}$
.description
непустая строка или null.archived
логическое значение, может быть пустым.parent_id
целое число больше нуля или null.authority_level
Значение может быть пустым, а если не пустое, значение должно быть одним из:official
.collection-updates
PUT /api/collection/graph
¶
Выполните пакетное обновление разрешений коллекций, передав измененный граф. Эта операция перезапишет элементы графа, которые получены из запроса и оставит остальные элементы графа нетронутыми.
Вы должны обладать правами суперпользователя, чтобы использовать этот метод.
Параметры:¶
namespace
непустая строка или null.body
карта.