文/刁毅剛
開放API服務是指將網絡服務能力(如內容資源、應用資源和社交關系資源)用數據接口封裝并開放給第三方開發(fā)者調用的過程,即Open API(Open Application Programming Interface)。與ICT領域中API的傳統(tǒng)定義不同的是,Open API是以使用者為中心的,其應用模式是借助廣大的第三方力量不斷豐富和完善應用,進而提高用戶黏性,提升用戶的參與度和耦合度,從而逐漸構建起一個應用生態(tài)。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業(yè)務能力對外暴露接口和資產變現的普遍應用模式,知名IT咨詢機構Gartner指出:2019年有70%的B2B商業(yè)合作通過API完成,API將成為未來或數據、軟件等數字化資產的中要呈現和使用方式。IDG(美國國際數據集團)指出:互聯(lián)網已經證明了API可以加快創(chuàng)新,利用API開發(fā)者可以幾天實現一個想法,然后快速規(guī)?;蛘咛蕴簟I(yè)界評論指出,ICT產業(yè)中大魚吃小蝦的時代已經過去,當代是快魚吃慢魚的時代,速度是決定ICT公司成敗的唯一重要因素,“API經濟”模式順應時代大潮,以其高效率、高效能、靈活的商業(yè)模式為企業(yè)創(chuàng)造價值。
圖1 API經濟模式
當前,API經濟已成為一種全新的商業(yè)模式。企業(yè)在發(fā)展過程中,會積累一定業(yè)務能力或者沉淀一些有價值數據,在不涉密的前提下,將這些能力或者數據API化,有償提供給其它企業(yè)使用,將增加企業(yè)營收并有望形成一項全新的業(yè)務線。近年來,API已經成為聯(lián)結企業(yè)資源的利器, API在新的商業(yè)模式構建中得到大規(guī)模的運用。企業(yè)為多個外部使用單位或第三方提供標準化的 API,一個外部單位可以組合多個API以便豐富服務內容,這些開放API加速了合作伙伴整合效率以及客戶觸達率,衍生了多種 API生態(tài)系統(tǒng),與客戶共創(chuàng)新的發(fā)展模式。
IDC發(fā)布的2018中國ICT市場預測中指出:“到2021年,在超過一半的全球 2000 強企業(yè)中,平均 1/3的數字化服務交互都將來自 API 開放生態(tài)系統(tǒng),增長勢頭遠超過其自身客戶的交互能力。中國的市場也將如此,開放API生態(tài)系統(tǒng)是企業(yè)數字化平臺開放重構的關鍵。”2018年1月13日,歐盟正式生效推行的歐盟支付服務修訂法案第二版規(guī)定,銀行業(yè)在客戶授權下必須通過Open API的方式開放銀行資料給第三方使用。另外,澳洲、印度同樣立法開放金融支付基礎設施。全球的API經濟成為驅動各行業(yè)數字變革的主要力量,據數字經濟咨詢機構創(chuàng)略科技預測,API經濟幫助企業(yè)實現轉型、圍繞現有產品打造新的生態(tài)系統(tǒng),變現核心資本、服務和產品。截至2018年,預計API經濟將成為一個2.2萬億美元規(guī)模的全球市場。開放API已經是行業(yè)的大勢所趨,企業(yè)已無可回避,必須做好應對準備。
為了促進與附屬公司合作關系的發(fā)展,全球最大的在線旅游預訂公司Expedia創(chuàng)建了Expedia Affiliate Network (EAN),開放了功能豐富的API,旨在提升網站流量,實現更高的客戶轉換率,為合作伙伴(包括航空公司和旅行社) 提供更高的訂單價值。開放API支持客戶直接在第三方網站和移動應用上訪問酒店的預訂情況、照片、搜索結果和用戶評價。目前,API帶來的收入占 Expedia 總收入的 90%,此外還引入更多流量從而產生新的收入來源。
在ICT行業(yè)的眾多熱門領域中,如數字化轉型、云計算(尤其是混合云)、人工智能 (AI)、區(qū)塊鏈、物聯(lián)網、微服務架構等,都涉及開放API的運用。近年來,各國政府逐漸將API作為一種開展協(xié)作,推動行業(yè)和社會治理創(chuàng)新的標準化方法,如:歐盟委員會制定了名為“Payment Services Directive 2(PSD2)”的新標準,要求歐盟地區(qū)的銀行通過值得信任的第三方支持對賬戶信息的訪問。美國聯(lián)邦總務署(GSA)發(fā)布了一系列API 標準,在服務質量保持一致的前提下,推動開放數據計劃,同時促進社會治理創(chuàng)新。制定這些標準的目的是推廣政府API;英國政府提出了有關 API 標準的建議,旨在推動創(chuàng)新和 API 經濟;新加坡政府利用API構建了一個通用用戶互動層,以便隱藏不同機構,減少定位機構的復雜性;巴西政府也在推廣API的使用,以便推行開放數據計劃。API 支持的創(chuàng)新小到改進內部流程,大到開創(chuàng)全新市場;開放API后,業(yè)務模式的創(chuàng)新會帶來多方面的改善,如提高流程效率、節(jié)省成本以及創(chuàng)造新的收入流。
在部署了API的智能汽車中,駕駛者可以實時訪問診斷功能、位置信息以及增強型功能,汽車制造商利用API 將汽車連接到移動平臺,為駕駛者提供數字鑰匙和車輛共享功能,為開發(fā)人員提供停車場和導航信息的有效連接,從而方便駕駛者輕松定位停車位并支付費用。
圖2 API服務市場
當前,“API經濟”已經從其發(fā)展的概念導入期進入實際落地階段。許多API 項目正在加速推進實施,行業(yè)生態(tài)系統(tǒng)正在形成,某些領域與開放API 相關的監(jiān)管要求和行業(yè)標準即將出臺。當代的企業(yè)不部署開放API生態(tài)系統(tǒng),如同上個世紀的90 年代不部署企業(yè)網站一樣,其后果是不堪設想的。
媒體機構運用開放API技術,重新構建和組織內部系統(tǒng)并通過特定的模式——降低運維費用并增加機構應對市場的敏捷性,支撐創(chuàng)新項目。這些運用API的新聞機構認為API不僅僅用于實時分發(fā)訂制內容的場景,對于那些試圖以機器產生內容和新渠道以提升客戶觸達率、構建合作關系機構而言,開放API愈發(fā)成為一項基礎技術。國外新聞機構運用Open API時,由于尚處于探索并在領域內鞏固商業(yè)模式階段,并不遵循統(tǒng)一的策略。在數字環(huán)境下,這些媒體機構對數字媒體發(fā)展提供智力支撐并應對挑戰(zhàn)時遵循了不同的路徑,依據API商業(yè)模式以及應用途徑的不同,筆者擬對幾家新聞機構的開放API策略進行介紹:紐約時報模式、衛(wèi)報模式、美國國家公共電臺模式以及ESPN模式。
在移動互聯(lián)網時代,內容生產者紛紛尋求觸達受眾和用戶的全新方法。應用開放API開拓觸達新的客戶途徑、創(chuàng)造新的利潤,以及與大企業(yè)、創(chuàng)業(yè)公司和具有技術能力的個人構建新的合作關系成為可能。在過去的幾十年中,軟件產業(yè)已經進化,創(chuàng)造了通過不同聯(lián)網數字設備新的消費新聞內容的機會。在自動化、信息分發(fā)進程以及事務和分配中?!伴_放API可以激勵一種Remix(混音)文化,這種對話將導致一個允許和支持全新連接和各種跨行業(yè)對話在社會中流行”。
紐約時報開放了作為新聞信息源頭的13個API 調用,包括:Archive_API(資料API),紐約時報1851年到現在的所有數據,提供按月檢索;Article_Search(文章檢索API),從1851年到今天,提供文章的標題、摘要、導語等元數據的檢索功能;Books_API(紐約時報書訊 API),提供市場暢銷書信息;Community_API:獲取讀者對紐約時報文章的評論;Geo_API:獲取紐約時報文章鏈接數據中的地理信息;Most_Popular_API:獲取最流行、轉發(fā)最多的文章;Movie_Reviews:獲取電影評論的API;Semantic_API:獲取稿件中的實體標簽;TimesWire:獲取最新稿件的元數據;Times_Tags:挖掘與搜索請求匹配的標準詞匯集,經紐約時報的受控詞表過濾;Top_Stories:獲取頭條新聞列表。
紐約時報是世界上第一家制訂API策略的在線新聞報紙。紐約時報API發(fā)布后,迅速成為移動開發(fā)市場新項目的優(yōu)良數據源。紐約時報運用社群和社交媒體等推廣手段發(fā)展更多的數字媒體訂戶,新聞產品的多樣化以及NYT Cooking、NYT Estate等移動應用的成功刺激了數字訂戶端的閱讀需求。開發(fā)者使用Freebase技術以及Best_Seller API開發(fā)的APP可以獲取關于書和作者的瀏覽時報最佳銷售清單;應用Article Search API開發(fā)的“We read, We tweet”連接了 Twitter API、BackTweets API、Google Maps API;一個為 Windows Phone7 開發(fā)的電影評論APP,應用了Movie_Review API以及微軟的Silverlight技術,為Web和移動端創(chuàng)建迷人的用戶交互體驗。在一個擁有炫酷界面的應用Nooblast中應用了Times_Newswire API,成為實時新聞數據可視化的良好案例。
NPR的API連接其媒資數據庫,包括新聞、圖片、音頻以及NPR.org及其子站擁有的各類數字資產。從時下上溯到1995年的全部NPR節(jié)目,具有新聞故事、圖片,以及其它Web格式的內容以及屬于5,000個不同聚類、數量達到250,000條新聞的資料庫。依據NPR官方的介紹,當NPR內容以API形式推送時,主要通過三種辦法進行分發(fā):(1)一次生成,到處發(fā)布,NPR.org將內容推送到API之后再發(fā)布到其它平臺,例如其它網站和APP;(2)內容在不同的站點之間被分享,如NPR網站和APP;(3)直接服務NPR.org和APP的數字資產。
NPR站點發(fā)布的Widget可以迅速瀏覽NPR的最新音樂,一個名為Simile Timeline的工具允許用戶在時間軸上瀏覽NPR新聞。據這款產品的制作者說,時間軸是運用開源技術開發(fā)的,主要依靠MIT(麻省理工學院)發(fā)布的一個JavaScript程序連接NPR API。NPR的主力API是Story API,這是一個與GitHub合作的開源工程。
NPR的Story API成為NPR發(fā)布的第一個以及最常用的API??梢垣@得NPR中的廣播節(jié)目以及整個網站的內容,Story API是一個可以將NPR的節(jié)目發(fā)送到移動設備上的重要機器(Workhorse)、鏈接汽車以及成員網站。這個系統(tǒng)允許通往stations和NPR.org所發(fā)布內容的網關。
NPR內容API可以訪問的新聞主題如下:音樂體裁、節(jié)目、Personality、Bios等等。NPR通過運用Story API持續(xù)擴大國家的影響力,包括發(fā)布國家大事、解釋本地政策、為公民提供公共政策選擇建議等新聞報道。這種技術連接允許報道者可以實時地分享其工作,通過采編平臺提供給Story API。
NPR允許入駐WordPress網站(一家以強大的插件和模板知名的開源博客網站)上的所有博客通過其Story API訪問其全部數據,并允許內容制作者使用API的推送功能。2013年,NPR宣布該組織開發(fā)的插件可以通過API訪問任意的WordPress博客,允許站點與NPR API通過對插件的簡單配置之后進行互動。NPR的報道可以通過WordPress的發(fā)布中獲取并保存報道元數據。此外,WordPress管理者可以通過NPR提供的工具建立自動和定制的查詢API并實時更新博客。例如,發(fā)起一個獲取頭條內容的查詢和推送請求,或者是由用戶針對NPR以及其它站點的定制查詢。當進行內容推送時,WordPress的編輯可以通過NPR API推送由本地博客發(fā)布、其它的博客站點所需要的內容,完美地使用插件從WordPress中傳輸內容和元數據。在實施過程中,只需要提前拿到一個API Key,開發(fā)者可以容易地通過配置Staging Server上的插件調用NPR API,。NPR建議開發(fā)者使用Google Fusion Map,Google SpreadSheet, Google Charts以及Scribd等工具,通過調用其開放API創(chuàng)作數據新聞。
衛(wèi)報API是一個有趣的數據新聞嘗試,在其公布的指導手冊中,衛(wèi)報 API的用戶可以在衛(wèi)報中使用免費工具制作數據新聞。這些技術包括Google Fusion Tables,Many eyes以及Timetric。在數據博客和數據商店中, 衛(wèi)報向所有用戶提供了對其內容中數據的使用權限。這些文件可以被Google SpreadSheet下載或可視化。其它被用于內容可視化的諸如Flash的技術,見諸如下交互的示 例:“Election Map and Swingometer”、“Government spending: What happen to our money” 。衛(wèi)報開放的Politic API具備提供一系列關于參選政客的個人信息的功能,并通過Json格式進行交換。衛(wèi)報的Sdk機制使得用戶可以將其應用被衛(wèi)報輕松集成。衛(wèi)報的合作者可以使用應用程序框架為衛(wèi)報的用戶提供內容、數據等服務。
衛(wèi)報還為開發(fā)者提供了Sdk工具, 這款名為MicroAppFrame的Sdk支撐不同程序語言開發(fā)應用,包括:Java, Python, PHP等等。在衛(wèi)報站點上,展示了兩種引用其Sdk的方法,一個示例是”What Could I Cook”,另外一個是Zeitgeist。
2012年,ESPN發(fā)起成立ESPN開發(fā)中心,“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.
放眼海外媒體行業(yè),美國知名視頻分享公司Netflix成功崛起的原因是具備跨越多種設備(從手機到平板電腦再到智能電視)的普遍接入功能和可用性。Netflix API向原始設備制造商提供訪問權,迅速擴大了流媒體服務的覆蓋范圍。在 API 最初開放時,來自英國《衛(wèi)報》的James Parton 說:“Netflix的報告稱其API每天接收到超過20億次調用。如此快速的上市速度、如此廣大的擴展范圍在API出現之前是根本無法實現的?!?/p>
在過去400年中,從創(chuàng)辦第一張報紙開始,各國新聞機構在收集數據的同時向用戶提供與社會有關的信息。現在這些數據變成數字信息,經過存儲和關聯(lián),每一秒都在向大數據的方向不斷發(fā)展成長。新聞機構將其內容數字化,以便未來讓這些MGC內容(MGC,機器生成內容)產生利潤,API就成為一種有效手段和創(chuàng)新重要技術,這項技術為合適的受眾創(chuàng)建定制內容的同時還為每一個消費者提供機遇和合作關系。
NPR是運用API并通過外部合作關系建立新的內容鏈接的較好案例,NPR公布其內容并允許外部合作者通過Wordpress插件以及NPR的StoryAPI在Wordpress 的博客上發(fā)表內容、開展內容合作。在這些分析案例中,NPR還在持續(xù)不斷推動內容開放API以聚合受眾。
近年來,紐約時報繼續(xù)組織Hack day,然而該報已經不再為開發(fā)者更新并升級API了。出于對數據新聞的關注,英國衛(wèi)報一直在做開放數據工作,但是其努力主要集中在通過新聞中的數據生成數據報表。衛(wèi)報是數據新聞做得最好的,然而其運用API的項目MicroAppFrame已經停止更新。
為了占領開放API市場,一些有實力的企業(yè)陸續(xù)向市場投放依托云平臺的API網關服務產品,這類產品定位公有云上的企業(yè)級對接及能力開放平臺,幫助中小企業(yè)構建、管理任意規(guī)模的API,簡單、快速、低成本和低風險地實現微服務的集成和聚合,以華為公司為例,當前其API網關服務APIG服務已支撐包括整個華為云的API集成及API開放,橫跨生命周期管理、認證管理、流量控制等多個業(yè)務環(huán)節(jié)。
圖3 API經濟的IT架構
應用API網關的優(yōu)點是封裝了應用程序內部結構。客戶端只需要同API網關交互,而不必調用特定服務。API網關為每一類客戶端提供了特定的API。這減少了客戶端與應用程序間的交互次數,還簡化了客戶端代碼,讓調用服務的客戶端不用知道模塊的地址,API網關經常會通過調用多個微服務并合并結果來處理一個請求??梢栽赪eb協(xié)議(如HTTP與WebSocket)與內部使用的非Web友好協(xié)議之間轉換。
API網關是開放API的入口,具有授權、監(jiān)控、負載均衡、緩存、請求的修改和管理、靜態(tài)響應處理等功能。API網關負責請求路由、組合和協(xié)議轉換,所有來自用戶的請求首先都要經過API網關,然后再路由、定位、請求合適的微服務。
當互聯(lián)網形態(tài)逐漸影響傳統(tǒng)企業(yè)時,很多系統(tǒng)都會為導入流量或者內容,依賴外部合作伙伴的能力,API網關需要在邊界上為企業(yè)內部服務統(tǒng)一調用外部的API做統(tǒng)一的認證、多租戶授權以及訪問控制。從以前單一的Web應用,擴展到多種使用場景。應用API網關的優(yōu)點主要有:(1)網關內部與外部進行了隔離,保障了后臺服務的安全;(2)對外訪問控制由網絡層面轉換成了運維層面,減少變更的流程和錯誤成本;(3)減少客戶端與服務的耦合,服務可以獨立發(fā)展,通過網關層做映射;(4)通過網關層聚合,減少外部訪問頻次,提升訪問效率。
應用API網關需要考慮以下因素:(1)安全性問題;(2)性能問題,作為企業(yè)API的入口,所有的請求都會經過API網關進行轉發(fā),這種并發(fā)的請求響應對API網關的訪問壓力是巨大的,有的網站甚至達到每分鐘上千萬的訪問量;(3)高可用問題,API網關作為邏輯上的單點,對企業(yè)來說可能造成的致命的影響:(4)擴展性問題,一些非功能性的問題,例如日志、安全、負載均衡策略、鑒權等;(5)API高效運維的問題,API在上線、發(fā)布過程中,都需要涉及到網關層的配合,例如,需要網關層知道API的地址、接口形式和報文格式,也需要網關層對后臺API進行封裝;(6)API全生命周期的管理,包括服務的開發(fā)、測試、上線發(fā)布,服務使用的申請和開通;服務分類分級別的管理、服務使用情況的監(jiān)控和計費等。
設計一個好的企業(yè)級API網關產品需要經歷功能需求、高性能設計和高可用設計等步驟,目前業(yè)界常用 的 API網 關 方 案 有 Nginx+Lua、SpringCloudZuul和MashapeKong等。