> ## Documentation Index
> Fetch the complete documentation index at: https://docs.deepvista.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Set Up an X Posting Workflow with Discord Notifications

> Generate an X posting workflow from a single prompt, extend it in plain language, and get notified in Discord when posts go out.

## Overview

DeepVista can turn one well-structured prompt into a complete X posting workflow: it researches source content, drafts post variants in your brand voice, holds them for your review, and publishes to your chosen channel. This tutorial walks through generating the workflow, adding a step, and connecting Discord notifications.

## Prerequisites

Before you start, make sure you have:

1. A DeepVista account with an active project
2. A source of content to draw from (a URL, newsletter, or content type)
3. A Discord server where you have permission to manage a channel

## Step-by-step guide

<Steps>
  <Step title="Generate the workflow with one prompt">
    Paste the following prompt into DeepVista chat:

    ```text theme={null}
    Create an X posting workflow for my company.
    ```

    <Tip>
      Add a line defining the themes you want the workflow to prioritize, such as AI/ML, fundraising, GTM, or technical deep-dives. This sharpens what the research step surfaces.
    </Tip>

    DeepVista generates the full workflow from this prompt. Every draft pauses for your review before anything is published.

    DeepVista automatically searches your company context to create a personalized workflow.

    <Frame>
      <img src="https://mintcdn.com/deepvistainc/B_N3lgYV20FvQiS8/images/x-post-workflow/generate-workflow-prompt.png?fit=max&auto=format&n=B_N3lgYV20FvQiS8&q=85&s=8d2b1637d4bda72d1eae0d68473fa1e9" alt="DeepVista generating a workflow from a single prompt" width="1581" height="681" data-path="images/x-post-workflow/generate-workflow-prompt.png" />
    </Frame>

    The workflow appears in the chat output. Click it to open the full workflow in the right panel.

    <Frame>
      <img src="https://mintcdn.com/deepvistainc/B_N3lgYV20FvQiS8/images/x-post-workflow/workflow-chat-output.png?fit=max&auto=format&n=B_N3lgYV20FvQiS8&q=85&s=c1db3c8e8f17df95093d434f6a7ad5b7" alt="Workflow card in the chat output" width="1270" height="951" data-path="images/x-post-workflow/workflow-chat-output.png" />
    </Frame>

    <Frame>
      <img src="https://mintcdn.com/deepvistainc/B_N3lgYV20FvQiS8/images/x-post-workflow/workflow-right-panel.png?fit=max&auto=format&n=B_N3lgYV20FvQiS8&q=85&s=009ead4f375b0434491db5a2c511e06f" alt="Full workflow displayed in the right panel" width="1403" height="1233" data-path="images/x-post-workflow/workflow-right-panel.png" />
    </Frame>
  </Step>

  <Step title="Add a step in plain language">
    You can extend the workflow at any time. Open chat and describe the new step using this pattern:

    ```text theme={null}
    Add a step after [existing step] that [does what].
    ```

    For example:

    ```text theme={null}
    Add a step after "Publish to X" that sends a notification
    to my Discord channel confirming the post went out.
    ```

    DeepVista handles the technical wiring. You only describe the step.

    <Frame>
      <img src="https://mintcdn.com/deepvistainc/B_N3lgYV20FvQiS8/images/x-post-workflow/add-step-plain-language.png?fit=max&auto=format&n=B_N3lgYV20FvQiS8&q=85&s=6b15f633a1bac974f08e5d6f2e904a6c" alt="Adding a workflow step in plain language" width="1404" height="1229" data-path="images/x-post-workflow/add-step-plain-language.png" />
    </Frame>
  </Step>

  <Step title="Set up Discord notifications">
    First, create a Discord webhook:

    1. Open your Discord server and go to the channel where you want notifications.

    <Frame>
      <img src="https://mintcdn.com/deepvistainc/B_N3lgYV20FvQiS8/images/x-post-workflow/discord-channel.png?fit=max&auto=format&n=B_N3lgYV20FvQiS8&q=85&s=e000e01b960cd705ddcbeebd90a36448" alt="Selecting a Discord channel" width="383" height="129" data-path="images/x-post-workflow/discord-channel.png" />
    </Frame>

    2. Click the gear icon to edit the channel, then go to **Integrations > Webhooks**.

    <Frame>
      <img src="https://mintcdn.com/deepvistainc/B_N3lgYV20FvQiS8/images/x-post-workflow/discord-integrations-webhooks.png?fit=max&auto=format&n=B_N3lgYV20FvQiS8&q=85&s=e1428d7645f77dbca7162957bd3aa272" alt="Discord channel Integrations and Webhooks settings" width="1100" height="419" data-path="images/x-post-workflow/discord-integrations-webhooks.png" />
    </Frame>

    3. Click **New Webhook**, name it (for example, "Workflow Bot"), and choose an avatar.
    4. Click **Copy Webhook URL**.

    <Frame>
      <img src="https://mintcdn.com/deepvistainc/B_N3lgYV20FvQiS8/images/x-post-workflow/discord-copy-webhook-url.png?fit=max&auto=format&n=B_N3lgYV20FvQiS8&q=85&s=2951c40dae05901f6bdd292aba228210" alt="Copying the Discord webhook URL" width="734" height="289" data-path="images/x-post-workflow/discord-copy-webhook-url.png" />
    </Frame>

    Then add it to your workflow. Tell DeepVista:

    ```text theme={null}
    Use this Discord webhook: [paste your webhook URL]
    ```

    DeepVista attaches it to your workflow so a message posts automatically after the step completes.

    Webhook URLs follow this format:

    ```text theme={null}
    https://discord.com/api/webhooks/123456789/abc123xyz
    ```

    <Warning>
      Keep the webhook URL private. Anyone who has it can post to your channel.
    </Warning>

    <Frame>
      <img src="https://mintcdn.com/deepvistainc/B_N3lgYV20FvQiS8/images/x-post-workflow/webhook-added-confirmation.png?fit=max&auto=format&n=B_N3lgYV20FvQiS8&q=85&s=3be953101dba3704bed5ceece32a24ac" alt="Webhook attached to the workflow" width="452" height="472" data-path="images/x-post-workflow/webhook-added-confirmation.png" />
    </Frame>
  </Step>

  <Step title="Run the workflow">
    Click the **Run** button to trigger the workflow.

    <Frame>
      <img src="https://mintcdn.com/deepvistainc/B_N3lgYV20FvQiS8/images/x-post-workflow/run-button.png?fit=max&auto=format&n=B_N3lgYV20FvQiS8&q=85&s=e1cff61ba6ec652ff1b84314d857ca90" alt="Run button on the workflow panel" width="632" height="113" data-path="images/x-post-workflow/run-button.png" />
    </Frame>

    DeepVista populates a predefined prompt that starts the run.

    <Frame>
      <img src="https://mintcdn.com/deepvistainc/B_N3lgYV20FvQiS8/images/x-post-workflow/run-predefined-prompt.png?fit=max&auto=format&n=B_N3lgYV20FvQiS8&q=85&s=0e8665b15bc2ee3cdd331caa43def376" alt="Predefined prompt that triggers the workflow" width="643" height="143" data-path="images/x-post-workflow/run-predefined-prompt.png" />
    </Frame>

    <Frame>
      <img src="https://mintcdn.com/deepvistainc/B_N3lgYV20FvQiS8/images/x-post-workflow/run-in-progress.png?fit=max&auto=format&n=B_N3lgYV20FvQiS8&q=85&s=de82e98bffa78f9170e2435c826d05bd" alt="Workflow run in progress" width="653" height="938" data-path="images/x-post-workflow/run-in-progress.png" />
    </Frame>

    <Frame>
      <img src="https://mintcdn.com/deepvistainc/B_N3lgYV20FvQiS8/images/x-post-workflow/run-output.png?fit=max&auto=format&n=B_N3lgYV20FvQiS8&q=85&s=ed151c3249ebc381a08b916d96cffcaf" alt="Workflow run output with draft for review" width="639" height="404" data-path="images/x-post-workflow/run-output.png" />
    </Frame>

    Once the run completes, the draft is posted to your Discord channel.

    <Frame>
      <img src="https://mintcdn.com/deepvistainc/B_N3lgYV20FvQiS8/images/x-post-workflow/discord-post-result.png?fit=max&auto=format&n=B_N3lgYV20FvQiS8&q=85&s=6873e2acf2ef6823a8f77d0f2b2d7e0b" alt="Draft posted in the Discord channel" width="532" height="296" data-path="images/x-post-workflow/discord-post-result.png" />
    </Frame>
  </Step>
</Steps>

## Next steps

Explore more tutorials in the DeepVista documentation.
