felicia 0.2.0

service for accessing and sharing lists of bad actors
Documentation
# felicia

web service for sharing lists of bad actors. originally made for the fediverse, but flexible enough to use in other contexts.

## config

felicia is configured via environment variables:

* PORT: service port, 8090 by default
* LOCAL_LIST_PATH: path to a local list file, see below
* SOURCES_PATH: path to a sources file, see below

you must provide at least LOCAL_SOURCES or SOURCES_PATH. you can of course also set both.

felicia autotically re-fetches lists, either local or remote, every 10 minutes, so restarting the service is not necessary for changes to be reflected.

note that the local source list itself is not automatically refreshed at the moment, so if you add a new source you do need to restart.  

## models

### List

list of domains and acompanying information.

```json
{
  "domains": [
    {
      "domain": "example.org",
      "level": "low|medium|high"
      "reason": "<...>",
      "notes": "<...>",
      "source": "<source where this domain entry originates from>"
    }
  ]
}
```

### Source

sources to fetch more lists from.

```json
{
  "sources": [
    "http://example.org/list.json"
  ]
}
```

## api

### GET /list/all

fetch all entries available, local and/or remote.

#### response

* type: application/json
* model: List

### GET /list/all/mastodonCsv

fetch all entries available, local and/or remote, as a Mastodon-compatible domain blocklist.

#### response

* type: text/csv

## license

(C) ariela wenner, 2023

unless otherwise specified, all code is licensed under the AGPL 3.0.