My Budget Explorer - API Based Website (.Net Core)

I've been working on an API application, primarily for my own use.  Anyways, in the spirit of sharing with others, I've open sourced it under the Apache license.

Feel free to take a look, borrow and steal whatever you'd like.  

https://github.com/leistnerm/MyBudgetExplorer

The url for the published version is, creatively, https://www.mybudgetexplorer.com

I'm still working on it, but it is functional enough for my own needs. 

After I finish a little more functionality I've been working on I plan to update the website with a little more detail on what it does and how to use it... but feel free to play around, it is read-only and will not modify your budget in any manner.

Happy to answer any questions I can, or help others trying API stuff in .Net core.

25replies Oldest first
  • Oldest first
  • Newest first
  • Active threads
  • Popular
  • I just get error messages after authorising it. Overview, Explore, etc don't do anything.

    Reply Like
    • adriana01 

      I saw the error come in.  I’m guessing you don’t have any scheduled transactions.  I just pushed a fix for that, try again and see if it works.

      The code forecasts out based on your scheduled transactions and their set frequencies... I hadn’t actually tested with no scheduled transactions.  

      Thanks 

      Reply Like
      • adriana01
      • adriana01
      • 2 mths ago
      • Reported - view

      Mark Leistner I have multiple scheduled transactions. I'll try again

      Reply Like
      • adriana01
      • adriana01
      • 2 mths ago
      • Reported - view

      Mark Leistner I also have multiple budgets. Does it refer to the most recently used, or most recently created?

      Reply Like
    • adriana01 

      Another related error, divide by zero.  I’ll fix that one too.

      Thanks for testing, it’s about impossible to test all the various combinations you can have with YNAB.

      Reply Like
    • adriana01 

      Currently uses the last used budget.  Multiple budgets is on my list.

      Fix for the divide by zero error uploading now.

      Reply Like
      • adriana01
      • adriana01
      • 2 mths ago
      • Reported - view

      Mark Leistner It was able to read a test budget with no scheduled transactions after you made that change, but not my main budget.  Part of my problem might have been that the basic URL was defaulting to "open budget" despite having "open last used budget" selected. But now that it is defaulting to my actual budget I get an error message again.

      Reply Like
    • adriana01 

      Your main budget keeps throwing errors after every one I fix.  I honestly don’t know the cause of the current issue.

      I will dig into it a little on my lunch break and see what I can come up with.

      Thanks!

      Reply Like
      • adriana01
      • adriana01
      • 2 mths ago
      • Reported - view

      Mark Leistner Ok. I can try testing it again later.  I do have multiple types of goals, scheduled transfers, and on-budget credit cards, which are things you say "do not work"--if that means the program throws an error rather than not calculating correctly, any of those might be a potential cause.

      Reply Like
    • adriana01 

      Theoretically those should not throw an error, they just aren’t currently accounted for in the forecasting code — it should basically ignore them as if they don’t exist.

      Its hard to test for this stuff with only having my own personal budget and any mock up ones I create.

      I do store temporary (24h max) copies of the data in S3 and on the AWS lambda instance, but it is all compressed and then AES256 encrypted with keys specific to your account (that I don’t have/know).

      So I don’t really have, nor want a way to look at the underlying budget data and figure out what’s going on... it does make debugging a lot more difficult.

      Reply Like
    • adriana01 

      It may be fixed now.  Hopefully!

      Reply Like
      • adriana01
      • adriana01
      • 2 mths ago
      • Reported - view

      Mark Leistner error from YNABs side now: 

      Client authentication failed due to unknown client, no client authentication included, or unsupported authentication method.
      Reply Like
    • adriana01 

      That one is all my fault.  I strip out the client id and secret when I check it into source control.  Forgot to put them back when I pushed the changes.

      I will reply again when I have a moment to republish it!

      Reply Like
    • adriana01 

      Fixed the auth issue.  I just had to put the api client id and secret back in the configuration file.

      Reply Like
    • adriana01 

      Every issue I’ve seen to date should now be fixed.  

      Also added the option to see the error details on the error page.

      Hopefully it will at least load for you now!

      Reply Like
      • adriana01
      • adriana01
      • 2 mths ago
      • Reported - view

      Mark Leistner No luck. Tried it on my phone's browser and again on my computer, starting from authorizing the api each time. Chrome browser on both, though different versions of course.

      Reply Like
    • adriana01 

      Well, we have made it a lot farther in that process.  I’ve found what is messing up there and will fix it tonight when I get home.

      Thanks

      Reply Like
    • adriana01 

      Fix posted

      Reply Like
      • adriana01
      • adriana01
      • 2 mths ago
      • Reported - view

      Mark Leistner different error this time

      Message The oauth state was missing or invalid
      Reply Like
    • adriana01 

      If you see a logout button on the menu, hit that.  I haven’t figured that one out yet, OAuth is pretty new to me.

      Reply Like
      • adriana01
      • adriana01
      • 2 mths ago
      • Reported - view

      Mark Leistner Ok! Logged out & reauthorized, & it's displaying data now. Now I can start figuring out what it's doing!

      Reply Like
    • adriana01 

      Took me long enough!  Thanks for your patience and persistence.

      Reply Like
  • I fully commented out the forecasting code in case anyone else is interested in forecasting scheduled transactions.  See the link below.

    https://github.com/leistnerm/MyBudgetExplorer/blob/master/MyBudgetExplorer.Models/Forecast.cs

    Reply Like
  • Thanks for providing this!

    Reply Like
    • Craig Patchett You are welcome.  I hope it's useful for you.  Happy to answer any questions or take suggestions.

      Reply Like
Like Follow
  • 2 mths agoLast active
  • 25Replies
  • 241Views
  • 3 Following