Partner Slash 模块
slaunchx-partner-slash 模块是一个内部服务,位于 SlaunchX 平台(Prometheus)与 Slash 发卡合作方 API 之间,负责请求代理。它不会直接对外暴露,只会由 Prometheus 通过安全通道在内部调用。
Base URL
所有端点都挂载在以下上下文路径之下:
/partner/channel/slash例如:POST /partner/channel/slash/cards/capabilities。
SecureChannelRequest 模式
每个端点都接收一个 POST 请求,请求体使用 SecureChannelRequest<T> 包裹:
json
{
"credentials": {
"channelInstanceBizId": "slash_inst_001",
"channelApiBaseUrl": "https://api.slash.com",
"channelApiKey": "sk_live_xxx",
"channelAccountId": "acct_xxx",
"channelCardProductId": "cprod_xxx"
},
"payload": { ... }
}ChannelCredentials 字段
| Field | Type | Description |
|---|---|---|
channelInstanceBizId | string | SlaunchX 内部的渠道实例业务 ID |
channelApiBaseUrl | string | Slash API 环境的 Base URL |
channelApiKey | string | 用于认证 Slash 的 API key |
channelAccountId | string | Slash account 标识 |
channelCardProductId | string | Slash card product 标识 |
payload 字段承载具体端点所需的请求数据(类型为 T)。如果端点不需要业务载荷,则 T 为 Void,可以省略 payload。
传输安全
所有 controller 都带有 @SecureChannel 注解,用于强制 Prometheus 与该模块之间的加密传输。没有合法 secure-channel headers 的请求会被直接拒绝。
OAuth2 Token 缓存
模块内置 SlashTokenCacheService,会以 channelInstanceBizId 为键在 Redis 中缓存 OAuth2 access token,避免每次请求都重复做 token exchange。
端点域
| Domain | Path Prefix | Endpoints | Page |
|---|---|---|---|
| Accounts | /accounts | 3 | 列表、详情、余额 |
| Cards | /cards | 1 | 能力查询 |
| Card Groups | /card-groups | 6 | CRUD、消费限制、利用率 |
| Transactions | /transactions | 5 | 查询、详情、聚合、手续费明细、备注更新 |
| Transfers | /transfers | 2 | 转账、加密资产出金 |
| Virtual Accounts | /virtual-accounts | 4 | CRUD |
| OAuth2 | /oauth2 | 2 | token 交换、用户信息 |
| Webhooks | /webhooks | 3 | 列表、创建、更新 |
| Auth Webhook Config | /auth-webhook | 3 | 获取、设置、更新 |
| Legal Entities | /legal-entities | 1 | 列表 |
| Merchants | /merchants | 3 | 查询、详情、分类 |
| Developer Applications | /developer-applications | 5 | CRUD + 删除 |
| FDX | /fdx | 8 | 账户、交易、联系人、支付网络、授权同意 |
| Slash Pay | /slash-pay | 2 | Handle 列表、支付发送 |
| Token Prices | /token-prices | 2 | 列表、详情 |
| Sandbox | /sandbox/query | 1 | 通用查询 |
总计:16 个 controller,51 个端点。