什么是开发者门户?最佳实践及示例

原文链接:https://document360.com/blog/api-developer-portal-examples

开发者门户是什么?

DevPortal 奖的主要赞助商 Provonix 对开发者门户的定义如下:

“开发者门户(通常缩写为 DevPortal)是一组 API、SDK 或其他交互式数字工具与其各种利益相关者之间的接口。”

更直白地说,开发者门户是为公司提供的所有服务接口和解决方案的网站。它们是许多利益相关者的资源,而不仅仅是开发者的资源。

普通官网和开发者门户之间的一个主要区别是,普通网站是静态的内容,而开发者门户包含不断更新的动态内容。

与 wiki 不同,开发者门户是对外的,同时也作为内部利益相关者的资源。由于维基是内部的,所以当优先级从文档转移时,它们往往会被忽视并逐渐过时。由于开发者门户是对外的,因此与内部维基相比,其维护的优先级通常更高。

调查强调了高质量开发者文档的重要性。SmartBear 发布的《2019 年 API 状况报告》中的一项调查将**“准确详细的文档”**列为 API 的三大特点之一。开发者门户是 SaaS 公司共享文档的主要方式。

开发者门户和营销网站之间的关系也较为模糊。有时,一家企业会拥有一个链接跳转到其开发者门户的营销网站。而像只提供 SaaS 服务的公司等其他公司则会有开发者门户,但却没有专门的营销网站。

开发者门户的意义是什么

那么为什么公司应该投入时间和金钱来加强其开发者门户呢?一个好的开发者门户能够传递平台及其服务的价值。它描述了它们如何解决特定的业务挑战,而不是使用夸张的营销/广告。

虽然 API 文档经常与开发者门户相关联,但开发者门户不仅仅是开发人员访问其 API 参考文档的地方。开发者门户应该允许所有业务利益相关者(技术或非技术)了解和体验平台。

在下一节中,我们将探讨这些特性。

一个好的开发者门户的特点

统一解决方案

虽然 API 文档是开发者门户的一个重要方面,但它并不是全部。理想情况下,开发者门户应该作为公司产品和服务所有接口的中央资源。它们可能不仅仅局限于 API/服务。其他接口还包括图形用户界面(GUI)、无代码界面以及像面向没有访问开发者资源用户的小组件这样的低代码界面。

虽然 REST API 规范是开发者门户的重点,但也可以记录其他类型的 API,如物联网(IoT)API、语音助手 API、GraphQL API 或原生库 API。通常公司会有一系列服务,而不仅仅是一个 REST API。你可能会在开发者门户上看到数十种不同类型的 API 文档。除了 API 之外,开发者门户上提供的其他技术解决方案还包括客户端库或 SDK。有时,开发者门户还可以展示开发者构建的解决方案。

明确的商业模式

用户应该能够理解平台所在的行业及其提供的服务的广泛概述。解决方案应该根据它们解决的特定业务挑战进行分类。用户应该能够在心理上绘制出所有提供的解决方案以及它们如何在统一平台上协同工作的地图。

服务如何在更广泛的上下文中相互关联,可以通过文本、视觉图形或开发者门户本身的结构来传达。

明码标价

客户应该尽早了解平台的定价模式。定价结构应该传达它是如何解决特定问题的以及定价计划之间的差异。

开发者门户应该回答以下问题:

  • API 产品是如何实现货币化的(直接 vs 间接)?
  • 可用的定价计划有什么区别?是否有即用即付、自助服务或免费增值计划?
  • 每个定价计划是否有任何速率限制?
  • 定价计划与注册过程相关,因为用户通常在被要求付费之前只能使用有限数量的功能。透明的定价有助于潜在客户转变为实际客户。

内容“分层”

分层架构是一个从软件开发中借鉴的概念,也可以应用于内容组织。

以下是一个开发者门户可以如何分层的例子:

  • 开发者门户的顶层是用户了解商业模式、服务/解决方案概述和常见用例的着陆页。
  • 中间层是解决方案类别,根据它们解决的业务挑战对解决方案进行分组。
  • 底层是这些解决方案的文档,包括任何入门教程和 API 参考。

