Back to Catalog

Process multiple prompts in parallel with Azure OpenAI Batch API

Greg EvseevGreg Evseev
701 views
2/3/2026
Official Page

Process Multiple Prompts in Parallel with Azure OpenAI Batch API

Who is this for?

This workflow is designed for developers and data scientists who want to efficiently send multiple prompts to the Azure OpenAI Batch API and retrieve responses in a single batch process. It is particularly useful for applications that require processing large volumes of text data, such as chatbots, content generation, or data analysis.

What problem is this workflow solving?

Sending multiple prompts to the Azure OpenAI API can be time-consuming and inefficient if done sequentially. This workflow automates the process of batching requests, allowing users to submit multiple prompts at once and retrieve the results in a streamlined manner. This not only saves time but also optimizes resource usage.

What this workflow does

This workflow:

  1. Accepts an array of requests, each containing a prompt and associated parameters.
  2. Converts the requests into a JSONL format suitable for batch processing.
  3. Uploads the batch file to the Azure OpenAI API.
  4. Creates a batch job to process the prompts.
  5. Polls for the job status and retrieves the output once processing is complete.
  6. Parses the output and returns the results.

Key Features of Azure OpenAI Batch API

The Azure OpenAI Batch API is designed to handle large-scale and high-volume processing tasks efficiently. Key features include:

  • Asynchronous Processing: Handle groups of requests with separate quotas, targeting a 24-hour turnaround at 50% less cost than global standards.
  • Batch Requests: Send a large number of requests in a single file, avoiding disruption to online workloads.

Key Use Cases

  • Large-Scale Data Processing: Quickly analyze extensive datasets in parallel.
  • Content Generation: Create large volumes of text, such as product descriptions or articles.
  • Document Review and Summarization: Automate the review and summarization of lengthy documents.
  • Customer Support Automation: Handle numerous queries simultaneously for faster responses.
  • Data Extraction and Analysis: Extract and analyze information from vast amounts of unstructured data.
  • Natural Language Processing (NLP) Tasks: Perform tasks like sentiment analysis or translation on large datasets.
  • Marketing and Personalization: Generate personalized content and recommendations at scale.

Setup

  1. Azure OpenAI Credentials: Ensure you have your Azure OpenAI API credentials set up in n8n.
  2. Configure the Workflow:
    • Set the az_openai_endpoint in the "Setup defaults" node to your Azure OpenAI endpoint.
    • Adjust the api-version in the "Set desired 'api-version'" node if necessary.
  3. Run the Workflow: Trigger the workflow using the "Run example" node to see it in action.

How to customize this workflow to your needs

  • Modify Prompts: Change the prompts in the "One query example" node to suit your application.
  • Adjust Parameters: Update the parameters in the requests to customize the behavior of the OpenAI model.
  • Add More Requests: You can add more requests in the input array to process additional prompts.

Example Input

[
  {
    "api-version": "2025-03-01-preview",
    "requests": [
      {
        "custom_id": "first-prompt-in-my-batch",
        "params": {
          "messages": [
            {
              "content": "Hey ChatGPT, tell me a short fun fact about cats!",
              "role": "user"
            }
          ]
        }
      },
      {
        "custom_id": "second-prompt-in-my-batch",
        "params": {
          "messages": [
            {
              "content": "Hey ChatGPT, tell me a short fun fact about bees!",
              "role": "user"
            }
          ]
        }
      }
    ]
  }
]

Example Output

[
  {
    "custom_id": "first-prompt-in-my-batch",
    "response": {
      "body": {
        "choices": [
          {
            "message": {
              "content": "Did you know that cats can make over 100 different sounds?"
            }
          }
        ]
      }
    }
  },
  {
    "custom_id": "second-prompt-in-my-batch",
    "response": {
      "body": {
        "choices": [
          {
            "message": {
              "content": "Bees communicate through a unique dance called the 'waggle dance'."
            }
          }
        ]
      }
    }
  }
]

Additional Notes

  • Job Management: You can cancel a job at any time, and any remaining work will be canceled while already completed work is returned. You will be charged for any completed work.
  • Data Residency: Data stored at rest remains in the designated Azure geography, while data may be processed for inferencing in any Azure OpenAI location.
  • Exponential Backoff: If your batch jobs are large and hitting the enqueued token limit, certain regions support queuing multiple batch jobs with exponential backoff.

This template provides a comprehensive solution for efficiently processing multiple prompts using the Azure OpenAI Batch API, making it a valuable tool for developers and data scientists alike.

Process Multiple Prompts in Parallel with Azure OpenAI Batch API

This n8n workflow demonstrates how to efficiently process multiple prompts in parallel using the Azure OpenAI Batch API. It's designed to handle a list of prompts, create a batch request, poll for the results, and then process the responses.

Description

