Tools that automatically create REST or GraphQL endpoints directly from existing relational database schemas.
PostGraphile is an automated tool that converts a PostgreSQL database schema into a fully functional GraphQL API. It serves as a GraphQL execution engine and schema orchestrator, utilizing database schema introspection to retrieve strongly typed metadata directly from PostgreSQL. The project features a modular system for composing and standardizing GraphQL schemas through plugins, which manage naming conventions and connections. It includes a PostgreSQL query builder that constructs dynamic, SQL-injection-proof queries using tagged template literals. The system employs a declarative query planning engine to optimize request processing and reduce server load. Additionally, it provides a mechanism to export dynamically generated in-memory schemas into standalone JavaScript source code.
PostGraphile is a powerful tool that automatically introspects PostgreSQL schemas to provide a GraphQL API, though it focuses on GraphQL rather than providing a native REST interface out of the box.
graphql-engine is an automated GraphQL API engine that transforms database tables and relationships into a queryable GraphQL schema. It functions as a federation gateway and mapper, instantly generating APIs with built-in filtering, pagination, and mutations from existing databases and remote schemas. The project distinguishes itself through a fine-grained access control layer that enforces row-level and field-level permissions. It further provides a real-time data subscription server that converts standard queries into live streams and a system for triggering event-driven webhooks and notifications in response to database changes. The platform covers a broad range of capabilities including remote schema federation for merging disparate data sources, a REST API gateway for exposing saved queries, and support for spatial and hierarchical data querying. It also includes tools for schema migration management and a visual administrative interface for database configuration. The system can be deployed via containerized orchestration using Docker Compose or Kubernetes.
This tool automatically introspects your database to provide a comprehensive GraphQL and REST API layer, complete with built-in role-based access control, real-time subscriptions, and self-hosting capabilities.
Directus is a headless content platform that functions as a backend service, automatically generating REST and GraphQL APIs by performing introspection on existing SQL database schemas. It serves as a unified data orchestration layer, decoupling content management from frontend delivery while providing a secure, stateless gateway for database transactions. The platform distinguishes itself through a granular role-based access control engine that enforces security policies at the field level across all API endpoints. It includes a visual, low-code administrative dashboard that allows non-technical users to manage database records directly, alongside a dynamic query abstraction layer that ensures consistent data access regardless of the underlying storage engine. Beyond its core API generation capabilities, the system supports complex data workflows through an event-driven webhook architecture and a middleware pipeline for custom logic injection. It also provides integrated digital asset management for storing and transforming media files, facilitating the development of internal tools and rapid backend prototyping.
Directus is a comprehensive platform that automatically introspects SQL databases to provide both REST and GraphQL APIs, featuring robust role-based access control, real-time capabilities, and a self-hostable architecture that perfectly matches your requirements.
This project provides an integrated backend platform built around a relational database. It automatically generates REST and GraphQL APIs from database schemas, allowing for direct data interaction through standard requests and client libraries. The platform includes a comprehensive authentication system that manages user identity, session handling, and fine-grained access control through database-native row-level security policies. Beyond core data management, the platform offers specialized services for object storage, vector data processing for semantic search, and real-time communication features like broadcast messaging and database change subscriptions. It also supports server-side logic execution through globally distributed edge functions, database-resident functions, and a native job scheduler for automated tasks. Developers can manage the entire project lifecycle using a command-line interface and containerized local development environments. The platform supports both managed cloud services and self-hosted deployments, providing options for infrastructure control and data sovereignty.
Supabase is a comprehensive backend platform that automatically introspects PostgreSQL schemas to provide both REST and GraphQL APIs, while including built-in support for real-time subscriptions, row-level security, and self-hosted deployments.
PostgREST is a standalone web server that automatically transforms a PostgreSQL database into a RESTful API. It serves as an API gateway that translates HTTP requests into SQL queries, mapping the database schema directly to endpoints without the need for manual route definitions. The system utilizes a JWT authentication layer to validate user identities and map incoming web requests to specific database roles. This allows the server to delegate authorization and permission enforcement to the internal PostgreSQL role system. It includes a generator for OpenAPI specifications to provide standardized documentation for exploring and testing endpoints. The project also supports database schema versioning to allow the data interface to evolve without breaking existing client integrations.
PostgREST is a robust, self-hostable tool that automatically introspects PostgreSQL schemas to provide a RESTful API with role-based access control, though it focuses on REST rather than providing native GraphQL support.
NocoDB is a visual platform that transforms relational databases into collaborative, spreadsheet-style workspaces. By acting as a headless database backend, it provides a unified environment for designing database structures, managing record relationships, and interacting with data without requiring manual SQL queries. The platform normalizes interactions across various SQL and NoSQL data sources, allowing users to manage complex datasets through a centralized interface. The project distinguishes itself by automatically generating RESTful and GraphQL APIs from existing database schemas, enabling external applications to interact with data programmatically. It features a robust event-driven engine that monitors database state changes to trigger webhooks and execute custom logic within a sandboxed automation runtime. This allows for the creation of complex business workflows that synchronize information across third-party services based on real-time data updates. Beyond its core management capabilities, the platform offers a flexible view abstraction layer that renders data in multiple formats, including grids, kanban boards, galleries, forms, and calendars. It supports team collaboration through shared workspaces and provides tools for data visualization, schema design, and automated record manipulation. Comprehensive documentation is available to guide users through the API reference, script creation, and integration workflows.
NocoDB is a comprehensive platform that automatically introspects your database to generate both REST and GraphQL APIs, while providing built-in role-based access control and real-time capabilities in a self-hostable package.
Nhost is an open-source backend as a service that provides a managed PostgreSQL database, authentication, and file storage accessible through a unified GraphQL API. It functions as a backend infrastructure orchestrator, enabling the deployment and management of full-stack environments using containerization and command-line automation. The platform distinguishes itself by automating the transformation of relational database tables into a secure GraphQL API and providing an integrated identity provider that supports passwords, magic links, and OAuth. It also includes a serverless function runtime for executing isolated backend logic with automatic bundling and hot-reloading. The system covers a broad range of capabilities, including user identity and session management, S3-compatible object storage with dynamic image transformation, and role-based access control. It also provides tools for local development synchronization, virus scanning for file uploads, and integration protocols for connecting large language models to project data. The infrastructure can be managed via a command-line interface or self-hosted on private servers using containers.
Nhost provides automated GraphQL API generation from PostgreSQL schemas with built-in role-based access control and self-hosting capabilities, though it functions as a broader backend-as-a-service platform rather than a dedicated, standalone database-to-REST tool.
Keystone is a GraphQL headless content management system and Node.js backend framework. It functions as a schema-driven data manager that automatically generates a GraphQL API and a React administrative dashboard based on a central data model configuration. The system uses an adapter-based database abstraction to decouple core logic from storage layers and a storage-provider abstraction for managing media assets via local or cloud drivers. It distinguishes itself through a component-based field rendering system and a hook-based middleware pipeline for data validation and automation. The framework covers a broad range of capabilities including role-based access control, user authentication, and the management of complex relational data models. It allows for system extension through a plugin-based architecture, custom GraphQL resolvers, and a customizable management interface.
Keystone is a schema-driven framework that automatically generates a GraphQL API from your data models, though it functions primarily as a headless CMS rather than a general-purpose database-to-API generator.
PostgREST is a standalone server process that automatically transforms a relational database schema into a fully functional RESTful API. By querying system catalogs at startup, it maps tables, views, and stored procedures into standardized web endpoints, allowing developers to build backend services by focusing exclusively on database design. The service functions as a declarative engine that translates HTTP requests and query parameters directly into native SQL operations. It maintains stateless request processing and integrates connection pooling to manage high-frequency interactions efficiently. Security is enforced by delegating authentication and authorization to the database engine, which maps request tokens to specific database roles and applies row-level security policies to ensure consistent data access. This approach enables rapid prototyping by eliminating the need for custom application code to handle standard data operations. The system acts as a relational data gateway, ensuring that all interactions adhere to the integrity constraints and permissions defined within the underlying database.
PostgREST is a robust database-to-REST generator that handles schema introspection and role-based access control natively, though it focuses exclusively on REST rather than providing a built-in GraphQL interface.
Ent is a statically typed entity framework for Go that models database structures as a graph of nodes and edges. It functions as a code generation engine that transforms schema definitions into type-safe database clients, query builders, and migration scripts. By representing data as interconnected entities, the framework enables intuitive traversal of complex relationships and ensures that database interactions remain consistent with the application model at compile time. The framework distinguishes itself through its graph-based approach to data modeling and its reliance on compile-time code generation to enforce type safety. It automates the synchronization of database schemas with application models, providing tools to manage versioned migrations and validate structural integrity before changes are applied. Developers can customize the generation pipeline using templates to tailor the output to specific infrastructure requirements. Beyond core modeling and generation, the project provides a comprehensive suite of tools for managing the data lifecycle. This includes automated API development for GraphQL, cursor-based pagination for large datasets, and built-in mechanisms for auditing data changes. The system also optimizes data retrieval by automating the loading of related entities, reducing the need for manual query management.
Ent is a Go-based entity framework that generates type-safe database clients and includes built-in support for creating GraphQL APIs from your schema, though it functions primarily as an ORM and code-generation library rather than a standalone, deployable API server.
Parse Server is a backend-as-a-service solution and Node.js framework that provides a ready-to-use REST and GraphQL API for mobile and web applications. It functions as a core backend infrastructure for managing database schemas, user authentication, and API routing. The system distinguishes itself with a real-time data engine that pushes database updates to clients via WebSockets and a GraphQL server that automatically generates schemas based on application data models. It also features an adapter-based storage layer that abstracts interactions with various cloud and local backends. The platform covers broad capability areas including identity and access management with third-party authentication integration, binary data management for file hosting, and advanced data querying using native database aggregation pipelines. It incorporates security layers for field-level data protection, account policy enforcement, and traffic management utilities such as rate limiting and query complexity capping. The server can be deployed via containerized images and supports asynchronous initialization to ensure all internal components are loaded before processing requests.
Parse Server is a comprehensive backend-as-a-service framework that automatically generates REST and GraphQL APIs from your data models, though it functions more as a full backend platform than a lightweight database-to-API introspection tool.
LoopBack is a Node.js API framework used to build RESTful services and backend applications. It functions as a model-driven API generator that automatically maps predefined data models to network endpoints to create standardized web interfaces. The project features a database abstraction layer that unifies access across diverse SQL databases, NoSQL stores, and remote data sources. It includes a backend application scaffolder using command-line generators to automate the creation of project structures and data connectors. Additionally, it provides an API authentication system to manage application identities and an access control system that restricts resource access via authentication and authorization lists. The framework covers broader capabilities including the generation of native client SDKs for multiple platforms and the implementation of mobile backend infrastructure for push notifications, geolocation, and cloud file storage. It also supports the integration of third-party middleware for monitoring and instrumentation.
LoopBack is a model-driven framework that automatically generates RESTful APIs from database schemas, though it lacks native GraphQL support and real-time subscriptions out of the box.