Microsoft recently announced the general availability of the Data API builder for Azure Cosmos DB. The open-source project provides REST and GraphQL endpoints to Azure databases and on-premises stores. The new Data API Builder (DAB) is designed to simplify the process of exposing GraphQL endpoints to Azure Cosmos DB collections and enable modification including relational queries, filtering, and repair operations. DAB provides a cross-platform CLI, native OpenAPI support, Swagger for REST endpoints, and Banana Cake Pop for GraphQL endpoints.
Cross-platform and language-agnostic, DAB is designed as an alternative to custom APIs to perform CRUD operations on databases using a single configuration file, providing retry policies, comprehensive logging, in-memory caching, column mapping and result filtering capabilities. DAB is an ASP.NET project written in C# using ChilliCream's Hot Chocolate for GraphQL and FusionCache for in-memory caching.
Announcing the general availability of the project, Jerry Nixon, senior product manager at Microsoft, writes: “According to Azure, container-based DAB allows developers to create GraphQL endpoints while maintaining granular and flexible security features. Sinnathurai adds:
Sajitharan Sinnathurai, Product Manager, Azure Cosmos DB, discusses some use cases Supporting custom on-premises deployments, DAB natively integrates with Azure Static Web Apps and works with Azure Container Apps, Azure Container Instances, Azure Kubernetes Service, and Azure Web Apps for Containers.