K
Future ai卡密小铺 API卡密商城开发者文档
BASE URLhttps://tk7188.top/api.php?route=
检测服务
返回商城
Developer Reference / v10.25

Future ai卡密小铺 API

面向主站、独立商家店铺和管理后台的接口参考。所有业务接口统一通过 api.php?route=接口路径 调用,JSON 请求请使用 UTF-8 编码。

55已记录接口
JSON默认响应格式
Cookie / Bearer会话认证
HTTPS生产环境要求

接入说明

先确认请求地址、认证方式和数据格式,再调用业务接口。

认证方式

登录成功后服务端会写入 sid Cookie,并返回 64 位 sessionToken。浏览器同域请求使用 Cookie;API 客户端推荐使用 Authorization 请求头。

Authorization: Bearer <sessionToken>
X-Session-Token: <sessionToken>

请求规范

  • 普通 POST 请求使用 Content-Type: application/json;文档上传接口使用 multipart/form-data。
  • 金额输入单位为元,服务端内部以整数分保存。
  • 生产环境必须使用 HTTPS,回调地址必须为公网域名。
  • 接口失败统一返回 {"error":"错误说明"}。
逐个阅读接口看完当前接口后继续打开下一项
1 / 55

公开与初始化

无需登录即可读取商城信息、健康状态和支付结果。

4 个接口

检查 PHP、数据目录和存储文件是否可用,适合部署后验收与监控。

GET https://tk7188.top/api.php?route=health
调用示例
GET https://tk7188.top/api.php?route=health
成功响应
{
  "ok": true,
  "phpVersion": "5.6.40",
  "storage": { "readable": true, "writable": true }
}

注意:健康接口正常不代表支付配置已经完成。

返回商城名称、公告、分类、商品、登录用户和验证码配置。分站使用 merchant 参数。

GET https://tk7188.top/api.php?route=bootstrap
请求参数
字段类型必填说明
merchantstring否分站标识,例如 merchant-1
调用示例
GET https://tk7188.top/api.php?route=bootstrap
成功响应
{
  "shopName": "Future ai卡密小铺",
  "settings": { "notice": "商城公告" },
  "user": null,
  "authConfig": {
    "emailVerificationEnabled": true,
    "captchaEnabled": true
  },
  "products": [],
  "categories": []
}

注意:分站被封禁或不存在时返回 404;主站不传 merchant。

生成一次性验证码图片,验证码有效期为 300 秒。

GET https://tk7188.top/api.php?route=auth/captcha
请求参数
字段类型必填说明
purposeenum是login 或 register
调用示例
GET https://tk7188.top/api.php?route=auth/captcha
成功响应
{
  "ok": true,
  "captchaId": "7af...e90",
  "image": "data:image/bmp;base64,...",
  "expiresIn": 300
}

注意:提交登录、注册或发送邮箱验证码时同时传 captchaId 和 captchaCode。

按订单号返回脱敏后的商品订单或充值订单状态。

GET https://tk7188.top/api.php?route=order-query
请求参数
字段类型必填说明
orderNostring是平台订单号
调用示例
GET https://tk7188.top/api.php?route=order-query
成功响应
{
  "type": "order",
  "order": {
    "orderNo": "K202607290001",
    "status": "paid"
  }
}

注意:公开查询不会返回完整卡密和敏感联系方式。

认证与账户

注册、登录、找回密码、修改密码和邮箱换绑。

8 个接口

根据 purpose 发送注册、登录、找回密码或邮箱换绑验证码。

POST https://tk7188.top/api.php?route=auth/email-code
请求参数
字段类型必填说明
purposeenum是register、login、password_reset、email_change
emailstring按场景注册或换绑时的新邮箱
identifierstring按场景登录或找回密码时的用户名/邮箱
captchaIdstring除换绑外图形验证码 ID
captchaCodestring除换绑外用户输入的图形验证码
merchantSlugstring否分站注册/登录时传入
请求示例
{
  "purpose": "register",
  "email": "user@example.com",
  "captchaId": "captcha-id",
  "captchaCode": "A7K9"
}
成功响应
{
  "ok": true,
  "message": "验证码已发送",
  "email": "u***@example.com",
  "cooldown": 60
}

