获取client credentials令牌后,如何通过Jack Henry Consumer API注册沙箱用户?
Jack Henry Consumer API沙箱用户注册问题与解决方案
背景
我正在沙箱环境中使用Jack Henry的Consumer API,已通过client_credentials流程成功获取访问令牌:
curl -X POST https://auth.banno.com/oauth/token \ -H "Content-Type: application/x-www-form-urlencoded" \ -d "grant_type=client_credentials" \ -d "client_id=MY_CLIENT_ID" \ -d "client_secret=MY_CLIENT_SECRET" \ -d "scope=https://api.banno.com/consumer/auth/user.profile.readonly"
现在我想在沙箱中注册新用户,但文档未明确说明以下内容:
- 用户注册需调用哪个端点
- 请求所需的负载和请求头
client_credentials流程是否足够,还是需要其他认证流程
请问是否有人成功在沙箱中完成用户注册?希望能提供可用示例或指导。
(文档链接为英文:https://jackhenry.dev/open-api-docs/consumer-api/)
解决方案
1. 注册端点
沙箱环境下注册新用户需调用 POST /consumer/users 端点,完整请求URL为:https://api.banno.com/consumer/users
2. 请求头与负载要求
请求头
必须包含两个核心头信息:
Authorization: Bearer {你的访问令牌}:用于身份认证Content-Type: application/json:指定请求体格式为JSON
请求负载示例
{ "firstName": "张三", "lastName": "李四", "email": "zhangsan.lisi@example.com", "phoneNumber": "+1234567890", "address": { "street": "123 Main St", "city": "Anytown", "state": "CA", "postalCode": "12345", "country": "US" }, "dateOfBirth": "1990-01-01", "ssnLastFour": "1234" }
注意:沙箱环境对部分字段有测试专用规则,比如SSN后四位可使用通用测试值,具体以沙箱配置文档为准。
3. 认证流程说明
client_credentials流程完全满足沙箱内用户注册的需求,但需要确保你的访问令牌包含**https://api.banno.com/consumer/users.write**权限范围。如果之前获取令牌时的scope未包含该权限,需重新请求令牌,调整scope参数如下:
-d "scope=https://api.banno.com/consumer/auth/user.profile.readonly https://api.banno.com/consumer/users.write"
完整请求示例
curl -X POST https://api.banno.com/consumer/users \ -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "firstName": "张三", "lastName": "李四", "email": "zhangsan.lisi@example.com", "phoneNumber": "+1234567890", "address": { "street": "123 Main St", "city": "Anytown", "state": "CA", "postalCode": "12345", "country": "US" }, "dateOfBirth": "1990-01-01", "ssnLastFour": "1234" }'
内容的提问来源于stack exchange,提问作者iamnabink
相关产品推荐
相关产品推荐