当然,这些只是示例。根据实际业务需要,可能还需要其他层。分层架构允许解决方案之间保持一致性。用户了解到每个部分应该期待哪些信息。

类似于主着陆页,每个解决方案都应该有自己的着陆页,传达该解决方案的价值。解决方案页面提供快速访问解决方案概述、用例、注册详情、入门指南和技术参考资料。

使用将平台的不同组件分开的分层架构允许广泛使用链接。你可以从业务部分链接到技术部分,反之亦然。例如,阅读解决方案概述的业务分析师可能只想查看业务信息,同时也有办法通过点击链接了解更多技术文档。链接还允许开发者跳转到技术细节,而不是被困在阅读业务材料中。

一致的设计

设计元素如果处理得当,就超越了美学的范畴。设计元素可以促进可用性,并与内容的质量相辅相成。一个设计良好的开发人员门户应当具有支持用户查找、了解和与平台交互的设计元素。有效的设计将强化整体品牌。一个品牌不仅决定了审美的选择,而且还决定了内容是如何书写的。文档应该在所有解决方案中使用相同的风格和基调并保持一致。

可查找性

用户能够轻松发现解决其业务挑战的方案是开发者门户的主要目标。在开发者门户上查找信息的过程应该是顺畅的。

开发者门户中信息的“可查找性”由其结构和搜索/过滤功能决定。开发者门户应该以用户可以轻松看到可用解决方案范围的方式组织其文档门户。用户应该能够轻松按类别过滤解决方案,以缩小可能性列表并消除噪音。

从API参考中,你应该能够按资源、端点、参数和模式搜索和过滤。

迎合非技术用户

SaaS 公司也明白,除了从头开始构建一个利用服务的应用程序之外,还有不同的方式来使用技术产品。例如,一个平台可能提供小组件,你可以轻松地将它们添加到你的网站中,几乎不需要编码。零代码或低代码解决方案打破了谁可以体验技术产品价值的障碍。

最好的开发者门户为每个能力水平都提供了注册流程。例如,技术用户可以从头开始构建一个应用程序,而非技术用户可以下载模板开始体验。

注册流程

用户注册流程通常是用户首次使用解决方案的体验。如果注册过程中存在卡壳,潜在客户可能会在完全演示 API 之前放弃。在设置账户并检索凭据后,“入门”部分将引导用户完成与 API进行交互的过程。

API 参考

API 参考是给开发者阅读的简洁而详细的指南,用以了解 API。有效的 API 参考页面允许开发者通过搜索和过滤的组合快速定位资源、端点、字段或模式的信息。

试用功能提供了一种与 API 进行交互的实践方式。最先进的 DevPortals 会根据用户的账户详情,自动在试用小工具中填充用户的凭据。

社区

社区通常是故障排除问题的第一级支持。许多开发者门户都有社区页面。一些公司使用像 Discord 频道或公共 Slack 频道这样的工具,在不同类别下主持讨论。

如果用户可以通过在留言板上发布问题来找到答案,他们就不需要联系支持人员。如果公司参与社区,它可以将问题记录为错误或文档改进。

社区可以超越只是讨论论坛。它们可以促成小型会议或大型会议,以推广平台。

更新

随着平台的不断发展,定期发布更新是可靠性和可信赖性的标志。发布说明、法令和变更日志都是补充文档的例子,它们让用户了解最新变化。

开发者门户最佳实践

在编写任何代码之前,构建开发者门户有许多步骤。假设商业模式是稳定的,应该进行开发者体验(DX)设计,以使门户的所有方面都与为用户提供最佳体验相一致。

明确商业模式

社区通常是故障排除问题的一级支持。许多开发门户网站都有社区页面。有些公司使用 Discord 频道或公共 Slack 频道等工具来主持不同类别的讨论。

如果用户可以通过在留言板上发布问题找到答案,他们就不需要联系支持人员。如果公司参与到社区中,就可以将问题记录为错误或文档改进。

社区可以不仅仅是论坛。它们可以促成小型会议或大型会议,从而推广一个平台。

进行开发者体验(DX)设计

