RESTHeart, the Web API for MongoDB


The Web API for MongoDB made with ❤️ by SoftInstigate

Build Status Docker Stars Docker Pulls Join the chat at

Table of Contents


RESTHeart connects to MongoDB and opens data to the Web. Clients such as mobile and javascript apps can use the database via a simple RESTful API.

For more information, visit RESTHeart's website and documentation.


Refer to for detailed information on how to setup RESTHeart.

How to Build

Building RESTHeart requires Maven.

Clone the repository and update the git submodules. RESTHeart includes the HAL browser as a submodule:

$ git submodule update --init --recursive

Build the project with Maven:

$ mvn clean package

Integration Tests

To run the integration test suite, first make sure that mongod is running on localhost, on default port 27017 and without authentication enabled — i.e. no --auth option is specified.

$ mvn verify -DskipITs=false

Alternatively, if you have Docker, execute the following script:

$ ./bin/ 

The script starts a Docker container running MongoDB and then execute the integration tests with Maven. It will clean-up the container at the end.

Maven Dependencies

RESTHeart's releases are available on Maven Central.

Stable releases are available at:

If you want to embed RESTHeart in your project, add the dependency to your POM file:


Snapshot Builds

Snapshots are available at Sonatype. If you want to build your project against a development release, first add the SNAPSHOT repository:


Then include the SNAPSHOT dependency in your POM:


Maven Site

An automatically generated Maven Site for each build of the master branch is available at:

Continuous Integration

We continually integrate and deploy development releases to Maven Central with Travis-CI.

RESTHeart's public Docker images are also automatically built and pushed to Docker Hub. The latest tag for Docker images refers to the most recent SNAPSHOT release on the master branch.

Made with ❤️ by SoftInstigate. Follow us on Twitter.