bvanelli / actualpy

Python API implementation for Actual server - reference https://actualbudget.org/
20 stars 4 forks source link

Add support for running and inserting rules #12

Closed bvanelli closed 4 months ago

bvanelli commented 4 months ago

Here is one example rule adding with frontend result:

import datetime

from actual import Actual
from actual.queries import create_rule
from actual.rules import (
    Action,
    Condition,
    ConditionType,
    Rule,
)

with Actual("http://localhost:5006", password="mypass", file="My Finances") as actual:
    action = Action(field="cleared", value=1)
    condition = Condition(field="date", op=ConditionType.IS_APPROX, value=datetime.date(2024, 1, 2))
    rule = Rule(conditions=[condition], actions=[action], operation="all", stage="pre")
    created_rule = create_rule(actual.session, rule)
    actual.commit()

Result:

image

Closes https://github.com/bvanelli/actualpy/issues/11