AutomationFlowsAI & RAG › Text to Speech: OpenAI Audio from Webhook

Text to Speech: OpenAI Audio from Webhook

Original n8n title: Generate Audio From Text Using Openai and Webhook | Text to Speech Workflow

ByAyoub @ayoub-n8n on n8n.io

Who is this for? This workflow is ideal for developers, content creators, or customer support teams looking to automate text-to-speech conversion using OpenAI.

Webhook trigger★★☆☆☆ complexityAI-powered5 nodesOpenAI
AI & RAG Trigger: Webhook Nodes: 5 Complexity: ★★☆☆☆ AI nodes: yes Added:

This workflow corresponds to n8n.io template #2386 — we link there as the canonical source.

The workflow JSON

Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →

Download .json
{
  "id": "OVSyGmI6YFviPu8Q",
  "meta": {
    "templateCredsSetupCompleted": true
  },
  "name": "Generate audio from text using OpenAI - text-to-speech Workflow",
  "tags": [],
  "nodes": [
    {
      "id": "c40966a4-1709-4998-ae95-b067ce3496c9",
      "name": "Respond to Webhook",
      "type": "n8n-nodes-base.respondToWebhook",
      "position": [
        1320,
        200
      ],
      "parameters": {
        "options": {},
        "respondWith": "binary"
      },
      "typeVersion": 1.1
    },
    {
      "id": "c4e57bb6-79a4-4b26-a179-73e30d681521",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        280,
        -140
      ],
      "parameters": {
        "width": 501.55,
        "height": 493.060000000001,
        "content": "This `Webhook` node triggers the workflow when it receives a POST request.\n\n### 1. Test Mode:\n* Use the test webhook URL\n* Click the `Test workflow` button on the canvas. (In test mode, the webhook only works for one call after you click this button)\n\n### 1. Production Mode:\n* The workflow must be active for a **Production URL** to run successfully.\n* You can activate the workflow using the toggle in the top-right of the editor.\n* Note that unlike test URL calls, production URL calls aren't shown on the canvas (only in the executions list)."
      },
      "typeVersion": 1
    },
    {
      "id": "1364a4b6-2651-4b38-b335-c36783a25f12",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        825,
        60
      ],
      "parameters": {
        "color": 4,
        "width": 388.35000000000025,
        "height": 292.71000000000043,
        "content": "### Configure the OpenAI node with your API key:\nIf you haven't connected your OpenAI credentials in n8n yet, log in to your OpenAI account to get your API Key. Then, open the OpenAI node, click `Create New Credentials` and connect with the **OpenAI API**.\n"
      },
      "typeVersion": 1
    },
    {
      "id": "ba755814-75e6-4e16-b3a6-50cf4fc06350",
      "name": "Webhook",
      "type": "n8n-nodes-base.webhook",
      "position": [
        480,
        200
      ],
      "parameters": {
        "path": "generate_audio",
        "options": {},
        "httpMethod": "POST",
        "responseMode": "responseNode"
      },
      "typeVersion": 2
    },
    {
      "id": "ac46df50-cb1f-484c-8edf-8131192ba464",
      "name": "OpenAI",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "position": [
        960,
        200
      ],
      "parameters": {
        "input": "={{ $json.body.text_to_convert }}",
        "voice": "fable",
        "options": {},
        "resource": "audio"
      },
      "credentials": {
        "openAiApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1.3
    }
  ],
  "active": false,
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "84f1b893-e1a3-40c3-83b0-7cd637b353c4",
  "connections": {
    "OpenAI": {
      "main": [
        [
          {
            "node": "Respond to Webhook",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Webhook": {
      "main": [
        [
          {
            "node": "OpenAI",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}

Credentials you'll need

Each integration node will prompt for credentials when you import. We strip credential IDs before publishing — you'll add your own.

Pro

For the full experience including quality scoring and batch install features for each workflow upgrade to Pro

About this workflow

Who is this for? This workflow is ideal for developers, content creators, or customer support teams looking to automate text-to-speech conversion using OpenAI.

Source: https://n8n.io/workflows/2386/ — original creator credit. Request a take-down →

More AI & RAG workflows → · Browse all categories →

Related workflows

Workflows that share integrations, category, or trigger type with this one. All free to copy and import.

AI & RAG

Webhook → Jira “Bug Suspicion” → Slack QA Escalation. Uses openAi, jira, slack. Webhook trigger; 12 nodes.

OpenAI, Jira, Slack
AI & RAG

EvolutionAPI Live. Uses httpRequest, openAi. Webhook trigger; 12 nodes.

HTTP Request, OpenAI
AI & RAG

Automatically score every contact form lead as Hot/Warm/Cold and alert your sales team instantly.

OpenAI, Slack
AI & RAG

This workflow answers user requests sent via Mac Shortcuts Several Shortcuts call the same webhook, with a query and a type of query Types of query are: translate to english translate to spanish corre

OpenAI
AI & RAG

2456. Uses openAi. Webhook trigger; 10 nodes.

OpenAI