沙盒与正式环境(账户模式)

“沙盒”在 MorisBox 中有两种不同含义:

概念含义
部署主机共享环境(api.morisbox.com、合作伙伴中心和客户端应用)
账户沙盒按合作伙伴配置:外发消息仅限一个测试号码

本页介绍账户的沙盒 / 正式环境模式


默认值:沙盒

每个新合作伙伴都从沙盒开始:

  • 只能向一个允许的 E.164 号码发送消息(sandbox_allowed_phone
  • 禁止广播
  • 流程邀请和客服聊天遵循相同的号码限制
  • seed360 平台合作伙伴始终处于正式环境(OTP / 系统)

配置测试号码

合作伙伴中心 → 设置 → 沙盒 / 正式环境,或调用:

PUT /api/v1/settings/sandbox
Authorization: Bearer sk_…
Content-Type: application/json

{
  "sandbox_allowed_phone": "+228XXXXXXXX"
}

然后:

POST /api/v1/messages
Authorization: Bearer sk_…
Content-Type: application/json

{
  "phone": "+228XXXXXXXX",
  "body": "Hello sandbox"
}

向任何其他号码发送都会返回 403,且 error.code = sandbox_restricted


申请正式环境

准备好接收生产流量时:

POST /api/v1/settings/sandbox/request-live
Authorization: Bearer sk_…
Content-Type: application/json

{
  "note": "Production launch for SEED notifications"
}

该申请必须由 MorisBox 平台管理员批准。在批准之前,您仍处于沙盒模式。

合作伙伴中心:沙盒 / 正式环境 → 申请正式环境


管理(平台合作伙伴)

平台运营人员可以:

操作效果
批准正式环境sandbox_mode=false
拒绝退出保持沙盒模式,退出状态为 rejected
重置沙盒强制恢复沙盒模式(例如发生 KYC 问题后),同时保留测试号码

API(seed360 管理员密钥):

GET  /api/v1/admin/sandbox
POST /api/v1/admin/sandbox/partners/{id}/approve-live
POST /api/v1/admin/sandbox/partners/{id}/reject-live
POST /api/v1/admin/sandbox/partners/{id}/reset

合作伙伴中心:沙盒管理(仅限平台)。


主机(部署)

服务URL
合作伙伴 APIhttps://api.morisbox.com/api/v1
合作伙伴中心https://partner.morisbox.com
合作伙伴文档https://docs.morisbox.com/partners
开发者文档https://developers.morisbox.com/developers
客户端应用https://morisbox.com

不存在共享的公共 API 密钥。每个合作伙伴使用自己的凭证。


合作伙伴冒烟测试清单

  1. 新合作伙伴 → 默认为沙盒
  2. 未配置允许号码时调用 POST /messages403 sandbox_restricted
  3. 设置允许号码 → 向该号码发送 → 201
  4. 向其他号码发送 → 403
  5. 在沙盒中调用 POST /broadcasts403
  6. 申请正式环境 → 管理员批准 → 可向任意号码发送

合作伙伴 curl(沙盒)

export SEED360_API_BASE="https://api.morisbox.com/api/v1"
export SEED360_API_KEY="sk_…"

curl -sS -X PUT "$SEED360_API_BASE/settings/sandbox" \
  -H "Authorization: Bearer $SEED360_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"sandbox_allowed_phone":"+228XXXXXXXX"}'

curl -sS -X POST "$SEED360_API_BASE/messages" \
  -H "Authorization: Bearer $SEED360_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"phone":"+228XXXXXXXX","body":"Hello MorisBox"}'