OctoRest - Python client library for OctoPrint REST API

Hello all,

Don't know if this will be useful to anybody - maybe it will, maybe it won't, but I thought I would post it here anyway.

For a personal project I wanted a simple OctoPrint REST API wrapper and now I have pretty much fully covered the OctoPrint REST API (as of version 1.3.11); it should hopefully make life a lot easier when trying to access the REST API in a Python project.

Let me know if you find it at all useful in any of your projects!

It looks to be easier at first glance.

I'm an old coder; I've been doing this for about four decades. As such I lived in a time when everyone (tried to) tightly control their copyright, to own and to control everything they made. It feels to me like times have changed with the rise of the open source movement. To see a copyright notice on a public github repository to me is a bit odd, like de-evolution. Granted, it's suggested by some. To me, it feels like showing up at Woodstock dressed as a Preppie, though.

Dear Dougbrion

Thanks for sharing your great work. I am running a 3D printing farm http://precision-3dprinting.com/ and is shopping one software to manage my farm. Astronprint and 3dprinterOS are all good candindate, but they charge monthly service fee. I only need a dashboard to send task and monitor printer status. Please let me know if I can use your project and how much develop work I will need. thank oyu!

Jayson

As you're using octoprint commercially - consider becoming a patron :v: :octopus:

2 Likes

Indeed. OctoPrint's development isn't done in a vacuum either...

Thank you for developing this project. It helps me a lot. I will become a patron after I did some research on the forum. Best.

2 Likes

Doug - Thanks a heap for this. It is an integral component in my new OctoPyClient.

I have a small number changes / fixes which I will post a PR for in a bit. One thing I think I have observed about OctoPrint REST API is that it closes connections frequently and turning off 'Keep-Alive' gives more stability when making frequent requests.