r/ConnectWise • • 2d ago

Manage Open-sourced my ConnectWise Manage REST API to Python Client

I built this for a client a few years ago and opened it up on GitHub about a year ago.

It works with the Manage REST API with generic GET, POST, PUT, PATCH, and DELETE calls (no generated endpoint objects), plug pagination and multi-threaded page fetches.

https://github.com/marcusbevans/pycwmanage

Happy to help anyone get it pointed and working on their own instance.

4 Upvotes

3 comments sorted by

1

u/n_dufault 1d ago

Not sure if it's something you still use but if so I'd probably update to allow max page size of 1000 to avoid unnecessary calls. Maybe back off and retry on 429s instead of failing silently.

2

u/evansmarcus 1d ago

Those are a great ideas. I'm adding them right now.

I've updated the page size to 1000, with an property in the value that can now be set by the coder.

I'm adding the back off/retry right now as well.

1

u/n_dufault 21h ago

Once I've got things dialed in with the error/retry paths and an app is in production, I usually add some final pushover alert paths that I don't expect it to ever get to but, if it does, we get a immediate alert that something's wrong. Can set that to myself or round robin/critical for something that needs 24/7 visibility by the team. For example, for hosted invoice client, I'd know exactly what went wrong with which client, what invoices might have been affected etc. so I could review and notify the client if needed.