API市场关键要点

各个行业的公司正在寻找通过外部API扩展服务来塑造数字业务的方法。然而,要获得API的真正好处,是需要超越基本的API管理,再到创建API市场,这是一种专注于连接生产者和消费者的专用平台业务模型。随着越来越多的公司寻求商业平台以获得竞争优势,API市场将平台业务模型的优势带给了API管理。

    1. API市场通常都会包括以下几个部分:在典型的场景中,生产者首先发布API,然后通过API开发平台对这些API进行编辑和测试运行。
    2. API管理系统为任何API市场提供一个完整的规范标准并使其能够有效运行。
    3. 第一个部分是使用有效的API开发平台。在API市场中,API开发平台必须提供直观的体验。
    4. 除了使用API开发平台之外,企业还需要在市场中引入促进API重用的激励措施,继续推动API变现货币化。
    5. 在管理API市场时,企业需要保持对谁可以发布内容和进度的控制,并确保根据既定的规范和标准(如URL模式,命名约定和访问控制规则)发布合符要求的API。

因此,API市场通常不仅涉及开发平台和API管理的其他技术方面,还涉及确保API实现其目标的业务和人员方面,尤其是促进API的消费和使用。在以下部分中,我们将探讨在API生态系统中发挥作用的技术和业务考虑因素,并讨论创建和管理有效API市场的关键步骤。

API管理支持API市场

API市场通常都会包括以下几个部分;在典型的场景中,生产者首先发布API,然后通过API开发平台对这些API进行编辑和测试运行。使用者可以直接来到发布平台,以查找,发现和探索API,也可以测试、调用监控这些API。API市场的这部分是如何交互的情况如图1所示。

图1:API市场的关键组成

API管理系统为任何API市场提供一个完整的规范标准并使其能够有效运行。它通常由五个核心组件组成:

    1. API网关用作API运行时和策略执行点,强制执行限制,速率限制和安全策略。
    2. API安全性可以由网关或通过集成的身份和访问管理(IAM)基础解决方案提供。
    3. API开发平台充当目录,为应用程序开发人员提供编辑,监控和测试API的集中位置。
    4. API开发平台提供了从后端服务设计API的功能。
    5. API分析提供API使用的快照和API货币化的Feed数据。

成功实施市场需要采用更先进的方法来实现API管理系统的某些方面,尤其是API开发平台和分析。下面我们将研究构建强大API市场的五个基本要素,以促进使用API构建一个吸引更多人参与业务,增加收入流和提高忠诚度的应用程序。

API独立发布平台

第一个部分是使用有效的API独立发布平台。在API市场中,API开发平台必须提供直观的体验,以支持企业开发人员方便编辑 – 无论是专业软件开发人员,业务高级用户还是长尾开发人员。API提供商可以选择在平台上受保护的注册页面后面托管所有资源和文档,或者通过向公众开放来提高透明度。使用者可以直接来到发布平台,以查找,发现和探索API,也可以测试和调用特定的API。

一个很好的例子就是我们这个大型电信服务提供商的客户,它构建了一个API驱动的应用程序/服务创建生态系统,它可以快速,轻松地创建运行在其上的数字,OTT(over-the-top)服务。依靠公司的移动通信平台,为开发人员和非开发人员提供的独立平台,为用户提供了直观的体验,可以在几分钟内查看条款和条件,注册并开始使用电信服务。专业和平台开发人员为该平台创建的服务将在电信公司的应用商店中发布。量身定制的平台开发策略使企业能够提供来自各种开发商的应用程序,从初创企业到企业,政府机构,小型零售企业,学校,教堂和慈善机构内的非开发人员。仅在前18个月,就有超过2,500名应用创建者根据电信业务的API发布了3,300多种应用和服务。

在典型的API管理环境中,组织的API所有者发布一组API,然后由应用程序开发人员使用。然而,为了使这个概念真正可持续,应用程序开发人员需要对发布的API的形式和类型有发言权。这可能包括将字段添加到API的请求,以及将许多不同的API混合到新的API以适应特定设备的约束和要求。实现这一目标的最简单方法是建立跟踪功能请求的论坛或票务系统,并促进API的消费者和生产者之间的通信。更具前瞻性的方法是API开发平台本身允许消费者使用自助式沙盒平台来混搭API并创建自己的私有API。后者为消费者提供了一个完美的平台,可以创建自己的私有API,满足应用程序的独特需求,同时维护提供商发布的官方API。

促进再利用的激励措施

除了创建门户之外,企业还需要在市场中引入促进API重用的激励措施,继续推动API变现货币化。值得注意的是,在组织内,激励措施通常没有货币价值,带来的是其他的价值。例如,公司可能会维护一个排行榜,以突出顶级API发布者和应用程序开发人员,让更多人愿意使用API。

企业还可以跟踪哪些API拥有最多订户,并在开发平台上的仪表板上显示它们。允许开发人员学习和应用技能的研讨会和黑客马拉松也可以作为激励措施。在寻求向外部各方提供激励时,组织往往会采用某种形式的财务激励措施。例如,前面讨论的电信服务提供商允许用户使用预定义的模板快速创建应用程序,然后使他们能够共享从他们在公司的应用商店发布的应用程序生成的收入。

