openapi: 3.0.3 info: title: Microsoft Dynamics 365 Business Central Accounts Companies API description: The Microsoft Dynamics 365 Business Central API (v2.0) provides a RESTful interface for integrating with Business Central. It exposes standard business entities such as customers, vendors, items, sales orders, purchase orders, journals, and general ledger entries. The API uses OData v4 conventions and requires Microsoft Entra ID (Azure AD) authentication. version: '2.0' contact: name: Microsoft url: https://learn.microsoft.com/en-us/dynamics365/business-central/dev-itpro/api-reference/v2.0/ license: name: Microsoft APIs Terms of Use url: https://learn.microsoft.com/en-us/legal/microsoft-apis/terms-of-use servers: - url: https://api.businesscentral.dynamics.com/v2.0/{tenantId}/{environment}/api/v2.0 description: Business Central Online (SaaS) variables: tenantId: default: common description: The Azure AD tenant ID or domain name. environment: default: production description: The Business Central environment name. - url: https://{baseUrl}:{port}/{serverInstance}/api/v2.0 description: Business Central On-Premises variables: baseUrl: default: localhost port: default: '7048' serverInstance: default: bc security: - oauth2: [] tags: - name: Companies paths: /companies: get: summary: Microsoft Dynamics List companies description: Returns a list of companies available in the Business Central tenant. operationId: listCompanies tags: - Companies parameters: - $ref: '#/components/parameters/top' - $ref: '#/components/parameters/skip' - $ref: '#/components/parameters/filter' - $ref: '#/components/parameters/select' responses: '200': description: A list of companies. content: application/json: schema: type: object properties: value: type: array items: $ref: '#/components/schemas/Company' '401': $ref: '#/components/responses/Unauthorized' components: responses: Unauthorized: description: Authentication required or token is invalid. parameters: filter: name: $filter in: query description: OData filter expression. schema: type: string select: name: $select in: query description: Comma-separated list of properties to include. schema: type: string skip: name: $skip in: query description: Number of records to skip. schema: type: integer top: name: $top in: query description: Maximum number of records to return. schema: type: integer schemas: Company: type: object properties: id: type: string format: uuid readOnly: true systemVersion: type: string readOnly: true name: type: string displayName: type: string businessProfileId: type: string securitySchemes: oauth2: type: oauth2 description: Microsoft Entra ID (Azure AD) OAuth 2.0 authentication. flows: authorizationCode: authorizationUrl: https://login.microsoftonline.com/common/oauth2/v2.0/authorize tokenUrl: https://login.microsoftonline.com/common/oauth2/v2.0/token scopes: https://api.businesscentral.dynamics.com/.default: Access Business Central API