Dynamics 365 Business Central API简介
应用程序 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/
最新文章
- Python应用 | 网易云音乐热评API获取教程
- 22条API设计的最佳实践
- 低成本航空公司的分销革命:如何通过API实现高效连接与服务
- 实时聊天搭建服务:如何打造令人着迷的社交媒体体验?
- 简化API缩写:应用程序编程接口终极指南
- Mono Creditworthy API 集成指南|实时评估用户信用状况
- Gcore 收购 StackPath WAAP,增强全球边缘Web应用与API安全能力
- 免费IPv6地址查询接口推荐
- 什么是Unified API?基于未来集成的访问
- 使用JWT和Lambda授权器保护AWS API网关:Clerk实践指南
- 宠物领养服务:如何帮流浪毛孩找到温馨的新家?
- Python调用IP地址归属地查询API教程