# plausible-pageviews-api

Get the requested page's views or unique visitors from Plausible Analytics.

## Configuration in `.env`

```env
PORT=3000 # the api port
METRICS_PORT=3001 # the port on which prometheus metrics are hosted on, endpoint: /metrics
PLAUSIBLE_DOMAIN=plausible.io # the plausible instance domain
PLAUSIBLE_API_KEY="api_key_goes_here" # your plausible API key
ALLOWED_ORIGINS="https://example.com" # allowed CORS origins
RATE_LIMIT_MINUTES=15 # the amount of time in minutes to rate limit
RATE_LIMIT_REQUESTS=100 # amount of max. requests
NUM_PROXY_TRUST=1 # amount of proxies to trust, set 0 to disable
```

Don't change the `PORT` and `METRICS_PORT` values when running in a Docker Container.
Instead, export a different port and forward that to the container's ports `3000` and `3001` for the main API port and the metrics port respectively.

```yml
# example for docker-compose.yml:
ports:
  - "5678:3000"
  - "6789:3001"
```

You also have to mount the `.env` file inside the container, if you're using Docker:

```yml
volumes:
  - .env:/app/.env
```

## Run the API

```bash
$ yarn install
$ yarn start
```