jhonderson / actual-http-api

Basic Actual Budget API exposed through HTTP endpoints
MIT License
43 stars 13 forks source link

About

Basic HTTP Api wrapping the Actual Budget NodeJS api.

Why?

Interoperability mostly. Useful for scenarios where you want to interact with your Actual server instance but you can't import a Node.js library (let's say you are using another programming language).

Usage

To host this server you can run it either with Node.js or Docker. You will need the following environment variables:

To start the server using the local code with Node.js, define your environment variables in the .env file and then run:

npm install
node server.js

Or run the public docker image using docker run command:

docker run -d --name actualhttpapi -v ./data:/data:rw -p 5007:5007 \
  -e 'ACTUAL_SERVER_URL=http://localhost:5006/' \
  -e 'ACTUAL_SERVER_PASSWORD=my-actual-server-password' \
  -e 'API_KEY=my-strong-api-key' \
  --restart=on-failure jhonderson/actual-http-api:latest

Or run it using docker compose:

docker-compose up -d

Documentation

Once the service is up, see the documentation in http://localhost:5007/api-docs/

Improvements

This projects is missing: