---
id: topic/dev-itpro/integration/web-services
type: topic
title: Web services
summary: "Web services in Business Central: OData, SOAP and API endpoints, how to publish and secure them, and how to monitor, tune and troubleshoot them. It answers questions on endpoint setup, authentication, telemetry, performance patterns, error diagnosis and refactoring legacy integration records."
tier: official
language: en
system: integration
review:
  state: reviewed
  by: opus
  at: "2026-10-07T02:13:54.202Z"
  flags: []
generated:
  at: "2026-10-08T06:31:25.130Z"
  pipeline: 0.2.0
  prompts:
    hub-topic: 1
  input_hash: 6e0bfab613d3d64fbdb92ece89d70420cfc38337f638902b5739c02ad0febcb9
evidence:
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/dev-itpro/api-reference/v1.0/
    title: (v1.0) API (v1.0) for Dynamics 365 Business Central
    date: "2024-05-01"
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/dev-itpro/api-analytics/resources/dynamics_abcanalysissetup
    title: abcAnalysisSetup resource type
    date: "2026-06-08"
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/dev-itpro/api-analytics/resources/dynamics_accountcategory
    title: accountCategory resource type
    date: "2026-06-08"
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/dev-itpro/administration/financereportsapi/resources/dynamics_accountingperiod
    title: accountingPeriod resource type (Beta)
    date: "2024-05-31"
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/dev-itpro/api-analytics/api-analytics-overview
    title: Analytics API overview
    date: "2026-06-12"
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/dev-itpro/api-reference/v2.0/
    title: API (v2.0) for Dynamics 365 Business Central
    date: "2026-08-10"
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/dev-itpro/developer/devenv-api
    title: API developer overview
    date: "2025-02-07"
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/dev-itpro/webservices/api-endpoint-structure
    title: API endpoint structure
    date: "2025-07-07"
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/api-overview
    title: API Overview Page in Business Central
    date: "2026-09-23"
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/dev-itpro/api-analytics/resources/dynamics_assemblyheader
    title: assemblyHeader resource type
    date: "2026-06-08"
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/dev-itpro/api-analytics/resources/dynamics_assemblyline
    title: assemblyLine resource type
    date: "2026-06-08"
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/dev-itpro/api-analytics/resources/dynamics_balancesheetgeneralledgerentry
    title: balanceSheetGeneralLedgerEntry resource type
    date: "2026-06-08"
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/dev-itpro/api-analytics/resources/dynamics_bin
    title: bin resource type
    date: "2026-06-08"
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/dev-itpro/administration/administration-center-api
    title: Business Central Administration Center API
    date: "2025-11-06"
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/dev-itpro/administration/financereportsapi/resources/dynamics_businessunit
    title: businessUnit resource type (Beta)
    date: "2024-05-31"
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/dev-itpro/api-analytics/resources/dynamics_calendarentry
    title: calendarEntry resource type
    date: "2026-06-08"
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/dev-itpro/api-analytics/resources/dynamics_capacityledgerentry
    title: capacityLedgerEntry resource type
    date: "2026-06-08"
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/dev-itpro/api-analytics/resources/dynamics_closeincomestmtsourcecode
    title: closeIncomeStmtSourceCode resource type
    date: "2026-06-08"
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/dev-itpro/api-analytics/resources/dynamics_closeopportunitycode
    title: closeOpportunityCode resource type
    date: "2026-06-08"
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/dev-itpro/api-analytics/resources/dynamics_closinggeneralledgerentry
    title: closingGeneralLedgerEntry resource type
    date: "2026-06-08"
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/dev-itpro/administration/cloudmigrationapi/cloud-migration-api-overview
    title: Cloud Migration API Overview
    date: "2024-05-31"
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/dev-itpro/administration/financereportsapi/resources/dynamics_company
    title: company resource type (Beta)
    date: "2024-05-31"
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/dev-itpro/webservices/web-services
    title: Compare REST APIs, OData, and SOAP web services in Business Central
    date: "2024-02-28"
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/dev-itpro/api-analytics/resources/dynamics_contact
    title: contact resource type
    date: "2026-06-08"
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/dev-itpro/administration/financereportsapi/api/dynamics_subscriptions_create
    title: Create subscriptions (Beta)
    date: "2024-05-31"
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/dev-itpro/developer/devenv-creating-and-interacting-with-odatav4-bound-action
    title: Creating and Interacting with an OData V4 Bound Action
    date: "2021-04-01"
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/dev-itpro/developer/devenv-creating-and-interacting-with-odatav4-unbound-action
    title: Creating and interacting with an OData V4 unbound action
    date: "2024-07-23"
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/dev-itpro/api-analytics/resources/dynamics_customer
    title: customer resource type
    date: "2026-06-08"
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/dev-itpro/administration/financereportsapi/resources/dynamics_customer
    title: customer resource type (Beta)
    date: "2024-05-31"
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/dev-itpro/api-analytics/resources/dynamics_customerledgerentry
    title: customerLedgerEntry resource type
    date: "2026-06-08"
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/dev-itpro/administration/financereportsapi/resources/dynamics_customerledgerentry
    title: customerLedgerEntry resource type (Beta)
    date: "2024-05-31"
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/dev-itpro/api-analytics/resources/dynamics_datesetup
    title: dateSetup resource type
    date: "2026-06-08"
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/dev-itpro/administration/financereportsapi/api/dynamics_subscriptions_delete
    title: Delete subscriptions (Beta)
    date: "2024-05-31"
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/dev-itpro/administration/financereportsapi/resources/dynamics_detailedcustomerledgerentry
    title: detailedCustomerLedgerEntry resource type (Beta)
    date: "2024-05-31"
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/dev-itpro/administration/financereportsapi/resources/dynamics_detailedvendorledgerentry
    title: detailedVendorLedgerEntry resource type (Beta)
    date: "2024-05-31"
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/dev-itpro/api-analytics/resources/dynamics_dimension
    title: dimension resource type
    date: "2026-06-08"
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/dev-itpro/api-analytics/resources/dynamics_dimensionsetentry
    title: dimensionSetEntry resource type
    date: "2026-06-08"
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/dev-itpro/administration/financereportsapi/resources/dynamics_dimensionsetentry
    title: dimensionSetEntry resource type (Beta)
    date: "2024-05-31"
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/dev-itpro/administration/financereportsapi/resources/dynamics_dimensionvalue
    title: dimensionValue resource type (Beta)
    date: "2024-05-31"
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/dev-itpro/developer/devenv-disable-soap-microsoft-pages-feature-key
    title: Disable SOAP web services on Microsoft UI pages feature key
    date: "2025-03-26"
    commit: null
    t: null
    quote: null
links:
  learn:
    - https://learn.microsoft.com/dynamics365/business-central/dev-itpro/webservices/web-services
    - https://learn.microsoft.com/dynamics365/business-central/dev-itpro/developer/devenv-integration-record-refactoring
    - https://learn.microsoft.com/dynamics365/business-central/dev-itpro/webservices/web-service-troubleshooting
    - https://learn.microsoft.com/dynamics365/business-central/dev-itpro/webservices/web-service-performance
    - https://learn.microsoft.com/dynamics365/business-central/dev-itpro/webservices/web-service-telemetry
    - https://learn.microsoft.com/dynamics365/business-central/dev-itpro/webservices/webservices-terms-of-use
  objects:
    - object/page/812
  features: []
  topics:
    - topic/dev-itpro/integration
    - topic/dev-itpro/integration/web-services/web-services-security
    - topic/dev-itpro/integration/web-services/apis
    - topic/dev-itpro/integration/web-services/odata
    - topic/dev-itpro/integration/web-services/publishing-pages-and-codeunits-as-odata
    - topic/dev-itpro/integration/web-services/soap
  localizations: []
  videos:
    - video/sk5CaXnvvng
  posts: []
  guidelines: []
  changes:
    - change/bcapps/11168
    - change/bcapps/11318
    - change/bcapps/9711
    - change/bcapps/9737
    - change/bcquality/100
learn_toc_path:
  - Integration
  - Web services
toc_file: dev-itpro/TOC.md
parent: topic/dev-itpro/integration
children:
  - topic/dev-itpro/integration/web-services/web-services-security
  - topic/dev-itpro/integration/web-services/apis
  - topic/dev-itpro/integration/web-services/odata
  - topic/dev-itpro/integration/web-services/publishing-pages-and-codeunits-as-odata
  - topic/dev-itpro/integration/web-services/soap
coverage:
  learn: 294
  code: 1
  video: 1
  blog: 0
  guideline: 0
bc_forms:
  - 812
member_hash: 059de4a5a07b7fb9ecf5db6c62e0fde637536d5a32547994b3a9c68747046252
narrative: generated
---

# Web services

> Web services in Business Central: OData, SOAP and API endpoints, how to publish and secure them, and how to monitor, tune and troubleshoot them. It answers questions on endpoint setup, authentication, telemetry, performance patterns, error diagnosis and refactoring legacy integration records.

Path: [Integration](../integration.md) > Web services · tier official · system integration · narrative reviewed (checked by Opus)

## Overview

Web services in Business Central expose data and logic to external clients through OData, SOAP and APIs. The section is organized into subtopics for publishing pages, queries and codeunits as endpoints, for OData and SOAP usage, for the large API reference set, and for security (authentication, certificates, cipher suites, Azure service tags).

The hub's own pages cover operations across all three protocols. They cover troubleshooting errors (HTTP status codes, OData error codes, telemetry, debugging), performance guidance (patterns, anti-patterns, API client and Power BI performance), and web service telemetry that logs SOAP, OData and API requests to partner telemetry. A refactoring guide explains replacing legacy integration records with system fields, and a page covers the Microsoft APIs Terms of Use.