每项服务的收益分享模型对于服务的第三方创建者为70%,对于电信公司为30%。这使得该公司实现了使用其API构建的应用程序所带来的收入环比增长20%。

API货币化

API正迅速成为销售或提供给应用程序开发人员的产品,从其他业务部门或使用它们的第三方组织获得收入。因此,API市场需要直接或间接货币化API的机制。通过间接货币化,公司认识到更广泛地使用API可以为其核心业务带来更多客户和交易,并扩展生态系统。一个很好的例子是StubHub,它是活动门票的主要卖家。其API计划的目标是使旅游公司,酒店和其他酒店业的生态系统能够向其客户追加活动门票。只要酒店客户使用酒店网站上的StubHub API,StubHub就能赚钱。

同时,组织可能希望采用两种类型的直接货币化。通过直接内部货币化,一个部门通常会回拨另一个部门以使用特定的API。由于资金是通过公司会计在内部分配的,因此没有实际的信用卡收费或电汇。在外部直接货币化方案中,企业销售服务,客户是外部业务,其解决方案由API提供。例如,Twilio销售的API可让Uber在Uber的移动应用程序中提供短信和电话。

总体管理

在管理API市场时,企业需要保持对谁可以发布内容和位置的控制,并确保根据组织标准(如URL模式,命名约定和访问控制规则)发布正确的API。为此,他们需要确保包含有助于满足战略和合规要求的总体治理模型。

可以通过在集中式API开发平台中发布API来集中管理API。但为了避免扼杀创造力,企业可能希望考虑采用自下而上的治理策略而不是自上而下的方法。例如,企业可以选择分散的API发布模型,使每个业务部门在设计和发布API时具有自主权。

虽然主要目标是将结构应用于API的管理,但自下而上的方法通过使每个业务功能能够独立管理其各自的API(包括对这些已发布的API的更新或设计增强)来满足此要求。通过简化此任务,每个业务部门都可以在团队成员构建和公开API的过程中发挥创造性,同时确保对其进行有效管理。

如何管理API以及如何利用API进行开发、测试、发布、监控等一系列研发管理,一直是很多企业面临的问题,国内也有部分API管理平台,但最推荐的是EOLINEKR,因为能读取通过Github、Gitlab、码云等代码仓库来读取代码的注解并自动生成API文档,支持Java、PHP两种语言,和完善的自动化测试管理,能够完成利用API进行从研发测试到网关监控,再到发布运行等一系列流程的研发管理解决方案。有兴趣了解:官网:https://www.eolinker.com

API分析

如前所述,分析在支持API货币化方面发挥着重要作用。更广泛地说,API分析使企业能够深入了解性能,可用性和潜在安全问题的最新问题,以及随着时间的推移分析以支持决策。企业通常最熟悉批量分析,可以将其用于识别随时间发布的API的长期趋势。其中一些趋势包括错误的调用,延迟时间,跨地理位置的一般使用,随时间的注册,限制请求,异常响应警报和API健康可用性警报。

值得注意的是,通过机器学习进行的预测分析可以应用于实时和历史(批量)数据的组合,以识别诸如潜在欺诈,用户速率限制,即将发生的容量限制或其他因素等问题,以便及时做出应对。

最后,仪表板使业务和IT用户能够以有意义的方式可视化流式和批量分析的趋势,以深入了解可用数据。通过仪表板,企业可以跟踪一组常见趋势,然后根据需要指定不同的警报。例如,企业可能希望跟踪每个应用程序的API的一般用法,每个应用程序进行最多API调用的顶级用户,以及每个应用程序API使用的资源路径。

组织可能还希望使用仪表板来监控每个应用程序的错误API调用的数量。例如,在错误调用中,消息通过故障序列进行调解,并且默认情况下,API管理系统会在后端服务不可用时将API调用视为错误。其他示例仪表板包括API延迟时间,跨地理位置的API使用,随时间推移的开发人员注册以及异常响应时间警报。

与任何企业一样,成功取决于所有利益相关者的贡献和参与,通过整合这里讨论的技术和策略,企业将能够很好地利用其当前的API管理计划来创建API市场,从而推动扩张,创造新的商机并创造新的收入来源。

原标题:Key Steps to Building and Managing an Effective API Marketplace

作者:Mifan Careem,WSO2解决方案架构的高级主管

翻译和修改:隔壁王书

原文地址:https://www.infoq.com/articles/effective-api-marketplace/

配图来源:www.softwaretestingmaterial.com 等

