Slackify Markdown icon

Slackify Markdown

Converts Markdown to Slack-formatted text

Overview

This node converts Markdown-formatted text into Slack's message formatting syntax. It is useful when you want to send messages to Slack channels or users and need to ensure that the text appears correctly formatted according to Slack's markup rules. For example, converting bold, italics, links, and lists from Markdown into Slack-compatible formatting allows seamless integration of rich text content in Slack messages.

Common scenarios include:

  • Preparing user-generated Markdown content for posting in Slack.
  • Transforming documentation snippets or notes into Slack messages.
  • Automating notifications with formatted text in Slack workflows.

Properties

Name Meaning
Markdown Text The markdown text to convert to Slack format.
Output Field The name of the field where the converted Slack-formatted text will be stored in output.

Output

The node outputs an array of items, each containing a json object. This object includes all original input fields plus a new field (named as specified by the "Output Field" property) holding the Slack-formatted text converted from the input Markdown.

Example output JSON structure snippet:

{
  "json": {
    "...originalFields": "...",
    "slackText": "Converted Slack formatted string"
  }
}

If an error occurs during conversion for any item, the output for that item will include an error field describing the issue.

Dependencies

  • Uses the external library slackify-markdown to perform the Markdown to Slack format conversion.
  • No additional API keys or external services are required.
  • Requires standard n8n environment setup.

Troubleshooting

  • Common issues:
    • Invalid or malformed Markdown input may cause conversion errors.
    • If the output field name conflicts with existing fields, it may overwrite data unintentionally.
  • Error handling:
    • Errors during conversion are caught per item.
    • If "Continue On Fail" is enabled, the node outputs the error message in the item's JSON under the error key without stopping execution.
    • Otherwise, the node throws an error indicating which item caused the failure.

Links and References

Discussion