Microsoft Dynamics NAV Configuration Packages API

Manage RapidStart configuration packages

Documentation

Specifications

Other Resources

OpenAPI Specification

navision-configuration-packages-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Business Central Administration Center Accounts Configuration Packages API
  description: REST API for programmatic administration of Dynamics 365 Business Central environments. Enables querying and managing production and sandbox environments, setting up administrative notifications, viewing tenant telemetry, managing apps, scheduling updates, and performing environment operations such as copy, rename, restore, and delete.
  version: '2.28'
  contact:
    name: Microsoft Dynamics Support
    email: bcsupport@microsoft.com
    url: https://dynamics.microsoft.com/support/
  license:
    name: Microsoft APIs Terms of Use
    url: https://learn.microsoft.com/en-us/legal/microsoft-apis/terms-of-use
  termsOfService: https://learn.microsoft.com/en-us/legal/microsoft-apis/terms-of-use
servers:
- url: https://api.businesscentral.dynamics.com/admin/v2.28
  description: Business Central Administration Center
security:
- oauth2: []
- bearerAuth: []
tags:
- name: Configuration Packages
  description: Manage RapidStart configuration packages
paths:
  /companies({company_id})/configurationPackages:
    get:
      summary: List Configuration Packages
      description: Returns a list of RapidStart configuration packages.
      operationId: listConfigurationPackages
      tags:
      - Configuration Packages
      parameters:
      - $ref: '#/components/parameters/company_id'
      responses:
        '200':
          description: Successfully retrieved configuration packages
          content:
            application/json:
              schema:
                type: object
                properties:
                  value:
                    type: array
                    items:
                      $ref: '#/components/schemas/ConfigurationPackage'
              examples:
                Listconfigurationpackages200Example:
                  summary: Default listConfigurationPackages 200 response
                  x-microcks-default: true
                  value:
                    value:
                    - id: abc123
                      code: example_value
                      packageName: example_value
                      languageId: '500123'
                      productVersion: example_value
                      processingOrder: 10
                      excludeConfigurationTables: true
                      numberOfTables: 10
                      numberOfRecords: 10
                      numberOfErrors: 10
                      importStatus: ' '
                      applyStatus: ' '
        '401':
          $ref: '#/components/responses/Unauthorized'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    post:
      summary: Create a Configuration Package
      description: Creates a new RapidStart configuration package record.
      operationId: createConfigurationPackage
      tags:
      - Configuration Packages
      parameters:
      - $ref: '#/components/parameters/company_id'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - code
              - packageName
              properties:
                code:
                  type: string
                  description: The configuration package code
                packageName:
                  type: string
                  description: The configuration package name
            examples:
              CreateconfigurationpackageRequestExample:
                summary: Default createConfigurationPackage request
                x-microcks-default: true
                value:
                  code: example_value
                  packageName: example_value
      responses:
        '201':
          description: Configuration package created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigurationPackage'
              examples:
                Createconfigurationpackage201Example:
                  summary: Default createConfigurationPackage 201 response
                  x-microcks-default: true
                  value:
                    id: abc123
                    code: example_value
                    packageName: example_value
                    languageId: '500123'
                    productVersion: example_value
                    processingOrder: 10
                    excludeConfigurationTables: true
                    numberOfTables: 10
                    numberOfRecords: 10
                    numberOfErrors: 10
                    importStatus: ' '
                    applyStatus: ' '
        '401':
          $ref: '#/components/responses/Unauthorized'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /companies({company_id})/configurationPackages({package_id})/file('{code}')/content:
    patch:
      summary: Upload Rapidstart Package File
      description: Uploads the RapidStart package file content.
      operationId: uploadConfigurationPackageFile
      tags:
      - Configuration Packages
      parameters:
      - $ref: '#/components/parameters/company_id'
      - name: package_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
        example: '500123'
      - name: code
        in: path
        required: true
        schema:
          type: string
        example: example_value
      - $ref: '#/components/parameters/ifMatch'
      requestBody:
        required: true
        content:
          application/octet-stream:
            schema:
              type: string
              format: binary
            examples:
              UploadconfigurationpackagefileRequestExample:
                summary: Default uploadConfigurationPackageFile request
                x-microcks-default: true
                value: example_value
      responses:
        '200':
          description: Package file uploaded
        '401':
          $ref: '#/components/responses/Unauthorized'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /companies({company_id})/configurationPackages({package_id})/Microsoft.NAV.import:
    post:
      summary: Import a Configuration Package
      description: Imports the uploaded RapidStart configuration package.
      operationId: importConfigurationPackage
      tags:
      - Configuration Packages
      parameters:
      - $ref: '#/components/parameters/company_id'
      - name: package_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
        example: '500123'
      responses:
        '204':
          description: Import initiated
        '401':
          $ref: '#/components/responses/Unauthorized'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /companies({company_id})/configurationPackages({package_id})/Microsoft.NAV.apply:
    post:
      summary: Apply a Configuration Package
      description: Applies the imported RapidStart configuration package.
      operationId: applyConfigurationPackage
      tags:
      - Configuration Packages
      parameters:
      - $ref: '#/components/parameters/company_id'
      - name: package_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
        example: '500123'
      responses:
        '204':
          description: Apply initiated
        '401':
          $ref: '#/components/responses/Unauthorized'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
components:
  parameters:
    ifMatch:
      name: If-Match
      in: header
      required: true
      description: ETag value for optimistic concurrency control
      schema:
        type: string
    company_id:
      name: company_id
      in: path
      required: true
      description: The unique identifier of the company
      schema:
        type: string
        format: uuid
  responses:
    Unauthorized:
      description: Unauthorized - authentication required
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
  schemas:
    ConfigurationPackage:
      type: object
      properties:
        id:
          type: string
          format: uuid
          example: abc123
        code:
          type: string
          description: The package code
          example: example_value
        packageName:
          type: string
          description: The package name
          example: example_value
        languageId:
          type: integer
          example: '500123'
        productVersion:
          type: string
          example: example_value
        processingOrder:
          type: integer
          example: 10
        excludeConfigurationTables:
          type: boolean
          example: true
        numberOfTables:
          type: integer
          readOnly: true
          example: 10
        numberOfRecords:
          type: integer
          readOnly: true
          example: 10
        numberOfErrors:
          type: integer
          readOnly: true
          example: 10
        importStatus:
          type: string
          readOnly: true
          enum:
          - ' '
          - InProgress
          - Completed
          - Error
          example: ' '
        applyStatus:
          type: string
          readOnly: true
          enum:
          - ' '
          - InProgress
          - Completed
          - Error
          example: ' '
    ErrorResponse:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: string
            message:
              type: string
          example: example_value
  securitySchemes:
    oauth2:
      type: oauth2
      description: OAuth 2.0 authentication via Microsoft Entra ID
      flows:
        authorizationCode:
          authorizationUrl: https://login.microsoftonline.com/{tenantId}/oauth2/v2.0/authorize
          tokenUrl: https://login.microsoftonline.com/{tenantId}/oauth2/v2.0/token
          scopes:
            https://api.businesscentral.dynamics.com/.default: Access Business Central Admin APIs
        clientCredentials:
          tokenUrl: https://login.microsoftonline.com/{tenantId}/oauth2/v2.0/token
          scopes:
            https://api.businesscentral.dynamics.com/.default: Access Business Central Admin APIs
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
externalDocs:
  description: Administration Center API Documentation
  url: https://learn.microsoft.com/en-us/dynamics365/business-central/dev-itpro/administration/administration-center-api