Skip to main content

Quickstart with Postman

Before connecting Power BI, Microsoft Fabric or any other tool, test the endpoints in Postman to verify connectivity and authentication, and to explore the data. Postman is free.

What you need​

  • BI Endpoints installed and the subscription activated.
  • An app registration with its client ID, client secret, tenant ID and primary domain, registered in Business Central with the DTW BI ENDPOINTS permission set.

1. Import the collection​

  1. Download and install Postman if you don't have it already.
  2. In Business Central, open BI Endpoints, expand the factbox pane, and download the Postman Collection under Support Material. Unzip it.
  3. In Postman, create a new workspace and Import the collection.

The collection has a General folder with the token and company requests, and one folder per category — Finance, Sales, Purchasing, Inventory, Jobs, Resources, Manufacturing, Assembly, Custom and System.

2. Fill in the environment variables​

Import the environment that comes with the collection and fill in:

VariableValue
clientIdApplication (client) ID of the app registration
clientSecretThe client secret value
tenantIdDirectory (tenant) ID
domainThe primary domain, for example contoso.onmicrosoft.com
environmentThe Business Central environment, for example Production
companyFilled in in step 4
companyIdFilled in in step 4

3. Get a token​

  1. Select the environment in the upper right corner.
  2. Open General > Token and click Send.
  3. Copy the value of access_token from the response — without the surrounding double quotes. It starts with eyJ0eX….
  4. Open the collection's Authorization tab, paste the value into Token, and save.

A token is valid for a limited time (about an hour). When requests start returning 401, request a new one.

4. Find your company​

Send General > List companies. Copy the id and name of the company you want to load data from into the companyId and company variables.

5. Call an endpoint​

Pick an endpoint from the collection — for example Finance > Chart Of Accounts — and click Send. The data is in the JSON array value:

{
"@odata.context": "https://api.businesscentral.dynamics.com/v2.0/.../$metadata#companies(...)/chartOfAccounts",
"value": [
{
"@odata.etag": "W/\"JzE5OzI...\"",
"no": "10",
"name": "BALANCE SHEET",
"accountCategory": " ",
"accountSubcategoryDescript": "",
"accountType": "Posting",
"consolDebitAcc": "",
"incomeBalance": "Balance Sheet",
"totaling": "",
"systemModifiedAt": "2025-12-06T06:27:23.76Z"
}
]
}

The System folder lists the metadata: BI Endpoints, Properties, Relationships, Referenced By, Deleted Entries and Application Info. See Metadata discovery.

Without Postman​

The same requests with curl:

# 1. Token
curl -X POST "https://login.microsoftonline.com/{domain}/oauth2/v2.0/token" \
--data-urlencode "client_id={clientId}" \
--data-urlencode "client_secret={clientSecret}" \
--data-urlencode "scope=https://api.businesscentral.dynamics.com/.default" \
--data-urlencode "grant_type=client_credentials"

# 2. Companies
curl "https://api.businesscentral.dynamics.com/v2.0/{tenantId}/{environment}/api/v2.0/companies" \
-H "Authorization: Bearer {access_token}"

# 3. Chart of accounts
curl "https://api.businesscentral.dynamics.com/v2.0/{tenantId}/{environment}/api/datawareness/endpoints/v1.0/companies({companyId})/chartOfAccounts" \
-H "Authorization: Bearer {access_token}"

What to try next​