This workflow streamlines the process of sending multiple AI prompts to Azure OpenAI for batch processing. Instead of sending prompts one by one, which can be slow, it aggregates them into a single batch request, allowing for faster and more efficient processing of large datasets. It also includes logic to manage the asynchronous nature of batch API calls by polling for completion.

What it does

  1. Manual Trigger: Initiates the workflow upon manual execution.
  2. Edit Fields (Set): Prepares a list of example prompts for demonstration purposes. In a real-world scenario, this could be replaced by data from a database, spreadsheet, or another API.
  3. Convert to File: Transforms the list of prompts into a JSONL (JSON Lines) file format, which is required by the Azure OpenAI Batch API for input.
  4. HTTP Request (Upload Batch Input File): Uploads the generated JSONL file to Azure Blob Storage, making it accessible for the Azure OpenAI Batch API.
  5. HTTP Request (Create Batch Request): Submits a batch request to the Azure OpenAI API, providing the URL of the uploaded input file.
  6. If (Check Batch Status): Checks if the batch request was successfully submitted.
    • TRUE Branch: Continues to poll for results if the request was successful.
    • FALSE Branch: Stops the workflow if the batch request failed.
  7. Wait: Pauses the workflow for a specified duration (e.g., 30 seconds) before checking the batch status again, preventing excessive API calls.
  8. HTTP Request (Get Batch Status): Retrieves the current status of the batch job from Azure OpenAI.
  9. If (Batch Completed): Evaluates if the batch job has completed successfully.
    • TRUE Branch: Proceeds to download and process the results.
    • FALSE Branch: Loops back to the "Wait" node to poll again if the job is still running.
  10. HTTP Request (Download Batch Output File): Downloads the output file containing the processed responses from Azure Blob Storage.
  11. Split Out: Splits the downloaded JSONL output file into individual items, each representing a processed prompt response.
  12. Aggregate: Combines the individual responses into a single collection for further processing or output.
  13. Code: (Placeholder/Example) This node is present in the JSON but not connected, suggesting it might be used for custom logic or data transformation on the final results.
  14. Simple Memory / Chat Memory Manager: (Placeholder/Example) These nodes are present in the JSON but not connected, indicating potential for integration with Langchain memory management if the prompts were part of a conversational AI.

Prerequisites/Requirements

  • Azure Account: With an active Azure OpenAI service and access to the Batch API.
  • Azure OpenAI API Key: For authentication with the Azure OpenAI service.
  • Azure Blob Storage Account: To store input and output files for the Batch API.
  • n8n Credentials: Configured for Azure OpenAI and potentially Azure Blob Storage.

Setup/Usage

  1. Import the workflow: Download the JSON and import it into your n8n instance.
  2. Configure Credentials:
    • Set up an HTTP Request credential for your Azure OpenAI endpoint, including your API key.
    • Ensure your Azure Blob Storage is configured to allow the n8n instance to upload and download files, or integrate a dedicated Blob Storage node if necessary for more complex scenarios (the current workflow uses HTTP Request for Blob interactions).
  3. Update Node Parameters:
    • In the "HTTP Request (Upload Batch Input File)" node, update the URL to your Azure Blob Storage container and ensure the authentication method is correctly configured.
    • In the "HTTP Request (Create Batch Request)" and "HTTP Request (Get Batch Status)" nodes, update the Azure OpenAI endpoint URL and batch API version.
    • Adjust the Wait node's duration as needed based on expected batch processing times.
  4. Customize Prompts: Modify the "Edit Fields (Set)" node to input your actual prompts or replace it with a data source node (e.g., Google Sheets, Database, another API) to dynamically feed prompts into the workflow.
  5. Execute the workflow: Click "Execute workflow" to run it manually, or configure a trigger (e.g., a schedule, webhook) for automated execution.

Related Templates

AI multi-agent executive team for entrepreneurs with Gemini, Perplexity and WhatsApp

