WhyPik DocsVề trang chính

Lập trình viên / Tra cứu

REST quản lý Database và import

Dành cho backend/CLI của chủ Project, tách khỏi runtime Data API của người dùng ứng dụng.

Base và quyền

Base /api/v1/cloud/projects/PROJECT_UUID/database. Authorization: Bearer wpc_... với scope database:read, database:write, database:data:read, database:data:write, database:backup phù hợp. Key cần quyền trên đúng account/project. Không đưa key quản lý vào frontend. Dashboard dùng session+CSRF; staff dùng reason và quyền riêng.

Cấu trúc và thao tác

Method / suffixHành động
GET /Overview, definition/revision, quota và write_token nếu đủ quyền
POST /Kích hoạt, Idempotency-Key UUID
DELETE /Xóa theo quy trình xác nhận; không xóa trực tiếp PostgreSQL
PATCH /schema{revision,definition,...}: tạo operation có Idempotency-Key
POST /import/schema-preview{revision,format:"sql"|"json",source}: không ghi; trả definition/tables/columns
GET /typesTypeScript types của schema
POST /simulateMô phỏng policy
GET /operationsTiến độ/lỗi thao tác
POST /operations/ID/cancelHủy khi operation cho phép

Dữ liệu

Method / suffixHành động
POST /data/TABLE/selectĐọc quản lý với revision; quyền riêng, giới hạn riêng
POST /data/TABLE/exportXuất dữ liệu có giới hạn/paging
POST /data/TABLE/insert{revision,write_token,values}
POST /data/TABLE/update{revision,write_token,before,values} chống ghi đè dòng đã đổi
POST /data/TABLE/delete{revision,write_token,before}
POST /data/TABLE/import-preview{revision,format:"csv"|"json",rows:[...]} → rows đã kiểm tra/chuẩn hóa
POST /data/TABLE/import{revision,write_token,rows:[...]} + Idempotency-Key UUID; atomic theo lô

Receipt và giới hạn

Lấy write_token mới từ overview trước khi bắt đầu. Với mutation, giữ đúng request/body/write_token/Idempotency-Key khi mất response. Thay nội dung phải dùng key mới sau khi biết trạng thái lô cũ. Receipt không phải lịch sử vĩnh viễn; hết hạn cần đối soát.

Management đọc/ghi dùng budget vận hành riêng, không phải cách vượt quota Data API cho sản phẩm. Import tối đa 100 dòng/request (hoặc config thấp hơn), 256 KiB request; chịu quota dung lượng thật. Preview kiểm tra kiểu; unique/FK kiểm tra lúc commit.

Backup và keys

GET/POST /backups; PATCH /backups/settings; DELETE /backups/ID (xem metadata qua GET /backups); POST /backups/ID/retry hoặc /restore. GET /generations; DELETE /generations/ID; POST /generations/ID/rollback. Các thao tác recovery yêu cầu điều kiện/xác nhận riêng, xem UI trước khi tự động hóa. GET/POST /keys; DELETE /keys/ID; secret chỉ được hiển thị một lần.

Backup cần database:backup cùng database:read. Recovery còn cần database:write. Chỉ chọn scopes thao tác thực sự cần.

Trong bài này