开发人员门户网站与开发人员体验(DX)的概念密切相关。与一般的用户体验设计不同,DX 是为开发人员量身定制的,他们使用的技术产品通常没有图形用户界面,如应用程序接口、客户端库或 SDK。由于没有用户界面,文档必须告诉开发人员如何与产品对接。文档在很大程度上对开发人员或其他业务利益相关者如何 “体验 ”技术产品起着重要作用。

与公司聘用用户体验设计师的方式相同,他们也应该聘用 DX 设计师来精心设计开发人员使用 DevPortal 的体验。DX “指导”是管理开发人员门户生命周期的核心角色。DX 指导负责监督流程、标准和工具的变更,这些变更会流向各个解决方案团队。这位指导要确保设计、美学、结构和内容相互配合,为开发人员创造愉悦的体验。

指导将为访问门户网站的用户创建角色,并精心设计用户旅程以满足他们的需求。例如,技术用户和非技术用户最好有不同的入职用户旅程。

构建门户结构

在建立信息架构时,你必须确定所有解决方案都需要哪些信息。例如每个解决方案都需要按特定顺序进行入门、用例和 API 参考。如果文档在解决方案之间是统一的, 开发者门户的用户就知道该期待什么。

分层架构与链接相结合,将使从顶层(业务细节)到底层(技术细节)的导航变得更加容易,反之亦然。

建立治理程序

很多时候,每个解决方案由不同的团队管理。为了在门户中提供一致的体验,必须建立促进内容组织一致性和写作指南的标准。

建立治理程序需要协作来制定标准,以及来自不同业务部门的买入,以完全完成程序。每个团队都应该负责遵守这些标准并被问责。治理程序应该对齐语言和语气、风格和格式,并组织从业务材料到 API 参考的内容。最后,治理程序应该加强品牌。

通过入门教程减少学习曲线

在传达了整个业务的价值之后,用户应立即被引导到他们可以尝试 API、服务、客户端库或 SDK 的单独解决方案页面。这些页面的前端和中心应该是一个链接到入门程序的链接,以便他们尽快体验产品。

对于入门教程,请选择一个简单的使用案例,用户可以按照这个案例从头到尾了解解决方案。

适当记录 API 参考

所有的 API 组件是否都已经被准确地记录了?每个资源是否都已被记录?各个端点和模式是否都已被充分描述?每个字段的描述是否都清楚地说明了它的目的、选定值的影响,以及它与系统中其他字段的交互?相同字段的定义在整个规范中是否都是一致的?

API 参考的内容应遵循一个 API 样式指南,该指南规定了 API 所有组件的标准。遵循这个样式指南将确保 API 参考的一致性和完整性。没有准确和详细的参考信息,所有的高级功能都是无用的。

记录技术参考信息通常是改进整体文档的第一步,因为在编写教程之前,技术信息必须是稳定的。

支持搜索/过滤

开发者门户可能有对应于不同解决方案的数十个页面。除了清晰的网站结构外,拥有强大的搜索可以提高可发现性,以便用户可以找到解决其特定业务问题的解决方案。

应该有 API Explorer,用户应该能够在提供的解决方案列表中进行搜索和过滤。

在 API 参考文档中拥有强大的搜索功能很重要。API 参考上的搜索栏应允许对构成 API 的所有组件进行细粒度搜索。

建立社区

从早期开始,您应该考虑如何培养和增长围绕您业务解决方案的社区。这既是支持的长期策略,也是产品采用的策略。

社区的其他更微妙的形式是要求开发人员注册新闻通讯,以保持通信畅通。

启用反馈机制

开发者门户上应该有很多位置让用户提供反馈。例如,每个 API 参考部分都提供了评分机制,并有提供自由填写反馈的选项。

反馈的另一个来源是社区。一个积极使用产品的社区是一个反馈的来源,甚至不需要去要求用户来反馈。

提供案例研究和参考

当案例研究与已使用产品的客户的推荐相结合时,它们是更有说服力的的。案例研究可以是常见的商业挑战以及如何使用平台解决这些挑战。用户可能会与案例研究产生共鸣,并立即看到他们如何使用该工具来完成特定任务或解决其他人遇到的某个问题。

定期发布更新和状态

