---
title: "Business Central: Custom Endpoint with API Package"
url: "https://satvasolutions.com/blog/business-central-custom-api-endpoint"
date: "2026-04-16T08:10:59-04:00"
modified: "2026-04-16T08:52:52-04:00"
author:
  name: "Chintan Prajapati"
  url: "https://satvasolutions.com"
categories:
  - "Accounting Integration"
word_count: 1325
reading_time: "7 min read"
summary: "TABLE OF CONTENTS


 	Introduction 
 	API Endpoints
 	Build Package File Using AL Language
 	Give User Permission to Manage Extensions
 	Install &amp; Uninstall Application Extension
 	Why ..."
description: "Learn how to create custom API endpoints in Business Central using AL language. Step-by-step guide for building, packaging, and deploying extensions."
keywords: "Business Central custom API endpoint, Accounting Integration"
language: "en"
schema_type: "Article"
related_posts:
  - title: "Best Payroll Software Integrations with QuickBooks Online (2026 Guide)"
    url: "https://satvasolutions.com/blog/top-payroll-software-integrates-with-quickbooks-online"
  - title: "Latest guide on Xero oAuth 2.0 integration with Native iOS app using PKCE"
    url: "https://satvasolutions.com/blog/guide-on-xero-oauth-2-integration-with-native-ios-app-using-pkce"
  - title: "A SaaS Founder &#038; CTO’s Guide to API Rate Limits in Accounting APIs (QuickBooks, Xero, Zoho, MYOB)"
    url: "https://satvasolutions.com/blog/saas-leaders-guide-api-rate-limits-in-accounting-platforms"
---

# Business Central: Custom Endpoint with API Package

_Published: April 16, 2026_  
_Author: Chintan Prajapati_  

