Home

Documentation

Klipper/Moonraker Notifier


3D Print Log can receive print information from Klipper/Moonraker, and automatically create a new Print when a print starts, and update the print when it finishes. It uses moonraker's built in notifier component, so no additional plugins are required, just a small configuration change.


Features:

Using the Klipper integration, when you start a print, it will immediately save a new Print in 3D Print Log with a status of "Printing", which you can view on your Print List.

When a print finishes, the status inside of 3D Print Log will change to Success and the print will be updated with print times and filament usage.

If a print is canceled, 3D Print Log will change the status to Failed. The Print Time and Filament Usage will be updated.


Limitations:

  • Requires Moonraker to be installed with Klipper. See the Moonraker documention for installation instructions.
  • Moonraker does not report the estimated print times using the notifier plugin when a print is started, so no end time will be calculated when the print is first started.
  • The Moonraker does not analyze print settings, so no print settings from the slicer will be automatically recorded in the Notes section.

Setup:

Step 1: Generate API Key on 3D Print Log

Moonraker will need an "API Key" to authenticate. This is how 3D Print Log knows what user your Moonraker is for.

  • Navigate to the Personal Api Keys page by clicking on your User Profile Picture at the top-left, and selecting "Personal Api Keys".
  • Click Create new API Key.
  • Enter a new description (such as "Moonraker Key").
  • Click Submit to generate a new key.
  • Copy the new 32-character key for use in Step 3.
    • Note: The API Key cannot be retrieved after you leave the page, so copy it to a secure location, otherwise you will have to generate a new key.

Step 2: Find your Printer ID Number in 3D Print Log

Moonraker needs to know what Printer to use in 3D Print Log. We'll need to find the printer's id number in 3D Print Log.

  • Navigate to the Printers page.
  • Find the printer you want to use, and Click on it to enter the Edit Details page.
  • In your browser's URL bar, record the ID of the printer. It is the number after https://www.3dprintlog.com/printers/####
  • Copy that ID number for use in Step 3.

Step 3: Update Moonraker Configuration

  • If your Klipper installation has a UI such a Fluidd or Mainsail, then navigate to the configuration page. Otherwise, SSH into your machine and navigate to the config directory.
  • >Find moonraker.conf and edit it.
  • At the bottom of your config, paste the following notifier config. Replace the APIKEYGOESHERE with the api key you copied from step 1, and replace the PRINTERIDHERE with the printer id you copied from step 2.
        
    [notifier 3d_print_log]
    url: jsons://api.3dprintlog.com/api/Moonraker/notifier?+X-Api-Key=APIKEYGOESHERE
    events: *
    body: 
        {% set payload = {"printerId": PRINTERIDHERE} %}
        {% do payload.update({"event_name": event_name}) %}
        {% do payload.update(event_args[1]) %}
        { payload|tojson }
        
    
    
  • Save and restart moonraker.

Step 6: Happy Printing!

The Moonraker Integration should now be configured. Happy printing!


Troubleshooting

If the notifier does not seem to be working, you can check the logs in the moonraker.log file for NotifyJSON. That can point you in the right direction, if your moonraker is having trouble reaching 3D Print log.

If you need further help, please contact us through the Feedback and we'll be happy to help.