This workflow is an AI-powered multi-agent system built for startup founders and small business owners who want to automate decision-making, accountability, research, and communication, all through WhatsApp. The β€œvirtual executive team,” is designed to help small teams to work smarter. This workflow sends you market analysis, market and sales tips, It can also monitor what your competitors are doing using perplexity (Research agent) and help you stay a head, or make better decisions. And when you feeling stuck with your start-up accountability director is creative enough to break the barrier 🎯 Core Features πŸ§‘β€πŸ’Ό 1. President (Super Agent) Acts as the main controller that coordinates all sub-agents. Routes messages, assigns tasks, and ensures workflow synchronization between the AI Directors. πŸ“Š 2. Sales & Marketing Director Uses SerpAPI to search for market opportunities, leads, and trends. Suggests marketing campaigns, keywords, or outreach ideas. Can analyze current engagement metrics to adjust content strategy. πŸ•΅οΈβ€β™€οΈ 3. Business Research Director Powered by Perplexity AI for competitive and market analysis. Monitors competitor moves, social media engagement, and product changes. Provides concise insights to help the founder adapt and stay ahead. ⏰ 4. Accountability Director Keeps the founder and executive team on track. Sends motivational nudges, task reminders, and progress reports. Promotes consistency and discipline β€” key traits for early-stage success. πŸ—“οΈ 5. Executive Secretary Handles scheduling, email drafting, and reminders. Connects with Google Calendar, Gmail, and Sheets through OAuth. Automates follow-ups, meeting summaries, and notifications directly via WhatsApp. πŸ’¬ WhatsApp as the Main Interface Interact naturally with your AI team through WhatsApp Business API. All responses, updates, and summaries are delivered to your chat. Ideal for founders who want to manage operations on the go. βš™οΈ How It Works Trigger: The workflow starts from a WhatsApp Trigger node (via Meta Developer Account). Routing: The President agent analyzes the incoming message and determines which Director should handle it. Processing: Marketing or sales queries go to the Sales & Marketing Director. Research questions are handled by the Business Research Director. Accountability tasks are assigned to the Accountability Director. Scheduling or communication requests are managed by the Secretary. Collaboration: Each sub-agent returns results to the President, who summarizes and sends the reply back via WhatsApp. Memory: Context is maintained between sessions, ensuring personalized and coherent communication. 🧩 Integrations Required Gemini API – for general intelligence and task reasoning Supabase- for RAG and postgres persistent memory Perplexity API – for business and competitor analysis SerpAPI – for market research and opportunity scouting Google OAuth – to connect Sheets, Calendar, and Gmail WhatsApp Business API – for message triggers and responses πŸš€ Benefits Acts like a team of tireless employees available 24/7. Saves time by automating research, reminders, and communication. Enhances accountability and strategy consistency for founders. Keeps operations centralized in a simple WhatsApp interface. 🧰 Setup Steps Create API credentials for: WhatsApp (via Meta Developer Account) Gemini, Perplexity, and SerpAPI Google OAuth (Sheets, Calendar, Gmail) Create a supabase account at supabase Add the credentials in the corresponding n8n nodes. Customize the system prompts for each Director based on your startup’s needs. Activate and start interacting with your virtual executive team on WhatsApp. Use Case You are a small organisation or start-up that can not afford hiring; marketing department, research department and secretar office, then this workflow is for you πŸ’‘ Need Customization? Want to tailor it for your startup or integrate with CRM tools like Notion or HubSpot? You can easily extend the workflow or contact the creator for personalized support. Consider adjusting the system prompt to suite your business

ShadrackBy Shadrack
331

πŸŽ“ How to transform unstructured email data into structured format with AI agent

This workflow automates the process of extracting structured, usable information from unstructured email messages across multiple platforms. It connects directly to Gmail, Outlook, and IMAP accounts, retrieves incoming emails, and sends their content to an AI-powered parsing agent built on OpenAI GPT models. The AI agent analyzes each email, identifies relevant details, and returns a clean JSON structure containing key fields: From – sender’s email address To – recipient’s email address Subject – email subject line Summary – short AI-generated summary of the email body The extracted information is then automatically inserted into an n8n Data Table, creating a structured database of email metadata and summaries ready for indexing, reporting, or integration with other tools. --- Key Benefits βœ… Full Automation: Eliminates manual reading and data entry from incoming emails. βœ… Multi-Source Integration: Handles data from different email providers seamlessly. βœ… AI-Driven Accuracy: Uses advanced language models to interpret complex or unformatted content. βœ… Structured Storage: Creates a standardized, query-ready dataset from previously unstructured text. βœ… Time Efficiency: Processes emails in real time, improving productivity and response speed. *βœ… Scalability: Easily extendable to handle additional sources or extract more data fields. --- How it works This workflow automates the transformation of unstructured email data into a structured, queryable format. It operates through a series of connected steps: Email Triggering: The workflow is initiated by one of three different email triggers (Gmail, Microsoft Outlook, or a generic IMAP account), which constantly monitor for new incoming emails. AI-Powered Parsing & Structuring: When a new email is detected, its raw, unstructured content is passed to a central "Parsing Agent." This agent uses a specified OpenAI language model to intelligently analyze the email text. Data Extraction & Standardization: Following a predefined system prompt, the AI agent extracts key information from the email, such as the sender, recipient, subject, and a generated summary. It then forces the output into a strict JSON structure using a "Structured Output Parser" node, ensuring data consistency. Data Storage: Finally, the clean, structured data (the from, to, subject, and summarize fields) is inserted as a new row into a specified n8n Data Table, creating a searchable and reportable database of email information. --- Set up steps To implement this workflow, follow these configuration steps: Prepare the Data Table: Create a new Data Table within n8n. Define the columns with the following names and string type: From, To, Subject, and Summary. Configure Email Credentials: Set up the credential connections for the email services you wish to use (Gmail OAuth2, Microsoft Outlook OAuth2, and/or IMAP). Ensure the accounts have the necessary permissions to read emails. Configure AI Model Credentials: Set up the OpenAI API credential with a valid API key. The workflow is configured to use the model, but this can be changed in the respective nodes if needed. Connect the Nodes: The workflow canvas is already correctly wired. Visually confirm that the email triggers are connected to the "Parsing Agent," which is connected to the "Insert row" (Data Table) node. Also, ensure the "OpenAI Chat Model" and "Structured Output Parser" are connected to the "Parsing Agent" as its AI model and output parser, respectively. Activate the Workflow: Save the workflow and toggle the "Active" switch to ON. The triggers will begin polling for new emails according to their schedule (e.g., every minute), and the automation will start processing incoming messages. --- Need help customizing? Contact me for consulting and support or add me on Linkedin.