随着平台的发展定期发布更新是可靠性和信任度的信号。

最佳的开发者门户案例

以下是按类别划分的最佳开发者门户。

最佳 API 参考:Stripe

Stripe 是一个支付处理平台,拥有设计良好且直观的API参考文档。

在这里插入图片描述

API 参考文档必须允许开发者在技术细节的海洋中快速找到他们需要的信息。

Stripe 是一个单页网站,您可以通过单击左侧导航链接、滚动页面或执行搜索来快速导航至不同部分。

Stripe 的一些 API 参考功能包括:

  • 可折叠内容?– 几乎所有内容都是可折叠的,包括字段描述、表格、模式等。这样您可以专注于您需要的信息,而不会有多余的杂乱。
  • 可切换的编程语言?– 您可以一键全局更改代码示例的编程语言。还可以通过单击复制到剪贴板按钮轻松复制代码样本。
  • 开发者友好的暗模式?– 对于喜欢看起来像代码编辑器的暗色背景的开发者来说,这是一个很棒的功能。
  • 广泛的链接?– 每当需要深入解释时,API参考都会提供指向概念性文档的链接,以获取背景信息和教程。
  • 多个反馈点?– 您可以为每个部分提供反馈,包括在给出评分后编写自由形式的文本。
  • 高级搜索和过滤?– Stripe 的高级搜索允许您对 OpenAPI 的几乎所有组件进行字段搜索。

最佳可查找性:Visa

Visa 开发者平台让您能够通过 API 利用 Visa 网络的强大功能,。

在这里插入图片描述

该平台脱颖而出的点在于它有非常易用的筛选功能,便于找到你需要的一个 API 和服务。您可以通过几个类别过滤 API 列表。过滤允许您快速定位解决您特定业务挑战的 API。

在过滤后的列表中,每个 API 产品卡片包含服务的简短描述,然后是指向API的概述或文档页面的链接。概述包含一般业务信息,而文档包含API参考。然后,您可以根据是需要入门还是希望查看技术参考,快速找到所需的文档。

此外,您还可以从包含推荐和案例研究的使用案例页面找到适用于您情况的使用案例。

最佳代码教程:Fiserv

Fiserv的开发者门户在提供如何实现Fiserv API的逐步示例方面表现出色。

在这里插入图片描述

“食谱”(Recipes)是针对不同用例的教程,包含各种语言的代码示例。每个食谱都会引导你完成一个特定的任务,并且过程中的每一步都有注释来提供更多上下文。

当从主要文档中访问这些食谱时,它们尤其出色。每当需要分步指南时,主要文档都会链接到特定的食谱。这种将代码示例集成到文档中的方式使Fiserv的平台非常以用例为导向。

最适合非技术用户:platformOS

platformOS 是一个强调性能、可靠性、灵活性、安全性和可扩展性的“平台即服务”开发平台,具有许多用例。

在这里插入图片描述

platformOS 是易用性很高的的平台之一,因为它迎合了所有技术水平的用户。它将用户分为三种不同类型:非技术用户、半技术用户和技术用户。每种用户类型都有自己的入门旅程。

  • 非技术用户?可以单击一键安装注册账户,并按照一个简单的设置向导创建一个演示博客站点。
  • 半技术用户?可以单击沙盒链接从 GitHub 克隆一个演示站点。然后,他们可以按照 Hello, World! 指南了解发送请求和读取响应的基础知识。
  • 技术用户?可以通过单击构建您的第一个应用直接使用 platformOS 平台创建一个应用。他们可以按照文档设置开发环境,然后部署和测试他们的应用。

platformOS 支持非技术人员体验平台,同时为技术用户提供了快速途径以实现从零开始构建应用。

总结

很多 SaaS 公司正在大力投资他们的开发者门户。这些公司现在认识到 开发者门户上的内容作为影响采用的外部资源的潜在高价值。创建一个有效的开发者门户需要整个组织的一致性和自上而下的治理程序来加强品牌。

更多 API 管理及 API 全生命周期相关内容可以在我的 Notion 查看,我将会持续更新:API 全生命周期管理资料

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/593530.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【电机控制】七段式SVPWM扇区、矢量作用时间计算——对比simplefoc与Ti例程