注意:同一邮箱 60 秒内不能重复发送;同一 IP 10 分钟最多 5 次。

创建账号并立即建立会话。SMTP 启用时必须验证邮箱。

POST https://tk7188.top/api.php?route=register
请求参数
字段类型必填说明
usernamestring是至少 3 个字符
passwordstring是至少 6 位
emailstring按配置SMTP 启用时必填
emailCodestring按配置邮箱验证码
merchantSlugstring否分站注册来源
请求示例
{
  "username": "future_user",
  "password": "StrongPassword123",
  "email": "user@example.com",
  "emailCode": "123456"
}
成功响应
{
  "ok": true,
  "sessionToken": "<64位会话令牌>",
  "user": {
    "id": 8,
    "username": "future_user",
    "isAdmin": false,
    "balanceCents": 0
  }
}

注意:浏览器端建议使用 HttpOnly Cookie;外部客户端可保存 sessionToken。

支持用户名或邮箱登录。普通用户在 SMTP 启用且已绑定邮箱时需要邮箱验证码。

POST https://tk7188.top/api.php?route=login
请求参数
字段类型必填说明
identifierstring是用户名或邮箱,也兼容 username 字段
passwordstring是账号密码
emailCodestring按配置普通用户登录邮箱验证码
merchantSlugstring否分站登录来源
请求示例
{
  "identifier": "future_user",
  "password": "StrongPassword123",
  "emailCode": "123456"
}
成功响应
{
  "ok": true,
  "sessionToken": "<64位会话令牌>",
  "user": { "id": 8, "username": "future_user" }
}

注意:失败次数过多会触发服务端登录限流;封禁账号不能使用业务功能。

只允许管理员账号登录,不要求普通用户的邮箱验证码和图形验证码。

POST https://tk7188.top/api.php?route=admin/login
请求参数
字段类型必填说明
identifierstring是管理员用户名或邮箱
passwordstring是管理员密码
请求示例
{
  "identifier": "admin",
  "password": "<管理员强密码>"
}
成功响应
{
  "ok": true,
  "sessionToken": "<64位会话令牌>",
  "user": { "isAdmin": true }
}

注意:管理员登录同样受独立防爆破限流保护。

校验原密码后修改密码,并使该账号的其他登录会话失效。

POST https://tk7188.top/api.php?route=account/password
请求参数
字段类型必填说明
oldPasswordstring是当前密码
newPasswordstring是8 至 200 位新密码
请求示例
{
  "oldPassword": "OldPassword123",
  "newPassword": "NewPassword456"
}
成功响应
{
  "ok": true,
  "sessionToken": "<新的会话令牌>",
  "user": { "id": 8 }
}

注意:调用成功后应立即用响应中的新令牌替换本地旧令牌。

使用发往新邮箱的验证码完成换绑,管理员不支持在线换绑。

POST https://tk7188.top/api.php?route=account/email
请求参数
字段类型必填说明
emailstring是未被其他账号使用的新邮箱
emailCodestring是purpose=email_change 的验证码
请求示例
{
  "email": "new@example.com",
  "emailCode": "123456"
}
成功响应
{
  "ok": true,
  "user": { "email": "new@example.com", "emailVerified": true }
}

注意:发送换绑验证码前必须已经登录。

验证账号绑定邮箱后重置普通用户密码,并注销该账号所有现有会话。

POST https://tk7188.top/api.php?route=auth/reset-password
请求参数
字段类型必填说明
identifierstring是用户名或邮箱
newPasswordstring是8 至 200 位新密码
emailCodestring是purpose=password_reset 的验证码
请求示例
{
  "identifier": "future_user",
  "newPassword": "RecoveredPassword789",
  "emailCode": "123456"
}
成功响应
{ "ok": true }

注意:管理员账号不能通过公开找回密码接口重置。

删除当前令牌对应的会话并清理认证 Cookie。

POST https://tk7188.top/api.php?route=logout
请求示例
{}
成功响应
{ "ok": true }

