<p>There are a few methods to simplify your workflow.  Two solutions are outlined below and both feature a documented API you can use to further customize your workflow.</p>

<p><a href="http://octoprint.org/" rel="nofollow">OctoPrint</a> was mentioned by other users.  OctoPrint will allow you to configure your printer, print profiles and upload STLs for printing from a web interface.  You can configure profiles, slicers and slicer profiles for OctoPrint to use to complete your workflow.</p>

<p><a href="https://www.astroprint.com/" rel="nofollow">Astroprint</a> offers cloud slicing services in addition to features allowing you to manage printers and print profiles.</p>

CC BY-SA 3.0
2016-01-13T21:14:18.860Z
OctoPrint is nice but requires a local installation and physically connect the machine to the print.

Astroprint is very nice and closer to what I was thinking about. I'll take a deeper look and share my findings. 

I'm not closing this yet, since I want to see if there other solutions like this
Gregra
CC BY-SA 3.0
2016-01-13T21:24:45.620Z
So they currently don't provide a developers API (though it looks like they do but I'm getting a 404 page when clicking on 'apps' on this page - https://developer.astroprint.com/dashboard). I'll be sure to follow that
Gregra
CC BY-SA 3.0
2016-01-14T05:11:01.723Z
AstroPrint does have an API (it technically also has OctoPrint's API).  I guess the documentation just isn't there.  You can find some of the AstroPrint specific stuff here: https://github.com/AstroPrint/AstroBox/tree/master/src/astroprint/api

Sorry, I thought much of that had already been shimmed up.
tamarintech
CC BY-SA 3.0
2016-01-13T18:19:14.163Z
2016-01-13T18:19:14.163Z
tamarintech
<h2>WiFi</h2>
<p>A few of the newer machines are coming stock with WiFi connectivity such as MakerBot Replicator(s)/Z18, da Vinci Jr., Kudo3D, and some others that I'm forgetting.</p>
<p>However, these WiFi enabled machines essentially emulate what OctoPrint and AstroPrint provide. While wirelessly connecting might save the hassle of not saving a G-Code file to an SD card/Flashdrive, then plugging in said memory device, then selecting the program to run, the wireless solution still requires a slicer to do the work.</p>
<p>Both OctoPrint and AstroPrint allow building up a queue of sliced prints and I know that OctoPrint will even slice a 3D Print-ready model and place it in your queue.</p>
<p>The only application that I'm aware of that seems to reduce the most amount of work is MakerBot Desktop with a MakerBot Replicator/Z18. While MakerBot does not have a great reputation (as of 2016), they have produced some great software. As I understand, here's how you can utilize MakerBot Desktop:</p>
<h3>Printing from Thingiverse</h3>
<ul>
<li>Log into Thingiverse from MakerBot Desktop</li>
<li>Find the model you want to print</li>
<li>There should be a handy <strong>Print</strong> button located in the interface</li>
<li>The software will preview the model. Most models that have been uploaded to Thingiverse will be in print-ready orientation/scaling</li>
<li>Continue by pressing <strong>Print</strong></li>
<li>Now the software will slice the model and send the G-Code via USB or WiFi</li>
</ul>
<p>Really, the only step that MakerBot Desktop skips is downloading the model from your web browser.</p>
<p>There are some rare cases that models found on the internet (such as Thingiverse) will also have the sliced G-Code, but you'll have to be careful to make sure it's the correct flavor for your machine.</p>
<h2>Maybe in the future?</h2>
<p>Currently, Microsoft is working on a new 3D printing file format called <a href="http://3mf.io/what-is-3mf/" rel="nofollow noreferrer">.3MF</a> which theoretically could negate the need to slice a 3D model. I'm assuming that you would need a machine that specifically can interpret the file. This project is still very much in the works and it may be years before we see full support as the format needs to be agreed upon by both software companies like SolidWorks, AutoCAD, Catia, etc. <strong>AND</strong> the 3D printer manufacturers like MakerBot/Stratasys, 3D Systems, and other big-named companies.</p>
<p>If you combine the benefit of no longer needing to slice a model and WiFi/USB connection, then most of the &quot;manual&quot; work you describe will no longer be necessary.</p>

CC BY-SA 3.0
2016-06-24T18:24:57.303Z
2016-06-24T18:33:08.007Z
2020-06-18T08:29:41.667Z
tbm0115
<p>I'm interested in finding online APIs where you could perform a call to some third party service with some print preparation request with my model (i.e. "heal a model" or "set up support") and get in return GCODE file I can send to a 3D printer.
My input will be :</p>

<ul>
<li>The 3d model (obj, stl)</li>
<li>My printer (makerbot, ultimaker, whatever) or a printer profile</li>
<li>A printing profile</li>
</ul>

<p>This is opposed to all the classical 3D printing processes we have right now. Currently when printing in a 3D printer you would need to go through these phases:</p>

<ol>
<li>Create/Download a model</li>
<li>Prepare the model for printing with some 3rd party desktop software</li>
<li>Export the model as gcode</li>
<li>Save the file to some flash drive</li>
<li>Plug the flash drive into the printer</li>
<li>Print the model with the printer interface</li>
</ol>

<p>I would like to know if this process can be simplified to a point where you can just print your model directly from your web browser without going through all these steps.
I know I'm over simplifying things here, but I would still want to see if solutions like I suggested exist?</p>

<p>Thanks</p>

CC BY-SA 3.0
2016-01-13T10:26:47.550Z
For instance, an octoprint installation can greatly simplify the process. You can just upload an STL file to your printer, have octoprint handle the slicing and the sending of the gcode to the printer. Does this achieve what you want, or are you looking for something more specific?
Tom van der Zanden
CC BY-SA 3.0
2016-01-13T13:03:28.770Z
One problem is that every printer is slightly different.  2 printers from the same company may heat to slightly different temperatures to print.  Overall you need to get to know your printer to know how it will handle different prints and slice accordingly.
Eric Johnson
CC BY-SA 3.0
2016-01-13T18:12:57.233Z
This question is unclear as to its purpose. Are you asking about simplifying your process, or are you asking about online gCode generating tools? If the former, you need to change the question title. If the latter, you should remove the parts about trying to simplify your process, because that has no bearing on online tools.
Marsh
CC BY-SA 3.0
2016-01-13T19:54:47.953Z
This workflow might be necessary for home/hobbies printers, which are more or less "open", which has the advantage to choose a slicer of your choice for example. For commercial machines, this does not necessarily hold true. If you sell the whole package, the workflow can be hidden. I'd be surprised if commercial industrial printers do not offer integration with the most common and popular CAD and CAM software. After all, most CNC machines come with a post processor for exactly that purpose.
the third dimension
CC BY-SA 3.0
2016-01-13T20:55:21.110Z
@TomvanderZanden, I've done already Octoprint on a Raspberry. It's a "poor man solution" since I still had to install Octoprint on some machine (R Pi, PC or whatever) and physically connect that machine to the printer.
Gregra
CC BY-SA 3.0
2016-01-13T21:01:14.453Z
@EricJohnson - Of course you are right, but I guess it's a matter of usage - I wouldn't use it for printing engine parts that require special handling but more home usage - stuff you can download from Thingiverse for example. I would expect that for this usage the API will be able to handle this at least for certain printers (if not all)
Gregra
CC BY-SA 3.0
2016-01-13T21:04:39.517Z
@MartinCarney - I ask as a developer who wants to add an online web page where a user basically drags and drops a 3D model, chooses some printing properties and gets a gcode file that he can print in his printer directly from his PC without going physically to the printer
Gregra
CC BY-SA 3.0
2016-01-13T21:08:27.190Z
@thethirddimension - I totally agree, I'm thinking about the common internet user that got a Makerbot for christmas and has no idea in the mysterious ways of 3D printing. He needs some service where he drags a print model and sends it to the printer, process simplicity should be more important then the quality of the print
Gregra
<print-preparation><print-api>
Online APIs for 3D printing services
Gregra
# Online APIs for 3D printing services

(Asked by: username_0 on 2016-01-13)

I'm interested in finding online APIs where you could perform a call to some third party service with some print preparation request with my model (i.e. "heal a model" or "set up support") and get in return GCODE file I can send to a 3D printer.
My input will be :

* The 3d model (obj, stl)
* My printer (makerbot, ultimaker, whatever) or a printer profile
* A printing profile

This is opposed to all the classical 3D printing processes we have right now. Currently when printing in a 3D printer you would need to go through these phases:

1. Create/Download a model
2. Prepare the model for printing with some 3rd party desktop software
3. Export the model as gcode
4. Save the file to some flash drive
5. Plug the flash drive into the printer
6. Print the model with the printer interface

I would like to know if this process can be simplified to a point where you can just print your model directly from your web browser without going through all these steps.
I know I'm over simplifying things here, but I would still want to see if solutions like I suggested exist?

Thanks

**Tags:** print-preparation, print-api

> **Comments:**
> **username_1**: For instance, an octoprint installation can greatly simplify the process. You can just upload an STL file to your printer, have octoprint handle the slicing and the sending of the gcode to the printer. Does this achieve what you want, or are you looking for something more specific?  
> **username_2**: One problem is that every printer is slightly different.  2 printers from the same company may heat to slightly different temperatures to print.  Overall you need to get to know your printer to know how it will handle different prints and slice accordingly.  
> **username_3**: This question is unclear as to its purpose. Are you asking about simplifying your process, or are you asking about online gCode generating tools? If the former, you need to change the question title. If the latter, you should remove the parts about trying to simplify your process, because that has no bearing on online tools.  
> **username_4**: This workflow might be necessary for home/hobbies printers, which are more or less "open", which has the advantage to choose a slicer of your choice for example. For commercial machines, this does not necessarily hold true. If you sell the whole package, the workflow can be hidden. I'd be surprised if commercial industrial printers do not offer integration with the most common and popular CAD and CAM software. After all, most CNC machines come with a post processor for exactly that purpose.  
> **username_0**: @username_1, I've done already Octoprint on a Raspberry. It's a "poor man solution" since I still had to install Octoprint on some machine (R Pi, PC or whatever) and physically connect that machine to the printer.  
> **username_0**: @username_2 - Of course you are right, but I guess it's a matter of usage - I wouldn't use it for printing engine parts that require special handling but more home usage - stuff you can download from Thingiverse for example. I would expect that for this usage the API will be able to handle this at least for certain printers (if not all)  
> **username_0**: @MartinCarney - I ask as a developer who wants to add an online web page where a user basically drags and drops a 3D model, chooses some printing properties and gets a gcode file that he can print in his printer directly from his PC without going physically to the printer  
> **username_0**: @username_4 - I totally agree, I'm thinking about the common internet user that got a Makerbot for christmas and has no idea in the mysterious ways of 3D printing. He needs some service where he drags a print model and sends it to the printer, process simplicity should be more important then the quality of the print  

---

## 2 answers

### Answer by username_5 on 2016-01-13. Score: 1

There are a few methods to simplify your workflow. Two solutions are outlined below and both feature a documented API you can use to further customize your workflow.

[OctoPrint](http://octoprint.org/) was mentioned by other users. OctoPrint will allow you to configure your printer, print profiles and upload STLs for printing from a web interface. You can configure profiles, slicers and slicer profiles for OctoPrint to use to complete your workflow.

[Astroprint](https://www.astroprint.com/) offers cloud slicing services in addition to features allowing you to manage printers and print profiles.

> **Comments:**
> **username_0**: OctoPrint is nice but requires a local installation and physically connect the machine to the print.  Astroprint is very nice and closer to what I was thinking about. I'll take a deeper look and share my findings.   I'm not closing this yet, since I want to see if there other solutions like this  
> **username_0**: So they currently don't provide a developers API (though it looks like they do but I'm getting a 404 page when clicking on 'apps' on this page - https://developer.astroprint.com/dashboard). I'll be sure to follow that  
> **username_5**: AstroPrint does have an API (it technically also has OctoPrint's API).  I guess the documentation just isn't there.  You can find some of the AstroPrint specific stuff here: https://github.com/AstroPrint/AstroBox/tree/master/src/astroprint/api  Sorry, I thought much of that had already been shimmed up.  

---

### Answer by username_6 on 2016-06-24. Score: 1

## WiFi

A few of the newer machines are coming stock with WiFi connectivity such as MakerBot Replicator(s)/Z18, da Vinci Jr., Kudo3D, and some others that I'm forgetting.

However, these WiFi enabled machines essentially emulate what OctoPrint and AstroPrint provide. While wirelessly connecting might save the hassle of not saving a G-Code file to an SD card/Flashdrive, then plugging in said memory device, then selecting the program to run, the wireless solution still requires a slicer to do the work.

Both OctoPrint and AstroPrint allow building up a queue of sliced prints and I know that OctoPrint will even slice a 3D Print-ready model and place it in your queue.

The only application that I'm aware of that seems to reduce the most amount of work is MakerBot Desktop with a MakerBot Replicator/Z18. While MakerBot does not have a great reputation (as of 2016), they have produced some great software. As I understand, here's how you can utilize MakerBot Desktop:

### Printing from Thingiverse

* Log into Thingiverse from MakerBot Desktop
* Find the model you want to print
* There should be a handy **Print** button located in the interface
* The software will preview the model. Most models that have been uploaded to Thingiverse will be in print-ready orientation/scaling
* Continue by pressing **Print**
* Now the software will slice the model and send the G-Code via USB or WiFi

Really, the only step that MakerBot Desktop skips is downloading the model from your web browser.

There are some rare cases that models found on the internet (such as Thingiverse) will also have the sliced G-Code, but you'll have to be careful to make sure it's the correct flavor for your machine.

## Maybe in the future?

Currently, Microsoft is working on a new 3D printing file format called [.3MF](http://3mf.io/what-is-3mf/) which theoretically could negate the need to slice a 3D model. I'm assuming that you would need a machine that specifically can interpret the file. This project is still very much in the works and it may be years before we see full support as the format needs to be agreed upon by both software companies like SolidWorks, AutoCAD, Catia, etc. **AND** the 3D printer manufacturers like MakerBot/Stratasys, 3D Systems, and other big-named companies.

If you combine the benefit of no longer needing to slice a model and WiFi/USB connection, then most of the "manual" work you describe will no longer be necessary.


---