【电机控制】七段式SVPWM扇区、矢量作用时间计算——对比simplefoc与Ti例程 文章目录 前言一、simplefoc——通过角度找扇区1.通过角度找扇区理论1.通过角度找扇区2.矢量作用时间计算3.矢量切换时间计算——七段式 2.simplefoc代码3.解读simplefoc代码1.通过角度找扇区2.矢量作…

关于YOLO8学习(四)模型转换为ncnn

前文 关于YOLO8学习(一)环境搭建,官方检测模型部署到手机 关于YOLO8学习(二)数据集收集,处理 关于YOLO8学习(三)训练自定义的数据集 简介 本文将会讲解: (1)如何通过PyCharm,进行pt模型的转换,最后输出一个适合手机端使用的模型 开发环境 win10、python 3.11…

[ARM系列]coresight(一)

原文链接 目的:对复杂SOC实现debug和trace的架构 典型环境 包含:2个ARM core,一个DSP,众多coresight组件 coresight组件实现对core、DSP的debug和trace功能 环境中包含3个通路 trace通路:将core和DSP内部信息输出到…

【机器学习-21】集成学习---Bagging之随机森林(RF)

【机器学习】集成学习---Bagging之随机森林(RF) 一、引言1. 简要介绍集成学习的概念及其在机器学习领域的重要性。2. 引出随机森林作为Bagging算法的一个典型应用。 二、随机森林原理1. Bagging算法的基本思想2. 随机森林的构造3. 随机森林的工作机制 三…

【C++】学习笔记——vector_3

文章目录 七、vector3. vector的模拟实现4. vector实现代码整合 未完待续 七、vector 3. vector的模拟实现 上篇文章我们讲解了非常 玄幻 的拷贝构造函数&#xff0c;同样的方法&#xff0c;我们也能用这种方法来实现 赋值重载函数 。 void swap(vector<T>& v) {s…

【Linux 网络】网络基础(一)(局域网、广域网、网络协议、TCP/IP结构模型、网络传输、封装和分用)-- 详解

一、计算机网络的发展背景 1、网络的定义 网络是指将多个计算机或设备通过通信线路、传输协议和网络设备连接起来&#xff0c;形成一个相互通信和共享资源的系统。 &#xff08;1&#xff09; 独立模式 独立模式 &#xff1a; 计算机之间相互独立。 &#xff08;2&#xff09;…

C语言二分查找的区间问题

概念 什么是二分查找呢&#xff1f; 二分查找&#xff1a;在有序数组中查找某一特定元素的搜索算法。 二分查找又称折半查找&#xff0c;通过将数组折半&#xff0c;用中间值和查找值作比较&#xff0c;多次使用&#xff0c;直到找到要查找的值。 注意:二分查找的前提是&#…

【xxl-job | 第二篇】Windows源码安装xxl-job

文章目录 2.Windows源码安装xxl-Job2.1拉取源码2.2IDEA导入2.3初始数据库数据2.4修改properties配置2.5启动admin并进入任务管理后台2.6jar包运行&#xff08;部署到Linux服务器上&#xff09;2.6.1打包2.6.2在xxl-job-admin打开jar包目录2.6.3cmd运行jar包 2.Windows源码安装x…

贪心,蓝桥杯真题 [巧克力]

一、题目 1、题目描述 2、输入输出 2.1输入 2.2输出 3、原题链接 2.巧克力 - 蓝桥云课 (lanqiao.cn) 二、解题报告 1、思路分析 做法&#xff1a;我们将巧克力按照价格升序排序&#xff0c;然后顺序枚举巧克力wi&#xff0c;查找小于等于bi的日期中最大的未被选择日期&…

代码审计之浅谈RASP技术

前言&#xff1a; 想摆会烂&#xff0c;所以就落个笔吧。 其实本来是想写关于iast技术的&#xff0c;但是认真思考了下&#xff0c;感觉笔者自己本身也不太能讲清楚iast技术&#xff0c;怕误人子弟。 所以最后还是基于笔者的理解以及实际应用写一篇关于RASP技术的文章&#xf…