订单与支付

创建订单、余额购买、充值、取消订单、查询支付状态与支付回调。

6 个接口

创建主站或分站商品订单。payType=balance 时必须登录并直接扣除余额及自动发货。

POST https://tk7188.top/api.php?route=orders
请求参数
字段类型必填说明
productIdinteger是商品 ID
quantityinteger是购买数量
contactstring是收货联系方式
payTypeenum是alipay、wxpay 或 balance
merchantSlugstring分站必填分站标识
请求示例
{
  "productId": 12,
  "quantity": 1,
  "contact": "user@example.com",
  "payType": "balance",
  "merchantSlug": "merchant-1"
}
成功响应
{
  "ok": true,
  "orderNo": "K202607290001",
  "status": "paid",
  "payUrl": null,
  "delivery": ["https://delivery.example/item"]
}

注意:第三方支付返回 payUrl;余额支付成功后立即自动发货。

读取当前用户的商品订单、充值记录和历史兼容退款记录。

GET https://tk7188.top/api.php?route=orders
调用示例
GET https://tk7188.top/api.php?route=orders
成功响应
{
  "orders": [],
  "recharges": [],
  "refunds": []
}

注意:新售后退款统一通过工单处理,不再创建人工退款申请。

只允许订单本人取消未支付订单。取消不会扣减商品可售数量。

POST https://tk7188.top/api.php?route=orders/cancel
请求参数
字段类型必填说明
orderNostring是待支付订单号
请求示例
{ "orderNo": "K202607290001" }
成功响应
{
  "ok": true,
  "order": { "status": "cancelled" },
  "orders": [],
  "products": []
}

注意:已支付、已发货或已取消的订单不能重复取消。

创建 1 至 5000 元的易支付充值订单。

POST https://tk7188.top/api.php?route=recharge
请求参数
字段类型必填说明
amountnumber是充值金额,单位为元
payTypeenum是alipay 或 wxpay
请求示例
{
  "amount": 100,
  "payType": "alipay"
}
成功响应
{
  "ok": true,
  "orderNo": "R202607290001",
  "payUrl": "https://payment.example/..."
}

注意:QQ 支付已经移除。余额仅在支付回调验签成功后入账。

商品订单允许公开读取脱敏状态;充值订单必须由订单本人登录查询。

GET https://tk7188.top/api.php?route=payment/status
请求参数
字段类型必填说明
orderstring是商品订单号或 R 开头的充值订单号
调用示例
GET https://tk7188.top/api.php?route=payment/status
成功响应
{
  "ok": true,
  "type": "order",
  "order": { "status": "paid", "deliveryStatus": "delivered" }
}

注意:已登录用户只能读取自己的完整订单。

接收易支付通知,校验签名、商户号、金额和支付状态后完成充值或自动发货。

GET/POST https://tk7188.top/api.php?route=payment/notify
请求参数
字段类型必填说明
pidstring是易支付商户 ID
out_trade_nostring是本站订单号
trade_nostring是易支付交易号
trade_statusstring是TRADE_SUCCESS 或 TRADE_FINISHED
moneynumber是支付金额
signstring是易支付签名
sign_typestring否签名类型
请求示例
out_trade_no=K202607290001&trade_status=TRADE_SUCCESS&sign=<签名>
成功响应
success

注意:此接口由支付平台调用。不要在前端暴露商户密钥,也不要手工模拟成功回调。

文档兑换

购买文档商品、领取独立兑换码并生成一次性下载链接。

2 个接口

使用本人已发货订单中的 DOC- 兑换码换取下载链接。主站管理员和文件所属商家可测试自己有权限的文件。

POST https://tk7188.top/api.php?route=document/redeem
请求参数
字段类型必填说明
keystring是订单发放的 DOC- 加 24 位十六进制兑换码
请求示例
{
  "key": "DOC-0123456789ABCDEF01234567"
}
成功响应
{
  "ok": true,
  "name": "使用说明.pdf",
  "downloadUrl": "/api/document/download?token=<48位令牌>"
}

