---
title: HarperDB
description: HarperDB is a globally-distributed edge application platform.
product: Marketplace
url: https://docs.digitalocean.com/products/marketplace/catalog/harperdb/
last_updated: "2024-07-10"
---

> **For AI agents:** The documentation index is at [https://docs.digitalocean.com/llms.txt](https://docs.digitalocean.com/llms.txt). Markdown versions of pages use the same URL with `index.html.md` in place of the HTML page (for example, append `index.html.md` to the directory path instead of opening the HTML document).

# HarperDB

Generated on 10 Jul 2024 from [the HarperDB catalog page](https://marketplace.digitalocean.com/apps/harperdb)

## HarperDB Overview

HarperDB eliminates the complexity typically synonymous with distributed services by combining an ultra-fast document data store, in-memory cache, real-time message broker, and your application components into a single distributed technology. When clustered and geo-distributed, HarperDB nodes instantly synchronize data creating a real-time service fabric, ensuring low-latency in-region responses for clients worldwide. In addition to massive cost savings at scale, HarperDB’s REST, GraphQL, SQL, and real-time interfaces make light work of servicing frontend requirements. Install and manage on DigitalOcean, or have us host your services with HarperDB Cloud. For questions, reach us at [hello@harperdb.io](mailto:hello@harperdb.io).

Now with 150K+ deployments!

For pricing information, including free tier, please [check out our pricing page](https://www.harperdb.io/pricing).

[Learn more about HarperDB](https://harperdb.io/?utm_source=digitalocean&utm_medium=marketplace)

## HarperDB Studio

Every Installation of HarperDB can be administered online using HarperDB Studio. This web-based interface provides you the ability to set up new schemas and tables, configure users and roles, manage data replication, and purchase and deploy enterprise licenses.

- Simplify Administration – handle all HarperDB administration tasks from one simple interface

[HarperDB Studio](https://studio.harperdb.io/sign-up)

## HarperDB APIs

The preferred way to interact with HarperDB for typical querying, accessing, and updating data (CRUD) operations is through the REST interface, described in the REST documentation.

The complete [HarperDB Operations API documentation](https://docs.harperdb.io/docs/operations-api) provides important administrative functions. Generally it is recommended that use the [RESTful interface](https://docs.harperdb.io/docs/rest/) as your primary interface for scalable and performant data interaction for building production applications, and the operations API for administrative purposes.

## Documentation and Support

[Docs](https://docs.harperdb.io/)

[Support](https://harperdb.io/docs/support/)

## Software Included

| Package | Version | License |
|---|---|---|
| [HarperDB](https://harperdb.io) | 4.3.2 | Restricted |

## Creating an App using the Control Panel

Click the **Deploy to DigitalOcean** button to create a Droplet based on this 1-Click App. If you aren’t logged in, this link will prompt you to log in with your DigitalOcean account.

[![Deploy to DO](https://www.deploytodo.com/do-btn-blue.svg)](https://cloud.digitalocean.com/droplets/new?image=harperdb-18-04)

## Creating an App using the API

In addition to creating a Droplet from the HarperDB 1-Click App using the control panel, you can also use the [DigitalOcean API](https://docs.digitalocean.com/reference/api). As an example, to create a 4GB HarperDB Droplet in the SFO2 region, you can use the following `curl` command. You need to either save your [API access token](https://docs.digitalocean.com/reference/api/create-personal-access-token/index.html.md) to an environment variable or substitute it in the command below.

```shell
curl -X POST -H 'Content-Type: application/json' \
         -H 'Authorization: Bearer '$TOKEN'' -d \
        '{"name":"choose_a_name","region":"sfo2","size":"s-2vcpu-4gb","image":"harperdb-18-04"}' \
        "https://api.digitalocean.com/v2/droplets"
```

## Getting Started After Deploying HarperDB

## Description

HarperDB is a globally-distributed edge application platform comprised of an edge database, streaming broker, and user-defined applications delivering near-zero latency, huge cost savings, and a superior developer experience.

## Getting Started

### Deploying a HarperDB Droplet

- When deploying your HarperDB Droplet, choose the *Add Volume* option and then select *Manual Format & Mount*.

### Using Your HarperDB Droplet

- To use HarperDB, send POST requests to port 9925 (HTTPS) of your Droplet.
- Visit [HarperDB Studio](https://studio.harperdb.io/), and create an account if you do not already have one.
- Get Started: [https://harperdb.io/developers/get-started/](https://harperdb.io/developers/get-started/)
- API Documentation: [https://docs.harperdb.io/](https://docs.harperdb.io/)

### Additional Information

- A user account named *harperdb* is created when your Droplet is deployed. This account is used to run HarperDB, and does not have sudo privileges.
- The password is randomly generated on creation. Credentials are stored in `/root/.harperdb`
- The additional block storage volume attached to your Droplet is used to store the HarperDB databases. Logical Volume Manager is used to create a logical volume on this block storage volume. If needed, expand the block storage volume and use Logical Volume Manager to expand the logical volume. See [Digital Ocean LVM Community Tutorial](https://www.digitalocean.com/community/tutorials/an-introduction-to-lvm-concepts-terminology-and-operations)
- The Droplet uses Uncomplicated Firewall (ufw); the following ports are enabled 9925 HarperDB HTTP, 9926 HarperDB HTTPS, 9932 HarperDB Clustering, and 22 SSH.
- It is recommended that you update HarperDB admin password.