构建和管理有效API市场的关键步骤的更多相关文章

  1. 使用OpenAPI构建更智能的API

    像OpenAPI这样的API描述规范是一个关键工具,您应该尽可能地将其好好掌握,记录和执行API的工作由计算机和开发人员完成:OpenAPI 3.0现在允许额外的表现力,可以让机器为我们做更多有用的工 ...

  2. Expo大作战(四)--快速用expo构建一个app,expo中的关键术语

    简要:本系列文章讲会对expo进行全面的介绍,本人从2017年6月份接触expo以来,对expo的研究断断续续,一路走来将近10个月,废话不多说,接下来你看到内容,讲全部来与官网 我猜去全部机翻+个人 ...

  3. Gartner 2018 年WAF魔力象限报告:云WAF持续增长,Bot管理与API安全拥有未来

    Gartner 2018 年WAF魔力象限报告:云WAF持续增长,Bot管理与API安全拥有未来 来源 https://www.freebuf.com/articles/paper/184903.ht ...

  4. 为什么医疗行业需要API市场?

    医疗健康行业无论在国内外都是采用先进技术的先驱者之一,原因在于业内的利益相关者会更加接近数据.重视数据的重要性,从而加快在决策上面的动作,以期更好的患者的预期寿命和增进社会人口的健康.更重要的是,数据 ...

  5. List多个字段标识过滤 IIS发布.net core mvc web站点 ASP.NET Core 实战:构建带有版本控制的 API 接口 ASP.NET Core 实战:使用 ASP.NET Core Web API 和 Vue.js 搭建前后端分离项目 Using AutoFac

    List多个字段标识过滤 class Program{  public static void Main(string[] args) { List<T> list = new List& ...

  6. 使用laravel快速构建vuepress管理器

    使用laravel快速构建vuepress管理器 介绍 刚刚学了下laravel感觉很方便,最近也在用vuepress做个人博客,但是感觉每次写文章管理文章不是特别方便,就使用laravel写了这个v ...

  7. (五)整合 Swagger2 ,构建接口管理界面

    整合 Swagger2 ,构建接口管理界面 1.Swagger2简介 1.1 Swagger2优点 1.2 Swagger2常用注解 2.SpringBoot整合Swagger2 2.1 Swagee ...

  8. 使⽤Swagger2构建强⼤的RESTful API⽂档

    使⽤Swagger2构建强⼤的RESTful API⽂档 导语: 由于Spring Boot能够快速开发.便捷部署等特性,相信有很⼤⼀部分Spring Boot的⽤户会⽤来构建RESTful API. ...

  9. 使用 WSO2 API Manager 管理 Rest API

    WSO2 API Manager 简介 随着软件工程的增多,越来越多的软件提供各种不同格式.不同定义的 Rest API 作为资源共享,而由于这些 API 资源的异构性,很难对其进行复用.WSO2 A ...

随机推荐

  1. Django day03之学习知识点

    今日是路由层学习: 3.路由匹配 3.1 正则表达式的特点: 一旦正则表达式能够匹配到内容,会立刻结束匹配关系 直接执行对应的函数.相当于采用就近原则,一旦找到就不再继续往下走了 重点: 正则表达式开 ...

  2. Winform修改配置文件节点保存到配置文件

    主要使用: Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None); ...

  3. 《Dotnet9》系列-开源C# WPF项目1《Accelerider.Windows》强力推荐

    时间如流水,只能流去不流回! 点赞再看,养成习惯,这是您给我创作的动力! 本文 Dotnet9 https://dotnet9.com 已收录,站长乐于分享dotnet相关技术,比如Winform.W ...

  4. shell概述与echo命令

    一.Shell概述 1.什么是shell? 由此可见shell是用户与系统进行交互的接口,通过执行各种命令来完成时间处理与调度. 2.shell分类 Shell类别 易学性 可移植性 编辑性 快捷性 ...

  5. Django forms组件里的ChoiceField、ModelChoiceField和ModelMutipleChoiceField的区别

    阅读简要 首先我们要明白Django forms组件里的ChoiceField.ModelChoiceField和ModelMutipleChoiceField是继承关系 ChoiceField 1. ...

  6. ASP.NET MVC项目中EntityFramework"代码优先方法"的使用步骤

    EF提供了三种方式来实现项目,分别是: (1)代码优先方法: (2)模型优先方法: (3)数据库优先方法: 本篇主要记录在Vs2010环境下使用代码优先的方式实现数据库和后端代码数据交互,语言为C#, ...

  7. HTML连载56-网易注册界面实战之全部代码

    一.今天完成了网易邮箱注册界面的全部编写,编写一个小小的网页就需要这么多时间来进行设计.测量.排版.编写.测试,才能进行使用,同时编写这个网页复习了几乎前面的所有内容,最后来一个汇总就可以了. < ...

  8. PMBOK 指南 第二章 项目运行环境

    2.1概述 事业环境因素(EEF)源于项目外部(往往企业外部) 组织过程资产(OPA)源于企业内部 2.2 事业环境因素 项目团队不能控制 2.2.1 组织内部的事业环境因素 组织文化.结构和治理 设 ...

  9. 精通awk系列(4):awk用法入门

    回到: Linux系列文章 Shell系列文章 Awk系列文章 awk用法入门 awk 'awk_program' a.txt awk示例: # 输出a.txt中的每一行 awk '{print $0 ...

  10. (转)两种高效过滤敏感词算法--DFA算法和AC自动机算法

    原文:https://blog.csdn.net/u013421629/article/details/83178970 一道bat面试题:快速替换10亿条标题中的5万个敏感词,有哪些解决思路? 有十 ...