注意:普通用户必须登录,且兑换码必须原样出现在本人状态为 delivered 的订单卡密中。

使用兑换接口返回的临时令牌下载私有文件。令牌与发起兑换的用户绑定。

GET https://tk7188.top/api.php?route=document/download
请求参数
字段类型必填说明
tokenstring是document/redeem 返回的 48 位下载令牌
调用示例
GET https://tk7188.top/api.php?route=document/download
成功响应
文件二进制内容

注意:下载令牌有效期 5 分钟且只能成功使用一次;不要把令牌发送给其他人。

工单与通知

退款、发货、补发、支付等售后问题统一走工单。

5 个接口

返回当前用户创建的全部售后工单及沟通记录。

GET https://tk7188.top/api.php?route=tickets
调用示例
GET https://tk7188.top/api.php?route=tickets
成功响应
{ "tickets": [] }

创建退款、售后、发货、补发、支付或其他类型工单,可关联本人订单。

POST https://tk7188.top/api.php?route=tickets
请求参数
字段类型必填说明
categoryenum是refund、after_sales、delivery、restock、payment、other
subjectstring是标题,最长 120 字节
contentstring是说明,最长 2000 字节
orderNostring退款必填只能关联当前用户自己的订单
merchantSlug分站场景否未关联订单时指定商家
请求示例
{
  "category": "delivery",
  "subject": "支付成功但未收到卡密",
  "content": "请核查订单发货状态",
  "orderNo": "K202607290001"
}
成功响应
{
  "ok": true,
  "ticket": {
    "ticketNo": "T202607290001",
    "status": "open"
  }
}

注意:退款类工单必须关联订单;分站订单会自动进入对应商家后台。

用户回复自己的工单;主站管理员可回复主站工单并更新状态。

POST https://tk7188.top/api.php?route=tickets/reply
请求参数
字段类型必填说明
idinteger是工单 ID
contentstring是回复内容
statusenum管理员可用replied 或 closed
请求示例
{
  "id": 15,
  "content": "已补充支付截图",
  "status": "replied"
}
成功响应
{ "ok": true, "ticket": {} }

注意:分站工单必须由对应商家后台处理。

读取当前身份最近 50 条系统和工单通知。

GET https://tk7188.top/api.php?route=notifications
调用示例
GET https://tk7188.top/api.php?route=notifications
成功响应
{ "notifications": [] }

只会更新属于当前身份的通知。

POST https://tk7188.top/api.php?route=notifications/read
请求参数
字段类型必填说明
idinteger是通知 ID
请求示例
{ "id": 22 }
成功响应
{ "ok": true }

商家后台

每个商家独立管理店铺、商品、库存、SMTP、支付和工单。

14 个接口

首次调用提交入驻申请;已有申请时更新资料,驳回后再次提交会回到待审核。

POST https://tk7188.top/api.php?route=merchants
请求参数
字段类型必填说明
shopNamestring是店铺名称
contactNamestring是联系人
contactstring是联系方式
categoryenum是数字卡密、软件服务、会员权益、其他
descriptionstring是10 至 500 个字符
请求示例
{
  "shopName": "Future 软件店",
  "contactName": "店主",
  "contact": "owner@example.com",
  "category": "软件服务",
  "description": "提供正版数字软件服务"
}
成功响应
{ "ok": true, "merchant": { "status": "pending" } }

返回当前用户拥有的商家资料和审核状态。

GET https://tk7188.top/api.php?route=merchants/mine
调用示例
GET https://tk7188.top/api.php?route=merchants/mine
成功响应
{ "merchant": {} }

一次返回当前商家的资料、独立商品、订单、工单、文档、SMTP 和易支付配置。

GET https://tk7188.top/api.php?route=merchant/dashboard
调用示例
GET https://tk7188.top/api.php?route=merchant/dashboard
成功响应
{
  "merchant": {},
  "products": [],
  "orders": [],
  "tickets": [],
  "documents": [],
  "smtp": {},
  "epay": {}
}

注意:商家封禁或未审核通过时拒绝访问。

修改独立店铺名称、公告、客服说明和简介。

