RESTHeart, the REST API Server for MongoDB
Branch: master
Clone or download
gcollin and mkjsix Enable select config file with env variable (#335)
* Allows config override with java properties

* Enable select config file with env variable

* Enable configuration override without a config file
Latest commit 7ed4e8c Feb 14, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
Docker using triple mustaches {{{ in conf file variables to avoid escaping s… Jan 24, 2019
bin Move etc/restheart-integrationtest.yml to etc/test/ Jan 22, 2019
etc using triple mustaches {{{ in conf file variables to avoid escaping s… Jan 24, 2019
src Enable select config file with env variable (#335) Feb 14, 2019
.gitignore git ingoring hidden dir Nov 27, 2018
.gitmodules Update the HAL git submodule to… Jan 27, 2016
.travis.yml [skip ci] Revert "Add Fossa reports (" Dec 14, 2018
COMM-LICENSE.txt Update COMM-LICENSE.txt Nov 21, 2018
Dockerfile FROM openjdk:8u191-jre-alpine Jan 21, 2019 Create Apr 11, 2018
LICENSE.txt open sources under the terms and conditions of the GNU AFFERO GENERAL… Nov 16, 2014 [skip travis] Update README Nov 8, 2018
all.policy started document representation transformation logic, i.e. allow to t… Mar 3, 2015
assembly.xml fixed mvn build warn messages about assembly.xml containing root dir … Dec 3, 2015
checkstyle-checker.xml Remove <module name="RedundantThrows"/> Jun 30, 2017
deploy-settings.xml modified: deploy-settings.xml Dec 7, 2017
docker-compose.yml Update comments in docker-compose.yml [skip travis] Nov 12, 2018
licenseheader.txt updated license header Oct 27, 2015
nb-configuration.xml minor change to conf files inline comments + nb 9.0 settings Sep 5, 2018
nbactions.xml added env argument to netbeans start conf Dec 21, 2018
pom.xml Wrong license file in restheart.jar Feb 13, 2019

RESTHeart - Web API Server for MongoDB

RESTHeart - Web API Server for MongoDB.

Build Status Maven Central 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.