2 ready-to-build workflows

AI agent workflows for Aviation & airlines

Rebook disrupted passengers, log baggage claims and answer check-in questions — in the passenger's own language, before the queue forms.

Each recipe below is expressed only in VegaDūta's real workflow building blocks — Trigger, Agent, Knowledge, Condition, Approval, Output, Tool (MCP), Voice, Device, Loop, Code and Parallel — so it maps 1:1 to something you can assemble in the Workflow designer. Consequential actions always pass a human Approval step.

1. Flight-disruption rebooking, proactively and multilingually

A flight cancels or slips and the ops desk scrambles: staff pull the affected PNRs, work out alternatives, then call or email each passenger one by one — so travellers hear about it late, in one language, after they're already at the gate.

Trigger: Webhook (disruption event from ops / PSS)

How the workflow runs

  1. Trigger

    Disruption is posted. A Webhook trigger receives the cancel/delay event with the affected flight and passenger PNRs — pushed from your ops board / PSS (no first-party connector, it feeds in via Webhook).

  2. Loop

    Per affected passenger. A Loop node iterates the PNR list so each traveller gets an individually tailored message, not one blast.

  3. Agent

    Draft rebooking options. An Agent node writes the disruption notice and the available alternatives in the passenger's language, grounded in fare/rebooking rules so it never offers something the fare doesn't allow.

  4. Output

    Reach the passenger. An Output node sends it on WhatsApp/SMS, or speaks it on a Voice call synthesized with Sarvam (Indian languages) or ElevenLabs — whatever channel the PNR carries.

  5. Condition

    Rebook or claim?. A Condition node routes the reply: accept an offered flight (write it back to the PSS) versus request a refund or compensation.

  6. Approval

    Refund / compensation pauses for a human. Any refund or disruption-compensation routes to an Approval node before a rupee moves — an accepted involuntary rebooking within policy proceeds, but money decisions stay with a person.

Channels & connectors

  • Webhook
  • WhatsApp
  • SMS
  • Voice / Call
  • Sarvam (22+ Indian languages)
  • ElevenLabs
  • Knowledge base
  • Tool (MCP → PSS/reservations)
  • Approval / HITL

Outcome

Every affected passenger is told about the disruption and offered real, policy-valid alternatives within minutes — in their own language — while refunds and compensation stay human-approved.

Why it helps

The value is speed and reach: reaching every PNR at once, in the traveller's language, beats a serial phone tree that only clears a fraction of the list before the gate closes.

Build spec

1 agent1 rebooking agent runs inside the Loop; the notify, routing, PSS write and refund approval are workflow nodes.

System prompt (paste-ready)

You are a flight-disruption assistant for {{airline}}. For each affected passenger {pnr, name, flight, disruption_type, language, alternatives[]}, write a clear, calm notice in the passenger's language explaining what happened and listing ONLY the alternatives supplied in the input — never invent a flight, time, or upgrade. State refund/compensation eligibility only as it appears in the rebooking policy from Knowledge; never promise a payout. If the passenger asks for a refund or compensation, output intent=REFUND for the workflow to route to a human — do not confirm any refund yourself.

MCP connectors

  • PSS / reservations — via a Tool (MCP) node (no first-party connector), for the rebooking write
  • Disruption/ops feed — inbound via Webhook trigger
  • WhatsApp / SMS / Voice — notify channels

Built-in tools

  • knowledge_search (fare rules + involuntary-reroute / compensation policy)
  • http_request (fetch PNR + alternatives detail)

Guardrails

  • Grounded-only: alternatives and eligibility come from the input + policy Knowledge — the agent never invents a flight, time, or payout
  • Every refund or compensation is Approval-gated — the agent may state eligibility but never confirms money; only a human approves the payout
  • Idempotent per PNR (keyed by pnr + disruption id) so a re-run never double-notifies or double-rebooks a passenger

Cost strategy

The notify agent runs once per affected PNR, so on a mass disruption its model choice dominates total cost — keep it on the economy tier; the task is grounded templating, not reasoning, so premium buys nothing. Sarvam/ElevenLabs synthesis is billed only on the Voice legs, not for WhatsApp/SMS passengers. Run the Loop in Parallel batches for wall-clock speed without changing per-passenger cost.

