The following is a list of tools that automatically expose a REST, GraphQL, or another kind of API for your database, as well as databases with a built-in HTTP API.
Project name/link | Database(s) supported | API type | Implementation language | License | GitHub stats | Notes |
---|---|---|---|---|---|---|
Apinizer API Creator | Oracle, MySQL, PostgreSQL, MsSQL, IBM DB2, SAP Sybase ASE, Apache Impala, Apache Hive | REST | Java | Proprietary (SaaS) | n/a | Generates OpenAPI Specifications. |
ArangoDB | ArangoDB | REST | C++ | Apache 2.0 | 12741 ★; 49517 commits, latest 2022-12-20 | A database with a built-in REST API. Official Docker image. |
CouchDB | CouchDB | REST | Erlang | Apache 2.0 | 5534 ★; 12970 commits, latest 2022-12-20 | A database with a built-in REST API. Official Docker image. |
Crux | Crux | REST | Clojure | MIT | 2072 ★; 7325 commits, latest 2022-12-05 | A database with a built-in REST API. Official Docker image. |
Datasette | SQLite 3 | REST | Python 3 | Apache 2.0 | 6766 ★; 2318 commits, latest 2022-12-18 | Read-only. Official Docker image. |
Dgraph | Dgraph | GraphQL (since version 2.0.0-rc1) | Go | Apache 2.0 | 18771 ★; 5799 commits, latest 2022-12-17 | A database with a built-in GraphQL API. Official Docker image. |
DreamFactory | MySQL, PostgreSQL, SQLite, MongoDB, CouchDB, and others. | REST | PHP 5 | Apache 2.0, proprietary (optional extras) | 1321 ★; 1041 commits, latest 2022-07-28 | Official Docker image. |
EJDB2 | EJDB2 | REST | C | MIT | 1352 ★; 2800 commits, latest 2022-12-07 | A database with a built-in REST API. Official Docker image. |
Eve | MongoDB; extensions for Elasticsearch, Neo4j, SQLAlchemy (SQL databases). | REST | Python 2/3 | BSD (three-clause) | 6567 ★; 3375 commits, latest 2022-11-10 | The SQLAlchemy extension isn't automatic. It requires the user to write SQLAlchemy mappings. |
Hasura GraphQL Engine | PostgreSQL | GraphQL | Haskell | Apache 2.0 | 28857 ★; 5924 commits, latest 2022-12-20 | Official Docker image. |
HTSQL | MySQL, PostgreSQL, SQLite (free); Oracle, MS SQL (proprietary) | REST | Python 3 | Apache 2.0, proprietary (Oracle and MS SQL support) | 16 ★; 1235 commits, latest 2020-08-11 | |
neo4j-graphql | Neo4j | GraphQL | Kotlin | Apache 2.0 | 445 ★; 164 commits, latest 2020-10-22 | Can generate a GraphQL API from an existing database or derive a new database model from a GraphQL schema and auto-generate the resolvers. |
NocoDB | MySQL, PostgreSQL, SQL Server, SQLite | REST | JavaScript (Node.js) | MIT | 33074 ★; 10224 commits, latest 2022-12-20 | Official Docker image. |
OrientDB | OrientDB | REST | Java | Apache 2.0 | 4533 ★; 21263 commits, latest 2022-12-19 | A database with a built-in REST API. Official Docker image. |
PHP-CRUD-API | MySQL, PostgreSQL, MS SQL Server. | REST | PHP 7 | MIT | 3217 ★; 2054 commits, latest 2022-12-02 | Supports GIS + automatic OpenAPI 3.0 docs. |
PostGraphile | PostgreSQL | GraphQL | TypeScript (Node.js) | MIT | 11694 ★; 1381 commits, latest 2022-12-19 | Formerly "PostGraphQL", Official Docker image. |
PostgREST | PostgreSQL | REST | Haskell | MIT | 19622 ★; 2357 commits, latest 2022-12-20 | Official Docker image. |
pREST | PostgreSQL | REST | Go | MIT | 3463 ★; 1803 commits, latest 2022-12-17 | Official Docker image. |
pRESTige | MySQL | REST | PHP | MIT | 89 ★; 1081 commits, latest 2022-07-13 | |
RESTHeart | MongoDB | REST | Java | GNU AGPLv3 | 743 ★; 3987 commits, latest 2022-12-20 | Official Docker image. |
restSQL | MySQL, PostgreSQL | REST | Java | MIT | 132 ★; 54 commits, latest 2018-10-18 | Official Docker image. |
sandman2 | All supported by SQLAlchemy (MySQL, PostgreSQL, SQLite, Oracle, MS SQL, and others). | REST | Python 2/3 | Apache 2.0 | 1901 ★; 250 commits, latest 2020-12-21 | Official Docker image. |
Siodb | Siodb | REST | C++, Go | GNU AGPLv3 | 43 ★; 277 commits, latest 2021-10-11 | A database with a built-in REST API. Official Docker image. |
subZero | PostgreSQL | REST and GraphQL | Haskell, Lua | Proprietary | n/a | |
tuql | SQLite 3 or SQL infile | GraphQL | JavaScript (Node.js) | MIT | 699 ★; 72 commits, latest 2021-06-06 | |
Webdis | Redis | REST | C | BSD (two-clause) | 2619 ★; 615 commits, latest 2022-07-24 | Supports pub/sub with chunked transfer encoding and WebSockets. |
ZenQuery | PostgreSQL, MySQL, IBM Db2, Oracle Database, Microsoft SQL Server and others | REST | Java | Apache 2.0 | 60 ★; 283 commits, latest 2018-10-16 | Read-only. |
GitHub stats updated 2022-12-21. The commit count and the latest commit date are for the default branch (usually master
).
Related projects
For projects that depend on or enhance those on the list see the Related projects wiki page. Feel free to add yours.
Contributing
Your contributions are welcome! Please submit a pull request or create an issue to add a new project to the list or to update an existing one. See CONTRIBUTING for the details.
License
This document and the data in data/
are licensed under the Creative Commons Attribution 4.0 International License. By contributing you agree to release your contribution under this license.