Microsoft has released Data API Builder (DAB) 1.6, expanding the open-source runtime’s capabilities for REST and GraphQL endpoints over Azure SQL, PostgreSQL, MySQL, and Cosmos DB. The new version introduces advanced HTTP header behaviours for better client-side control and a revamped logging subsystem designed to improve diagnostics and observability in both cloud and on-premise deployments.
Data API Builder provides a stateless middle layer that automatically exposes database objects as secure REST API endpoints. Since its general availability in May 2024, DAB has been used to accelerate backend development by eliminating the need for custom ORM-based APIs.
However, general developer feedback from social networks indicates that DAB is suited only for prototyping and simple scenarios. As one developer mentions on Reddit, it lacks validations with custom business logic, updates over multiple entities, and custom error handling.
Version 1.6 continues Microsoft’s focus on production readiness by addressing two main areas: header semantics and runtime telemetry.
According to Microsoft’s DevBlogs announcement, Data API Builder 1.6 now honours standard HTTP headers that control how clients interact with exposed data entities:
These additions enhance DAB’s interoperability with existing HTTP clients, reverse proxies, and API gateways. However, Microsoft notes that DAB 1.6 does not yet implement ETag
generation or full conditional request support, features planned for a future release.
The release also introduces a new logging system that replaces the static configuration model from earlier versions. Developers can now define multiple sinks and log levels using JSON configuration or environment variables, supporting tailored observability for local debugging or cloud production:
- File sink for writing structured logs to disk, suitable for local or containerised deployments.
- Azure Log Analytics and Application Insights sinks for centralised telemetry across Azure resources.
- OpenTelemetry sink for distributed tracing, enabling integration with third-party observability platforms.
Logging verbosity can be adjusted per component, allowing developers to focus diagnostics on API routing, query generation, or security middleware. The team also introduced filtered logging to reduce noise in high-volume environments.
Future updates are expected to expand support for ETags, conditional requests and structured diagnostics events.
DAB is distributed as a NuGet package or an MCR container, and it also has its own Visual Studio Code extension. Developers can explore the official GitHub repository or the Azure SQL Dev Blog for release notes, configuration examples, and community discussions.