写点什么

Capital One 推出开发者平台

2016 年 4 月 10 日

在上个月,Capital One 推出了 DevExchange Beta 开发者网站与初期的 API。

该平台上首次推出的三个 API(都处于 beta 阶段)所提供的功能已“超越了银行业务的范畴”,同时还专注于与客户在 Capital One 账号体验有关的其他组件。

这个平台上目前主打的产品是 SwiftID ,这是一个双重身份验证(two-factor authentication)产品,能够与 Capital One 的 iOS 应用进行集成(对 Android 的支持已在计划中)。这套 API 的目标是让开发者能够为 Capital One 的移动应用用户提供一种更平滑、并且更安全的登录方式。

双重身份验证系统通常用于在登录流程中对用户身份进行进一步确认。Capital One 还强调了其他一些目标使用场景,例如在购物时对结账操作的确认,签定发票或估价,对内容共享的确认等等。

该 API 是由一个分为两部分的请求 / 响应模式所构成的:

  1. 开发者发送一个 SwiftID “task”,该 task 将展现给 Capital One 移动应用的用户
  2. 当用户对该请求进行响应时,SwiftID 会通过开发者设定的 Webhook 终结点发送通知

SwiftID task 是一个简单的 JSON 文档,它将通过 POST 方法发送至 /identity/enhanced-authentication/tasks:

复制代码
{
"message": {
"clientApp": "PixRMine",
"action":"share your pictures",
"requestorName":"with Snoopy"
}
}

如果执行成功,则返回的响应中将包括一个 taskReferenceId,当用户接受或拒绝某个请求时,所发送的 Webhook 回调响应需要与该 taskReferenceId 进行匹配。

移动应用的用户将从以上 JSON 文档中得到相应的值,通过以下文本模板展现:

复制代码
{clientApp} is requesting approval to {action} {requestorName}. Do you approve?

当用户发出响应时,一个与之类似的小 JSON 文档会发送给已注册的 Webhook 回调终结点,其中包含了 taskReferenceId 以及一个 taskStatus,其值为 APPROVED 或 REJECTED。一旦开发者的应用收到了该响应,就可以相应地做出回应。

SwiftID 是在目前三个可用的 API 中最容易让开发者在生产环境中使用的API:“任何第三方开发者都可以申请生成环境中的访问与许可,他们需要遵循我们在可接受用例方面设定的标准。”

其余两个API 则对开发者提出了更高的要求,因为他们能够访问Capital One 客户的私密信息。举例来说,开发者通过 Rewards API 可以访问某个 Capital One 卡持有者账户中的积分或现金奖励。该 API 目前还不支持以现金方式提取奖励,但已计划在未来的版本中加入这一功能。

该平台提供了一些测试数据,可在某几个账号中随意进行与奖励相关的操作,此外还提供了一个测试账号以模仿欺诈场景。Capital One 提供了一个基于 Apache License 2.0 许可的 Node参考应用,开发者可利用它快速地进行Rewards API 的开发。不过,开发者可能需要慎重地思考一下,因为这个API 的使用准则要高得多:“对于在生产环境中的访问请求需要逐个分析,是否批准请求取决于开发者是否遵循了可接受用例的标准。”与之类似, Credit Offers API 只限于参加了 Affiliate 项目的成员访问:“你必须通过 Capital One 与第三方 CJ Affiliate 才能够加入 Affiliate 项目。”

这两个 API 对生产环境中的访问提出了更高等级的要求,这一点并不令人吃惊,毕竟通过这些 API 所发送与获取的内容本身就更为私密。举例来说:“你将通过传递客户的名字、地址以及社会保险号(可以是完整的号码或是最后四位号码)等信息作为查询参数以认证该客户。”

客户可能会对于是否需要成为Capital One 的客户存在疑问,其实这套API 的目标之一就是让Capital One 的信用卡能够为API 使用者自己的客户所用,因此目前并没有这方面的要求。

所返回的信息包括预审资格的声明,(有可能)还包括一系列可用的产品信息,例如订购的APR、余额结转的条款,以及会员年费等等。

这三个API 都提供了沙盒环境( https://api-sandbox.capitalone.com )以及生产环境( https://api.capitalone.com )的终结点。他们使用了相同的基于OAuth 2.0 的授权流程,并且在 Capital One 的 GitHub 账号下提供了一些参考应用。

开发者可能同样会对 Capital One 的其他开源产品感兴趣,例如 Hygieia DevOps 仪表板

查看英文原文 Capital One Launches Developer Platform

2016 年 4 月 10 日 19:002801
用户头像

发布了 428 篇内容, 共 148.6 次阅读, 收获喜欢 20 次。

关注

评论

发布
暂无评论
发现更多内容

「架构师训练营 4 期」 第三周 - 002

凯迪

精选算法面试-哈希表

李孟

面试 算法 哈希 28天写作

28天瞎写的第二百二十天:独立设计维哈柯文云输入法的故事

树上

28天写作

Windows文件夹还能更改颜色?

程序员的时光

程序员 日更挑战 28天写作

项目管理系列(4)-另类减肥法

Ian哥

28天写作

读《一入阿里“误终生”》,我喜欢上了小马哥

李忠良

28天写作

实时数仓|架构设计与技术选型

大数据老哥

大数据 实时数仓

聊聊“公平感”

熊斌

企业文化 管理 学习笔记 管理工具 28天写作

我做了回视频,告诉你需要用到哪些工具

和牛

工具

OSPF的八大特点介绍

网络技术平台

阿里P8大神分享的并发编程笔记,颠覆了我以往“正确“的认知

云流

Java 程序员 面试 并发编程

绩效管理,上下同心者胜(一)

一笑

管理 绩效 28天写作

自动驾驶感知功能一般都有啥?(28天写作 Day9/28)

mtfelix

自动驾驶 28天写作

HDFS杂谈:ACL访问控制列表

罗小龙

hadoop hdfs acl 28天写作

demo

rainbow

架构师训练营第十三周作业

丁乐洪

mvn install & mvn package

哼干嘛

一篇让你彻底理解网关是什么的文章

Java架构师迁哥

Redis布隆过滤器原理与实践

云流

Java redis 面试

智能合约业务场景探索(一)

石君

智能合约 28天写作

使用DevSecOps保护CI / CD管道

啸天

DevSecOps 应用安全 开发安全

不确定怎么选择,该怎么办?

Justin

不确定性 心理学 决策 28天写作

Spring源码-@Configuration注解解析

魔曦

股票作手回忆录读书笔记

.

28天写作

生产服务器内存泄漏的排查过程与优化解决方案

冰三郎

Java jdk 问题排查 jetty

【计算机组成原理】05 - 存储器层次结构

brave heart

计算机组成原理 28天写作

药物研发的商业模式问题

lidaobing

28天写作 药物研发

第二课@听课笔记

糯米~

日语复习 Day03【~あまり(に)】

Tango

日更挑战 日语语法 程序员日语

春天到底会在何时抵达「幻想短篇 9/28」

道伟

28天写作

微信视频号知识地图 | 视频号28天(10)

赵新龙

28天写作

Capital One推出开发者平台-InfoQ