POST https://tk7188.top/api.php?route=merchant/settings
请求参数
字段类型必填说明
shopNamestring是店铺名称
noticestring否店铺公告
servicestring否客服说明
descriptionstring否店铺简介
请求示例
{
  "shopName": "Future 软件店",
  "notice": "每日自动发货",
  "service": "工单回复时间 9:00-22:00",
  "description": "数字商品独立店铺"
}
成功响应
{ "ok": true, "merchant": {} }

保存商家自己的商品;不读取或覆盖主站商品。传 id 时编辑已有商品。

POST https://tk7188.top/api.php?route=merchant/products
请求参数
字段类型必填说明
idinteger编辑时商品 ID
namestring是商品名称
pricenumber是销售价,单位元
descriptionstring否商品说明
categorystring否商家自定义分类
activeboolean否是否上架
请求示例
{
  "name": "软件月卡",
  "price": 29.9,
  "description": "购买后自动发货",
  "category": "月卡",
  "active": true
}
成功响应
{ "ok": true, "products": [], "shopProducts": [] }

支持逐行卡密或重复链接。codes 可为换行文本,stock 用于补齐可售数量。

POST https://tk7188.top/api.php?route=merchant/product-stock
请求参数
字段类型必填说明
productIdinteger是商家商品 ID
stockinteger是目标可售数量
codesstring否逐行卡密或链接,允许重复链接
请求示例
{
  "productId": 31,
  "stock": 3,
  "codes": "https://example.com/a\nhttps://example.com/a\nCARD-003"
}
成功响应
{ "ok": true, "products": [], "shopProducts": [] }

注意:只允许修改当前商家自己的商品库存。

软删除当前商家的商品并立即从独立店铺下架。

POST https://tk7188.top/api.php?route=merchant/products/delete
请求参数
字段类型必填说明
idinteger是商家商品 ID
请求示例
{ "id": 31 }
成功响应
{ "ok": true, "products": [], "shopProducts": [] }

注意:历史订单不会随商品删除。

读取当前商家上传的私有文件。响应仅返回文件信息和兑换码末尾提示,不返回完整兑换码。

GET https://tk7188.top/api.php?route=merchant/documents
调用示例
GET https://tk7188.top/api.php?route=merchant/documents
成功响应
{
  "documents": [
    { "id": 7, "name": "教程.pdf", "sizeBytes": 204800, "keyHint": "A1B2", "downloadCount": 0 }
  ]
}

注意:每个商家只能读取自己的文件。

使用 multipart/form-data 上传一个私有文件,并为该文件生成独立兑换码。

POST https://tk7188.top/api.php?route=merchant/documents/upload
请求参数
字段类型必填说明
filefile是上传文件;受 PHP 和 MERCHANT_DOCUMENT_MAX_BYTES 限制
请求示例
curl -X POST -H "Authorization: Bearer <sessionToken>" -F "file=@tutorial.pdf" "<BASE>/api.php?route=merchant/documents/upload"
成功响应
{
  "ok": true,
  "document": { "id": 7, "name": "tutorial.pdf", "keyHint": "A1B2" },
  "redeemKey": "DOC-0123456789ABCDEF01234567"
}

注意:完整兑换码只在上传响应中显示一次。把它添加到对应商家商品的卡密库存后再销售。

为当前商家的指定文件生成新的独立兑换码,旧兑换码立即失效。

POST https://tk7188.top/api.php?route=merchant/documents/regenerate-key
请求参数
字段类型必填说明
idinteger是商家文档 ID
请求示例
{ "id": 7 }
成功响应
{
  "ok": true,
  "document": { "id": 7, "keyHint": "C3D4" },
  "redeemKey": "DOC-FEDCBA9876543210FEDCBA98"
}

注意:重置后需同步更新对应商品尚未售出的卡密库存。

删除当前商家的私有文件并立即使对应兑换码和下载令牌失效。

POST https://tk7188.top/api.php?route=merchant/documents/delete
请求参数
字段类型必填说明
idinteger是商家文档 ID
请求示例
{ "id": 7 }
成功响应
{ "ok": true, "documents": [] }

