API

The API server is the primary backend for the Pagedip system. This server will live alongside Writeroom and Live under normal conditions, but can be also be run as a separate service.

[api.couchdb]

These are CouchDB configuration parameters.

CouchDB should be setup using the pagedip-couchdb-setup tool before running Pagedip. Pagedip will enter an error state if the CouchDB instance is missing or has out-of-date configuration.

url

A URL with super admin credentials pointing to a CouchDB instance. This is the URL that the API will use to read and persist state.

[api.couchdb]
url = "http://localhost:5984"

auth

Super admin username and password for CouchDB in basic string format (eg. user:pass). Usually it is easiest to pass this in the url directly, rather than with a separate parameter.

[api.couchdb]
auth = "anna:p4s$w0rd"
Note: This parameter can actually be omitted entirely if the CouchDB instance was set up prior to running. Since Pagedip enables proxy authentication on CouchDB, it will use that when it is missing super admin credentials. Just ensure you have a secret set to keep things secure.

secret

The CouchDB secret value for signing proxy requests. This should always be set as all CouchDB instances have a secret value and will slightly increase the security of the system. This becomes a required parameter if the CouchDB proxy_use_secret option is enabled, which is generally recommended (but not enabled by default).

[api.couchdb]
secret = "s#peRs3cret"

proxy

A full URL to a remote Pagedip proxy authentication server. The proxy is one of the highest impact services in the Pagedip system due to how the database is synced with clients, so it is often a good idea to separate the proxy as standalone service.

This should be a publicly accessible URL and not local to the API server. This URL is handed to the browser application so clients can connect to the proxy directly.

By default, this value is left empty which tells the API to start it's own proxy server at the local /db endpoint.

[api.couchdb]
proxy = "https://data.pagedip.com"

setup

When this property is set to true, the API will properly configure CouchDB on first request. This allows you to avoid running pagedip-couchdb-setup prior to starting Pagedip.

[api.couchdb]
setup = false
Note: This is should not be used after the first run and should be avoided altogether in multi-node clusters. This is simply a convenience option and we recommended using the CLI tool in most situations.

[api.aws]

accessKeyId

Amazon Web Service access key ID. This can be obtained via IAM.

[api.aws]
accessKeyId = XXXXXXXXXXXXXXXXXXXXX

secretAccessKey

Amazon Web Service secret to go along with the access key ID.

[api.aws]
secretAccessKey = XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

[api.s3]

Bucket

The name of an existing S3 bucket to upload and view files with. This should be configured such that is accessible to Pagedip.

[api.s3]
Bucket = my-pagedip-files-9999