DavideBy Davide
1616

Send WooCommerce discount coupons to customers via WhatsApp using Rapiwa API

Who is this for? This workflow is ideal for WooCommerce store owners who want to automatically send promotional WhatsApp messages to their customers when new coupons are created. It’s designed for marketers and eCommerce managers looking to boost engagement, streamline coupon sharing, and track campaign performance effortlessly through Google Sheets. Overview This workflow listens for WooCommerce coupon creation events (coupon.created) and uses customer billing data to send promotional WhatsApp messages via the Rapiwa API. The flow formats the coupon data, cleans phone numbers, verifies WhatsApp registration with Rapiwa, sends the promotional message when verified, and logs each attempt to Google Sheets (separate sheets for verified/sent and unverified/not sent). What this Workflow Does Listens for new coupon creation events in WooCommerce via the WooCommerce Trigger node Retrieves all customer data from the WooCommerce store Processes customers in batches to control throughput Cleans and formats customer phone numbers for WhatsApp Verifies if phone numbers are valid WhatsApp accounts using Rapiwa API Sends personalized WhatsApp messages with coupon details to verified numbers Logs all activities to Google Sheets for tracking and analysis Handles both verified and unverified numbers appropriately Key Features Automated coupon distribution: Triggers when new coupons are created in WooCommerce Customer data retrieval: Fetches all customer information from WooCommerce Phone number validation: Verifies WhatsApp numbers before sending messages Personalized messaging: Includes customer name and coupon details in messages Dual logging system: Tracks both successful and failed message attempts Rate limiting: Uses batching and wait nodes to prevent API overload Data formatting: Structures coupon information for consistent messaging Google Sheet Column Structure A Google Sheet formatted like this ➀ sample The workflow uses a Google Sheet with the following columns to track coupon distribution: | name | number | email | address1 | couponCode | couponTitle | couponType | couponAmount | createDate | expireDate | validity | status | | ----------- | ------------- | --------------------------------------------------- | --------- | ---------- | -------------- | ---------- | ------------ | ------------------- | ------------------- | ---------- | -------- | | Abdul Mannan | 8801322827799 | contact@spagreen.net | mirpur-DOHS | 62dhryst | eid offer 2025 | percent | 20.00 | 2025-09-11 06:08:02 | 2025-09-15 00:00:00 | unverified | not sent | | Abdul Mannan | 8801322827799 | contact@spagreen.net | mirpur-DOHS | 62dhryst | eid offer 2025 | percent | 20.00 | 2025-09-11 06:08:02 | 2025-09-15 00:00:00 | verified | sent | Requirements n8n instance with the following nodes: WooCommerce Trigger, Code, SplitInBatches, HTTP Request, IF, Google Sheets, Wait WooCommerce store with API access Rapiwa account with API access for WhatsApp verification and messaging Google account with Sheets access Customer phone numbers in WooCommerce (stored in billing.phone field) Important Notes Phone Number Format: The workflow cleans phone numbers by removing all non-digit characters. Ensure your WooCommerce phone numbers are in a compatible format. API Rate Limits: Rapiwa and WooCommerce APIs have rate limits. Adjust batch sizes and wait times accordingly. Data Privacy: Ensure compliance with data protection regulations when sending marketing messages. Error Handling: The workflow logs unverified numbers but doesn't have extensive error handling. Consider adding error notifications for failed API calls. Message Content: The current message template references the first coupon only (coupons[0]). Adjust if you need to handle multiple coupons. Useful Links Dashboard: https://app.rapiwa.com Official Website: https://rapiwa.com Documentation: https://docs.rapiwa.com Support & Help WhatsApp: Chat on WhatsApp Discord: SpaGreen Community Facebook Group: SpaGreen Support Website: https://spagreen.net Developer Portfolio: Codecanyon SpaGreen

RapiwaBy Rapiwa
110