SQLPub API 使用指南
SQLPub 提供 REST API,方便开发者通过程序查询和执行 SQL。API Key 在控制台 个人中心 → 密钥管理(/account/apikey)中创建和管理。
MySQL 与 PostgreSQL 使用不同路径,请勿混用。
创建 API Key
- 登录 控制台。
- 进入 个人中心 → 密钥管理。
- 点击创建,设置权限:
- query:只读查询
- execute:执行写操作
- 妥善保存 Key。
创建条件:账号下需有正常状态的付费 MySQL 共享库(基础版等),或正常状态的 PostgreSQL 共享库。每账号最多 2 个 Key。
认证
所有请求需在 Header 中携带 API Key:
Authorization: Bearer <your_api_key>
Content-Type: application/json
基础 URL
https://api.sqlpub.com/api/v1
MySQL 共享库
查询
POST /databases/{database_name}/query
curl -X POST "https://api.sqlpub.com/api/v1/databases/my_db/query" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"sql": "SELECT * FROM users", "current": 1, "pageSize": 10}'
- Body:
sql、current、pageSize(必填;服务端自动拼接LIMIT,SQL 中勿再写LIMIT) - 成功时
data为行对象数组
执行
POST /databases/{database_name}/execute
curl -X POST "https://api.sqlpub.com/api/v1/databases/my_db/execute" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"sql": "INSERT INTO users (name) VALUES (\"test\")"}'
- 成功时
data为{ "rowsAffected": 1, "lastInsertId": 0 }
PostgreSQL 共享库
路径前缀为 /pgsql,与 MySQL 隔离。
查询
POST /pgsql/databases/{database_name}/query
curl -X POST "https://api.sqlpub.com/api/v1/pgsql/databases/my_pg/query" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"sql": "SELECT * FROM items", "current": 1, "pageSize": 10}'
- Body 同 MySQL:
sql、current、pageSize;服务端拼接LIMIT n OFFSET m,SQL 中勿再写LIMIT - 成功时
data为行对象数组 - 时间列:
timestamp返回墙钟字符串(如2026-10-15 21:29:31.51141);timestamptz返回带偏移的 RFC3339(如...+08:00) - 默认 schema 为
public;其它 schema 请写schema.table
执行
POST /pgsql/databases/{database_name}/execute
curl -X POST "https://api.sqlpub.com/api/v1/pgsql/databases/my_pg/execute" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"sql": "INSERT INTO items(name) VALUES('\''a'\'') RETURNING id"}'
- 成功时
data为{ "rowsAffected": 1, "rows": [ ... ] } - 无
RETURNING时rows为空数组[] - 有
RETURNING时,返回行在rows中(不提供lastInsertId,请用RETURNING取主键)
注意事项
- API Key 请妥善保管,不要提交到代码仓库。
- 可在密钥管理页面随时启用、禁用或删除 Key;权限不足时返回 403。
- 高频请求请做好节流,避免触发限流。
- 控制台密钥管理页面提供调用示例。
相关文档
- 共享实例-PostgreSQL
- 共享实例-MySQL
- 账号与账单 — 密钥管理入口
- Web SQL 客户端