Output & delivery

The Loop maps the agent over every affected PNR → the notice + policy-valid alternatives are sent on WhatsApp/SMS or spoken via Sarvam/ElevenLabs → the Condition routes accepted rebookings to a Tool node that writes them to the PSS, and any refund/compensation to a human Approval before it's issued.

2. Baggage-claim & complaint intake, resolved end to end

A bag is delayed or damaged and the passenger has to find a desk, wait, and dictate a report while an agent types a PIR by hand — then chases status and works out any compensation manually, in business hours, in one language.

Trigger: WhatsApp / Voice (passenger reports)

How the workflow runs

  1. Trigger

    Passenger reports the issue. A WhatsApp or Voice trigger starts the flow on any inbound baggage complaint, day or night.

  2. Agent

    Capture the claim. An Agent node collects the PNR, bag-tag number and a description of the problem, working in the passenger's language and confirming the details back.

  3. Tool (MCP)

    Check baggage status. A Tool (MCP) node looks up the live tracing status in your DCS/baggage system — no first-party connector, MCP calls yours.

  4. Knowledge

    Ground the entitlement. A Knowledge node grounds any interim-expense or compensation entitlement strictly in the airline's baggage policy, so nothing is over-promised.

  5. Condition

    Traced or compensable?. A Condition node branches: a located bag gets a delivery ETA; a lost/damaged case routes toward a compensation claim.

  6. Approval

    Compensation pauses for a human. Any interim-expense or compensation payout routes to an Approval node — the intake is instant, the money decision stays with a person.

Channels & connectors

  • WhatsApp
  • Voice / Call
  • Sarvam (22+ Indian languages)
  • ElevenLabs
  • Tool (MCP → DCS/baggage)
  • Knowledge base
  • Approval / HITL

Outcome

Every baggage report is captured cleanly, checked against live tracing status, and moved toward resolution — with compensation always human-approved.

Why it helps

Removes the manual PIR typing and the desk queue: the passenger self-reports on a channel they already use, and a human is spent only on the payout decision, not the data entry.

Build spec

1 agent1 intake agent handles the conversation; the baggage lookup, routing and compensation approval are workflow nodes.

System prompt (paste-ready)

You are a baggage-claim intake assistant for {{airline}}. From the passenger's message, capture strict JSON {pnr, bag_tag, issue_type: DELAYED|DAMAGED|LOST, description, contact, language}. Confirm the captured details back before filing. Call the tracing tool and relay the status exactly as returned — never guess a location, ETA, or that a bag is found. State compensation or interim-expense eligibility only as the baggage policy in Knowledge allows, and never confirm a payout — output issue_type so the workflow can route compensable cases to a human.

MCP connectors

  • DCS / baggage tracing system — via a Tool (MCP) node (no first-party connector)
  • WhatsApp / Voice — intake channel

Built-in tools

  • knowledge_search (baggage / interim-expense / compensation policy)
  • http_request (open + read the PIR / tracing record)

Guardrails

  • Status and ETAs are read from the DCS only — the agent never guesses a bag's location or that it has been found
  • Every interim-expense or compensation payout is Approval-gated — the agent states policy eligibility but never confirms money
  • Scope-locked to the reporting passenger's own PNR + bag tag — the tool can't read other travellers' records

Cost strategy

One intake agent per conversation on the economy/standard tier — capturing a claim and reading a tracing record is not reasoning-heavy, so no premium tier is needed. Sarvam/ElevenLabs synthesis is billed only when the passenger is on a Voice call or an Indian-language leg, not for text chat. A per-conversation tool-call cap keeps a stuck tracing lookup from racking up API cost.

Output & delivery

The agent files a clean PIR from the captured JSON → a Tool node reads live tracing status from the DCS → the Condition gives a located bag a delivery ETA and routes lost/damaged cases to a human Approval for any compensation, confirmed back to the passenger on their channel.

Related industries

Build one of these in minutes

The sandbox gives you a live agent workspace — no account, no card. Or head back to the full catalogue and compare patterns across every industry.

See how VegaDūta compares to n8n, Dify and BotpressWhy VegaDūta's architectureEstimate your WhatsApp API costs