文/刁毅刚
开放API服务是指将网络服务能力(如内容资源、应用资源和社交关系资源)用数据接口封装并开放给第三方开发者调用的过程,即Open API(Open Application Programming Interface)。与ICT领域中API的传统定义不同的是,Open API是以使用者为中心的,其应用模式是借助广大的第三方力量不断丰富和完善应用,进而提高用户黏性,提升用户的参与度和耦合度,从而逐渐构建起一个应用生态。2005 年,美国的谷歌公司首先开放地图API,此后,各类Open API 如雨后春笋般出现,主要包括搜索类(Google Search API、Yahoo Search API 等)、文字咨询类(Google Reader、抓虾、鲜果等)、多媒体类(Flickr、Youtube等)、地理信息类(Google Earth、Google Maps 等)、用户关系类(Open Social、Facebook、MySpace等系列API)、电子商务类(Amazon、淘宝系列开放API)等等。
当前,API成为IT业务能力对外暴露接口和资产变现的普遍应用模式,知名IT咨询机构Gartner指出:2019年有70%的B2B商业合作通过API完成,API将成为未来或数据、软件等数字化资产的中要呈现和使用方式。IDG(美国国际数据集团)指出:互联网已经证明了API可以加快创新,利用API开发者可以几天实现一个想法,然后快速规模化或者淘汰掉。业界评论指出,ICT产业中大鱼吃小虾的时代已经过去,当代是快鱼吃慢鱼的时代,速度是决定ICT公司成败的唯一重要因素,“API经济”模式顺应时代大潮,以其高效率、高效能、灵活的商业模式为企业创造价值。
图1 API经济模式
当前,API经济已成为一种全新的商业模式。企业在发展过程中,会积累一定业务能力或者沉淀一些有价值数据,在不涉密的前提下,将这些能力或者数据API化,有偿提供给其它企业使用,将增加企业营收并有望形成一项全新的业务线。近年来,API已经成为联结企业资源的利器, API在新的商业模式构建中得到大规模的运用。企业为多个外部使用单位或第三方提供标准化的 API,一个外部单位可以组合多个API以便丰富服务内容,这些开放API加速了合作伙伴整合效率以及客户触达率,衍生了多种 API生态系统,与客户共创新的发展模式。
IDC发布的2018中国ICT市场预测中指出:“到2021年,在超过一半的全球 2000 强企业中,平均 1/3的数字化服务交互都将来自 API 开放生态系统,增长势头远超过其自身客户的交互能力。中国的市场也将如此,开放API生态系统是企业数字化平台开放重构的关键。”2018年1月13日,欧盟正式生效推行的欧盟支付服务修订法案第二版规定,银行业在客户授权下必须通过Open API的方式开放银行资料给第三方使用。另外,澳洲、印度同样立法开放金融支付基础设施。全球的API经济成为驱动各行业数字变革的主要力量,据数字经济咨询机构创略科技预测,API经济帮助企业实现转型、围绕现有产品打造新的生态系统,变现核心资本、服务和产品。截至2018年,预计API经济将成为一个2.2万亿美元规模的全球市场。开放API已经是行业的大势所趋,企业已无可回避,必须做好应对准备。
为了促进与附属公司合作关系的发展,全球最大的在线旅游预订公司Expedia创建了Expedia Affiliate Network (EAN),开放了功能丰富的API,旨在提升网站流量,实现更高的客户转换率,为合作伙伴(包括航空公司和旅行社) 提供更高的订单价值。开放API支持客户直接在第三方网站和移动应用上访问酒店的预订情况、照片、搜索结果和用户评价。目前,API带来的收入占 Expedia 总收入的 90%,此外还引入更多流量从而产生新的收入来源。
在ICT行业的众多热门领域中,如数字化转型、云计算(尤其是混合云)、人工智能 (AI)、区块链、物联网、微服务架构等,都涉及开放API的运用。近年来,各国政府逐渐将API作为一种开展协作,推动行业和社会治理创新的标准化方法,如:欧盟委员会制定了名为“Payment Services Directive 2(PSD2)”的新标准,要求欧盟地区的银行通过值得信任的第三方支持对账户信息的访问。美国联邦总务署(GSA)发布了一系列API 标准,在服务质量保持一致的前提下,推动开放数据计划,同时促进社会治理创新。制定这些标准的目的是推广政府API;英国政府提出了有关 API 标准的建议,旨在推动创新和 API 经济;新加坡政府利用API构建了一个通用用户互动层,以便隐藏不同机构,减少定位机构的复杂性;巴西政府也在推广API的使用,以便推行开放数据计划。API 支持的创新小到改进内部流程,大到开创全新市场;开放API后,业务模式的创新会带来多方面的改善,如提高流程效率、节省成本以及创造新的收入流。
在部署了API的智能汽车中,驾驶者可以实时访问诊断功能、位置信息以及增强型功能,汽车制造商利用API 将汽车连接到移动平台,为驾驶者提供数字钥匙和车辆共享功能,为开发人员提供停车场和导航信息的有效连接,从而方便驾驶者轻松定位停车位并支付费用。
图2 API服务市场
当前,“API经济”已经从其发展的概念导入期进入实际落地阶段。许多API 项目正在加速推进实施,行业生态系统正在形成,某些领域与开放API 相关的监管要求和行业标准即将出台。当代的企业不部署开放API生态系统,如同上个世纪的90 年代不部署企业网站一样,其后果是不堪设想的。
媒体机构运用开放API技术,重新构建和组织内部系统并通过特定的模式——降低运维费用并增加机构应对市场的敏捷性,支撑创新项目。这些运用API的新闻机构认为API不仅仅用于实时分发订制内容的场景,对于那些试图以机器产生内容和新渠道以提升客户触达率、构建合作关系机构而言,开放API愈发成为一项基础技术。国外新闻机构运用Open API时,由于尚处于探索并在领域内巩固商业模式阶段,并不遵循统一的策略。在数字环境下,这些媒体机构对数字媒体发展提供智力支撑并应对挑战时遵循了不同的路径,依据API商业模式以及应用途径的不同,笔者拟对几家新闻机构的开放API策略进行介绍:纽约时报模式、卫报模式、美国国家公共电台模式以及ESPN模式。
在移动互联网时代,内容生产者纷纷寻求触达受众和用户的全新方法。应用开放API开拓触达新的客户途径、创造新的利润,以及与大企业、创业公司和具有技术能力的个人构建新的合作关系成为可能。在过去的几十年中,软件产业已经进化,创造了通过不同联网数字设备新的消费新闻内容的机会。在自动化、信息分发进程以及事务和分配中。“开放API可以激励一种Remix(混音)文化,这种对话将导致一个允许和支持全新连接和各种跨行业对话在社会中流行”。
纽约时报开放了作为新闻信息源头的13个API 调用,包括:Archive_API(资料API),纽约时报1851年到现在的所有数据,提供按月检索;Article_Search(文章检索API),从1851年到今天,提供文章的标题、摘要、导语等元数据的检索功能;Books_API(纽约时报书讯 API),提供市场畅销书信息;Community_API:获取读者对纽约时报文章的评论;Geo_API:获取纽约时报文章链接数据中的地理信息;Most_Popular_API:获取最流行、转发最多的文章;Movie_Reviews:获取电影评论的API;Semantic_API:获取稿件中的实体标签;TimesWire:获取最新稿件的元数据;Times_Tags:挖掘与搜索请求匹配的标准词汇集,经纽约时报的受控词表过滤;Top_Stories:获取头条新闻列表。
纽约时报是世界上第一家制订API策略的在线新闻报纸。纽约时报API发布后,迅速成为移动开发市场新项目的优良数据源。纽约时报运用社群和社交媒体等推广手段发展更多的数字媒体订户,新闻产品的多样化以及NYT Cooking、NYT Estate等移动应用的成功刺激了数字订户端的阅读需求。开发者使用Freebase技术以及Best_Seller API开发的APP可以获取关于书和作者的浏览时报最佳销售清单;应用Article Search API开发的“We read, We tweet”连接了 Twitter API、BackTweets API、Google Maps API;一个为 Windows Phone7 开发的电影评论APP,应用了Movie_Review API以及微软的Silverlight技术,为Web和移动端创建迷人的用户交互体验。在一个拥有炫酷界面的应用Nooblast中应用了Times_Newswire API,成为实时新闻数据可视化的良好案例。
NPR的API连接其媒资数据库,包括新闻、图片、音频以及NPR.org及其子站拥有的各类数字资产。从时下上溯到1995年的全部NPR节目,具有新闻故事、图片,以及其它Web格式的内容以及属于5,000个不同聚类、数量达到250,000条新闻的资料库。依据NPR官方的介绍,当NPR内容以API形式推送时,主要通过三种办法进行分发:(1)一次生成,到处发布,NPR.org将内容推送到API之后再发布到其它平台,例如其它网站和APP;(2)内容在不同的站点之间被分享,如NPR网站和APP;(3)直接服务NPR.org和APP的数字资产。
NPR站点发布的Widget可以迅速浏览NPR的最新音乐,一个名为Simile Timeline的工具允许用户在时间轴上浏览NPR新闻。据这款产品的制作者说,时间轴是运用开源技术开发的,主要依靠MIT(麻省理工学院)发布的一个JavaScript程序连接NPR API。NPR的主力API是Story API,这是一个与GitHub合作的开源工程。
NPR的Story API成为NPR发布的第一个以及最常用的API。可以获得NPR中的广播节目以及整个网站的内容,Story API是一个可以将NPR的节目发送到移动设备上的重要机器(Workhorse)、链接汽车以及成员网站。这个系统允许通往stations和NPR.org所发布内容的网关。
NPR内容API可以访问的新闻主题如下:音乐体裁、节目、Personality、Bios等等。NPR通过运用Story API持续扩大国家的影响力,包括发布国家大事、解释本地政策、为公民提供公共政策选择建议等新闻报道。这种技术连接允许报道者可以实时地分享其工作,通过采编平台提供给Story API。
NPR允许入驻WordPress网站(一家以强大的插件和模板知名的开源博客网站)上的所有博客通过其Story API访问其全部数据,并允许内容制作者使用API的推送功能。2013年,NPR宣布该组织开发的插件可以通过API访问任意的WordPress博客,允许站点与NPR API通过对插件的简单配置之后进行互动。NPR的报道可以通过WordPress的发布中获取并保存报道元数据。此外,WordPress管理者可以通过NPR提供的工具建立自动和定制的查询API并实时更新博客。例如,发起一个获取头条内容的查询和推送请求,或者是由用户针对NPR以及其它站点的定制查询。当进行内容推送时,WordPress的编辑可以通过NPR API推送由本地博客发布、其它的博客站点所需要的内容,完美地使用插件从WordPress中传输内容和元数据。在实施过程中,只需要提前拿到一个API Key,开发者可以容易地通过配置Staging Server上的插件调用NPR API,。NPR建议开发者使用Google Fusion Map,Google SpreadSheet, Google Charts以及Scribd等工具,通过调用其开放API创作数据新闻。
卫报API是一个有趣的数据新闻尝试,在其公布的指导手册中,卫报 API的用户可以在卫报中使用免费工具制作数据新闻。这些技术包括Google Fusion Tables,Many eyes以及Timetric。在数据博客和数据商店中, 卫报向所有用户提供了对其内容中数据的使用权限。这些文件可以被Google SpreadSheet下载或可视化。其它被用于内容可视化的诸如Flash的技术,见诸如下交互的示 例:“Election Map and Swingometer”、“Government spending: What happen to our money” 。卫报开放的Politic API具备提供一系列关于参选政客的个人信息的功能,并通过Json格式进行交换。卫报的Sdk机制使得用户可以将其应用被卫报轻松集成。卫报的合作者可以使用应用程序框架为卫报的用户提供内容、数据等服务。
卫报还为开发者提供了Sdk工具, 这款名为MicroAppFrame的Sdk支撑不同程序语言开发应用,包括:Java, Python, PHP等等。在卫报站点上,展示了两种引用其Sdk的方法,一个示例是”What Could I Cook”,另外一个是Zeitgeist。
2012年,ESPN发起成立ESPN开发中心,“ESPN API之家”可能成为一个服务于体育新闻粉丝的最佳途径。并悬挂了“体育和代码和谐相处”的标语。依据该机构的说法,这些API将被设计得简单易用,允许用户请求一些选择性可编辑的新闻集合。截至2014年12月,ESPN开 放的API有:Sports API, Headline API, Athletes AP, Teams API,ESPN Now API, Standing API, Research Notes API, Medals API, Audio API, Video API, Score &schedule API, WatchESPN API,Calendar API, Photos API,Leaders API,Draft.
放眼海外媒体行业,美国知名视频分享公司Netflix成功崛起的原因是具备跨越多种设备(从手机到平板电脑再到智能电视)的普遍接入功能和可用性。Netflix API向原始设备制造商提供访问权,迅速扩大了流媒体服务的覆盖范围。在 API 最初开放时,来自英国《卫报》的James Parton 说:“Netflix的报告称其API每天接收到超过20亿次调用。如此快速的上市速度、如此广大的扩展范围在API出现之前是根本无法实现的。”
在过去400年中,从创办第一张报纸开始,各国新闻机构在收集数据的同时向用户提供与社会有关的信息。现在这些数据变成数字信息,经过存储和关联,每一秒都在向大数据的方向不断发展成长。新闻机构将其内容数字化,以便未来让这些MGC内容(MGC,机器生成内容)产生利润,API就成为一种有效手段和创新重要技术,这项技术为合适的受众创建定制内容的同时还为每一个消费者提供机遇和合作关系。
NPR是运用API并通过外部合作关系建立新的内容链接的较好案例,NPR公布其内容并允许外部合作者通过Wordpress插件以及NPR的StoryAPI在Wordpress 的博客上发表内容、开展内容合作。在这些分析案例中,NPR还在持续不断推动内容开放API以聚合受众。
近年来,纽约时报继续组织Hack day,然而该报已经不再为开发者更新并升级API了。出于对数据新闻的关注,英国卫报一直在做开放数据工作,但是其努力主要集中在通过新闻中的数据生成数据报表。卫报是数据新闻做得最好的,然而其运用API的项目MicroAppFrame已经停止更新。
为了占领开放API市场,一些有实力的企业陆续向市场投放依托云平台的API网关服务产品,这类产品定位公有云上的企业级对接及能力开放平台,帮助中小企业构建、管理任意规模的API,简单、快速、低成本和低风险地实现微服务的集成和聚合,以华为公司为例,当前其API网关服务APIG服务已支撑包括整个华为云的API集成及API开放,横跨生命周期管理、认证管理、流量控制等多个业务环节。
图3 API经济的IT架构
应用API网关的优点是封装了应用程序内部结构。客户端只需要同API网关交互,而不必调用特定服务。API网关为每一类客户端提供了特定的API。这减少了客户端与应用程序间的交互次数,还简化了客户端代码,让调用服务的客户端不用知道模块的地址,API网关经常会通过调用多个微服务并合并结果来处理一个请求。可以在Web协议(如HTTP与WebSocket)与内部使用的非Web友好协议之间转换。
API网关是开放API的入口,具有授权、监控、负载均衡、缓存、请求的修改和管理、静态响应处理等功能。API网关负责请求路由、组合和协议转换,所有来自用户的请求首先都要经过API网关,然后再路由、定位、请求合适的微服务。
当互联网形态逐渐影响传统企业时,很多系统都会为导入流量或者内容,依赖外部合作伙伴的能力,API网关需要在边界上为企业内部服务统一调用外部的API做统一的认证、多租户授权以及访问控制。从以前单一的Web应用,扩展到多种使用场景。应用API网关的优点主要有:(1)网关内部与外部进行了隔离,保障了后台服务的安全;(2)对外访问控制由网络层面转换成了运维层面,减少变更的流程和错误成本;(3)减少客户端与服务的耦合,服务可以独立发展,通过网关层做映射;(4)通过网关层聚合,减少外部访问频次,提升访问效率。
应用API网关需要考虑以下因素:(1)安全性问题;(2)性能问题,作为企业API的入口,所有的请求都会经过API网关进行转发,这种并发的请求响应对API网关的访问压力是巨大的,有的网站甚至达到每分钟上千万的访问量;(3)高可用问题,API网关作为逻辑上的单点,对企业来说可能造成的致命的影响:(4)扩展性问题,一些非功能性的问题,例如日志、安全、负载均衡策略、鉴权等;(5)API高效运维的问题,API在上线、发布过程中,都需要涉及到网关层的配合,例如,需要网关层知道API的地址、接口形式和报文格式,也需要网关层对后台API进行封装;(6)API全生命周期的管理,包括服务的开发、测试、上线发布,服务使用的申请和开通;服务分类分级别的管理、服务使用情况的监控和计费等。
设计一个好的企业级API网关产品需要经历功能需求、高性能设计和高可用设计等步骤,目前业界常用 的 API网 关 方 案 有 Nginx+Lua、SpringCloudZuul和MashapeKong等。