Hit enter to search.
Microsoft Dynamics 365 Business Central provides a robust API framework that allows seamless integration with other systems and applications. Reading data from API pages in Business Central is a common requirement for businesses looking to automate processes, consolidate data, or connect Business Central with third-party applications. This article provides an in-depth guide to understanding and working with API pages in Business Central.
/api/v2.0/), making GET requests to retrieve data, filtering with OData parameters, and best practices for secure integration. API pages are a type of web service endpoints provided by Business Central that allow external systems to interact with the data stored within the application. These pages expose Business Central data in a structured format, typically as JSON, making it easy to integrate with other applications via HTTP requests.
API pages in Business Central are distinct from standard pages, as they are designed for programmatic access rather than user interaction.
API pages in Business Central offer several advantages that make them a critical tool for businesses:
These benefits make API pages an ideal choice for organizations seeking to enhance connectivity, streamline operations, and improve data-driven decision-making.
While both API pages and OData pages serve as web service endpoints in Business Central, API pages offer distinct advantages over OData pages:
For businesses focused on integrations, scalability, and performance, API pages are generally the preferred choice over OData pages.
Before accessing API pages, ensure that the following prerequisites are met:
API URL Structure:
Business Central exposes two main types of endpoints:
/ODataV4//api/v2.0/The recommended structure for the Business Central API pages is:
https://api.businesscentral.dynamics.com/v2.0/<tenant_id>/<environment_name>/api/v2.0/
Example – retrieving companies:
https://api.businesscentral.dynamics.com/v2.0/<tenant_id>/<environment_name>/api/v2.0/companies
The /api/v2.0/ path is versioned and optimized for integrations, whereas /ODataV4/ is used for OData web services created within Business Central.
Microsoft provides a wide range of predefined API pages that you can use directly. Examples include:
Discovering Available APIs
To list all available API pages in your environment, you can send a GET request to:
https://api.businesscentral.dynamics.com/v2.0/<tenant_id>/<environment_name>/api/v2.0/
This returns a catalog of all published API endpoints, including their entity names and version numbers.
To learn more, please visit Microsoft's Business Central API documentation.
It's easier than you think to read data from an API page; you simply need to send an HTTP GET request. It's a straightforward process that you'll quickly become familiar with. However, please keep in mind that with Rapidi, you don't need to manually handle HTTP requests – API page connectivity is already embedded. Specify the correct endpoint URL in your Rapidi connection setup, and Rapidi will automatically read and process the data from the Business Central API.
To read data from an API page, use an HTTP GET request.
Example Request:
https://api.businesscentral.dynamics.com/v2.0/<tenant_id>/<environment>/api/v2.0/companies
Response:
{
"value": [
{
"id": "12345678-1234-1234-1234-1234567890ab",
"name": "Cronus International Ltd.",
"address": "1234 Main St",
"city": "London",
"country": "UK"
}
]
}
Business Central APIs are designed to put you in control. They fully support OData query parameters, allowing you to filter, sort, and paginate data as needed.
Example with Filtering:
https://api.businesscentral.dynamics.com/v2.0/<tenant_id>/<environment>/api/v2.0/customers?$filter=displayName eq 'CRONUS International Ltd.'
$filter, $select, and $top to limit the data returned and reduce the payload size.Rapidi is fully compatible with Business Central API pages, allowing companies to connect Business Central with other systems such as Salesforce, HubSpot, or legacy ERPs.
Unlike older OData web services, API pages in Business Central are REST-based and lightweight, making them ideal for high-volume and real-time integrations.
Rapidi can read and write data directly through these API endpoints and handle features such as filtering, pagination, and delta logic.
This compatibility enables seamless synchronization of tables or data entities such as Customers, Items, or Sales Orders — all while maintaining security and performance.
Reading API pages in Business Central is an important skill for businesses aiming to take full advantage of their ERP system. With the proper setup and best practices, you can efficiently access and get the most out of your data in Business Central to drive integrations, reporting, and automation.
You need to register an application in Azure Portal, configure API permissions (Dynamics 365 Business Central with delegated or application permissions), create a client secret, set up redirect URIs, and then register the Azure AD application in Business Central's "Azure Active Directory Applications" page with appropriate user permissions.
Delegated permissions require user interaction and consent, suitable for user-impersonation scenarios. Service-to-Service (S2S) authentication uses client credentials flow for unattended integrations without user interaction, ideal for automated system integrations.
No. Web Service Access Keys have been deprecated for Business Central Online since 2022 release wave 1 (BC20). You must use OAuth 2.0 authentication for all API access.
You cannot assign the SUPER permission set to API users. Common permission sets include D365 FULL ACCESS, D365 BUS FULL ACCESS, or D365 BASIC depending on your needs. For production, use the principle of least privilege and assign only the permissions required for the specific operations.
/api/v2.0/ is the modern, versioned Business Central API optimized for integrations with better performance and standardization. /ODataV4/ is used for OData web services and is considered legacy. Always use /api/v2.0/ for new integrations.
Send a GET request to: https://api.businesscentral.dynamics.com/v2.0/<tenant_id>/<environment>/api/v2.0/ to get a catalog of all published endpoints. You can also use the $metadata option to retrieve detailed XML schema information about available entities and their properties.
Use the $filter OData query parameter. Example: customers?$filter=displayName eq 'CRONUS International Ltd.'. You can use operators like eq (equals), ne (not equals), gt (greater than), lt (less than), and, or.
Current limits include approximately 300 API requests per minute for Sandbox environments and 600 per minute for Production environments. There's also a limit of 100 concurrent OData/SOAP requests and a 10-minute timeout for individual requests. These are per-user limits.
No, you cannot extend standard API pages directly. However, you can copy the standard API source code from Microsoft's ALAppExtensions GitHub repository and create your own custom API page with modifications.
Create an AL extension with PageType = API, and specify APIPublisher, APIGroup, APIVersion, EntityName, and EntitySetName properties. Use SystemId as the ODataKeyFields for best practices. The API becomes accessible at: https://api.businesscentral.dynamics.com/v2.0/<tenant>/<environment>/api/<publisher>/<group>/<version>/<entitySetName>
API pages support full CRUD operations (Create, Read, Update, Delete), while API queries are read-only but offer better performance. Queries can easily join multiple tables without needing $expand, returning everything as one dataset.
This typically means insufficient permissions. Check that your Azure AD Application in Business Central has the correct User Groups and Permission Sets assigned, and verify the company name in your URL is correct.
Some properties in API v2.0 are navigation properties that must be explicitly requested using $expand. Check the API documentation or $metadata to identify which fields require expansion.
Business Central supports OData batch requests for multiple operations in a single HTTP call. A single POST inserts one record; for multiple records, use batch requests with proper JSON formatting. See Microsoft's documentation on OData batch operations.
Andreea Arseni, Senior Data Integration Consultant
A Guide to Reading API Pages in Microsoft Dynamics 365 ...
Microsoft Dynamics 365 Sales integration with Business ...
Benefits of the new RAPIDI Hosting Platform
Salesforce - Microsoft Dynamics 365 Integration Salesforce - Microsoft Dynamics 365 Business Central Integration Salesforce - Microsoft Dynamics 365 Finance Integration Microsoft Dynamics 365 Business Central - Dynamics 365 Sales Integration Salesforce - Salesforce Integration & Migration HubSpot - Microsoft Dynamics 365 Integration
Carrer de la Font del Colom, 6,
L'Aldosa,
AD400 La Massana, Andorra
Copyright © 2025 Rapidi.
All Rights Reserved
Terms & Conditions |
Privacy Policy