![Business Central AL code extension with API integration syncing data to dashboard with real-time analytics and performance](https://satvasolutions.com/wp-content/uploads/2026/04/business-central-al-extension-api-integration-dashboard-sync-768x609.webp)

## Business Central Custom API Endpoint Guide

Business Central does not expose all tables via standard APIs.

To access custom data, you must create API endpoints using AL language and deploy them as extensions.

Whenever Microsoft does not provide the API you need, the only option is to build a custom API using **AL Language** and deploy it as an extension.

This document explains how to create the extension, build the package, and install it in your Business Central environment.

This guide explains how to build, package, and deploy custom API endpoints in Business Central step by step.

## When Do You Need Custom API Endpoints in Business Central?

Custom API endpoints in Microsoft Dynamics 365 Business Central are required when the default APIs do not provide the data structure or flexibility needed for your specific business or integration use case.

While [standard APIs](https://satvasolutions.com/blog/top-unified-accounting-api-platforms) cover common scenarios, many real-world implementations require customization.

### When Required Tables Are Not Available in Default API

Business Central does not expose all tables through its standard API layer. This becomes a limitation when:

- You need access to **custom tables or fields**
- Required data exists but is not part of the default API endpoints
- You want to retrieve **specific business logic-driven data**

In such cases, custom API endpoints allow you to **directly expose the required tables and fields** using AL, without depending on limited standard APIs.

### When Working with Custom Extensions

If your Business Central environment includes custom extensions, the data introduced through those extensions is not automatically available via standard APIs.

**Custom endpoints help you:**

- Expose **extension-based data models**
- Maintain consistency between **custom logic and API output**
- Ensure your integrations can fully utilize extended functionality

This is especially important for businesses that rely on **custom workflows or industry-specific customizations.**

### When Building Third-Party Integrations

When integrating Business Central with [external systems](https://satvasolutions.com/system-integration-services) such as CRMs, SaaS platforms, or internal tools, default APIs may not align with your integration requirements.

**Custom endpoints become necessary to:**

- Structure data in a way that matches the **target system**
- Reduce multiple API calls by creating **optimized endpoints**
- Handle **complex data mapping and transformations**

This ensures smoother, more reliable integrations without adding unnecessary complexity on the external system side.

### Prerequisites

- Visual Studio Code installed on your machine
- The **AL Language extension** installed in Visual Studio Code
- A Business Central account where you can publish the extension

## How to Build API Package File Using AL Language in Business Central

1. Open your AL project folder (the BC App Repo) in Visual Studio Code.
2. Open the `app.json` file and **increase the version number by 1**. Business Central will not install an extension if the version is the same as an already-installed one.
3. All your API pages, tables, and other AL objects will be visible in the project. From here you can:
    - Edit API Page objects
    - Add new fields
    - Expose new data
    - Adjust logic
4. Once done, build the package using **Ctrl + Shift + B**. VS Code will generate a new `.app` file and the output window will confirm the package has been created.
5. When you build, VS Code will show two environment options. Choose: **Microsoft Cloud Sandbox**.
6. You will get a prompt click on **“Copy & Open”**.
7. On the page that opens, paste the code you copied in the previous step.
8. Sign in to your BC account by entering your Azure Credentials.

**Note:** You need to have a **sandbox environment** set up in your [Business Central](https://satvasolutions.com/blog/dynamics-365-business-central-integration-guide) account for the build process to work.

Once all of the above steps are completed, you will be able to build your app and a package will be generated.

## How to Grant Extension Permissions in Business Central

The user installing the extension must have extension management rights. Follow these steps:

1. In the Business Central client, search for **“Users”** and open the page.
2. Open the user you want to grant permission to and click on **“Effective Permissions”**.
3. Click on **“Permissions Sets”**.
4. Click on **“Edit List”**, search for **“Extension Management Admin”**, and click the arrow to include it in the permission sets.

## How to Install and Uninstall Extensions in Business Central

1. In the Business Central client, search for **“Extension Management”** and open the page.
2. Click on **“Upload Extension”**.
3. Select the `.app` file, enable the radio button shown, and click the **Deploy** button.

**Important:** Make sure to choose the correct version of the application; otherwise, you will get an error indicating that the application with that version is already installed.

4. A message will display indicating the upload is in progress.
5. Search for **“Extension Installation Status”** to check the upload status. It takes around 5 minutes to complete.
6. Once the upload is complete, the status will change to **“Completed”**.
7. To uninstall the application, search for it in “Extension Management” and click on **“UnPublish”**.

**Reference:** For more details on installing and uninstalling extensions, see the [official Microsoft documentation](https://learn.microsoft.com/en-us/dynamics365/business-central/ui-extensions-install-uninstall).

## Why Custom API Endpoints Are Required in Business Central

![Business Central custom AL API vs standard API showing extended data access, custom tables, and integration with external systems](https://satvasolutions.com/wp-content/uploads/2026/04/business-central-custom-al-api-vs-standard-api-data-access-integration.webp)Business Central does not provide API endpoints for all tables. Many functional areas — especially custom tables, custom fields, or certain financial/operational tables are not exposed through Microsoft’s default API set.

Examples of data that requires custom endpoints:

- Custom master tables
- Custom workflows
- Custom posting tables
- Extra fields added via extensions
- Industry-specific data
- Anything outside the base API group

Because of this, integrations often require:

- Custom API Pages
- Custom entities
- API Groups / Versions
- Additional logic inside AL

Creating a custom endpoint ensures you can expose exactly what your integration needs.

| Standard API | Custom API |
|---|---|
| Limited data | Full control |
| Predefined endpoints | Custom endpoints |
| No custom tables | Supports custom tables |

## Conclusion

When the standard Business Central APIs do not cover your requirements, creating a [Custom API](https://satvasolutions.com/api-integration-services) via AL is the official and correct approach.

Using the steps above, you can build your AL app, package it, install it, and expose any data you need via custom APIs.

## FAQ

<dl class="faq-list"><dt class="faq-question">When should you use custom APIs in Business Central?</dt><dd class="faq-answer">You should use custom APIs when the required data is not available in the standard API, especially for custom tables, workflows, or integration-specific data.</dd><dt class="faq-question">What is the difference between standard API and custom API in Business Central?</dt><dd class="faq-answer">Standard APIs provide predefined endpoints for common data, while custom APIs allow you to expose specific tables, fields, and business logic using AL language.</dd><dt class="faq-question">Can custom APIs improve Business Central integrations?</dt><dd class="faq-answer">Yes, custom APIs allow you to access specific data and tailor integrations to your requirements, making them more efficient and scalable.</dd><dt class="faq-question">Do I need AL language to create API endpoints in Business Central?</dt><dd class="faq-answer">Yes, AL language is required to define API pages, structure data, and create custom endpoints in Business Central.</dd><dt class="faq-question">Does Business Central support all tables in its standard API?</dt><dd class="faq-answer">No, Business Central only exposes a limited set of tables through its standard API. Custom tables and extension-based data require custom API endpoints.</dd><dt class="faq-question">Why can’t I use the standard Business Central API for all tables?</dt><dd class="faq-answer">Microsoft only exposes a subset of Business Central tables through the default API. Custom tables, extension-added fields, and many financial/operational tables require you to build custom API pages using AL Language.</dd><dt class="faq-question">What happens if I don’t increment the version number in app.json?</dt><dd class="faq-answer">Business Central will reject the installation if the version number matches an already-installed extension. Always increment the version in `app.json` before building a new package.</dd><dt class="faq-question">Do I need a sandbox environment to build the package?</dt><dd class="faq-answer">Yes, a sandbox environment is required for the build and deployment process. The AL Language extension in VS Code connects to the sandbox to compile and validate your extension.</dd><dt class="faq-question">How long does extension installation take?</dt><dd class="faq-answer">Extension installation typically takes around 5 minutes. You can monitor the progress by searching for “Extension Installation Status” in the Business Central client.</dd></dl>


---

_View the original post at: [https://satvasolutions.com/blog/business-central-custom-api-endpoint](https://satvasolutions.com/blog/business-central-custom-api-endpoint)_  
_Served as markdown by [Third Audience](https://github.com/third-audience) v3.5.4_  
_Generated: 2026-04-16 12:52:52 UTC_  
