内容


API 101

Comments

什么是 API?

应用编程接口 (API) 是公司的一个公众角色,它公开定义的资产、数据或服务供公众使用。API 是服务和产品通过已备案的接口彼此通信的方式。API 允许公司向外部第三方开发者、业务合作伙伴和其公司内的内部部门开放数据。应用开发者可轻松地利用 API,通过 Web 浏览器、移动应用或设备来调用它。产品目录、电话话费单、保险案例、订单状态和银行贷款利率就是一些通过 API 公开的服务。API 不同于网站。网站的内容和布局是动态的,内容的改变不会影响网站访问者,而对 API 的任何更改都需要使用该 API 告知开发者,因为它会影响在 API 上构建的应用。这并不意味着 API 不会发生变化。API 会基于商业需求不断变化来包含新功能,而且会告知开发者这些变化。建立之后,API 更像一款产品,而不是单纯的技术能力。要了解更多信息,请阅读这里的红皮书。

API 的必要性

当 1990 年代万维网 (WWW) 相对较新时,许多公司的业务重点是建立 Web 存在感。随着互联网访问变得更加容易,速度限制得到提升,而且技术得到改进,许多公司的重点从相对扁平且静态的 Web 存在感转移到一种更加动态、内容丰富且交互式的方法。今天,我们生活在一个以数据为中心的连网设备世界里,我们期望数据触手可及。这些设备包括但不限于智能电话、平板电脑、游戏控制器,以及甚至汽车和冰箱。随着设备数量增加,管理和维护每种设备的代码的复杂性也随之增长,这时“API 优先”方法才真正获得最大的发展动力。如果数据通过一个通用 API 公开,这可以建立单一的维护、安全和版本控制点。这样,数据就可以跨多个设备一致地公开。而且,通过公开和社会化 API,公司可将应用开发外包给第三方或业务合作伙伴,随着设备数量增长,此能力变得越来越重要。API 可帮助公司公开他们希望提供给外部世界或选定的业务合作伙伴的数据。这些 API 可用于创建应用,以及用作推广公司产品和帮助创造新市场机会的强大途径。建立 API 后,它们就可以用于提升品牌知名度和提高利润。最重要的是,API 现在是企业的核心部分,也需要作为产品对待。无论您或您的公司是否考虑公开 API,很可能您的竞争对手正在考虑。在我们如今生活的竞争激烈的世界里,这本身就是开始考虑 API 战略的重要原因。考虑到这一点,开始建立 API 战略就变得非常重要,因为我们预计选择不这么做将导致与 90 年代决定忽视 WWW 的公司类似的后果。

图 1. 大部分公司的信息技术访问机制
图 1.大部分公司的信息技术访问机制
图 1.大部分公司的信息技术访问机制

上图显示了从网站作为大部分公司的信息技术访问机制,到作为需要 API 来使用商业功能的快速发展的互联设备生态系统的根本性转变。如今,我们在汽车、家电、智能电话、游戏控制器和其他设备中都有应用通过 API 与后端商业功能通信。从以下例子可以看出,“互联革命”现在正在发生:

  • 冰箱可以告诉制造商服务系统何时需要维护。
  • 汽车可通过例行维护通知实现同样的目的。
  • 智慧电表可向电力公司提供使用信息。

所有这些都通过 API 实现。要了解更多信息,请阅读这里的红皮书。

API 的演变和发展

API 已存在很长时间。自第一个计算机程序编写出来开始,API 就在为程序之间的信息交换提供“契约”。早期的非 Web API 具有严格的结构,需要严格的编程模式和结构一致性。这些 API 于约 2000 年出现在网络上,Salesforce.com 生成了第一个基于 Web 的 API。同一年,Ebay 发布了自己的 API。两年后,Amazon 启动了 Amazon Web Services。随着云计算的到来,API 现在已进入成年,托管外部 API 的能力已发展成熟,云服务提供商拥有可扩展的容量来处理交易负载和流量峰值。移动平台现在将应用的触角延伸到了数百万台设备上,所有这些设备都能通过互联网访问后端 API。API 得到认真关注开始于约 2000 年,约 2008 年开始迅速发展。

多年来,API 随着技术的进步而演变(比如网络速度、安全和动态集成),商业模式的成熟允许将商业功能视为离散、可使用的实体。现在基于商业价值而竞争商业功能成为可能,而不是基于技术基础。API 架构已演变了多年,最近一次是在面向服务的架构 (SOA) 出现后。SOA 提供了一种在动态环境中管理用户和提供商关系的架构模式。这为生成和公开具有更好的商业支持能力的 API 创造了条件,这些能力包括请求访问、权限、识别、授权、管理、监视和分析。现在可在 Programmable Web。上找到最大的 API 信息和混搭程序存储库。这个网站提供了数万个 API 的目录信息、使用统计和访问信息。要了解更多信息,请阅读这里的红皮书。

API 的类型

基于 API 的使用方式,可将它们分为多种类型:

  1. 内部

    这些 API 专门在组织或公司内使用。尽管各行各业中采用 REST 的企业在迅速增多,但  SOAP/HTTP 或 .NET 仍拥有庞大的用户群。在大部分情况下,REST 将包装现有的 SOAP/HTTP 或 .NET 服务。

  2. 外部

    这些 API 主要供外部用户使用。在这个成熟度阶段,存在着基于  REST/JSON 技术而编写外部 API 的发展趋势。它们提供了访问和集成能力,这些能力比利用 Web 服务(例如 WSDL)的更加工业级的能力更容易使用。

  3. 合作伙伴

    这些 API 专为合作伙伴设计,使其能访问与商业合作关系相关的商业功能。例子包括在线目录、订购和对账。随着时间的推移,可能会出现其他 API 类别。

