Create a new rule
Changed onRules automatically categorize or transform transactions. A rule attached to a financial account runs on new transactions as they are fetched from the bank and its changes are permanent; a rule attached to a transfer link runs on transactions as they are transferred and only changes the destination copy.
A rule has conditions and actions. Conditions decide whether the rule applies; a rule with no conditions always applies. Actions run when it does, and every rule needs at least one. Each action that runs is recorded as a rule log.
Action values accept Liquid templates. Reference transaction fields with {{ transaction.field_name }} and transform them with filters:
| Filter | Example | Description |
|---|---|---|
| remove | {{ transaction.creditor.name | remove: "PREFIX " }} | Remove a substring |
| upcase / downcase | {{ transaction.creditor.name | upcase }} | Change case |
| regex_capture | {{ transaction.creditor.name | regex_capture: '/^(\w+)/' }} | Extract a regex capture group |
| date_add | {{ transaction.booking_date | date_add: 7 }} | Add or subtract days from a date |
| remove_at | {{ transaction.memo | remove_at: 1, 5 }} | Remove characters at positions |
| keep_at | {{ transaction.memo | keep_at: 6 }} | Keep only characters from a position |
The standard Liquid filters (replace, truncate, split, append, prepend, and so on) are available too. Values without {{ or {% are literal.
Account rules (BANK scope) attach to bank accounts only; attaching one to a crypto or brokerage account returns 422. Use a transfer link rule for those. How many conditions, actions and attached rules a plan allows is listed on the pricing page.
Request
- Base URLhttps://api.synci.io/api/v1
- Auth
- OAuth 2Authorization code: https://api.synci.io/oauth/authorizeToken URL: https://api.synci.io/oauth/token
- or HTTP bearer
Request body
Response
Changes
- breaking
the
response's property type changed from no type toobjectfor status - info
added the optional property
/to the response with the status - info
added the optional property
/to the response with the status - info
added the optional property
/to the response with the status - info
added the optional property
/to the response with the status - info
added the optional property
/to the response with the status - info
added the optional property
/to the response with the status - info
added the optional property
/to the response with the status - info
added the optional property
/to the response with the status - info
added the optional property
/to the response with the status - info
added the optional property
/to the response with the status - info
removed
subschema #2from theresponse propertyallOflist for the response status - info
added the required property
/to the response with the status - info
added the required property
/to the response with the status - info
added the required property
/to the response with the status - info
added the required property
/to the response with the status - info
added the required property
/to the response with the status - info
added the required property
/to the response with the status - info
added the required property
/to the response with the status - info
added the required property
/to the response with the status - info
added the required property
/to the response with the status - info
added the required property
/to the response with the status - info
added the required property
/to the response with the status
- breaking
- info
added the optional property
/////to the response with the status - info
added the required property
/////to the response with the status
- info