注意:历史订单仍保留兑换码记录,但文件删除后无法继续兑换。

保存商家独立 SMTP;action=test 时只测试连接,不覆盖现有配置。

POST https://tk7188.top/api.php?route=merchant/smtp
请求参数
字段类型必填说明
actionenum是save 或 test
hoststring是SMTP 主机
portinteger是通常为 465 或 587
securestring是ssl、tls 或空
usernamestring是SMTP 用户名
passwordstring保存时SMTP 授权码
fromEmailstring是发件邮箱
请求示例
{
  "action": "test",
  "host": "smtp.example.com",
  "port": 465,
  "secure": "ssl",
  "username": "mail@example.com",
  "password": "<SMTP授权码>",
  "fromEmail": "mail@example.com"
}
成功响应
{ "test": { "ok": true, "message": "连接成功" } }

注意:响应不会返回 SMTP 明文密码。

保存分站独立商户 ID、密钥、接口地址和回调地址。

POST https://tk7188.top/api.php?route=merchant/epay
请求参数
字段类型必填说明
apiUrlurl是易支付接口地址
pidstring是商户 ID
keystring保存时商户密钥
notifyUrlurl是公网 HTTPS 回调地址
请求示例
{
  "apiUrl": "https://payment.example/",
  "pid": "<商户ID>",
  "key": "<商户密钥>",
  "notifyUrl": "https://shop.example/api.php?route=payment/notify"
}
成功响应
{ "ok": true, "epay": { "configured": true } }

注意:分站订单使用该商家配置,不使用主站易支付密钥。

商家只能回复归属自己店铺的工单并更新处理状态。

POST https://tk7188.top/api.php?route=merchant/tickets/reply
请求参数
字段类型必填说明
idinteger是工单 ID
contentstring是回复内容
statusenum否replied 或 closed
请求示例
{
  "id": 18,
  "content": "已核查并完成补发",
  "status": "closed"
}
成功响应
{ "ok": true, "ticket": {}, "tickets": [] }

主站管理

仅管理员可调用,覆盖商品、分组、用户、商家、余额和系统配置。

16 个接口

读取管理后台所需的商品、分组、用户、订单、工单、主站文档、商家、设置和统计数据。

GET https://tk7188.top/api.php?route=admin/bootstrap
调用示例
GET https://tk7188.top/api.php?route=admin/bootstrap
成功响应
{
  "products": [],
  "groups": [],
  "users": [],
  "orders": [],
  "tickets": [],
  "merchants": [],
  "documents": [],
  "settings": {},
  "stats": {}
}

注意:数据量较大,后台首次加载使用;后续操作优先使用具体接口。

保存主站商品。主站管理员不能通过该接口编辑商家独立商品。

POST https://tk7188.top/api.php?route=admin/products
请求参数
字段类型必填说明
idinteger编辑时主站商品 ID
namestring是商品名称
pricenumber是销售价
descriptionstring否商品说明
categorystring否主站分组名称
activeboolean否是否上架
请求示例
{
  "id": 12,
  "name": "AI Plus 月卡",
  "price": 39.9,
  "description": "支付后自动发货",
  "category": "AI服务",
  "active": true
}
成功响应
{ "ok": true, "products": [], "shopProducts": [] }

更新主站商品的卡密、链接和目标库存。

POST https://tk7188.top/api.php?route=admin/product-stock
请求参数
字段类型必填说明
productIdinteger是主站商品 ID
stockinteger是目标可售数量
codesstring否逐行卡密或重复链接
请求示例
{
  "productId": 12,
  "stock": 20,
  "codes": "CARD-001\nCARD-002"
}
成功响应
{ "ok": true, "products": [], "shopProducts": [] }

软删除主站商品、停止销售并保留历史订单。

POST https://tk7188.top/api.php?route=admin/products/delete
请求参数
字段类型必填说明
idinteger是主站商品 ID
请求示例
{ "id": 12 }
成功响应
{
  "ok": true,
  "products": [],
  "groups": [],
  "shopProducts": [],
  "categories": []
}

