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
آخر نشاط في المصدر
٥ مايو ٢٠٢٦ في ١٣:٥٧
لغة SKILL.md المكتشفة
الإنجليزية
النجوم
١٦
التفرعات
٢

خيارات التثبيت

يُحدَّد 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