ilikedatsyuk

Untitled

Aug 3rd, 2022
185
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
JSON 10.06 KB | None | 0 0
  1. [{"id":"736e60316b9155c1","type":"group","z":"639be316.b3006c","name":"YNAB","style":{"label":true},"nodes":["15e102e5ba3e9095","8c5ded699914e09c","b4c634ed1c016228","c40a96993f028aba","364f721ea8cc3dba","2d34cf7e02d73000","04afe417c94486ce","d18a0deba4e87c82","426305c02ddbc8f8","938c91f018a74f44","e3dea84c23af3304","c31ad3c4a15a0b1d","1bce8674ac1796f0","4b2c488487e4d1ab","62456275eb36a6b3"],"x":54,"y":4339,"w":1712,"h":182},{"id":"15e102e5ba3e9095","type":"inject","z":"639be316.b3006c","g":"736e60316b9155c1","name":"Every hour","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"3600","crontab":"","once":true,"onceDelay":"47","topic":"","payload":"","payloadType":"date","x":170,"y":4480,"wires":[["c31ad3c4a15a0b1d"]]},{"id":"8c5ded699914e09c","type":"http request","z":"639be316.b3006c","g":"736e60316b9155c1","name":"","method":"GET","ret":"obj","paytoqs":"ignore","url":"https://api.youneedabudget.com/v1/budgets/bbbda1d7-4a60-470f-a569-fb2fcc12f3f2/accounts","tls":"","persist":false,"proxy":"","authType":"","senderr":true,"x":630,"y":4420,"wires":[["b4c634ed1c016228","c40a96993f028aba","364f721ea8cc3dba"]]},{"id":"b4c634ed1c016228","type":"function","z":"639be316.b3006c","g":"736e60316b9155c1","name":"Balance","func":"\naccounts = msg.payload.data.accounts;\n\n// Init\nbalance = 0\ncc_balance = 0\ncc_balance_info = [];\nnet_worth = 0;\n\n// Iterate through accounts\nfor(i = 0; i < accounts.length; i++) {\n    account = accounts[i];\n\n    // Create overview of net worth\n    if(!account.closed && !account.deleted) {\n        net_worth = net_worth + account.balance;\n    }\n    \n    // Create overview of net cash on hand\n    if(account.on_budget && !account.closed && !account.deleted) {\n        balance = balance + account.balance;\n    }\n    \n    // Create overview of credit card balances\n    if(account.on_budget && !account.closed && !account.deleted && account.type == \"creditCard\") {\n        cc_balance = cc_balance + account.balance;\n        \n        friendly_balance = Math.abs(account.balance)/1000;\n        cc_balance_info.push(account.name + \": $\" + friendly_balance)\n    }    \n    \n}\n\n// Divide by 1000 and return true balances\nmsg.balance = balance/1000;\n\n// Credit card balance\nmsg.cc_balance = Math.abs(cc_balance)/1000;\nmsg.cc_balance_info = cc_balance_info.join(\"\\r\\n\");\n\n// Total cash on hand\nmsg.total_cash = Number((msg.balance + msg.cc_balance).toFixed(2));\n\n// Net worth\nmsg.net_worth = net_worth/1000;\n\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":820,"y":4420,"wires":[["2d34cf7e02d73000","426305c02ddbc8f8"]]},{"id":"c40a96993f028aba","type":"debug","z":"639be316.b3006c","g":"736e60316b9155c1","name":"","active":false,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","statusVal":"","statusType":"auto","x":810,"y":4380,"wires":[]},{"id":"364f721ea8cc3dba","type":"function","z":"639be316.b3006c","g":"736e60316b9155c1","name":"Check Linked Accounts","func":"\n// Init\naccounts = msg.payload.data.accounts;\nmsg.ynab_linked_account_error = false;\nmsg.ynab_linked_accounts_in_error = [];\n\n// Iterate through accounts\nfor(i = 0; i < accounts.length; i++) {\n    account = accounts[i];\n    \n    if(!account.closed && !account.deleted) {\n        \n        // Find accounts with linkage issues\n        if(account.direct_import_linked && account.direct_import_in_error) {\n            msg.ynab_linked_account_error = true;\n            msg.ynab_linked_accounts_in_error.push(account.name)\n        }\n    }\n}\n\nmsg.ynab_linked_accounts_in_error = msg.ynab_linked_accounts_in_error.join(\", \")\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":870,"y":4480,"wires":[["04afe417c94486ce"]]},{"id":"2d34cf7e02d73000","type":"ha-entity","z":"639be316.b3006c","g":"736e60316b9155c1","name":"YNAB Net Cash","server":"4f2312d6.a0c58c","version":2,"debugenabled":false,"outputs":1,"entityType":"sensor","config":[{"property":"name","value":"YNAB Net Cash"},{"property":"device_class","value":""},{"property":"icon","value":""},{"property":"unit_of_measurement","value":"USD"},{"property":"state_class","value":""},{"property":"last_reset","value":""}],"state":"balance","stateType":"msg","attributes":[],"resend":true,"outputLocation":"payload","outputLocationType":"none","inputOverride":"allow","outputOnStateChange":false,"outputPayload":"","outputPayloadType":"str","x":1020,"y":4400,"wires":[["938c91f018a74f44"]]},{"id":"04afe417c94486ce","type":"ha-entity","z":"639be316.b3006c","g":"736e60316b9155c1","name":"YNAB Linked Accounts in Error","server":"4f2312d6.a0c58c","version":2,"debugenabled":false,"outputs":1,"entityType":"binary_sensor","config":[{"property":"name","value":"YNAB Linked Accounts in Error"},{"property":"device_class","value":""},{"property":"icon","value":""},{"property":"unit_of_measurement","value":""},{"property":"state_class","value":""},{"property":"last_reset","value":""}],"state":"ynab_linked_account_error","stateType":"msg","attributes":[{"property":"errored_accounts","value":"ynab_linked_accounts_in_error","valueType":"msg"}],"resend":true,"outputLocation":"payload","outputLocationType":"none","inputOverride":"allow","outputOnStateChange":false,"outputPayload":"","outputPayloadType":"str","x":1150,"y":4480,"wires":[[]]},{"id":"d18a0deba4e87c82","type":"comment","z":"639be316.b3006c","g":"736e60316b9155c1","name":"Fetch YNAB Account Detail","info":"","x":220,"y":4380,"wires":[]},{"id":"426305c02ddbc8f8","type":"debug","z":"639be316.b3006c","g":"736e60316b9155c1","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","statusVal":"","statusType":"auto","x":1170,"y":4440,"wires":[]},{"id":"938c91f018a74f44","type":"ha-entity","z":"639be316.b3006c","g":"736e60316b9155c1","name":"YNAB CC Balances","server":"4f2312d6.a0c58c","version":2,"debugenabled":false,"outputs":1,"entityType":"sensor","config":[{"property":"name","value":"YNAB CC Balances"},{"property":"device_class","value":""},{"property":"icon","value":""},{"property":"unit_of_measurement","value":"USD"},{"property":"state_class","value":""},{"property":"last_reset","value":""}],"state":"cc_balance","stateType":"msg","attributes":[{"property":"Balance Info","value":"cc_balance_info","valueType":"msg"}],"resend":true,"outputLocation":"payload","outputLocationType":"none","inputOverride":"allow","outputOnStateChange":false,"outputPayload":"","outputPayloadType":"str","x":1230,"y":4400,"wires":[["1bce8674ac1796f0"]]},{"id":"e3dea84c23af3304","type":"server-state-changed","z":"639be316.b3006c","g":"736e60316b9155c1","name":"YNAB Update Button Pressed","server":"4f2312d6.a0c58c","version":4,"exposeToHomeAssistant":false,"haConfig":[{"property":"name","value":""},{"property":"icon","value":""}],"entityidfilter":"input_button.update_ynab","entityidfiltertype":"exact","outputinitially":false,"state_type":"str","haltifstate":"","halt_if_type":"str","halt_if_compare":"is","outputs":1,"output_only_on_state_change":true,"for":"0","forType":"num","forUnits":"minutes","ignorePrevStateNull":false,"ignorePrevStateUnknown":false,"ignorePrevStateUnavailable":false,"ignoreCurrentStateUnknown":false,"ignoreCurrentStateUnavailable":false,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"},{"property":"data","propertyType":"msg","value":"","valueType":"eventData"},{"property":"topic","propertyType":"msg","value":"","valueType":"triggerId"}],"x":220,"y":4420,"wires":[["4b2c488487e4d1ab"]]},{"id":"c31ad3c4a15a0b1d","type":"api-call-service","z":"639be316.b3006c","g":"736e60316b9155c1","name":"\"Press\" update button","server":"4f2312d6.a0c58c","version":5,"debugenabled":false,"domain":"input_button","service":"press","areaId":[],"deviceId":[],"entityId":["input_button.update_ynab"],"data":"","dataType":"jsonata","mergeContext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":380,"y":4480,"wires":[[]]},{"id":"1bce8674ac1796f0","type":"ha-entity","z":"639be316.b3006c","g":"736e60316b9155c1","name":"YNAB Total Cash","server":"4f2312d6.a0c58c","version":2,"debugenabled":false,"outputs":1,"entityType":"sensor","config":[{"property":"name","value":"YNAB Total Cash on Hand"},{"property":"device_class","value":""},{"property":"icon","value":"mdi:currency-usd"},{"property":"unit_of_measurement","value":"USD"},{"property":"state_class","value":""},{"property":"last_reset","value":""}],"state":"total_cash","stateType":"msg","attributes":[],"resend":true,"outputLocation":"payload","outputLocationType":"none","inputOverride":"allow","outputOnStateChange":false,"outputPayload":"","outputPayloadType":"str","x":1430,"y":4400,"wires":[["62456275eb36a6b3"]]},{"id":"4b2c488487e4d1ab","type":"change","z":"639be316.b3006c","g":"736e60316b9155c1","name":"Headers","rules":[{"t":"set","p":"headers.Authorization","pt":"msg","to":"Bearer api_token","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":420,"y":4420,"wires":[["8c5ded699914e09c"]]},{"id":"62456275eb36a6b3","type":"ha-entity","z":"639be316.b3006c","g":"736e60316b9155c1","name":"YNAB Net Worth","server":"4f2312d6.a0c58c","version":2,"debugenabled":false,"outputs":1,"entityType":"sensor","config":[{"property":"name","value":"YNAB Net Worth"},{"property":"device_class","value":""},{"property":"icon","value":"mdi:chart-areaspline"},{"property":"unit_of_measurement","value":"USD"},{"property":"state_class","value":""},{"property":"last_reset","value":""}],"state":"net_worth","stateType":"msg","attributes":[],"resend":true,"outputLocation":"payload","outputLocationType":"none","inputOverride":"allow","outputOnStateChange":false,"outputPayload":"","outputPayloadType":"str","x":1650,"y":4400,"wires":[[]]},{"id":"4f2312d6.a0c58c","type":"server","name":"Home Assistant","version":4,"rejectUnauthorizedCerts":true,"ha_boolean":"y|yes|true|on|home|open","connectionDelay":true,"cacheJson":true,"heartbeat":false,"heartbeatInterval":30,"areaSelector":"friendlyName","deviceSelector":"friendlyName","entitySelector":"friendlyName","statusSeparator":"at: ","statusYear":"hidden","statusMonth":"short","statusDay":"numeric","statusHourCycle":"h23","statusTimeFormat":"h:m"}]
Advertisement
Add Comment
Please, Sign In to add comment