要了解更多信息,请阅读这里的红皮书。

API 经济

在企业中启用 API 的一个重要的商业理由是从您的商业能力中牟利。例如,如果您是一家征信机构,您生成了一个 API 来建立与用户的信用历史相关的信用评分和事实,那么许多银行、贷款公司、保险公司和询价公司很乐意使用(利用)您的 API 牟利。它为他们提供了执行 API 功能的能力,而避免了开发和维护他们自己的 API 功能。此外,如果出现了更好的 API,他们很容易离开您。这就是 API 经济中的 API 的差异化优势:能够快速订阅或取消订阅商业功能。它通过推动商业功能的健康竞争,使企业变得更加敏捷。

API 经济这个词指的是与将您的商业功能的公开产品化为 API 的机会。考虑您的 API 是一种可消耗产品,您需要正确地推销和定位您的产品来实现利润最大化。所以 API 经济涉及与恰当公开可消耗的商业功能相关联的额外的渠道机会。

作为 API 经济的一部分,还需要理解 API 市场的作用。可将 API 市场视为 API 的“应用商店”。许多不同的市场将从公开演变为私有,再演变为业务合作伙伴。这些市场提供了各种各样的能力,包括多租户。业务合作伙伴交流大会就是多租户的不错例子。多个业务合作伙伴可访问 API 目录,并基于合作伙伴的授权而获得搜索和访问能力。您也可以 在这篇文档中进一步了解 API 经济的组成部分和 IBM 参考架构如何涵盖整个 API 经济。

要了解更多信息,请阅读 这里的红皮书。

发布 API 的考虑因素

发布 API 之前,需要仔细考虑以下信息:

  • 您的 API 的目标:您尝试使用 API 做什么?您将如何定位和支持它?
  • 与 API 相关的法律条件:有关 API 使用的条款和条件有哪些?您如何保护自己免受知识产权侵犯?
  • > 要通过 API 公开的商业资产:应在何种精细水平上提供哪些商业功能?
  • 技术考虑因素:
    • API 的创建涉及哪些因素?这通常将涉及组装的概念:API 如何获取或转换信息,API 的意图(创建理由)是什么,以及它满足何种用途? API 是否需要调用其他 API 来转换数据?或者获取特殊的安全凭据?
    • API 如何使用?开发者如何发现 API ? API 是否会在产品目录中列出?发现 API 需要哪些访问权? API 是否通常在一个更大的 API 组合中使用,其中所有 API 都提供某种明确功能? API 如何进行开发和 / 或版本控制?我们如何向其他人传达此信息?必须考虑 API 的商业定义和技术架构。

要了解更多信息,请阅读这里的红皮书。

API 商业模式

API 公开有许多常见的商业模式。哪种模式适合给定的 API,取决于 API 提供商的目的,这可能包括牟利、品牌知名度等。这些模式包括但不限于免费 API、开发者付费、开发者收费和间接模式:

免费 API:

可供免费使用,比如流行社交网络的 API。免费 API 可推动 API 的采用和品牌忠诚度,有助于 API 提供商进入新渠道。免费 API 的例子很有限。尽管公开免费 API 通常不会获得直接的商业利益,但大部分例子都拥有间接的商业利益(参见下文)。

间接:

此商业模式不包括直接货币交易,但 API 提供商可通过其他方式创造收入,从而从这些 API 类型的公开中获得巨大利益。例如,流媒体公司可公开一个 API,使许多用户设备更容易支持它们,进而帮助帮助增加用户数。网上拍卖公司可提供 API 来使开发者能够访问交易服务,进而扩大清单范围和帮助创造收入。

开发者付费:

在大部分情况下,开发者付费使用来推动自己的商业事业,类似于做生意的成本。这种商业模式也包括许多子类别:

  • 即用即付:定价由使用计量来确定。例如,云计算平台的使用价格可由操作系统平台和每小时的平台规模来确定。
  • 分级:开发者签约并基于固定时间段内的 API 调用次数而支付特定使用等级的费用。尽管每级的成本递增,但每次 API 调用的成本通常会降低。垂直资源使用分级商业模式。价格随着使用量(API 调用次数)增加而降低,所以分析一个时间段的使用量后,用户可以调整其等级。这类似于过去 10 年来盛行的电话语音套餐,电话通话量确定了每次通话的费用。
  • 基于使用:定价由使用测量单位(比如 API 调用)确定。例如,云存储公司可按每月每 GB 收费。
  • 交易手续费:定价依赖于交易的价值。例如,电子转账公司可收取交易价值的一定比例作为提供支付服务的手续费。
  • 免费增值:在此模式中,公司免费为开发者提供其部分 API 功能,然后对其他功能收费。例如,网络地图服务公司允许免费调用其 API 较少次数,然后对所有额外的 API 调用收费。

开发者收费:

在此模式下,开发者对扩展其他实体的商业模式收取费用。此模式有两个主要类别:

  • 收入分享:开发者基于与提供商之间的商业协议,收取总收入的较小比例。例如,移动应用商店可向开发者收取年费,而开发者收取其应用的销售收入的一定比例。
  • 联营:开发者基于扩大的合作伙伴平台而收取扩展收入(一定比例、固定价格或分级)。例如,购物价格比较服务公司可基于开发者的 API 创造的收入量,向开发者支付其收入的较小部分。

要了解更多信息,请阅读这里的红皮书。

更多主题

您还可以访问原文了解更多。


相关主题


评论

添加或订阅评论,请先登录注册

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=10
Zone=WebSphere
ArticleID=1034967
ArticleTitle=API 101
publish-date=10142016