Dynamics 365 Business Central API简介

作者:API传播员 · 2026-01-22 · 阅读时间:5分钟

应用程序 API,而不涉及自动化和管理中心 API。


什么是 REST API

应用程序编程接口)是一种通过互联网实现不同软件应用程序之间通信的工具。它定义了如何发出数据或服务请求、如何处理这些请求以及如何格式化响应(通常为 JSON 或 XML 格式)。需要注意的是,REST API 并不是数据库本身,而是一段专门的代码,用于控制应用程序如何与数据交互以及访问应用程序的信息。通过 REST API,可以确保请求被正确处理并且响应被准确传递。


身份验证

由于 API 提供了对敏感数据的访问,因此选择最安全的身份验证方法至关重要。D365 Business Central 支持多种身份验证方式,以确保 API 的安全性。具体方法的选择取决于您是使用 D365 Business Central SaaS(云端)还是本地部署。以下是四种主要的身份验证类型:

1. 委托用户身份验证(OAuth 2.0 和 Entra ID)

  • 适用于应用程序代表登录用户操作的场景。
  • 需要 OAuth 2.0 和 Entra ID 进行身份验证。
  • 非常适合用户通过第三方应用程序(如 Popdock)登录并与 D365 Business Central 数据交互。
  • 权限基于用户在 Business Central 中的角色和安全设置。

2. 服务到服务(S2S)身份验证(应用程序 OAuth 2.0)

  • 专为后台服务和自动化集成设计,无需用户交互。
  • 使用 OAuth 2.0 进行 Entra ID 应用程序注册,并基于应用程序权限而非用户权限。
  • 适用于无需用户登录即可直接访问 D365 Business Central API 的场景(例如 SmartConnect)。

3. 基本身份验证(仅限本地)

  • 使用用户名和密码组合进行身份验证。
  • 仅支持 D365 Business Central 的本地部署,但由于安全性较低,不推荐在 SaaS 环境中使用。
  • 不如 OAuth 安全,建议避免在新集成中使用。

4. Web 服务访问密钥(仅限本地)

  • 一种特定于 D365 Business Central 本地部署的身份验证方法。
  • 使用按用户生成的 Web 服务访问密钥,而非密码。
  • 在 OAuth 2.0 不可用时提供了一种替代方案。

OData v4 APIs

OData v4 APIs 提供了一种灵活的数据查询和交互方式,支持高级过滤和排序功能。这些 API 公开了标准页面对象,允许非开发人员将几乎任何 D365 Business Central 页面、查询或 Codeunit 发布为 API。然而,由于这些页面与用户界面相关联,可能会带来额外的性能开销。页面上的逻辑复杂性越高,与标准或自定义 API 相比,性能可能会显著降低。

优势

  • 非开发人员也能轻松使用。
  • 自定义字段可以直接使用。

局限性

  • 不支持 Webhook。
  • 某些页面的修改可能与 API 不兼容。

标准 Business Central APIs(v2.0)

特点

  • 无法对标准 API 进行修改。
  • 对象和字段名称可能与标准术语不匹配。

自定义 APIs(API 查询和页面)

D365 Business Central 开发人员可以通过 AL 扩展创建自定义 API,从而根据特定需求公开定制化的数据和业务逻辑。这些 API 可以通过以下两种方式构建:

  • API 页面:用于结构化实体访问。
  • API 查询:用于优化数据检索。

与标准 API 相比,自定义 API 提供了更大的灵活性,使开发人员能够添加额外字段、应用复杂筛选并优化特定用例的性能。

优势

  • 满足独特的业务需求。
  • 提供更高的灵活性和控制。

局限性

  • 需要进行定制开发。

结论

D365 Business Central 提供了一套功能强大的 API,支持在系统外部构建高效的集成和数据访问解决方案。无论是通过 OData v4 APIs 实现灵活的数据访问,还是通过 标准 API v2.0 提供优化性能,亦或是通过 自定义 API 满足特定业务需求,您都可以根据实际需求选择合适的方式与 Business Central 数据交互。

了解每种 API 类型的优势和局限性是选择正确集成方法的关键。如果需要轻量级、高性能的操作,自定义 API 通常是最佳选择;而当需要更深入的数据访问且可以接受性能损耗时,OData v4 APIs 提供了更大的灵活性。

通过有效利用这些 API,您可以扩展 D365 Business Central 的功能,并构建强大的集成方案,从而提升业务生产效率。

原文链接: https://www.eonesolutions.com/blog/dynamics-365-business-central-apis/