使用memcache 和 redis 、 实现session 会话复制和保持

一、NoSQL介绍 NoSQL是对Not Only SQL、非传统关系型数据库的统称 NoSQL一词诞生于1998年&#xff0c;2009年这个词汇再次提出指非关系型、分布式、不提供ACID的数据库设计模式 随着互联网时代的数据爆发时增长、数据库技术发展的日新月异&#xff0c;要适应新的业务需求&am…

【网络通信】Windows搭建RTMP视频流服务器(含推流/拉流详细教程)

RTMP&#xff08;Real-Time Messaging Protocol&#xff09;是一种用于实时流媒体传输的网络协议&#xff0c;主要用于传输音频、视频和数据。RTMP最初是由Adobe Systems公司开发的&#xff0c;用于其Flash平台和Adobe Media Server&#xff0c;但随着技术的发展和开源社区的推…

数据结构学习/复习6---双向链表的实现/随机指针链表练习/顺序表与链表对比/存储体系简述

一、链表的结构*8 二、带头双向循环链表的实现 注意事项1&#xff1a;是否需要断言于实际情况中传来的指针是否可以为空&#xff0c;不可以则要断言 三、链表、指针、拷贝经典练习题 四、顺序表与链表总结对比

通过helm在k8s上安装minio

1 helm安装minio 1.1 下载minio 添加仓库 helm repo add bitnami https://charts.bitnami.com/bitnami 将minio拉取下来 helm pull bitnami/minio --version 版本号 解压到本地开始编辑配置文件 tar -zxf minio-xxx.tgz [rootk8s-master01 minio]# vi values.yaml 1.2…

【C语言】简单有趣的扫雷游戏

**©作者:末央&#xff06; ©系列:C语言初阶(适合小白入门) ©说明:以凡人之笔墨&#xff0c;书写未来之大梦 目录 一、分析游戏规则二、分文件三、菜单实现四、游戏内容核心实现1.初始化棋盘2.打印棋盘3.布置雷4.排查雷5.game()函数实现调用 五、全部源码 一、分…

二维泊松方程(Neumann+Direchliet边界条件)有限元Matlab编程求解|程序源码+说明文本

专栏导读 作者简介&#xff1a;工学博士&#xff0c;高级工程师&#xff0c;专注于工业软件算法研究本文已收录于专栏&#xff1a;《有限元编程从入门到精通》本专栏旨在提供 1.以案例的形式讲解各类有限元问题的程序实现&#xff0c;并提供所有案例完整源码&#xff1b;2.单元…

MySQL索引及优化

MySQL索引及优化 一、MySQL索引1、什么是索引&#xff1f;2、了解过索引的数据结构吗&#xff1f;B树和B树的区别&#xff1f;&#xff08;底层原理&#xff09;3、什么是聚簇索引&#xff08;聚集索引&#xff09;&#xff1f;什么是非聚簇索引&#xff08;二级索引&#xff0…

给Ollama套个WebUI,方便使用

Ollama 基本的安装使用参考前文 https://xugaoxiang.com/2024/05/01/ollama-offline-deploy/&#xff0c;前文使用的模型是 llama2&#xff0c;本篇将使用 llama3&#xff0c;因此在启动时&#xff0c;命令是 ollama run llama3。 Ollama Llama3 Llama3 是 Meta 发布的大语言模…

【AI工具声音克隆】——OpenVoice一键部署modelScope一键使用

一、声音/音色克隆简介 声音或音色克隆的原理实现步骤主要基于深度学习技术&#xff0c;特别是语音合成和生成模型。以下是声音/音色克隆的大致实现步骤&#xff1a; 数据收集&#xff1a; 收集语音数据&#xff0c;作为模型的训练样本。数据应尽可能多样化&#xff0c;包括不…

GRU模块:nn.GRU层的输出state与output

在 GRU&#xff08;Gated Recurrent Unit&#xff09;中&#xff0c;output 和 state 都是由 GRU 层的循环计算产生的&#xff0c;它们之间有直接的关系。state 实际上是 output 中最后一个时间步的隐藏状态。 GRU 的基本公式 GRU 的核心计算包括更新门&#xff08;update gat…