账户管理 Web API
账户管理 Web API 对应 IBKR Web API 中的 Account Management 能力。它主要服务 Introducing Broker、Financial Advisor、机构系统和需要自动化账户运营流程的业务,不是普通个人账户用来快速下单的入口。
官方说明中,Account Management 可覆盖客户注册、账户维护、用户认证、资金与银行、报表等能力;其中部分能力需要 IBKR 审批、配置或 Sales Engineering 支持。
官方 Web API 说明中,账户管理接口属于 HTTPS / JSON 的 RESTful 接口体系,认证使用 OAuth 2.0,并要求客户端使用 private_key_jwt 方式完成客户端认证。简单说,服务端不是拿一个普通 client_secret 去换 token,而是用私钥签出 client_assertion,IBKR 再用注册过的公钥验证。
这类接入通常需要提前准备:
| 材料 | 用途 |
|---|---|
| Client ID / 应用配置 | 标识接入方应用。 |
| 私钥与公钥 | 用于 private_key_jwt 签名和验签。 |
| Redirect URI / 回调地址 | 完成 OAuth 授权流程。 |
| Scope / 权限范围 | 限定账户管理、交易或报表能力。 |
| 机构审批与配置 | 决定能否访问开户注册、资金、报表等能力。 |
因此,账户管理 Web API 更适合先理解流程、字段和风控边界。拿到接入材料后,再根据 IBKR 分配的权限范围和 schema 组织真实请求。
| 对象 | 适用性 |
|---|---|
| Introducing Broker | 适合,用于把开户链接、资料维护、资金流程接入自己的系统。 |
| Financial Advisor | 适合,用于客户账户维护、报表和部分运营流程。 |
| 机构平台 | 适合,通常需要正式审批和配置。 |
| 普通个人交易者 | 通常不作为首选;交易、行情和下单更常用 TWS API 或 Trading Web API。 |
| 能力 | 中文理解 |
|---|---|
| Client Registration | 客户注册、开户注册、申请流程。 |
| Client Account Maintenance | 客户账户资料维护,例如地址、身份、税务或账户属性更新。 |
| User Authentication | 用户认证和账户访问授权相关流程。 |
| Funding | 入金、出金、银行信息、账户间转账等资金流程。 |
| Reporting | 报表、账户状态、运营数据查询。 |
和 Trading Web API 的区别
Section titled “和 Trading Web API 的区别”| 对比项 | Trading Web API | Account Management Web API |
|---|---|---|
| 目标 | 交易、账户监控、行情、订单 | 开户、账户维护、资金与运营流程 |
| 典型用户 | 交易系统开发者、Web 后端 | IB、FA、机构平台 |
| 权限 | 账户授权、行情权限、交易权限 | 业务审批、机构权限、流程配置 |
| 风险 | 下单与交易风险 | KYC、合规、资金、客户资料风险 |
账户管理接口的字段通常比交易接口更偏业务流程:
| 字段类别 | 中文理解 |
|---|---|
| applicant / client | 申请人或客户主体信息。 |
| account | 账户类型、账户状态、账户关系。 |
| identity | 身份、证件、税务、合规资料。 |
| funding | 银行账户、入金、出金、转账。 |
| documents | 需要上传、签署或确认的文件。 |
| status | 流程状态、审批状态、错误原因。 |
请求与响应结构
Section titled “请求与响应结构”账户管理接口使用标准 HTTP method,例如 GET 查询状态、POST 提交申请或任务、PUT 更新资料。请求体通常是 JSON,响应也通常是 JSON。和 TWS API 不同,这类接口不是“安装 TWS 后本地端口就能直接调”,而是先完成 OAuth 2.0、机构审批和功能配置,再按 IBKR 分配给你的 endpoint 与 schema 发送请求。
一个账户管理请求通常由这些部分组成:
| 部分 | 中文解释 |
|---|---|
method | HTTP 方法。常见是 GET 查询、POST 创建任务、PUT 更新资料。 |
url | IBKR 分配或文档列出的 HTTPS endpoint。不同账户管理能力的路径不同,不能把交易 Web API 的路径直接套过来。 |
Authorization | Bearer ACCESS_TOKEN。这个 token 来自 OAuth 2.0 流程,不是 TWS 登录密码,也不是 Flex Token。 |
Content-Type | 提交 JSON 时通常为 application/json。上传文件或表单时可能使用其它 content type。 |
body | 申请人、账户、资金、文件、任务状态等业务字段。具体字段以审批后的 schema 为准。 |
JSON 请求体常见是分层结构,例如把客户主体、账户属性、资金信息和文件任务分开表达:
{ "client": { "type": "individual", "name": "客户姓名或主体名称" }, "account": { "accountType": "账户类型", "baseCurrency": "基础币种" }, "workflow": { "taskId": "流程任务编号", "status": "当前处理状态" }}上面只是字段分层写法,不能直接复制运行。真实 endpoint、必填字段、枚举值、文件要求和错误码,必须以 IBKR 给当前接入方开通的 Account Management schema 为准。
开发注意事项
Section titled “开发注意事项”- 这类接口不适合在没有正式权限的情况下写“可复制即运行”的示例。
- 账户管理字段涉及个人身份、税务、银行和合规资料,日志必须脱敏。
- 同一个流程可能由多个 endpoint 串联完成,不能只看单个请求是否成功。
- HTTP 200 不一定代表开户、资金或资料流程最终完成,仍要看业务状态字段。
- 生产系统要保存 request id、时间、提交人、返回状态和错误原因,便于审计。
和本站 TWS API 文档的关系
Section titled “和本站 TWS API 文档的关系”TWS API 文档解决“如何连接 TWS、查询行情、提交订单、处理回调”。账户管理 Web API 解决“如何把账户运营流程接入机构系统”。两者可以存在于同一个交易产品中,但权限、数据字段和风控边界完全不同。