Skip to main content

pb-api

Operate PocketBase via its REST API. Use for CRUD operations on collections, authentication, querying records with filters, and managing PocketBase data.

설치로 이동

소스 정보

저장소
spinspire/recipes
최근 소스 활동
2026년 5월 5일 13:57
감지된 SKILL.md 언어
영어
스타
16
포크
2

설치 방법

기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.

소스 파일 검토

설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.

SKILL.md 표시 중

SKILL.md
소스 지침 · 읽기 전용 미리보기
name
pb-api
description
Operate PocketBase via its REST API. Use for CRUD operations on collections, authentication, querying records with filters, and managing PocketBase data.
license
MIT
allowed-tools
Bash, curl
# PocketBase API Reference: https://pocketbase.io/docs/ Operate PocketBase via its REST API. ## Credentials Create `.env` from `.env.example` (never commit `.env`): ```bash PB_URL=http://localhost:8090 PB_SUPERUSER_EMAIL=admin@example.com PB_SUPERUSER_PASSWORD=your-password ``` If credentials aren't available via env vars, ask user explicitly before proceeding. ## Quick Start ```bash # Auth curl -X POST http://localhost:8090/api/collections/_superusers/auth \ -H 'Content-Type: application/json' \ -d '{"identity":"admin@example.com","password":"secret"}' # List records curl http://localhost:8090/api/collections/posts/records \ -H 'Authorization: Bearer TOKEN' # Filter records curl "http://localhost:8090/api/collections/posts/records?filter=status='published'&sort=-created&expand=author" ``` ## Key Endpoints | Method | Endpoint | Purpose | |--------|----------|---------| | POST | `/api/collections/:collection/auth` | Auth with password | | POST | `/api/collections/:collection/auth-with-password` | Login | | GET | `/api/collections/:collection/records` | List records | | POST | `/api/collections/:collection/records` | Create record | | PATCH | `/api/collections/:collection/records/:id` | Update record | | DELETE | `/api/collections/:collection/records/:id` | Delete record | ## Filter Syntax ``` status = 'published' author.id = 'abc123' created >= '2024-01-01' user.name ~ 'john*' ``` Use `@collection.name.field` for cross-collection filters. ## SDK Usage ```typescript import PocketBase from 'pocketbase' const pb = new PocketBase('http://localhost:8090') await pb.collection('posts').authWithPassword('user@test.com', 'secret') // List with filter const records = await pb.collection('posts').getList(1, 50, { filter: "status = 'published'", sort: '-created', expand: 'author,tags' }) ``` ## API Rules - `null` → superuser only - `""` → public access - Start locked, open selectively - Use `@request.auth`, `@collection`, `@now` in rules
GitHub에서 보기