# Webiny API Aco Catalog

API, ACO, 32 abstractions.

- Repository: https://github.com/webiny/webiny-js (8051 stars)
- Category: Engineering
- License: see repository
- Last updated: 2026-10-30
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add webiny/webiny-js --skill webiny-api-aco-catalog -g -a claude-code -y`
Codex: `npx skills add webiny/webiny-js --skill webiny-api-aco-catalog -g -a codex -y`
Cursor: `npx skills add webiny/webiny-js --skill webiny-api-aco-catalog -g -a cursor -y`
Gemini CLI: `npx skills add webiny/webiny-js --skill webiny-api-aco-catalog -g -a gemini-cli -y`

## Description

API, ACO, 32 abstractions. Folder event handlers and use cases.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# API, ACO

Folder event handlers and use cases.

## How to Use

1. Find the abstraction you need below
2. You MUST read the source file to get the exact interface and types!
3. Import: `import { Name } from "<importPath>";`
4. See `webiny-use-case-pattern` or `webiny-event-handler-pattern` skills for implementation patterns

## Abstractions

---

**Name:** `CreateFlpUseCase`
**Import:** `import { CreateFlpUseCase } from "webiny/api/aco/flp"`
**Source:** `@webiny/api-aco/features/flp/CreateFlp/abstractions.ts`
**Description:** Create a folder-level permission.

---

**Name:** `CreateFolderRepository`
**Import:** `import { CreateFolderRepository } from "webiny/api/aco/folder"`
**Source:** `@webiny/api-aco/features/folder/CreateFolder/abstractions.ts`
**Description:** Persist a newly created folder.

---

**Name:** `CreateFolderUseCase`
**Import:** `import { CreateFolderUseCase } from "webiny/api/aco/folder"`
**Source:** `@webiny/api-aco/features/folder/CreateFolder/abstractions.ts`
**Description:** Create a new folder.

---

**Name:** `DeleteFlpUseCase`
**Import:** `import { DeleteFlpUseCase } from "webiny/api/aco/flp"`
**Source:** `@webiny/api-aco/features/flp/DeleteFlp/abstractions.ts`
**Description:** Delete a folder-level permission.

---

**Name:** `DeleteFolderRepository`
**Import:** `import { DeleteFolderRepository } from "webiny/api/aco/folder"`
**Source:** `@webiny/api-aco/features/folder/DeleteFolder/abstractions.ts`
**Description:** Persist folder deletion.

---

**Name:** `DeleteFolderUseCase`
**Import:** `import { DeleteFolderUseCase } from "webiny/api/aco/folder"`
**Source:** `@webiny/api-aco/features/folder/DeleteFolder/abstractions.ts`
**Description:** Delete a folder.

---

**Name:** `EnsureFolderIsEmpty`
**Import:** `import { EnsureFolderIsEmpty } from "webiny/api/aco/folder"`
**Source:** `@webiny/api-aco/features/folder/EnsureFolderIsEmpty/abstractions.ts`
**Description:** Verify a folder has no children before deletion.

---

The rest: https://github.com/webiny/webiny-js/blob/HEAD/skills/user-skills/generated/api/aco/SKILL.md
