Listmonk icon

Listmonk

Interact with a listmonk instance

Overview

This node integrates with a listmonk instance, specifically allowing users to update the application settings of that listmonk server. It is useful for administrators or automation workflows that need to programmatically modify configuration parameters such as site name, URLs, email settings, privacy options, upload providers, SMTP configurations, bounce handling, and appearance customizations.

Typical use cases include:

  • Automating environment setup or configuration changes in listmonk.
  • Updating email sending parameters or privacy settings dynamically.
  • Managing upload storage options or SMTP servers without manual intervention.
  • Customizing the look and feel of the admin or public interfaces via CSS/JS updates.

Properties

Name Meaning
Settings (JSON) A JSON object representing the settings to update on the listmonk instance. This includes a wide range of configurable options such as:
- app.site_name, app.root_url, app.logo_url, app.favicon_url, app.from_email, app.notify_emails (array of strings), app.enable_public_subscription_page (boolean), app.enable_public_archive (boolean), app.send_optin_confirmation (boolean), app.check_updates (boolean), app.lang (string), app.batch_size (number), app.concurrency (number), app.max_send_errors (number), app.message_rate (number), app.message_sliding_window (boolean), app.message_sliding_window_duration (string), app.message_sliding_window_rate (number)
- Privacy settings like privacy.individual_tracking, privacy.unsubscribe_header, privacy.allow_blocklist, privacy.allow_preferences, privacy.allow_export, privacy.allow_wipe (all booleans), privacy.exportable (array of strings), privacy.domain_blocklist (array of objects)
- Upload provider settings including filesystem and S3 options such as paths, URLs, AWS keys, bucket info, expiry, etc.
- SMTP server configurations as an array of objects with details like host, port, authentication, TLS settings, max connections, retries, timeouts, etc.
- Messenger configurations (array of objects)
- Bounce handling options including enabling flags, webhook settings, counts, actions, and integration keys for SES, SendGrid, Postmark
- Mailbox configurations for bounce processing
- Appearance customization for admin and public interfaces via custom CSS and JS strings

This property is required and must be provided as valid JSON reflecting the desired settings update.

Output

The node outputs data in the standard n8n format with a json field containing the response from the listmonk API after attempting to update the settings. The structure typically reflects the updated settings or confirmation of success. There is no indication of binary data output.

Dependencies

  • Requires connection to a listmonk instance's API endpoint.
  • Needs credentials for authentication, specifically a username and password for basic auth.
  • The base URL for the API is constructed from the provided domain credential.
  • The node expects the API to accept and respond with JSON content.

Troubleshooting

  • Invalid JSON in Settings: If the JSON provided in the "Settings (JSON)" property is malformed or contains invalid values, the API call will fail. Validate JSON syntax before execution.
  • Authentication Errors: Incorrect username or password will cause authentication failures. Verify credentials are correct and have sufficient permissions.
  • API Endpoint Issues: Ensure the domain URL is correct and accessible from the n8n environment. Network issues or incorrect URLs will prevent communication.
  • Unsupported Settings Keys: Providing unknown or deprecated settings keys may result in errors or ignored fields. Refer to listmonk documentation for supported settings.
  • Permission Denied: The authenticated user must have rights to update settings; otherwise, the API will reject the request.
  • Timeouts or Rate Limits: Large or frequent updates might trigger rate limits or timeouts. Adjust batch sizes or retry logic accordingly.

Links and References

Discussion