To start, read the publishing subtopic to expose an endpoint, then the security subtopic to choose authentication. Use the telemetry, performance and troubleshooting pages once consumers are running.

## Key points

- Subtopics cover security, APIs (261 pages), OData (14), publishing pages and codeunits as endpoints (5), and SOAP (4).
- Security covers basic, OAuth and service-to-service authentication, certificates, supported cipher suites for outgoing HTTPS calls, and network restriction with Azure service tags.
- OData pages cover querying, filtering, modifying, batching, metadata, paging, limits, FlowFilters, unbound actions and error codes.
- Publishing covers OData V4 bound actions and troubleshooting publish errors; the SOAP feature key was removed in version 30.0.
- Web service telemetry logs all SOAP, OData and API requests, including HTTP status codes, access key authentication and publish failures.
- Troubleshooting guidance helps decide whether errors come from the client, network or server endpoint, using status codes, telemetry, OData error codes and debugging.
- Performance guidance covers anti-patterns, performance patterns, API client and Power BI performance, and throughput handling.
- Integration Management Refactoring Guidance explains replacing legacy integration records with system fields such as SystemId and SystemRowVersion before their removal in 2023 release wave 1.

## Subtopics

- [Web services security](web-services/web-services-security.md) (7 pages)
- [APIs](web-services/apis.md) (261 pages)
- [OData](web-services/odata.md) (14 pages)
- [Publishing pages and codeunits as OData/SOAP web service endpoints](web-services/publishing-pages-and-codeunits-as-odata.md) (5 pages)
- [SOAP](web-services/soap.md) (4 pages)

## More Learn pages

- [Compare REST APIs, OData, and SOAP web services in Business Central](https://learn.microsoft.com/dynamics365/business-central/dev-itpro/webservices/web-services): Compare the features of REST APIs, SOAP, and OData web services and know how to create and maintain these services.
- [Integration Management Refactoring Guidance](https://learn.microsoft.com/dynamics365/business-central/dev-itpro/developer/devenv-integration-record-refactoring): This article offers guidance for refactoring the code in your Marketplace app or per-tenant extension to use system fields rather than integration records.
- [Troubleshooting web service errors (OData, API, and SOAP)](https://learn.microsoft.com/dynamics365/business-central/dev-itpro/webservices/web-service-troubleshooting): Learn about how to troubleshoot Business Central web service errors (OData, API, and SOAP).
- [Web Service Performance (OData, API, and SOAP)](https://learn.microsoft.com/dynamics365/business-central/dev-itpro/webservices/web-service-performance): Learn about how performance of Business Central web services (OData, API, and SOAP)
- [Web Service Telemetry](https://learn.microsoft.com/dynamics365/business-central/dev-itpro/webservices/web-service-telemetry): Learn about how Business Central emits telemetry about web service requests
- [Web Services Terms of Use](https://learn.microsoft.com/dynamics365/business-central/dev-itpro/webservices/webservices-terms-of-use): Terms of Use for Business Central APIs

## Videos, posts and code changes

Linked by a Haiku matcher with a grounding quote from the item's summary (link/topics.ts); machine-generated.

- [#11168 Restore E-Document vendor invoice field compatibility](../../../changes/bcapps/11168.md) (code change): "E-Document vendor invoice field name restored from 'Applies-to Ext. Invoice No.'"
- [#11318 [main] Bug 649189: Update E-Document vendor invoice caption](../../../changes/bcapps/11318.md) (code change): "Table field caption changed to 'Applies-to Ext. Invoice No.'"
- [#9711 Fix E-Document purchase draft header Sub Total overwrite; notify on mismatch](../../../changes/bcapps/9711.md) (code change): "E-Document purchase draft no longer silently overwrites the header Sub Total"
- [#9737 [E-Document] Move Data Exchange definitions from labels to app resource files](../../../changes/bcapps/9737.md) (code change): "E-Document installation moved eight PEPPOL Data Exchange Definition XMLs from translatable AL labels"
- [#100 Add P0 integration and control add-in runtime guidance](../../../changes/bcquality/100.md) (code change): "Adds guidance and code samples for linking API parts on SystemId with Multiplicity set"
- [What's New: Server and Database - More Stable Web Services (2023 release wave 2)](../../../videos/sk5CaXnvvng.md) (video): "Web services; odata; http status codes; error handling"

## Business Central pages and reports

The pages, reports and queries this hub's Learn pages name (ms.search.form, API reference), joined to the code by exact object id (data/index/docs-objects.json); a page shows the table it runs on.

- [Page 812 "API Overview"](../../../objects/page/812.md) · on [Table 812 "API Overview Buffer"](../../../objects/table/812.md) · via [APIs](web-services/apis.md)

Source: Microsoft Learn (CC BY 4.0). Descriptions are Learn's own.
