# 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.

Nguồn: https://whypik.com/docs/management-api
Nhóm: Lập trình viên
Phiên bản tài liệu: 2026-10-14.10
Ngôn ngữ: vi

## Base và quyền

Liên kết mục: https://whypik.com/docs/management-api#section-0

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

Liên kết mục: https://whypik.com/docs/management-api#section-1

| Method / suffix | Hà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 /types | TypeScript types của schema |
| POST /simulate | Mô phỏng policy |
| GET /operations | Tiến độ/lỗi thao tác |
| POST /operations/ID/cancel | Hủy khi operation cho phép |


## Dữ liệu

Liên kết mục: https://whypik.com/docs/management-api#section-2

| Method / suffix | Hà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/export | Xuấ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

Liên kết mục: https://whypik.com/docs/management-api#section-3

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

Liên kết mục: https://whypik.com/docs/management-api#section-4

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.


## Đọc tiếp

- [Nhập JSON, SQL và dữ liệu có sẵn](https://whypik.com/docs/database-import)
- [API Hosting, Storage và Project](https://whypik.com/docs/cloud-api)
- [Backup, khôi phục và lịch sử Database](https://whypik.com/docs/database-recovery)
- [Bắt đầu với Database Migration](https://whypik.com/docs/data-migrations)