注意:不能用该接口删除商家商品。商家商品由 merchant/products/delete 删除。

读取主站管理员上传的私有文件,不包含商家文件和完整兑换码。

GET https://tk7188.top/api.php?route=admin/documents
调用示例
GET https://tk7188.top/api.php?route=admin/documents
成功响应
{
  "documents": [
    { "id": 4, "name": "主站教程.pdf", "sizeBytes": 409600, "keyHint": "9F2A", "downloadCount": 3 }
  ]
}

注意:完整兑换码不会在列表接口中重复返回。

使用 multipart/form-data 上传主站私有文件,并自动生成该文件专属的兑换码。

POST https://tk7188.top/api.php?route=admin/documents/upload
请求参数
字段类型必填说明
filefile是上传文件;可执行文件和危险扩展名会被拒绝
请求示例
curl -X POST -H "Authorization: Bearer <sessionToken>" -F "file=@guide.pdf" "<BASE>/api.php?route=admin/documents/upload"
成功响应
{
  "ok": true,
  "document": { "id": 4, "name": "guide.pdf", "keyHint": "9F2A" },
  "redeemKey": "DOC-0123456789ABCDEF01234567"
}

注意:兑换码只显示一次。应将它加入对应主站商品的卡密库存,用户购买后由订单自动发放。

为指定主站文件生成新的独立兑换码,并撤销旧兑换码及尚未使用的下载令牌。

POST https://tk7188.top/api.php?route=admin/documents/regenerate-key
请求参数
字段类型必填说明
idinteger是主站文档 ID
请求示例
{ "id": 4 }
成功响应
{
  "ok": true,
  "document": { "id": 4, "keyHint": "B7C8" },
  "redeemKey": "DOC-FEDCBA9876543210FEDCBA98"
}

注意:重置后应删除商品库存中的旧兑换码并换成新兑换码。

物理删除私有文件并将文档记录标记为删除,对应兑换码立即失效。

POST https://tk7188.top/api.php?route=admin/documents/delete
请求参数
字段类型必填说明
idinteger是主站文档 ID
请求示例
{ "id": 4 }
成功响应
{ "ok": true, "documents": [] }

注意:删除前应确认没有仍需下载的已售订单。

action=save 新增/编辑分组;action=delete 删除分组并清空关联商品的分组字段。

POST https://tk7188.top/api.php?route=admin/groups
请求参数
字段类型必填说明
actionenum是save 或 delete
idinteger编辑/删除分组 ID
namestring保存时分组名称
sortOrderinteger否排序值
请求示例
{
  "action": "save",
  "name": "AI服务",
  "sortOrder": 10
}
成功响应
{ "ok": true, "groups": [] }

注意:“默认分类”名称已停用。

对普通用户执行软删除和匿名化,同时注销其全部会话。

POST https://tk7188.top/api.php?route=admin/users/delete
请求参数
字段类型必填说明
idinteger是用户 ID
请求示例
{ "id": 8 }
成功响应
{ "ok": true, "users": [] }

注意:管理员账号、余额不为 0 或仍拥有商家店铺的用户不能删除。

设置封禁截止时间和原因;封禁期间登录后会收到提示且业务功能被拒绝。

POST https://tk7188.top/api.php?route=admin/users/ban
请求参数
字段类型必填说明
idinteger是用户 ID
actionenum是ban 或 unban
untildatetime封禁时ISO 时间或后台生成的截止时间
reasonstring封禁时封禁原因
请求示例
{
  "id": 8,
  "action": "ban",
  "until": "2026-08-05T12:00:00Z",
  "reason": "违反平台规定"
}
成功响应
{ "ok": true, "users": [] }

注意:到期后系统会自动视为解封。

按金额增加或扣减用户余额,金额在服务端以分存储。

POST https://tk7188.top/api.php?route=admin/balance
请求参数
字段类型必填说明
userIdinteger是用户 ID
amountnumber是调整金额,单位元
actionenum是recharge 或 refund/扣减操作,以后台实现为准
notestring否操作说明
请求示例
{
  "userId": 8,
  "amount": 50,
  "action": "recharge",
  "note": "后台充值"
}
成功响应
{ "ok": true, "users": [] }

