octoprint.schema¶
- pydantic model octoprint.schema.BaseModel¶
- Config:¶
use_enum_values: bool = True
validate_default: bool = True
- pydantic model octoprint.schema.BaseModelExtra¶
- Config:¶
use_enum_values: bool = True
validate_default: bool = True
extra: str = allow
octoprint.schema.config¶
- pydantic model octoprint.schema.config.Config¶
- Config:¶
use_enum_values: bool = True
validate_default: bool = True
-
field accessControl : AccessControlConfig =
AccessControlConfig(salt=None, userManager='octoprint.access.users.FilebasedUserManager', groupManager='octoprint.access.groups.FilebasedGroupManager', permissionManager='octoprint.access.permissions.PermissionManager', userfile=None, groupfile=None, autologinLocal=False, localNetworks=['127.0.0.0/8', '::1/128'], autologinAs=None, autologinHeadsupAcknowledged=False, trustBasicAuthentication=False, checkBasicAuthenticationPassword=True, trustRemoteUser=False, remoteUserHeader='REMOTE_USER', trustRemoteGroups=False, remoteGroupsHeader='REMOTE_GROUPS', remoteGroupsMapping={}, addRemoteUsers=False, defaultReauthenticationTimeout=5, sessionStaleAfter=15)
¶
-
field appearance : AppearanceConfig =
AppearanceConfig(name='', color='default', colorTransparent=False, colorIcon=True, defaultLanguage='_default', showFahrenheitAlso=False, fuzzyTimes=True, closeModalsWithClick=True, showInternalFilename=True, components=ComponentConfig(order=ComponentOrderConfig(navbar=['settings', 'systemmenu', 'plugin_announcements', 'plugin_logging_seriallog', 'plugin_logging_plugintimingslog', 'plugin_pi_support', 'plugin_health_check', 'login'], sidebar=['plugin_firmware_check_warning', 'plugin_firmware_check_info', 'connection', 'state', 'files'], tab=['temperature', 'control', 'plugin_gcodeviewer', 'terminal', 'timelapse'], settings=['section_printer', 'plugin_serial_connector', 'printerprofiles', 'temperatures', 'terminalfilters', 'gcodescripts', 'section_features', 'features', 'webcam', 'accesscontrol', 'plugin_gcodeviewer', 'api', 'plugin_appkeys', 'section_octoprint', 'server', 'folders', 'appearance', 'plugin_logging', 'plugin_pluginmanager', 'plugin_softwareupdate', 'plugin_announcements', 'plugin_eventmanager', 'plugin_backup', 'plugin_tracking', 'plugin_errortracking', 'plugin_pi_support'], usersettings=['access', 'interface'], wizard=['plugin_softwareupdate_update', 'plugin_backup', 'plugin_corewizard_acl', 'plugin_corewizard_onlinecheck'], about=['about', 'plugin_pi_support', 'supporters', 'authors', 'changelog', 'license', 'thirdparty', 'plugin_pluginmanager', 'plugin_achievements', 'plugin_achievements_2', 'systeminfo'], generic=[]), disabled=ComponentDisabledConfig(navbar=[], sidebar=[], tab=[], settings=[], usersettings=[], wizard=[], about=[], generic=[])))
¶
-
field controls : list[CustomControl | CustomControlContainer] =
[]
¶
-
field devel : DevelConfig =
DevelConfig(stylesheet='css', cache=DevelCacheConfig(enabled=True, preemptive=True), webassets=DevelWebassetsConfig(bundle=True, clean_on_startup=True, minify=True, minify_plugins=False), useFrozenDictForPrinterState=True, showLoadingAnimation=True, sockJsConnectTimeout=30.0, pluginTimings=False, enableRateLimiter=True, enableCsrfProtection=True)
¶
-
field estimation : EstimationConfig =
EstimationConfig(printTime=PrintTimeEstimationConfig(statsWeighingUntil=0.5, validityRange=0.15, forceDumbFromPercent=0.3, forceDumbAfterMin=30.0, stableThreshold=60))
¶
-
field events : EventsConfig =
EventsConfig(enabled=True, subscriptions=[])
¶
-
field feature : FeatureConfig =
FeatureConfig(temperatureGraph=True, sdSupport=True, keyboardControl=True, pollWatched=False, modelSizeDetection=True, rememberFileFolder=False, printStartConfirmation=False, printCancelConfirmation=True, uploadOverwriteConfirmation=True, fileDeleteConfirmation=True, autoUppercaseBlacklist=['M117', 'M118', 'M707', 'M708'], g90InfluencesExtruder=False, enforceReallyUniversalFilenames=False, enableDragDropUpload=True)
¶
-
field folder : FolderConfig =
FolderConfig(uploads=None, timelapse=None, timelapse_tmp=None, logs=None, virtualSd=None, watched=None, plugins=None, slicingProfiles=None, printerProfiles=None, scripts=None, translations=None, generated=None, data=None)
¶
-
field gcodeAnalysis : GcodeAnalysisConfig =
GcodeAnalysisConfig(maxExtruders=10, throttle_normalprio=0.01, throttle_highprio=0.0, throttle_lines=100, runAt='idle', bedZ=0.0)
¶
-
field plugins : PluginsConfig =
PluginsConfig(disabled=[], forced_compatible=[], sorting_order={}, flags={})
¶
-
field printerConnection : PrinterConnectionConfig =
PrinterConnectionConfig(autorefresh=True, autorefreshInterval=1, autoconnect=False, preferred=PreferredConnection(connector='serial', parameters={'port': None, 'baudrate': None}))
¶
-
field printerParameters : PrinterParametersConfig =
PrinterParametersConfig(pauseTriggers=[])
¶
-
field printerProfiles : PrinterProfilesConfig =
PrinterProfilesConfig(default=None)
¶
-
field scripts : ScriptsConfig =
ScriptsConfig(gcode=GcodeScriptsConfig(afterPrinterConnected=None, beforePrinterDisconnected=None, beforePrintStarted=None, afterPrintCancelled="; disable motors\nM84\n\n;disable all heaters\n{% snippet 'disable_hotends' %}\n{% snippet 'disable_bed' %}\n;disable fan\nM106 S0", afterPrintDone=None, beforePrintPaused=None, afterPrintResumed=None, beforeToolChange=None, afterToolChange=None, snippets={'disable_hotends': '{% if printer_profile.extruder.sharedNozzle %}M104 T0 S0\n{% else %}{% for tool in range(printer_profile.extruder.count) %}M104 T{{ tool }} S0\n{% endfor %}{% endif %}', 'disable_bed': '{% if printer_profile.heatedBed %}M140 S0\n{% endif %}'}))
¶
-
field server : ServerConfig =
ServerConfig(host=None, port=5000, firstRun=True, startOnceInSafeMode=False, ignoreIncompleteStartup=False, seenWizards={}, secretKey=None, heartbeat=900, reverseProxy=ReverseProxyConfig(prefixHeader=None, schemeHeader=None, hostHeader=None, serverHeader=None, portHeader=None, prefixFallback=None, schemeFallback=None, hostFallback=None, serverFallback=None, portFallback=None, trustedProxies=[], trustLocalhostProxies=True), uploads=UploadsConfig(maxSize=1073741824, nameSuffix='name', pathSuffix='path'), maxSize=102400, commands=CommandsConfig(systemShutdownCommand=None, systemRestartCommand=None, serverRestartCommand=None, localPipCommand=None), onlineCheck=OnlineCheckConfig(enabled=None, interval=900, host='1.1.1.1', port=53, name='octoprint.org'), pluginBlacklist=PluginBlacklistConfig(enabled=None, url='https://plugins.octoprint.org/blacklist.json', ttl=900, timeout=3.05), pythonEolCheck=PythonEolCheckConfig(enabled=True, url='https://get.octoprint.org/python-eol', ttl=1440, fallback={'3.7': PythonEolEntry(date='2023-06-27', last_octoprint='1.11.*'), '3.8': PythonEolEntry(date='2024-10-31', last_octoprint=None)}), diskspace=DiskspaceConfig(warning=524288000, critical=209715200), preemptiveCache=PreemptiveCacheConfig(exceptions=[], until=7), ipCheck=IpCheckConfig(enabled=True, trustedSubnets=[]), allowFraming=False, cookies=CookiesConfig(secure=False, samesite='Lax'), allowedLoginRedirectPaths=[])
¶
-
field slicing : SlicingConfig =
SlicingConfig(enabled=True, defaultSlicer=None, defaultProfiles={})
¶
-
field system : SystemConfig =
SystemConfig(actions=[])
¶
-
field temperature : TemperatureConfig =
TemperatureConfig(profiles=[TemperatureProfile(name='ABS', extruder=210, bed=100), TemperatureProfile(name='PLA', extruder=180, bed=60)], cutoff=30, sendAutomatically=False, sendAutomaticallyAfter=1)
¶
-
field terminalFilters : list[TerminalFilterEntry] =
[TerminalFilterEntry(name='Suppress temperature messages', regex='(Send: (N\\d+\\s+)?M105)|(Recv:\\s+(ok\\s+([PBN]\\d+\\s+)*)?([BCLPR]|T\\d*):-?\\d+)'), TerminalFilterEntry(name='Suppress SD status messages', regex='(Send: (N\\d+\\s+)?M27)|(Recv: SD printing byte)|(Recv: Not SD printing)'), TerminalFilterEntry(name='Suppress position messages', regex='(Send:\\s+(N\\d+\\s+)?M114)|(Recv:\\s+(ok\\s+)?X:[+-]?([0-9]*[.])?[0-9]+\\s+Y:[+-]?([0-9]*[.])?[0-9]+\\s+Z:[+-]?([0-9]*[.])?[0-9]+\\s+E\\d*:[+-]?([0-9]*[.])?[0-9]+).*'), TerminalFilterEntry(name='Suppress wait responses', regex='Recv: wait'), TerminalFilterEntry(name='Suppress processing responses', regex='Recv: (echo:\\s*)?busy:\\s*processing')]
¶
-
field webcam : WebcamConfig =
WebcamConfig(webcamEnabled=True, timelapseEnabled=True, ffmpeg=None, ffmpegThreads=1, ffmpegVideoCodec='libx264', bitrate='10000k', watermark=True, ffmpegCommandline='{ffmpeg} -framerate {fps} -i "{input}" -vcodec {videocodec} -threads {threads} -b:v {bitrate} -f {containerformat} -y {filters} "{output}"', ffmpegThumbnailCommandline='{ffmpeg} -sseof -1 -i "{input}" -update 1 -q:v 0.7 "{output}"', timelapse=TimelapseConfig(type='off', fps=25, postRoll=0, renderAfterPrint='always', options=TimelapseOptions(interval=None, capturePostRoll=None, retractionZHop=None)), cleanTmpAfterDays=7, renderAfterPrintDelay=0, defaultWebcam='classic', snapshotWebcam='classic')
¶
- pydantic model octoprint.schema.config.access_control.AccessControlConfig¶
- Config:¶
use_enum_values: bool = True
validate_default: bool = True
-
field addRemoteUsers : bool =
False
¶ If a remote user is not found, add them. Use this only if all users from the remote system can use OctoPrint.
-
field autologinAs : str | None =
None
¶ The name of the user to automatically log on clients originating from localNetworks as. Must be the name of one of your configured users.
-
field autologinHeadsupAcknowledged : bool =
False
¶ Whether the user has acknowledged the heads-up about the importance of a correct reverse proxy configuration in the presence of autologin.
-
field autologinLocal : bool =
False
¶ If set to true, will automatically log on clients originating from any of the networks defined in localNetworks as the user defined in autologinAs.
-
field checkBasicAuthenticationPassword : bool =
True
¶ Whether to also check the password provided through Basic Authentication, if the Basic Authentication header is to be trusted. Disabling this will only match the user name in the Basic Authentication header and login the user without further checks, thus disable with caution.
-
field defaultReauthenticationTimeout : int =
5
¶ Default timeout after which to require reauthentication by a user for dangerous changes, in minutes. Defaults to 5 minutes. Set to 0 to disable reauthentication requirements (SECURITY IMPACT!).
-
field groupManager : str =
'octoprint.access.groups.FilebasedGroupManager'
¶ The group manager implementation to use for accessing group information. Currently only a filebased user manager is implemented which stores configured groups in a YAML file (Default: groups.yaml in the default configuration folder).
-
field groupfile : str | None =
None
¶ The YAML group file to use. If left out defaults to groups.yaml in the default configuration folder.
-
field localNetworks : list[str] =
['127.0.0.0/8', '::1/128']
¶ A list of networks or IPs for which an automatic logon as the user defined in autologinAs will take place. If available OctoPrint will evaluate the X-Forwarded-For HTTP header for determining the client’s IP address. Defaults to anything originating from localhost.
-
field permissionManager : str =
'octoprint.access.permissions.PermissionManager'
¶ The permission manager implementation to use.
-
field remoteGroupsHeader : str =
'REMOTE_GROUPS'
¶ Header used by the reverse proxy to convey the authenticated user’s groups.
-
field remoteGroupsMapping : dict[str, str] =
{}
¶ Mapping from groups in the header to groups in OctoPrint.
-
field remoteUserHeader : str =
'REMOTE_USER'
¶ Header used by the reverse proxy to convey the authenticated user.
-
field salt : str | None =
None
¶ Secret salt used for password hashing. DO NOT TOUCH! If changed you will no longer be able to log in with your existing accounts. Default unset, generated on first run.
-
field sessionStaleAfter : int =
15
¶ Default time after which to consider a session stale due to no activity and to remove it.
-
field trustBasicAuthentication : bool =
False
¶ Whether to trust Basic Authentication headers. If you have setup Basic Authentication in front of OctoPrint and the user names you use there match OctoPrint accounts, by setting this to true users will be logged into OctoPrint as the user during Basic Authentication. ONLY ENABLE THIS if your OctoPrint instance is only accessible through a connection locked down through Basic Authentication!
-
field trustRemoteGroups : bool =
False
¶ Whether to trust remote groups headers. If you have setup authentication in front of OctoPrint and the groups names you use there match OctoPrint accounts, by setting this to true the user’s groups will be set to the groups provided in the header. ONLY ENABLE THIS if your OctoPrint instance is only accessible through a connection locked down through an authenticating reverse proxy!
-
field trustRemoteUser : bool =
False
¶ Whether to trust remote user headers. If you have setup authentication in front of OctoPrint and the user names you use there match OctoPrint accounts, by setting this to true users will be logged into OctoPrint as the user provided in the header. ONLY ENABLE THIS if your OctoPrint instance is only accessible through a connection locked down through an authenticating reverse proxy!
-
field userManager : str =
'octoprint.access.users.FilebasedUserManager'
¶ The user manager implementation to use for accessing user information. Currently only a filebased user manager is implemented which stores configured accounts in a YAML file (Default: users.yaml in the default configuration folder).
- pydantic model octoprint.schema.config.api.ApiConfig¶
- Config:¶
use_enum_values: bool = True
validate_default: bool = True
- pydantic model octoprint.schema.config.appearance.AppearanceConfig¶
- Config:¶
use_enum_values: bool = True
validate_default: bool = True
-
field colorTransparent : bool =
False
¶ Makes the color of the navigation bar “transparent”. In case your printer uses acrylic for its frame 😉.
-
field components : ComponentConfig =
ComponentConfig(order=ComponentOrderConfig(navbar=['settings', 'systemmenu', 'plugin_announcements', 'plugin_logging_seriallog', 'plugin_logging_plugintimingslog', 'plugin_pi_support', 'plugin_health_check', 'login'], sidebar=['plugin_firmware_check_warning', 'plugin_firmware_check_info', 'connection', 'state', 'files'], tab=['temperature', 'control', 'plugin_gcodeviewer', 'terminal', 'timelapse'], settings=['section_printer', 'plugin_serial_connector', 'printerprofiles', 'temperatures', 'terminalfilters', 'gcodescripts', 'section_features', 'features', 'webcam', 'accesscontrol', 'plugin_gcodeviewer', 'api', 'plugin_appkeys', 'section_octoprint', 'server', 'folders', 'appearance', 'plugin_logging', 'plugin_pluginmanager', 'plugin_softwareupdate', 'plugin_announcements', 'plugin_eventmanager', 'plugin_backup', 'plugin_tracking', 'plugin_errortracking', 'plugin_pi_support'], usersettings=['access', 'interface'], wizard=['plugin_softwareupdate_update', 'plugin_backup', 'plugin_corewizard_acl', 'plugin_corewizard_onlinecheck'], about=['about', 'plugin_pi_support', 'supporters', 'authors', 'changelog', 'license', 'thirdparty', 'plugin_pluginmanager', 'plugin_achievements', 'plugin_achievements_2', 'systeminfo'], generic=[]), disabled=ComponentDisabledConfig(navbar=[], sidebar=[], tab=[], settings=[], usersettings=[], wizard=[], about=[], generic=[]))
¶ Configures the order and availability of the UI components.
-
field defaultLanguage : str =
'_default'
¶ Default language of OctoPrint. If left unset OctoPrint will try to match up available languages with the user’s browser settings.
- class octoprint.schema.config.appearance.ColorEnum(*values)¶
-
blue =
'blue'
¶
-
default =
'default'
¶
-
green =
'green'
¶
-
orange =
'orange'
¶
-
red =
'red'
¶
-
violet =
'violet'
¶
-
yellow =
'yellow'
¶
-
blue =
- pydantic model octoprint.schema.config.appearance.ComponentConfig¶
- Config:¶
use_enum_values: bool = True
validate_default: bool = True
-
field disabled : ComponentDisabledConfig =
ComponentDisabledConfig(navbar=[], sidebar=[], tab=[], settings=[], usersettings=[], wizard=[], about=[], generic=[])
¶ Disabled components per container. If a component is included here it will not be included in OctoPrint’s UI at all. Note that this might mean that critical functionality will not be available if no replacement is registered.
-
field order : ComponentOrderConfig =
ComponentOrderConfig(navbar=['settings', 'systemmenu', 'plugin_announcements', 'plugin_logging_seriallog', 'plugin_logging_plugintimingslog', 'plugin_pi_support', 'plugin_health_check', 'login'], sidebar=['plugin_firmware_check_warning', 'plugin_firmware_check_info', 'connection', 'state', 'files'], tab=['temperature', 'control', 'plugin_gcodeviewer', 'terminal', 'timelapse'], settings=['section_printer', 'plugin_serial_connector', 'printerprofiles', 'temperatures', 'terminalfilters', 'gcodescripts', 'section_features', 'features', 'webcam', 'accesscontrol', 'plugin_gcodeviewer', 'api', 'plugin_appkeys', 'section_octoprint', 'server', 'folders', 'appearance', 'plugin_logging', 'plugin_pluginmanager', 'plugin_softwareupdate', 'plugin_announcements', 'plugin_eventmanager', 'plugin_backup', 'plugin_tracking', 'plugin_errortracking', 'plugin_pi_support'], usersettings=['access', 'interface'], wizard=['plugin_softwareupdate_update', 'plugin_backup', 'plugin_corewizard_acl', 'plugin_corewizard_onlinecheck'], about=['about', 'plugin_pi_support', 'supporters', 'authors', 'changelog', 'license', 'thirdparty', 'plugin_pluginmanager', 'plugin_achievements', 'plugin_achievements_2', 'systeminfo'], generic=[])
¶ Defines the order of the components within their respective containers.
- pydantic model octoprint.schema.config.appearance.ComponentDisabledConfig¶
- Config:¶
use_enum_values: bool = True
validate_default: bool = True
Disabled navbar items.
- pydantic model octoprint.schema.config.appearance.ComponentOrderConfig¶
- Config:¶
use_enum_values: bool = True
validate_default: bool = True
-
field about : list[str] =
['about', 'plugin_pi_support', 'supporters', 'authors', 'changelog', 'license', 'thirdparty', 'plugin_pluginmanager', 'plugin_achievements', 'plugin_achievements_2', 'systeminfo']
¶ Order of about dialog items.
Order of navbar items.
-
field settings : list[str] =
['section_printer', 'plugin_serial_connector', 'printerprofiles', 'temperatures', 'terminalfilters', 'gcodescripts', 'section_features', 'features', 'webcam', 'accesscontrol', 'plugin_gcodeviewer', 'api', 'plugin_appkeys', 'section_octoprint', 'server', 'folders', 'appearance', 'plugin_logging', 'plugin_pluginmanager', 'plugin_softwareupdate', 'plugin_announcements', 'plugin_eventmanager', 'plugin_backup', 'plugin_tracking', 'plugin_errortracking', 'plugin_pi_support']
¶ Order of settings.
-
field sidebar : list[str] =
['plugin_firmware_check_warning', 'plugin_firmware_check_info', 'connection', 'state', 'files']
¶ Order of sidebar items.
- pydantic model octoprint.schema.config.controls.CustomControl¶
- Config:¶
use_enum_values: bool = True
validate_default: bool = True
-
field additionalClasses : str | None =
None
¶ Additional classes to apply to the button of a command, commands, script or javascript control, other than the default btn. Can be used to visually style the button, e.g. set to btn-danger to turn the button red.
-
field command : str | None =
None
¶ A single GCODE command to send to the printer. Will be rendered as a button which sends the command to the printer upon click. The button text will be the value of the name attribute. Mutually exclusive with commands and script. The rendered button be disabled if the printer is currently offline or printing or alternatively if the requirements defined via the enabled attribute are not met.
-
field commands : list[str] | None =
None
¶ A list of GCODE commands to send to the printer. Will be rendered as a button which sends the commands to the printer upon click. The button text will be the value of the name attribute. Mutually exclusive with command and script. The rendered button will be disabled if the printer is currently offline or printing or alternatively if the requirements defined via the enabled attribute are not met.
-
field confirm : str | None =
None
¶ A text to display to the user to confirm his button press. Can be used with sensitive custom controls like changing EEPROM values in order to prevent accidental clicks. The text will be displayed in a confirmation dialog.
-
field description : str =
''
¶ An optional description of the control, will be displayed as the tooltip on the button or label for controls which only display output.
-
field enabled : str | None =
None
¶ A JavaScript snippet returning either true or false determining whether the control should be enabled or not. This allows to override the default logic for the enable state of the control (disabled if printer is offline). The JavaScript snippet is eval’d and processed in a context where the control it is part of is provided as local variable data and the ControlViewModel is available as self.
-
field input : list[CustomControlInput] | None =
[]
¶ A list of definitions of input parameters for a command or commands, to be rendered as additional input fields. command/commands may contain placeholders to be replaced by the values obtained from the user for the defined input fields.
-
field javascript : str | None =
None
¶ A JavaScript snippet to be executed when the button rendered for command or commands is clicked. This allows to override the direct sending of the command or commands to the printer with more sophisticated behaviour. The JavaScript snippet is eval’d and processed in a context where the control it is part of is provided as local variable data and the ControlViewModel is available as self.
- field name : str [Required]¶
The name of the control, will be displayed either on the button if it’s a control sending a command or as a label for controls which only display output.
-
field regex : str | None =
None
¶ A [regular expression](https://docs.python.org/3/library/re.html#regular-expression-syntax) to match against lines received from the printer to retrieve information from it (e.g. specific output). Together with template this allows rendition of received data from the printer within the UI.
-
field script : str | None =
None
¶ The name of a full blown [GCODE script]() to send to the printer. Will be rendered as a button which sends the script to the printer upon click. The button text will be the value of the name attribute. Mutually exclusive with command and commands. The rendered button will be disabled if the printer is currently offline or printing or alternatively if the requirements defined via the enabled attribute are not met. Values of input parameters will be available in the template context under the parameter variable (e.g. an input parameter speed will be available in the script template as parameter.speed). On top of that all other variables defined in the [GCODE template context]() will be available.
-
field template : str | None =
None
¶ A template to use for rendering the match of regex. May contain placeholders in [Python Format String Syntax](https://docs.python.org/3/library/string.html#formatstrings) for either named groups within the regex (e.g. Temperature: {temperature} for a regex T:s*(?P<temperature>d+(.d*)) or positional groups within the regex (e.g. Position: X={0}, Y={1}, Z={2}, E={3} for a regex X:([0-9.]+) Y:([0-9.]+) Z:([0-9.]+) E:([0-9.]+)).
- pydantic model octoprint.schema.config.controls.CustomControlContainer¶
- Config:¶
use_enum_values: bool = True
validate_default: bool = True
-
field children : list[CustomControlContainer | CustomControl] =
[]
¶ A list of children controls or containers contained within this container.
-
field layout : LayoutEnum =
LayoutEnum.vertical
¶ The layout to use for laying out the contained children, either from top to bottom (vertical) or from left to right (horizontal).
- pydantic model octoprint.schema.config.controls.CustomControlInput¶
- Config:¶
use_enum_values: bool = True
validate_default: bool = True
- field parameter : str [Required]¶
Internal parameter name for the input field, used as a placeholder in command/commands.
-
field slider : CustomControlSlider | None =
None
¶ If this attribute is included, instead of an input field a slider control will be rendered.
- pydantic model octoprint.schema.config.controls.CustomControlSlider¶
- Config:¶
use_enum_values: bool = True
validate_default: bool = True
- class octoprint.schema.config.controls.LayoutEnum(*values)¶
-
horizontal =
'horizontal'
¶
-
horizontal_grid =
'horizontal_grid'
¶
-
vertical =
'vertical'
¶
-
horizontal =
- pydantic model octoprint.schema.config.devel.DevelCacheConfig¶
- Config:¶
use_enum_values: bool = True
validate_default: bool = True
- pydantic model octoprint.schema.config.devel.DevelConfig¶
- Config:¶
use_enum_values: bool = True
validate_default: bool = True
-
field cache : DevelCacheConfig =
DevelCacheConfig(enabled=True, preemptive=True)
¶ Settings for OctoPrint’s internal caching.
-
field enableCsrfProtection : bool =
True
¶ Enable or disable the CSRF protection. Careful, disabling this reduces security.
-
field enableRateLimiter : bool =
True
¶ Enable or disable the rate limiter. Careful, disabling this reduces security.
-
field stylesheet : StylesheetEnum =
StylesheetEnum.css
¶ Settings for stylesheet preference. OctoPrint will prefer to use the stylesheet type specified here. Usually (on a production install) that will be the compiled css (default). Developers may specify less here too.
-
field webassets : DevelWebassetsConfig =
DevelWebassetsConfig(bundle=True, clean_on_startup=True, minify=True, minify_plugins=False)
¶ Settings for OctoPrint’s web asset merging and minifying.
- pydantic model octoprint.schema.config.devel.DevelWebassetsConfig¶
- Config:¶
use_enum_values: bool = True
validate_default: bool = True
-
field bundle : bool =
True
¶ If set to true, OctoPrint will merge all JS, all CSS and all Less files into one file per type to reduce request count. Setting it to false will load all assets individually. Note: if this is set to false, no minification will take place regardless of the minify setting.
-
field clean_on_startup : bool =
True
¶ Whether to delete generated web assets on server startup (forcing a regeneration).
- pydantic model octoprint.schema.config.estimation.EstimationConfig¶
- Config:¶
use_enum_values: bool = True
validate_default: bool = True
-
field printTime : PrintTimeEstimationConfig =
PrintTimeEstimationConfig(statsWeighingUntil=0.5, validityRange=0.15, forceDumbFromPercent=0.3, forceDumbAfterMin=30.0, stableThreshold=60)
¶ Parameters for the print time estimation during an ongoing print job.
- pydantic model octoprint.schema.config.estimation.PrintTimeEstimationConfig¶
- Config:¶
use_enum_values: bool = True
validate_default: bool = True
-
field forceDumbAfterMin : float =
30.0
¶ If no estimate could be calculated until this many minutes into the print and no statistical data is available, use dumb linear estimate.
-
field forceDumbFromPercent : float =
0.3
¶ If no estimate could be calculated until this percentage and no statistical data is available, use dumb linear estimate. Value between 0 and 1.0.
-
field stableThreshold : int =
60
¶ Average fluctuation between individual calculated estimates to consider in stable range. Seconds of difference.
-
field statsWeighingUntil : float =
0.5
¶ Until which percentage to do a weighted mixture of statistical duration (analysis or past prints) with the result from the calculated estimate if that’s already available. Utilized to compensate for the fact that the earlier in a print job, the least accuracy even a stable calculated estimate provides.
- pydantic model octoprint.schema.config.events.EventSubscription¶
- Config:¶
use_enum_values: bool = True
validate_default: bool = True
- field command : str [Required]¶
The command to execute when the event is triggered, either a GCODE or a system command.
-
field debug : bool =
False
¶ If set to true, OctoPrint will log the command after performing all placeholder replacements.
- field type : SubscriptionTypeEnum [Required]¶
The type of the command.
- pydantic model octoprint.schema.config.events.EventsConfig¶
- Config:¶
use_enum_values: bool = True
validate_default: bool = True
-
field subscriptions : list[EventSubscription] =
[]
¶ A list of event subscriptions.
- class octoprint.schema.config.events.SubscriptionTypeEnum(*values)¶
-
gcode =
'gcode'
¶
-
system =
'system'
¶
-
gcode =
- pydantic model octoprint.schema.config.feature.FeatureConfig¶
- Config:¶
use_enum_values: bool = True
validate_default: bool = True
-
field autoUppercaseBlacklist : list[str] =
['M117', 'M118', 'M707', 'M708']
¶ Commands that should never be auto-uppercased when sent to the printer through the Terminal tab.
-
field enforceReallyUniversalFilenames : bool =
False
¶ Replace all special characters and spaces with text equivalent to make them universally compatible. Most OS filesystems work fine with unicode characters, but just in case you can revert to the older behaviour by setting this to true.
-
field fileDeleteConfirmation : bool =
True
¶ Whether to show a confirmation when about to delete a file
-
field g90InfluencesExtruder : bool =
False
¶ Whether G90/G91 also influence absolute/relative mode of extruders.
-
field keyboardControl : bool =
True
¶ Whether to enable the keyboard control feature in the control tab.
-
field modelSizeDetection : bool =
True
¶ Whether to enable model size detection and warning (true) or not (false).
-
field pollWatched : bool =
False
¶ Whether to actively poll the watched folder (true) or to rely on the OS’s file system notifications instead (false).
-
field printCancelConfirmation : bool =
True
¶ Whether to show a confirmation on print cancelling (true) or not (false)
-
field printStartConfirmation : bool =
False
¶ Whether to show a confirmation on print start (true) or not (false)
-
field rememberFileFolder : bool =
False
¶ Whether to remember the selected folder on the file manager.
- pydantic model octoprint.schema.config.folder.FolderConfig¶
- Config:¶
use_enum_values: bool = True
validate_default: bool = True
-
field data : str | None =
None
¶ Absolute path where to store additional data. Defaults to the data folder in OctoPrint’s base folder.
-
field generated : str | None =
None
¶ Absolute path where to store generated files. Defaults to the generated folder in OctoPrint’s base folder.
-
field logs : str | None =
None
¶ Absolute path where to store logs. Defaults to the logs folder in OctoPrint’s base folder.
-
field plugins : str | None =
None
¶ Absolute path where to locate and install single file plugins. Defaults to the plugins folder in OctoPrint’s base folder.
-
field printerProfiles : str | None =
None
¶ Absolute path where to store printer profiles. Defaults to the printerProfiles folder in OctoPrint’s base folder.
-
field scripts : str | None =
None
¶ Absolute path where to store (GCODE) scripts. Defaults to the scripts folder in OctoPrint’s base folder.
-
field slicingProfiles : str | None =
None
¶ Absolute path where to store slicing profiles. Defaults to the slicingProfiles folder in OctoPrint’s base folder.
-
field timelapse : str | None =
None
¶ Absolute path where to store finished timelase recordings. Defaults to the timelapse folder in OctoPrint’s base folder.
-
field timelapse_tmp : str | None =
None
¶ Absolute path where to store temporary timelapse snapshots. Defaults to the timelapse/tmp folder in OctoPrint’s base folder.
-
field translations : str | None =
None
¶ Absolute path where to store additional translations. Defaults to the translations folder in OctoPrint’s base folder.
-
field uploads : str | None =
None
¶ Absolute path where to store gcode uploads. Defaults to the uploads folder in OctoPrint’s base folder.
- pydantic model octoprint.schema.config.gcode_analysis.GcodeAnalysisConfig¶
- Config:¶
use_enum_values: bool = True
validate_default: bool = True
-
field runAt : RunAtEnum =
RunAtEnum.idle
¶ Whether to run the analysis only when idle (not printing), regardless of printing state or never.
- class octoprint.schema.config.gcode_analysis.RunAtEnum(*values)¶
-
always =
'always'
¶
-
idle =
'idle'
¶
-
never =
'never'
¶
-
always =
- pydantic model octoprint.schema.config.plugins.PluginsConfig¶
- Config:¶
use_enum_values: bool = True
validate_default: bool = True
-
field flags : dict[str, list[str]] =
{}
(alias '_flags')¶ Configured flags for plugins by plugin identifier.
- pydantic model octoprint.schema.config.printer_parameters.PrinterParametersConfig¶
- Config:¶
use_enum_values: bool = True
validate_default: bool = True
- pydantic model octoprint.schema.config.printer_profiles.PrinterProfilesConfig¶
- Config:¶
use_enum_values: bool = True
validate_default: bool = True
- pydantic model octoprint.schema.config.scripts.GcodeScriptsConfig¶
- Config:¶
use_enum_values: bool = True
validate_default: bool = True
- pydantic model octoprint.schema.config.scripts.ScriptsConfig¶
- Config:¶
use_enum_values: bool = True
validate_default: bool = True
-
field gcode : GcodeScriptsConfig =
GcodeScriptsConfig(afterPrinterConnected=None, beforePrinterDisconnected=None, beforePrintStarted=None, afterPrintCancelled="; disable motors\nM84\n\n;disable all heaters\n{% snippet 'disable_hotends' %}\n{% snippet 'disable_bed' %}\n;disable fan\nM106 S0", afterPrintDone=None, beforePrintPaused=None, afterPrintResumed=None, beforeToolChange=None, afterToolChange=None, snippets={'disable_hotends': '{% if printer_profile.extruder.sharedNozzle %}M104 T0 S0\n{% else %}{% for tool in range(printer_profile.extruder.count) %}M104 T{{ tool }} S0\n{% endfor %}{% endif %}', 'disable_bed': '{% if printer_profile.heatedBed %}M140 S0\n{% endif %}'})
¶
- pydantic model octoprint.schema.config.server.CommandsConfig¶
- Config:¶
use_enum_values: bool = True
validate_default: bool = True
-
field localPipCommand : str | None =
None
¶ pip command associated with OctoPrint, used for installing plugins and updates, if unset (default) the command will be autodetected based on the current python executable - unless you have a really special setup this is the right way to do it and there should be no need to ever touch this setting.
- pydantic model octoprint.schema.config.server.CookiesConfig¶
- Config:¶
use_enum_values: bool = True
validate_default: bool = True
-
field samesite : SameSiteEnum | None =
SameSiteEnum.lax
¶ SameSite setting to use on the cookies. Possible values are None, Lax and Strict. Defaults to Lax. Be advised that if forced unset, this has security implications as many browsers now default to Lax unless you configure cookies to be set with Secure flag set, explicitly set SameSite setting here and also serve OctoPrint over https. The Lax setting is known to cause with embedding OctoPrint in frames. See also [“Feature: Cookies default to SameSite=Lax”](https://www.chromestatus.com/feature/5088147346030592), [“Feature: Reject insecure SameSite=None cookies”](https://www.chromestatus.com/feature/5633521622188032) and [issue #3482](https://github.com/OctoPrint/OctoPrint/issues/3482).
- pydantic model octoprint.schema.config.server.DiskspaceConfig¶
- Config:¶
use_enum_values: bool = True
validate_default: bool = True
- pydantic model octoprint.schema.config.server.IpCheckConfig¶
- Config:¶
use_enum_values: bool = True
validate_default: bool = True
- pydantic model octoprint.schema.config.server.OnlineCheckConfig¶
- Config:¶
use_enum_values: bool = True
validate_default: bool = True
-
field enabled : bool | None =
None
¶ Whether the online check is enabled. Ships unset, the user will be asked to make a decision as part of the setup wizard.
-
field interval : int =
900
¶ Interval in which to check for online connectivity (in seconds), defaults to 15 minutes.
- pydantic model octoprint.schema.config.server.PluginBlacklistConfig¶
- Config:¶
use_enum_values: bool = True
validate_default: bool = True
-
field enabled : bool | None =
None
¶ Whether use of the blacklist is enabled. If unset, the user will be asked to make a decision as part of the setup wizard.
- pydantic model octoprint.schema.config.server.PreemptiveCacheConfig¶
- Config:¶
use_enum_values: bool = True
validate_default: bool = True
- pydantic model octoprint.schema.config.server.PythonEolCheckConfig¶
- Config:¶
use_enum_values: bool = True
validate_default: bool = True
-
field fallback : dict[str, PythonEolEntry] =
{'3.7': {'date': '2023-06-27', 'last_octoprint': '1.11.*'}, '3.8': {'date': '2024-10-31'}}
¶ Fallback data for Python EOL data, in case the online check fails.
- pydantic model octoprint.schema.config.server.PythonEolEntry¶
- Config:¶
use_enum_values: bool = True
validate_default: bool = True
- pydantic model octoprint.schema.config.server.ReverseProxyConfig¶
- Config:¶
use_enum_values: bool = True
validate_default: bool = True
-
field hostFallback : str | None =
None
¶ Use this option to define an optional forced host under which to run OctoPrint. This should only be needed if you want to run OctoPrint behind a reverse proxy with a different hostname than OctoPrint itself but can’t configure said reverse proxy to send a host HTTP header (X-Forwarded-Host by default, see above) with forwarded requests.
-
field hostHeader : str | None =
None
¶ The request header from which to determine the host under which OctoPrint is served by the reverse proxy.
-
field prefixFallback : str | None =
None
¶ Use this option to define an optional URL prefix (with a leading /, so absolute to your server’s root) under which to run OctoPrint. This should only be needed if you want to run OctoPrint behind a reverse proxy under a different root endpoint than / and can’t configure said reverse proxy to send a prefix HTTP header (X-Script-Name by default, see above) with forwarded requests.
-
field prefixHeader : str | None =
None
¶ The request header from which to determine the URL prefix under which OctoPrint is served by the reverse proxy.
-
field schemeFallback : str | None =
None
¶ Use this option to define an optional forced scheme (http or https) under which to run OctoPrint. This should only be needed if you want to run OctoPrint behind a reverse proxy that also does HTTPS determination but can’t configure said reverse proxy to send a scheme HTTP header (X-Scheme by default, see above) with forwarded requests.
-
field schemeHeader : str | None =
None
¶ The request header from which to determine the scheme (http or https) under which a specific request to OctoPrint was made to the reverse proxy.
-
field trustLocalhostProxies : bool =
True
¶ Whether to trust the local machine to act as a reverse proxy. Defaults to true, will ensure that 127.0.0.0/8 and ::1 will always be considered to be included in trustedProxies. If you want to explicitly disable trusting the local machine, set this to false and don’t include the local machine in trustedProxies (as in, don’t include “127.0.0.1”, “127.0.0.0/8” or “::1”).
-
field trustedProxies : list[str] =
[]
¶ List of trusted proxy servers for which to ignore the IP address when trying to determine the connecting client’s IP address. A reverse proxy on the same machine as OctoPrint (e.g. as found on OctoPi) will be handled correctly by default through trustLocalhostProxies, further proxies in front of that you’ll have to add yourself here.
- class octoprint.schema.config.server.SameSiteEnum(*values)¶
-
lax =
'Lax'
¶
-
none =
'None'
¶
-
strict =
'Strict'
¶
-
lax =
- pydantic model octoprint.schema.config.server.ServerConfig¶
- Config:¶
use_enum_values: bool = True
validate_default: bool = True
-
field allowFraming : bool =
False
¶ Whether to allow OctoPrint to be embedded in a frame or not. Note that depending on your setup you might have to set SameSite to None, Secure to true and serve OctoPrint through a reverse proxy that enables https for cookies and thus logging in to work.
-
field allowedLoginRedirectPaths : list[str] =
[]
¶ List of paths that are allowed to be used as redirect targets for the login page, in addition to the default ones (/, /recovery/ and /plugin/appkeys/auth/)
-
field commands : CommandsConfig =
CommandsConfig(systemShutdownCommand=None, systemRestartCommand=None, serverRestartCommand=None, localPipCommand=None)
¶ Commands to restart/shutdown octoprint or the system it’s running on.
-
field cookies : CookiesConfig =
CookiesConfig(secure=False, samesite='Lax')
¶ Settings for further configuration of the cookies that OctoPrint sets (login, remember me, …).
-
field diskspace : DiskspaceConfig =
DiskspaceConfig(warning=524288000, critical=209715200)
¶ Settings of when to display what disk space warning.
-
field firstRun : bool =
True
¶ If this option is true, OctoPrint will show the First Run wizard and set the setting to false after that completes.
-
field host : str | None =
None
¶ Use this option to define the host to which to bind the server. If unset, OctoPrint will attempt to bind on all available interfaces, IPv4 and v6 unless either is disabled.
-
field ignoreIncompleteStartup : bool =
False
¶ Set this to true to make OctoPrint ignore incomplete startups. Helpful for development.
-
field ipCheck : IpCheckConfig =
IpCheckConfig(enabled=True, trustedSubnets=[])
¶ Configuration of the client IP check to warn about connections from external networks.
-
field maxSize : int =
102400
¶ Maximum size of requests other than file uploads in bytes, defaults to 100KB.
-
field onlineCheck : OnlineCheckConfig =
OnlineCheckConfig(enabled=None, interval=900, host='1.1.1.1', port=53, name='octoprint.org')
¶ Configuration of the regular online connectivity check.
-
field pluginBlacklist : PluginBlacklistConfig =
PluginBlacklistConfig(enabled=None, url='https://plugins.octoprint.org/blacklist.json', ttl=900, timeout=3.05)
¶ Configuration of the plugin blacklist.
-
field preemptiveCache : PreemptiveCacheConfig =
PreemptiveCacheConfig(exceptions=[], until=7)
¶ Configuration of the preemptive cache.
-
field pythonEolCheck : PythonEolCheckConfig =
PythonEolCheckConfig(enabled=True, url='https://get.octoprint.org/python-eol', ttl=1440, fallback={'3.7': PythonEolEntry(date='2023-06-27', last_octoprint='1.11.*'), '3.8': PythonEolEntry(date='2024-10-31', last_octoprint=None)})
¶ Configuration of the Python EOL warning.
-
field reverseProxy : ReverseProxyConfig =
ReverseProxyConfig(prefixHeader=None, schemeHeader=None, hostHeader=None, serverHeader=None, portHeader=None, prefixFallback=None, schemeFallback=None, hostFallback=None, serverFallback=None, portFallback=None, trustedProxies=[], trustLocalhostProxies=True)
¶ Settings if OctoPrint is running behind a reverse proxy (haproxy, nginx, apache, …) that doesn’t correctly set the [required headers](https://community.octoprint.org/t/reverse-proxy-configuration-examples/1107). These are necessary in order to make OctoPrint generate correct external URLs so that AJAX requests and download URLs work, and so that client IPs are read correctly.
-
field secretKey : str | None =
None
¶ Secret key for encrypting cookies and such, randomly generated on first run.
-
field startOnceInSafeMode : bool =
False
¶ If this option is true, OctoPrint will enable safe mode on the next server start and reset the setting to false
-
field uploads : UploadsConfig =
UploadsConfig(maxSize=1073741824, nameSuffix='name', pathSuffix='path')
¶ Settings for file uploads to OctoPrint, such as maximum allowed file size and header suffixes to use for streaming uploads. OctoPrint does some nifty things internally in order to allow streaming of large file uploads to the application rather than just storing them in memory. For that it needs to do some rewriting of the incoming upload HTTP requests, storing the uploaded file to a temporary location on disk and then sending an internal request to the application containing the original filename and the location of the temporary file.
- pydantic model octoprint.schema.config.server.UploadsConfig¶
- Config:¶
use_enum_values: bool = True
validate_default: bool = True
- pydantic model octoprint.schema.config.slicing.SlicingConfig¶
- Config:¶
use_enum_values: bool = True
validate_default: bool = True
- pydantic model octoprint.schema.config.system.ActionConfig¶
- Config:¶
use_enum_values: bool = True
validate_default: bool = True
- field action : str [Required]¶
The identifier used internally to identify the action. Set to divider to generate a divider in the menu.
-
field command : str | None =
None
¶ The command to execute when the action is selected. Must be set if the action is not a divider.
-
field confirm : str | None =
None
¶ An optional confirmation message to show before executing the command.
- pydantic model octoprint.schema.config.system.SystemConfig¶
- Config:¶
use_enum_values: bool = True
validate_default: bool = True
-
field actions : list[ActionConfig] =
[]
¶ A list of system actions to show in the UI.
- pydantic model octoprint.schema.config.temperature.TemperatureConfig¶
- Config:¶
use_enum_values: bool = True
validate_default: bool = True
-
field profiles : list[TemperatureProfile] =
[TemperatureProfile(name='ABS', extruder=210, bed=100), TemperatureProfile(name='PLA', extruder=180, bed=60)]
¶ Temperature profiles to offer in the UI for quick pre-heating.
- pydantic model octoprint.schema.config.temperature.TemperatureProfile¶
- Config:¶
use_enum_values: bool = True
validate_default: bool = True
- pydantic model octoprint.schema.config.terminalfilters.TerminalFilterEntry¶
- Config:¶
use_enum_values: bool = True
validate_default: bool = True
- field regex : str [Required]¶
The regular expression to match. Use [JavaScript regular expressions](https://developer.mozilla.org/en/docs/Web/JavaScript/Guide/Regular_Expressions).
- class octoprint.schema.config.webcam.RenderAfterPrintEnum(*values)¶
-
always =
'always'
¶
-
failure =
'failure'
¶
-
off =
'off'
¶
-
success =
'success'
¶
-
always =
- pydantic model octoprint.schema.config.webcam.TimelapseConfig¶
- Config:¶
use_enum_values: bool = True
validate_default: bool = True
-
field options : TimelapseOptions =
TimelapseOptions(interval=None, capturePostRoll=None, retractionZHop=None)
¶ Additional options depending on the timelapse type.
-
field postRoll : int =
0
¶ The number of seconds in the rendered video to add after a finished print. The exact way how the additional images will be recorded depends on timelapse type.
zchange
timelapses will take one final picture and add itfps * postRoll
times.timed
timelapses continue to record just like at the beginning, so the recording will continue anotherfps * postRoll * interval
seconds. This behaviour can be overridden by setting thecapturePostRoll
option tofalse
, in which case the post roll will be created identically tozchange
mode.
-
field renderAfterPrint : RenderAfterPrintEnum =
RenderAfterPrintEnum.always
¶ Determines whether rendering the timelapse should be done automatically after the print is finished. This can be done always, only after successful prints, only after failed prints, or never.
-
field type : TimelapseTypeEnum =
TimelapseTypeEnum.off
¶ The timelapse type.
- pydantic model octoprint.schema.config.webcam.TimelapseOptions¶
- Config:¶
use_enum_values: bool = True
validate_default: bool = True
-
field capturePostRoll : bool | None =
None
¶ timed timelapses only: Whether to capture the snapshots for the post roll (true) or just copy the last captured snapshot from the print over and over again (false).
- class octoprint.schema.config.webcam.TimelapseTypeEnum(*values)¶
-
off =
'off'
¶
-
timed =
'timed'
¶
-
zchange =
'zchange'
¶
-
off =
- pydantic model octoprint.schema.config.webcam.WebcamConfig¶
- Config:¶
use_enum_values: bool = True
validate_default: bool = True
-
field bitrate : str =
'10000k'
¶ The bitrate to use for rendering the timelapse video. This gets directly passed to ffmpeg.
-
field ffmpeg : str | None =
None
¶ Path to ffmpeg binary to use for creating timelapse recordings. Timelapse support will be disabled if not set.
-
field ffmpegCommandline : str =
'{ffmpeg} -framerate {fps} -i "{input}" -vcodec {videocodec} -threads {threads} -b:v {bitrate} -f {containerformat} -y {filters} "{output}"'
¶ The full commandline to use for rendering timelapse recordings through ffmpeg. Supports the following placeholders:
ffmpeg: the ffmpeg command as defined under webcam.ffmpeg
fps: the fps setting as defined by the timelapse configuration
input: the path to the input files
videocodec: the video codec to use, as defined in webcam.ffmpegVideoCodec
threads: the number of threads to use, as defined in webcam.ffmpegThreads
bitrate: the bitrate to use, as defined in webcam.bitrate
containerformat: the container format to use, based on the selected codec
filters: the filter chain
output: the path to the output file
The full commandline to use for rendering timelapse recordings through ffmpeg. Supports the following placeholders:
ffmpeg: the ffmpeg command as defined under webcam.ffmpeg
fps: the fps setting as defined by the timelapse configuration
input: the path to the input files
videocodec: the video codec to use, as defined in webcam.ffmpegVideoCodec
threads: the number of threads to use, as defined in webcam.ffmpegThreads
bitrate: the bitrate to use, as defined in webcam.bitrate
containerformat: the container format to use, based on the selected codec
filters: the filter chain
output: the path to the output file
-
field ffmpegThumbnailCommandline : str =
'{ffmpeg} -sseof -1 -i "{input}" -update 1 -q:v 0.7 "{output}"'
¶ The full commandline to use for generating thumbnails through ffmpeg. Supports the following placeholders:
ffmpeg: the ffmpeg command as defined under webcam.ffmpeg
input: the path to the input file
output: the path to the output file
The full commandline to use for generating thumbnails through ffmpeg. Supports the following placeholders:
ffmpeg: the ffmpeg command as defined under webcam.ffmpeg
input: the path to the input file
output: the path to the output file
-
field renderAfterPrintDelay : int =
0
¶ Delay to wait for after print end before rendering timelapse, in seconds. If another print gets started during this time, the rendering will be postponed.
-
field timelapse : TimelapseConfig =
TimelapseConfig(type='off', fps=25, postRoll=0, renderAfterPrint='always', options=TimelapseOptions(interval=None, capturePostRoll=None, retractionZHop=None))
¶ The default timelapse settings.
-
field timelapseEnabled : bool =
True
¶ Use this option to enable timelapse support via snapshot, e.g. via MJPG-Streamer. Timelapse support will be disabled if not set.
octoprint.schema.webcam¶
- pydantic model octoprint.schema.webcam.Webcam¶
- Config:¶
use_enum_values: bool = True
validate_default: bool = True
-
field compat : WebcamCompatibility | None =
None
¶ A compatibility configuration to allow older clients to make use of this webcam