skillZs
★ LIVE SKILL TAGS ★
>>> LIVE SKILLS INDEX <<<
* OPEN SOURCE *
NO LOGIN, NO TRACKING
※ REAL INSTALL DATA ※
← back to all skills
page-craft.4partners.io101 installs

pagecraft-collections

Управление коллекциями блоков PageCraft через публичный V1 API — список/просмотр/создание/переименование/удаление коллекций и наполнение их блоками (добавить, убрать, переупорядочить). Используй когда пользователь говорит «создай коллекцию», «добавь блок в коллекцию», «убери блок из коллекции», «покажи коллекции», «что в коллекции», «переименуй коллекцию», «поменяй порядок блоков в коллекции», «удали коллекцию». Вызывай через тул `Skill(pagecraft-collections)`, не через `Read .../SKILL.md`.

How do I install this agent skill?

npx skills add https://page-craft.4partners.io --skill pagecraft-collections
view source ↗

Is this agent skill safe to install?

No partner audit is available yet. Read the source before installing.

What does this agent skill do?

⚡ Этот скилл — для вызова через тул Skill(pagecraft-collections), не через Read .../SKILL.md. Если ты сюда попал через Read — остановись, вызови Skill(pagecraft-collections).

PageCraft Collections

Управление коллекциями блоков через V1 REST API: коллекция — это именованный набор блоков (как папка «избранного»). Скрипты дёргают /api/v1/collections/*.

Что это и зачем

Коллекция группирует ссылки на блоки для удобного переиспользования. Два вида:

  • private — личная коллекция владельца ключа (видна только ему).
  • global — общий набор, видный всем. Создавать глобальные может только администратор (иначе 403).

Важно — что коллекция НЕ делает: она никак не связана со страницами, сайтами и макетами. Это просто сгруппированные ссылки на блоки. Удаление коллекции не трогает сами блоки — убираются только связи. Добавление/удаление блока из коллекции тоже не меняет блок.

Это не каталог: подача блока на модерацию в глобальный каталог — отдельный скилл pagecraft-block-catalog.

Окружение

  • PAGECRAFT_API_KEY — обязательная: API-ключ pb_xxxx... (UI PageCraft → API keys).
  • PAGECRAFT_API_URL — опциональная: базовый host, по умолчанию https://page-craft.4partners.io (префикс /api/v1 добавляется автоматически). Legacy-имя PAGE_CRAFT_API (host с /api/v1) ещё поддерживается как fallback.

Скрипты

КомандаEndpointНазначение
node scripts/collections-list.mjs [--scope p/g/all] [--search S] [--limit N] [--offset N]GET /collectionsСписок (без блоков, только blocks_count).
node scripts/collections-get.mjs <id>GET /collections/{id}Полная коллекция с массивом блоков.
node scripts/collections-create.mjs <payload.json>POST /collectionsСоздать коллекцию.
node scripts/collections-update.mjs <id> <payload.json>PUT /collections/{id}Переименовать / сменить описание.
node scripts/collections-delete.mjs <id>DELETE /collections/{id}Удалить коллекцию (блоки целы).
node scripts/collections-add-blocks.mjs <id> <block_id...>POST /collections/{id}/blocksДобавить блоки.
node scripts/collections-remove-block.mjs <id> <block_id>DELETE /collections/{id}/blocks/{block_id}Убрать один блок.
node scripts/collections-reorder.mjs <id> <block_id...>PUT /collections/{id}/blocks/orderЗадать порядок блоков.

Формы payload-ов

collections-create.mjs

{ "name": "Мои любимые блоки", "description": "Блоки для лендингов", "scope": "private" }
ПолеТипОбязательноеЗаметка
namestring✓1–255 символов
descriptionstring/null—Описание
scopeprivate/global—По умолчанию private. global — только админ

collections-update.mjs

Оба поля опциональны, поле со значением null (или отсутствующее) не меняется. scope через update не меняется.

{ "name": "Новое название" }
{ "description": "Новое описание" }

Workflow

Создать коллекцию и наполнить её

# 1. Создать
echo '{"name":"Hero-секции","description":"Первые экраны"}' > /tmp/col.json
ID=$(node scripts/collections-create.mjs /tmp/col.json | jq -r '.collection.id')

# 2. Добавить блоки (id блоков — из pagecraft-api get-blocks.js)
node scripts/collections-add-blocks.mjs $ID 12 34 56

# 3. Проверить состав
node scripts/collections-get.mjs $ID

Переупорядочить блоки

# Новый порядок = порядок аргументов
node scripts/collections-reorder.mjs 7 56 12 34

Убрать блок / удалить коллекцию

node scripts/collections-remove-block.mjs 7 12   # блок 12 остаётся в системе, уходит из коллекции
node scripts/collections-delete.mjs 7            # коллекция удалена, блоки целы

Формат ответа

  • list → { data: [...], total, limit, offset }. Элементы без blocks (blocks: null), есть blocks_count.
  • get / create / update / add / remove / reorder → { "collection": { ..., "blocks": [...] } } (для delete — { "success": true }).
  • Поле is_owner показывает, владеет ли текущий ключ коллекцией (для глобальных у не-владельца будет false → редактировать нельзя).

Композиция с другими скиллами

  • pagecraft-api (get-blocks.js) — узнать id блоков, которые кладёшь в коллекцию.
  • pagecraft-block-catalog — это про модерацию блока в глобальный каталог, не путать с коллекциями.

Коды ошибок

КодПричина
400Невалидный payload (например, битый JSON тела)
401Нет / неверный PAGECRAFT_API_KEY
403Создание scope=global не администратором; правка чужой/глобальной коллекции
404Коллекция не найдена / не принадлежит владельцу ключа
422Пустой name, пустой block_ids, нецелые/отрицательные id блоков

Add the canonical catalog link to the repository README so users can inspect current installs and available audits. The publishing guide covers the complete discovery path.

<a href="https://skillzs.dev/skills/page-craft.4partners.io/pagecraft-collections">View pagecraft-collections on skillZs</a>