注意:后台余额操作应记录原因并限制管理员权限。

审核入驻申请、修改商家资料或软删除店铺。审核通过时自动生成独立店铺标识。

POST https://tk7188.top/api.php?route=admin/merchants
请求参数
字段类型必填说明
idinteger是商家 ID
actionenum是save 或 delete
statusenum保存时pending、active、rejected、suspended
adminNotestring否审核备注
请求示例
{
  "id": 3,
  "action": "save",
  "status": "active",
  "adminNote": "资料审核通过"
}
成功响应
{ "ok": true, "merchants": [] }

设置店铺封禁时间和原因;封禁后商品下架且商家后台被拒绝访问。

POST https://tk7188.top/api.php?route=admin/merchants/ban
请求参数
字段类型必填说明
idinteger是商家 ID
actionenum是ban 或 unban
untildatetime封禁时封禁截止时间
reasonstring封禁时封禁原因
请求示例
{
  "id": 3,
  "action": "ban",
  "until": "2026-08-05T12:00:00Z",
  "reason": "店铺违规"
}
成功响应
{ "ok": true, "merchants": [] }

保存商城名称、公告、客服信息和业务配置。

POST https://tk7188.top/api.php?route=admin/settings
请求参数
字段类型必填说明
shopNamestring按页面商城名称
noticestring否首页公告
noticeEnabledboolean否是否显示公告
请求示例
{
  "shopName": "Future ai卡密小铺",
  "notice": "欢迎使用自动发货商城",
  "noticeEnabled": true
}
成功响应
{ "ok": true, "settings": {} }

注意:具体字段以 admin/bootstrap 返回的 settings 为准。

主站 SMTP 保存和连接检测,字段与 merchant/smtp 相同。

POST https://tk7188.top/api.php?route=admin/smtp
请求参数
字段类型必填说明
actionenum是save 或 test
hoststring是SMTP 主机
portinteger是SMTP 端口
securestring是ssl、tls 或空
usernamestring是SMTP 用户名
passwordstring保存时SMTP 授权码
fromEmailstring是发件邮箱
请求示例
{
  "action": "test",
  "host": "smtp.example.com",
  "port": 465,
  "secure": "ssl",
  "username": "mail@example.com",
  "password": "<SMTP授权码>",
  "fromEmail": "mail@example.com"
}
成功响应
{ "test": { "ok": true } }

注意:管理员前端和 API 响应均不应回显明文授权码。

没有找到匹配的接口,请更换关键词或请求方法。
准备阅读每次只展示一个接口,页面更清晰

主站外部服务下单

以下接口仅由主站页面调用;分站不会展示入口或提供调用权限。

服务下单流程订单查询
跨境电商服务打开 panel.php,选择服务、填写目标链接与数量,创建易支付订单;支付回调成功后提交供应商。smm-api.php?route=order&order=本地订单号
货源采购打开 wholesale.php,选择商品与规格、填写数量和支付方式;支付回调成功后使用货源余额采购。wholesale-api.php?route=order&order=本地订单号
发货信息后台“订单管理”会显示本地单号、上游单号、联系信息和供应商实际返回的激活码、兑换码、链接或密码。上游未返回的字段保持为空。

状态码与错误

业务错误使用 JSON 返回;支付回调按易支付规范返回纯文本 success 或 fail。

HTTP含义常见处理方式
200请求成功继续读取响应中的业务字段。
400参数或业务状态错误显示 error 信息并检查请求字段。
401未登录或会话已失效清理旧会话并重新登录。
403权限不足或账号/店铺被封禁不要重试越权请求,向用户展示原因。
404资源或接口不存在检查 route、资源 ID 和部署文件版本。
409用户名、邮箱或分组冲突更换唯一字段后重新提交。
410接口已停用人工退款接口已关闭,请使用售后工单。
429请求过于频繁等待 cooldown 或错误信息指定的秒数。
500/503存储、SMTP 或配置异常检查 PHP 日志、数据目录权限和后台配置。