通过外部集成扩展 Space

创建您自己的应用程序、集成和工作流,或者使用第三方供应商在 JetBrains Marketplace 上提供的应用程序、集成和工作流。

HTTP API

Space 提供了一个丰富且文档完备的 HTTP API,Space 用户和管理员可以使用此 API 执行各种操作,包括:

  • 将 Chats 与第三方应用程序集成(例如,从外部服务向 Space Chats 发送通知,使用交互式消息以及带操作的消息构建机器人)。
  • 与第三方应用程序和服务共享内容和数据。
  • 从/向其他资源导入/导出数据(例如文章、用户个人资料记录、问题)。
  • 以编程方式管理用户、团队、位置和其他实体。
  • 将 Space 仓库与外部服务集成(例如,从 CI/CD 服务器接收构建状态)。
  • 还有其他许多内容。
HTTP API

有关详细信息,请参阅 API 参考或在您的 Space 组织中使用 HTTP API Playground

Webhook

Webhook

可以设置 Webhook 来向外部服务(例如问题跟踪器、CI/CD 服务器或部署工具)发送 Space 中所发生事件的通知。

作为一种将通知推送到外部服务的方式,Webhook 通常比轮询更受欢迎。

Space 支持全局范围(整个组织)和项目/仓库范围的 Webhook。

详细了解 Space 中的 Webhook

适用于 Kotlin 和 .NET 的 Space Client SDK

适用于 Kotlin 和 .NET 的 Space Client SDK

对于那些希望在源代码级别与 Space 进行更紧密集成的用户,我们提供了适用于 Kotlin 和 .NET 的官方 Space Client SDK(软件开发工具包)。

在使用基于 JVM 的语言(例如 Java、Kotlin、Scala 等)编写应用程序时,开发者可以通过适用于 Kotlin 的 Space Client SDK 利用 Space API。

在 GitHub 上查看适用于 Kotlin 的 Space Client SDK

在 GitHub 上查看适用于 .NET 的 Space Client SDK

应用程序

应用程序是扩展 Space 的主要方式。 可以将应用程序视为在 Space 中注册外部应用程序的一种方式。 它可以是服务器端或客户端(JavaScript 或移动)应用程序,支持与各种 Space 模块配合使用来管理用户、跟踪 Git 活动、将消息发送到 Chats 等。

应用程序

有两种类型的 Space 应用程序:

Marketplace 应用程序

应用程序通过 JetBrains Marketplace 分发,扩展开发者可以在 JetBrains Marketplace 上发布应用程序,以便最终用户能够找到并安装所需的应用程序。 它支持所有 JetBrains 产品,因此也支持 Space 应用程序。 Marketplace 可托管免费和付费的扩展。

私有应用程序

私有应用程序是在您的组织中开发和分发,但不在 JetBrains Marketplace 上共享的应用程序。 使用私有应用程序,您可为公司中的独特用例和工作流提供支持。

在文档中阅读有关应用程序模型的信息

交互式机器人和 / 命令

借助连接到 Space 的应用程序和集成,您可以直接在 Space Chats 中与消息、代码审查、问题、待办事项和会议交互,不用来回切换界面,也没有任何干扰。

交互式机器人是 Space 可扩展性模型的一等公民。 应用程序可以注册能够在聊天中直接回复消息的机器人,并且您可以通过文本和智能操作(例如,选择题的按钮)与它们交互。

交互式机器人

除机器人外,Space 还具有 / 命令,这是一种通过在消息框中输入 / 命令与应用程序通信的方式。

/ 命令

详细了解 Space 中的机器人 API

详细了解 Space 中的 / 命令

Space 作为授权服务器

Space 作为授权服务器

为了使应用程序、集成和外部服务访问您的 Space,我们使用行业标准的授权协议 OAuth2。 连接到 Space 的任何应用程序或 API 客户端都必须是 OAuth 2.0 客户端。

或者,您也可以使用个性化令牌。

在这两种情况下,都应设置精细的权限。

在项目级别请求和授予应用程序权限。 在个人动态或群组频道中接收新应用程序、权限请求和应用更新的通知。

详细了解 Space 中的验证和授权

即将推出的新功能 即将推出

我们的团队正在积极开发 Space 的其他可扩展性。 目前,我们正在探索以下功能:

  • 对 Marketplace 和私有应用程序的全面支持。
  • 更丰富的 HTTP API(在接口中完成所有工作,以及应当通过 API 公开更多内容)。
  • 支持所有 Space 事件的各种 Webhook。
  • 传入 Webhook。
  • 交互性更出色的消息工作流,包括表单。
  • 可扩展的菜单和 UI 自定义,支持 iFrame。

与 JetBrains Space 合作

无论您是我们的客户、Free 方案用户、顾问还是软件供应商,我们都致力于为您提供一个无需额外成本即可在 Space 上进行开发的开放式平台。

如果您有兴趣与 JetBrains Space 合作并在其基础上构建(通过 Marketplace 上的应用程序或作为自定义服务提供商),请查看 JetBrains Space 合作伙伴计划