Latest releases
v2026.09.11.1FixedLatestTest no longer fails on a trigger's own data
Testing a workflow whose trigger had never fired for real (a brand-new Slash Command, for example) failed at the first step that needed the trigger's own data, such as replying to it.
- Editor
A fresh trigger now has example data to Test with
Test ran the trigger with nothing to give it, so an action needing the trigger's own reference (like the interaction to reply to) failed with "Target unresolved". Test now fills in example data from the trigger, the same way a single node already does.
v2026.09.06.1FixedNo Discord bot no longer blocks unrelated nodes
An account with no connected Discord bot got "Your Discord bot is not connected" when testing or running anything at all, including nodes that never touch Discord.
- Editor
Testing a node stops asking for a bot it does not need
Preparing a run checked the Discord connection up front, so an HTTP request, a schedule or a data node failed with a Discord error. The connection is now resolved only when a step actually reaches Discord.
- Discord
The message still appears when it is the real problem
A Discord step run without a connected bot reports exactly the same guidance as before, pointing at Settings, My Discord Bot.
v2026.09.05.4FixedReplying to a join notice no longer kills the run
Discord refuses to attach a reply to its own system messages, and that refusal was taking the whole message down with it. The message is now posted without the reply.
- Discord
A system message can be answered, just not replied to
Reply to Author Message aimed at a join, boost or pin notice made Discord reject the entire send, so nothing was posted and the run was dead-lettered. The message now goes out without the reply arrow.
- Discord
Only the reply is dropped, never a real mistake
The retry happens only when the reply reference is the single thing Discord objected to. If the embed or a button is also wrong, the error still surfaces instead of quietly resending broken content.
v2026.09.05.3NewA component library inside Build
The reusable components you save now live under Build, where you drag them onto the canvas like any other block, and remove the ones you no longer want.
- Editor
Your components sit in Build
Build lists the components you made — private drafts included — plus anything you kept from the community. Drag one onto the canvas and it lands where you drop it, or click to add it below the graph.
- Workshop
Keep a component instead of importing it once
A community component now offers Keep beside Import. Keeping it puts it in your library, so it is in Build the next time you build anything, not just this workflow.
- Editor
Dropping a component no longer takes over the panel
Inserting a component leaves you in Build with the library still open. A whole template still opens the setup list, because finishing it is the next task; a building block is not.
- Workshop
The built-in strip left the Workshop panel
The Workshop panel shows community work only. The ready-made automations stay where they were, in Build and on the empty canvas.
v2026.09.05.2ImprovedThe editor is the same black as the rest of Noria
The workflow editor carried a faintly violet near-black of its own, so opening it after the dashboard looked like changing theme. Its surfaces now use the site palette.
- Editor
One near-black across the product
The canvas, panels, toolbar, menus and node cards were tinted a few points toward blue. They now sit on the same neutral black as the dashboard and the public site.
- Editor
Depth kept, tint dropped
Every surface keeps the brightness it had, so the canvas still reads as deeper than the panels and the panels deeper than the nodes. Only the colour cast changed.
- Editor
Menus and popovers match too
Dropdowns, tooltips and the command palette opened from the editor share the dashboard popover colour instead of a bluer one of their own.
v2026.09.05.1FixedEmbed editor fits the panel it is in
The embed editor now lays its rows out from the width it actually has, so URL boxes in a narrow panel keep a field you can type in.
- Editor
Embed rows follow the panel, not the screen
The embed editor decided between one and two columns from the screen width, so on any desktop it stayed two-up even in a 400px panel. It now measures the panel itself.
- Bot Hub
Image, thumbnail and author URLs are typeable again
Under Messages, editing an embed left the URL boxes with no room after the protocol selector and the variable buttons. They now stack and keep a usable field.
- Bot Hub
A wider message inspector
The panel beside the conversation grew from 340 to 400 pixels, the width an embed needs to show its title and its colour on one row.
v2026.09.04.1ImprovedBot Hub rebuilt on the new design
The Bot Hub adopts the approved design: one identity row, an underlined destination strip, and an Overview built from live surfaces, a next move, a health dial and trended metrics.
- Bot Hub
One identity row instead of two
The bot avatar carries a live dot, the name carries its online state, and the server picker, workflow state and the Find, Send as bot and Workflow Assist actions all sit on the same line.
- Bot Hub
Destinations are an underlined strip
The nine destinations replaced the pill grid with an underlined strip where each one owns a colour, so the active destination is readable at a glance.
- Bot Hub
Counts appear only where something waits
Assist shows the number of blocking canvas problems and Access the number of permissions the selected server is missing. No badge appears when there is nothing to fix.
- Overview
Live surfaces, one next move and a health dial
Overview opens on four live surfaces (gateway, bot token, voice, triggers), the single most useful next move beside a health dial, four metrics that carry their own trend line, and six one-tap actions.
- Bot Hub
Every tab shares the new surfaces
Cards, lists, metrics, buttons, search fields and the live feed were re-pointed at the design geometry, so Live, Runs, Messages, Assist, Memory, Access, Capabilities and Analytics all read as one product.
v2026.09.03.3NewWorkshop templates that fit your server
Shared templates no longer carry the author's Discord ids: they carry names and questions, and an import fills them from your own server.
- Workshop
Publishing keeps names, not ids
Every server, channel, category, role or member id is stripped when a template is saved, including mentions inside message text, which become #channel-name or @role-name. For each one the author can write a question for the importer.
- Workshop
Importing pre-fills by name
An imported template lands on your default server, and any channel, category or role with the same name as on the author's server is selected automatically. Mentions in text become real mentions again.
- Setup panel
What is left opens by itself
After an import, the To finish list opens with only the settings that could not be matched, each explained with the author's question and the name it had on their server. The preview says how many choices an import will ask for.
v2026.09.03.2ImprovedSteadier node cards and quieter tooltips
Node cards keep their full layout at every zoom level, and tooltips read as flat labels instead of grey speech bubbles.
- Canvas
Zooming out no longer shrinks nodes into pills
A node card keeps its title, subtitle and ports at every zoom level. Only the background grid and branch chips still simplify when the view is far away; the compact chip remains available through a manual collapse or the essential view.
- Editor
Tooltips are flat labels
Hover labels on rail, toolbar and inspector controls now use a solid editor-coloured surface with a hairline border and no arrow, gradient or blur.
- Memory
A new memory is shared by default
Creating a memory called "test" now produces the key test. "Everyone shares it" is the default scope; splitting the value per channel, server or member is an explicit choice in the same form.
v2026.09.03.1FixedAuto-fill, live trigger health and dropdown fixes
Inserted steps only auto-fill required settings, live Twitch triggers report their real state, and every editor dropdown uses the editor palette.
- Editor
Auto-fill stops at required settings
A step inserted after another one now only receives values for settings that are required. Optional settings such as the Send Message poll question or "Reply to" stay empty, so a poll is no longer switched on by accident.
- Live triggers
Twitch triggers say what is really happening
A trigger that has just been added shows as registering instead of needing attention. When registration fails, the health panel quotes the reason (missing permission, no connected account, a Twitch refusal) and jumps to the trigger.
- Editor
Dropdowns and menus match the editor
Select menus, tooltips and native option lists opened from the editor now use the editor background instead of the site grey, including menus that render outside the canvas.
- Data panel
Button and menu values are listed as a separate source
Values produced when someone clicks a button or picks a menu option on a message appear under their own "separate run" group, apart from the message outputs, in the Data panel and variable pickers.
- Inspector
Sections and switches explain themselves
Every Discord message, embed, channel and moderation section now opens with a one-line explanation, and switches such as Text-to-Speech, NSFW, Locked, Case sensitive or Pretty print describe their effect.
- Sidebar
Templates is now Workshop
The editor sidebar entry that opens community templates is named Workshop, matching the panel it opens.
Release archive
v2026.09.02.3ImprovedDiscord pack on new accounts
Discord workflows are ready to build immediately on every newly created account.
- Account setup
Discord starts installed and active
New accounts receive the Discord pack during account creation, so Discord triggers and actions appear in the editor without a separate trip to Connections.
v2026.09.02.2ImprovedEditor & Bot Hub polish
Failures, pending states and keyboard actions now communicate their status consistently across the editor and Bot Hub.
- Bot Hub
Loading failures are no longer disguised as empty data
Tabs now render an explicit error state when their request fails, separating a network or API problem from a genuinely empty execution, message or server list.
- Accessibility
Important actions announce their result
Save, publish, retry and capability changes now send status updates to screen readers instead of relying only on a toast or visual state change.
- Test scenarios
Deletion is confirmed and keyboard reachable
Deleting a saved scenario now requires confirmation, and every row action can be reached and activated without a pointer.
- Editor dialogs
Dialog controls share the same interaction states
Publish, draft recovery and conflict actions now use consistent hover and focus feedback, while Quick Edit keeps keyboard focus inside the open dialog.
- Workflow health
Pending checks visibly remain in progress
Health checks display a spinner until a result arrives, preventing an unfinished check from looking idle or complete.
- Interface copy
Step counts use the correct singular form
Health, Publish and Bot Hub Overview now display “1 step” while keeping the plural form for every other count.
v2026.09.02.1FixedURL fields
Complete URLs can be pasted into split protocol-and-address fields without manual cleanup.
- Editor fields
Pasted protocols are detected automatically
Pasting an address beginning with http:// or https:// selects the matching protocol and stores only the remaining address, avoiding duplicate-protocol validation errors.
v2026.09.01.2FixedMessage Workshop
Reusing a saved message no longer carries unsupported poll settings into incompatible Discord actions.
- Message Workshop
Saved polls stay on actions that support them
When a saved message is loaded into a reply or another action that cannot publish polls, its text and supported message fields are copied while the poll configuration is omitted.
v2026.09.01.1NewBot Hub operations
Bot Hub becomes the operational control room for observing, diagnosing and acting through the workflow bot.
- Live Activity
One chronological feed for bot and workflow activity
Discord events, workflow execution traces, capability suppressions and messages sent by the bot are merged into a single stream with their source and timestamp.
- Workflow Assist
Runtime evidence links back to the editor
Canvas checks, estimated change impact and observed failures provide shortcuts to the exact workflow step or field that needs attention.
- Permissions
Channel failures identify the blocking overwrite
Permission Solver evaluates the selected server and channel, then names the Discord permission or role overwrite preventing the bot action.
- Messages
Operate the bot account directly from Noria
Users can reply, react, pin, create a thread or copy an existing message without assembling a temporary workflow for the operation.
- Analytics
Operational patterns are visible beyond individual runs
The Hub aggregates recurring failures, P95 execution latency, trigger volume and audited bot actions to expose problems that repeat over time.
- Navigation
Bot Hub has its own command search
Ctrl+K searches Hub tools plus recent execution and message identifiers, then opens the matching operational view directly.
v2026.08.31.5NewAuto Responder
A ready-made Discord automation can answer recurring phrases without building matching, cooldown and response branches by hand.
- Matching
Five matching strategies cover simple and advanced phrases
Choose contains, exact phrase, starts with, whole word or regular expression matching, with optional case sensitivity.
- Responses
Answer publicly, privately or with a reaction
The action can post in the source channel, send a direct message or react to the triggering message; multiple text answers are selected at random.
- Targeting
Limit where and for whom the responder runs
Channel allow-lists and exempt roles keep the responder out of unrelated conversations and prevent selected members from triggering it.
- Rate control
Cooldowns prevent response loops and channel spam
A 10-second cooldown is enabled by default and can be scoped per channel, member or entire server; bot-authored messages are ignored by default.
- Variation
Probability controls make occasional responses possible
A chance percentage can intentionally skip matches, enabling rare easter eggs or lightweight ambient reactions without extra condition nodes.
v2026.08.31.4NewWelcome & Goodbye
One ready-made action now handles member arrivals and departures from the Discord Member trigger.
- Welcome messages
Greet arrivals publicly, privately or both
Configure a welcome channel, a direct message, or both; members with closed DMs do not prevent the public greeting from being posted.
- Roles
Starting roles are assigned during the same arrival flow
One or more selected Discord roles can be granted as soon as the member joins, without adding separate role-assignment steps.
- Presentation
Welcome messages can use a branded embed
Switch the greeting to an embed with a custom title, banner image and the joining member’s avatar while retaining the configured welcome text.
- Departures
Goodbyes and welcome cleanup share the same action
The Member trigger selects the join or leave path automatically; on departure it can post a goodbye and remove that member’s earlier welcome message.
v2026.08.31.3ImprovedSelf Role panels can cap how many roles a member takes
Role panels can enforce a configurable maximum across the roles offered by that panel.
- Self Role
A per-panel role limit is now enforceable
Set “Most roles a member may hold” to a positive number; dropdowns prevent extra selections directly, while button panels explain that the member must remove a role first.
- Compatibility
Existing exclusive panels keep their single-role behaviour
The new maximum is ignored when “Only one role at a time” is enabled, because that setting already enforces a stricter limit of one.
v2026.08.31.2ImprovedGiveaways can set entry conditions
Giveaway eligibility and winning odds can now reflect account trust and community membership.
- Eligibility
Block newly created or newly joined accounts
Set a minimum Discord account age and a separate minimum number of days on the server; zero keeps either restriction disabled.
- Bonus odds
Selected roles can receive weighted entries
Members holding any configured bonus role receive the chosen number of entries, increasing their odds while still preventing the same member from winning more than one prize.
v2026.08.31.1ImprovedWord Filter and Leveling grow up
Moderation can escalate repeat offences, while leveling gains role-aware XP, rank output and cleaner rank-role progression.
- Word Filter
Repeat offences can escalate automatically
Optional strike counting uses a rolling expiry window and can keep timeouts flat, multiply them by strike count or double them before configured kick and ban thresholds.
- Word Filter
Disguised spellings are normalised before matching
Case, spacing, punctuation and common substitutions such as 4 for “a” are normalised, while an allow-list prevents legitimate containing words from being punished.
- Word Filter
Warnings have independent channel and DM delivery
A warning can be posted in the channel, sent privately, or both; channel warnings can be deleted after a configured delay or left in place.
- Leveling
XP can depend on a member’s roles
Configured roles can multiply earned XP, other roles can block XP entirely, and excluded channels continue as successful no-op executions.
- Leveling
Rank roles can replace one another instead of stacking
On level-up, the action can remove earlier configured rank roles before granting the new one, keeping a member’s visible rank unambiguous.
- Leveling
Current leaderboard rank is available in messages and output
The action returns rank and resolves {{rank}} inside level-up announcements, so the message can show both the new level and server position.
v2026.08.30.2ImprovedOne less screen in workflow settings
- Workflow settings drop the Environments tab. Values already in use keep resolving.
v2026.08.30.1ImprovedServer icons in the Discord pickers
- Discord server pickers show each server’s icon next to its name.
- The Server field’s Automatic summary shows the icon of the server it will use.
v2026.08.28.1ImprovedThe dashboard says less
- Sidebar areas are now Automation, Integrations and Account. Music Bot moved out of Account.
- Overview sits on its own above the areas, and help links moved below a divider.
- Connect AI is now AI Assistants: the MCP address and the setup steps are the whole page.
- Page headers drop the subtitles that only repeated the title.
- Empty states name what is missing and the one action to take.
v2026.08.25.5ImprovedThe dashboard reads as one product
- The sidebar now has three areas — Build, Operate, Account — and every page header names its area.
- One vocabulary everywhere: workflows and runs. Solutions is now called Templates.
- My Discord Bot lives under Connections; the old Settings link redirects there.
- Ctrl + K search finds your workflows by name and jumps straight into the editor.
- Active workflows whose bot is offline now say so — amber dot, banner, and a link to reconnect.
v2026.08.25.4NewFind, tag and batch-manage workflows
- Cards show run health: a failed last run colours its timestamp and marks the sparkline.
- Tags: edit them from a card menu, see them on cards, filter the list by tag.
- Select several workflows and activate, pause, tag or delete them in one go.
- An Error filter appears with a count whenever a workflow is in the error state.
- Filters, search and page live in the URL, so a reload or a shared link keeps them.
v2026.08.25.3ImprovedThe editor speaks your language
- Step search understands goals and slang: "purge", "mute" or "welcome" find the right steps.
- Zero results is no longer a dead end — you get per-word matches and typo rescue instead.
- Popular triggers and the five ready-made automations now sit at the top of the Steps panel.
- Wires show their direction, a selected step’s wires stand out, and edge ends can be re-dragged.
- Right-click keeps a multi-selection, paste lands at your cursor, and N adds a step.
v2026.08.25.2NewDebugging closes the loop
- Open any run from Operations straight in the editor, loaded and replayable on the canvas.
- Run details in Operations explain each step in plain language, with a Detailed toggle.
- Test scenarios are saved with the workflow and shared — seed one from real trigger data.
- A live workflow failing repeatedly shows one top-bar pill instead of reopening the modal.
- An in-flight run can be stopped from the top bar.
v2026.08.25.1ImprovedA smoother start, on either platform
- The setup wizard now has a Twitch path — connect your channel and test a chat command live.
- Setup progress is one checklist everywhere, and the Overview banner can be dismissed.
- Templates browse by platform and goal, with one search across official and community.
- Docs sidebar groups collapse, and comparison pages moved out of the guides.
- Every pricing tier states its bot and platform scope.
v2026.08.20.3FixedExecution-limit emails were quoting the wrong number
- The quota warning now uses the limit your plan actually gets, including the free beta.
- It could warn about an older, lower limit that nothing enforced — some of you saw 2,000.
- Enterprise accounts have unlimited executions and are never sent this email.
- The beta now raises your limits, never lowers them: an Enterprise plan keeps its own.
v2026.08.20.2FixedTwo fixes when adding a Discord step
- A newly added Discord step no longer warns that it needs re-checking after a breaking update.
- "Answer in the channel the message came from" now fills the channel the message arrived in.
- It used to fill the first channel mentioned inside the message — a different channel entirely.
v2026.08.20.1NewEnvironments: one workflow, three sets of values
- Settings has an Environments tab: separate values for development, staging and production.
- Steps read them as {{env.NAME}} and {{resources.NAME}} — switch target without editing a step.
- It scans your steps, lists every value they need, and marks the ones an environment is missing.
- Each environment carries its own missing count, so a gap in production shows from development.
- YouTube no longer reads "coming soon" on Integrations — its triggers need no account link.
v2026.08.18.2NewManage your Discord bot without leaving Noria
- Rename your bot and change its avatar from Settings — no more trip to the Developer Portal.
- Live health: gateway latency, uptime, servers and members the bot currently knows.
- Each server now says what the bot can actually do there, and names the permission it is missing.
- It also warns when roles sit above the bot, the reason "give a role" fails on a bot that looks fine.
v2026.08.18.1ImprovedBuild a workflow without hunting for anything
- Press Tab on a step to add the next one, then land straight on the setting that still needs a value.
- A new "To finish" panel lists what the workflow still needs — pick servers, channels and roles right there.
- The step picker offers ready-made variants, such as replying in the same channel, not just the bare action.
- Settings proposes a name built from your own steps, so a workflow stops being called "Untitled".
- An active workflow says "Listening" while it waits for its trigger, instead of "Not checked yet".
v2026.08.17.1NewSee what your workflow produces before it ever runs
- Every step now shows example values, so the message preview reads like a real message from the first minute.
- Test a step on a brand-new workflow: missing input is filled with examples, and labelled as such.
- A new step arrives with its settings already pointed at the right value from an earlier step.
- Each step suggests what usually comes next, on the canvas and in the Add step picker.
v2026.08.16.4FixedSteps that need "at least one" say so
- Send Embed, Edit Message, Update Role and Set Channel Permission flag an empty setup in the editor now.
- Same for Pause Invites, Stream Info, Chat Settings and Channel Point Reward, instead of failing at launch.
v2026.08.16.3ImprovedSteps arrive ready to run
- Condition, Switch, Split Text, Extract, Regex and Cooldown open pre-filled with the value they usually read.
- Merge starts from two empty sets, Schedule from weekdays at 9am, and YouTube steps already know which parts to fetch.
- New steps no longer carry settings belonging to operations they do not use.
v2026.08.16.2FixedScheduled event settings say what they need
- Create Scheduled Event marks End time and Location as required as soon as you pick External.
- Voice channel is marked the same way on a Voice event, instead of only failing at publish.
v2026.08.16.1FixedWrong choices caught before publishing
- A setting holding a value that is not one of its choices is now flagged in the editor, not at launch.
v2026.08.15.8FixedOne-click reply fix
- Adding a slash command reply from the suggested fix no longer leaves the step missing its interaction.
v2026.08.15.7FixedSaved memories show as chosen
- A memory used by only one step now shows its kind and appears selected instead of looking unset.
v2026.08.15.6FixedTicket welcome messages
- New tickets now show their welcome message and control buttons on bots without Administrator.
v2026.08.15.5ImprovedLogic and data nodes are chosen by goal
- Logic & Flow now starts with five goal cards instead of nine technical nodes.
- Values & Memory now starts with Store data, Get data and Create a value instead of 16 separate nodes.
- Every choice still creates the same compatible node type, so existing workflows keep working.
v2026.08.15.4NewUnsaved workflow changes can survive a crash
- Unsaved edits are kept in a local recovery copy and offered back when you reopen the workflow.
- Recovery never overwrites the saved version — you choose which one wins.
- The copy is scoped to your account, cleared on save, and expires after 30 days.
v2026.08.15.3ImprovedClicking Run during a test no longer does nothing
- Test and Run now queue while another run is in progress, instead of doing nothing.
- A “Test queued” pill shows the waiting run and cancels it.
- One run waits at a time, and it is dropped if you reload the page.
v2026.08.15.2FixedNo more “your bot is not connected” right after a restart
- Runs no longer fail with “Your Discord bot is not connected” while bots are still reconnecting after a restart.
- A run waits for your bot to come online. A genuinely disconnected bot still reports it.
v2026.08.15.1ImprovedFour Discord settings stopped asking you to paste IDs
- Set and Reset Channel Permission now use a role picker or a member picker instead of a pasted ID.
- Remove Reaction, Ban Multiple Members and Preview Inactive Members gained proper pickers.
- Existing workflows keep their targets, including ones already running.
- Fields that never inherit from the trigger no longer offer “Auto”.
v2026.08.14.6FixedThe settings panel stops contradicting itself
- Required settings no longer sit under “Optional”. Expect new asterisks on steps that were always incomplete.
- Step completion is counted in one place — the footer and the side rail can no longer disagree.
- A collapsed section reports what is missing instead of “Not configured”.
- 59 settings had help text that was never displayed anywhere. It now shows.
- A step with no settings no longer shows a Reliability section.
- Triggers no longer ask what to do if they fail. Other steps start with two plain choices.
v2026.08.14.5ImprovedThe step library is sorted by what you want to do
- Ready-made Discord automations now sit at the top of the library instead of under “Other”.
- Discord and Twitch events are grouped by intent instead of one undivided list.
- No step was renamed and nothing you already built changed.
v2026.08.14.4ImprovedSettings now say what to put in them, not what type they are
- Settings are named after what to put in them: “Array (expression)” is now “List to repeat over”.
- “Args (raw)” is now “Text after the command”, and “Interaction token” is now “Reply pass”.
- The advanced condition field “Expression” is now “Formula”.
- Available Data type badges read “GROUP OF VALUES” and “ANYTHING” instead of “OBJECT” and “ANY”.
- “Web & API” is now “Other tools”, and server-event actions are grouped under “Scheduled events”.
v2026.08.14.3FixedRole conditions actually work now — and Test finally has a button
- Conditions like “has any of these roles”, “has none of these roles” and “is one of” never worked once turned into a written expression: the roles you picked were dropped, so the step always took the same branch — silently, with no error anywhere. They compare properly now.
- If you built one of those conditions before today, the roles you chose were never saved into it and can’t be recovered. The editor now flags each one with “This condition can never change its answer” so you can open it and pick them again — nothing is changed behind your back.
- New Test button in the toolbar. Running your workflow safely used to be hidden behind a keyboard shortcut, so the only obvious button on screen was the one that puts it live.
- The step library and the variable list stopped re-sorting themselves alphabetically. “Send Message” was 17th out of 18 in its own section, and the variable you use most was buried under things like arg_1 and attachment_count.
- A step pointing at a channel or role you deleted no longer pretends to be fine. It used to show a leftover ID, say “Ready”, and then do nothing when it ran. You now get a warning naming the setting — and for a list of roles, exactly which ones are gone.
- Problems are written in the same words as the rest of the app. It used to answer with “Ephemeral”, “edge”, “upstream” and “custom_id” — words that appear nowhere in the interface — at the exact moment you were stuck. It now says “Private reply”, “connection”, “a step that runs before this one”.
- You no longer need to write “trigger.” in front of anything. The app was teaching that habit through its own examples, and then flagging it as unknown — the examples are fixed, and if you type it anyway it tells you plainly to drop the prefix.
v2026.08.14.2NewWe now tell you when your bot lacks a Discord permission — before the run fails
- The most common way a correct workflow fails is Discord refusing it: your bot is in the server, its token is fine, but its role can't do the thing. That only ever showed up afterwards, as a failed run saying "The bot is missing a permission for this action".
- The editor now checks it while you build. A step that needs a permission your bot doesn't have gets a warning naming the exact permission — "Manage Roles", "Ban Members" — and telling you where to grant it.
- Channel overrides are covered too: a bot allowed to post server-wide but denied in the one channel your step targets is flagged, and the warning points at that channel field.
- It is a warning, never a blocker — you can still save and activate. Grant the permission in Discord and it clears on its own.
- Nothing is guessed: if your bot is offline, isn't in that server, or the server/channel comes from a {{variable}}, the editor stays quiet rather than inventing a problem.
v2026.08.14.1ImprovedEvery error now names the setting that’s wrong
- The “Can’t activate yet” dialog used to tell you which step was broken and leave you to find the bad option among a dozen fields. Each row now shows the exact setting — “Message › Content” — grouped under its step, with the full explanation, and clicking it opens that field.
- The Problems panel shows the same setting path on every problem it lists, so a warning about a step with fourteen options tells you which one it means.
- Hovering the red badge on a step now reads “Blocking: Channel and Message” instead of “1 error”.
- The Config panel’s red banner lists the offending settings as buttons — click one to jump straight to it — and stops calling a filled-but-invalid setting “missing”.
- Testing a workflow that can’t run names the setting it opened for you, and the field it jumps to now stays highlighted long enough to actually see it: the highlight used to finish playing while the panel was still scrolling towards it.
v2026.08.12.2NewEmails that look like Noria — and a new alert when your bot goes down
- New alert: if your Discord bot’s token is revoked or it goes offline, you get an email. Until it’s fixed every Discord step on your account is paused, and Discord itself tells you nothing — this does.
- Every email was redesigned to match the app: same colours, same tone, readable in Outlook and Gmail, with a plain-text version so it stops landing in spam. The sign-in email was still using the colours from before the Noria rebrand.
- New optional weekly recap: a Monday summary of your runs, failures and busiest workflow. It’s off unless you turn it on, and weeks with no activity are skipped instead of sending an empty report.
- Email preferences moved into Settings, split between alerts about your account (on by default) and optional emails (opt-in only). Every optional email has a one-click unsubscribe that never touches your failure alerts.
v2026.08.12.1FixedAuto-Update actually edits, and object data unfolds
- “Auto-Update (edit last message)” on Send Message posted a brand-new message every run instead of editing the previous one — the option had no effect at all. It now edits the message that step last posted, for the 24 hours the setting advertises, and falls back to posting a new one if that message was deleted.
- Data that contains other data — an HTTP response body, a nested object — now unfolds in the Data panel and the variable picker: click the arrow on a row to see exactly what is inside it, instead of only being able to copy the parent.
- Steps that fill in their own values (Support Tickets, Giveaway, Self Role, Level, Word Filter) list them under “This step”, so names like the ticket author or the giveaway winners are visible instead of being flagged as unknown.
v2026.08.11.3FixedGetting-started checklist stays completed
- The "Getting started" checklist used to come back if you paused all your workflows — its "Activate it" step re-opened. Once you have completed it, it is now gone for good on that account.
v2026.08.11.2FixedSkipped steps no longer pose as successes
- Steps the run never executed (a branch that wasn’t taken, a paused step, a filtered trigger) used to light up like successful steps during runs and in the replay scrubber. They now stay untouched — no badge, no glow — so what lights up is exactly what ran; the run dialog still lists skipped steps for the detail.
- Wires leading into a skipped step no longer light up green as if the run had gone through them.
v2026.08.11.1FixedPolls send properly now
- Send Message polls were rejected by Discord every time ("Poll media must include text…") — the poll answers were handed to Discord in the wrong shape. They send correctly now, with or without message text.
- Poll limits are checked before sending: a question over 300 characters or an answer over 55 (Discord’s limits) now fails with a clear message naming the exact field, instead of a cryptic size error — useful when an answer comes from a {{variable}}.
- Poll duration is clamped to Discord’s allowed range (1 hour to 32 days) instead of erroring.
v2026.08.10.1ImprovedDrop a step and it just works
- Clicking a step in the library now inserts it AFTER your selected step — wired, placed and auto-filled — instead of dropping an unconnected card in the middle of the canvas.
- Drag a step from the library onto a wire to splice it into that connection; the ports glow while you drag so you can see the drop will connect.
- An empty Send Message / DM / Reply is caught while you edit, with a clear "content, an embed, buttons, a file or a poll is required" message — not a confusing failure on your first run.
- React and Pin fill their message reference from the trigger automatically, the way replies already filled their interaction id — one less {{variable}} to type by hand.
- Delay and Cooldown start at 30 seconds instead of starting as a required-field error.
- Typing { opens variable suggestions in the condition builder and Run-if too, and suggestions are type-aware almost everywhere — the picker and the Problems panel finally agree on what fits a field.
- The variable list no longer gets clipped near the bottom of the panel or inside Node Studio.
- Search understands several words ("discord send"), ranks matches, and behaves the same in the library, Ctrl + K and quick-add — which now shows your recent steps first.
- Send Message settings: polls and sending behavior get their own labelled sections instead of an unsorted "Other settings" pile, and the auto-filled Interaction ID stepped out of the quick-setup path.
- Around the editor: the community gallery is now called Community everywhere, "Review activity" opens the Activity page, and the getting-started checklist is three real steps.
v2026.08.09.1NewPin a step’s output, and an editor that knows what your data means
- Pin output: freeze any step’s data (its last run result, or JSON you write) and design the rest of the flow against it — no more re-firing a trigger twenty times to test the step after it. Pins apply to editor Test runs only; live runs always execute the real step.
- The variable picker now understands what each value MEANS, not just that it is text: a role ID no longer offers itself to a channel field, values whose type can’t be verified are labelled instead of hidden, and dropping an incompatible variable onto a field tells you why instead of silently creating a broken binding.
- The Problems panel runs the exact same type rules as the picker — the two can no longer disagree about whether a binding is safe.
- Every built-in step now declares what data it produces — 22 steps (If/Else, Switch, Math, Text Template, Regex, Webhook, Schedule, Send Email…) that used to show untyped outputs are now fully described in Available Data before you ever run them.
- Set Data and Extract rows inherit real types: save {{channel_id}} under a new name and the editor still knows it is a channel ID everywhere downstream — including in every type check above.
- Compare versions on the canvas: pick any saved version and see exactly what changed — green rings on added steps, amber on changed ones, ghost cards where deleted steps used to be, with Restore one click away.
- The AND/OR condition builder now gets every comparison type-check the simple mode had — including the "name compared to an ID" trap, row by row.
v2026.08.01.1ImprovedSee a community template before you import it
- Previewing a Workshop template now opens the real canvas — the same cards, branches and connections you get in the editor — instead of a flat list of step names. Click any step to read the configuration it ships with.
- Community templates on the Templates page finally have a Preview button. Installing one used to be a leap of faith; now you can look at the whole workflow, and at what each step does, before it lands in your account.
- The preview lists the integrations a template needs — and, in the editor, flags the ones you have not connected yet.
- Fields the author had to strip before publishing — their own server, channel or role — now read as "you'll pick when you use it" instead of showing an internal placeholder value.
v2026.07.31.2NewA raid shield for Discord, and six things your workflows can finally read
- "Pause Invites & DMs" locks the two doors a raid comes through: nobody can join with an invite, and members who don't already share a DM can't message each other. You set it in minutes, it lifts itself, and Discord caps it at 24 hours — so a mistaken trigger can never leave a server shut.
- "Preview Inactive Members" answers how many members a prune would remove, without removing anyone. Prune has been able to delete since day one; now you can look first — put it before the real step and branch on the number.
- "Get Role" reads one role by id: its name, colour, and — the one that matters — its position, which is what decides whether your bot is allowed to manage someone holding it.
- "List Emojis" and "List Channel Webhooks" close two one-way doors: you could already create and delete both, but never list them, so a workflow that lost an id could never clean up. Webhook tokens are deliberately not returned — a token is a password anyone could post with.
- "Show Typing" makes your bot look like it is thinking during a slow step, such as an AI reply or an HTTP call.
v2026.07.31.1ImprovedA calmer editor: tidier panels, real step names, and run results in a dialog
- "Add a node" is now a short table of contents. Every family folds, all of them start folded, and the editor remembers the ones you open. Your applications stay pinned at the top, with "Recently used" right below them.
- Steps are named after what they do everywhere — "Send Message", "Ban Member" — instead of "Discord Action". Find on canvas and Problems were the last two places still showing the node type.
- Problems leads with errors and hides warnings and hints until you click their counter, so two real errors are no longer buried under a dozen suggestions.
- A finished run now raises a notification instead of a permanent bar across the canvas. A run that worked says so and gets out of the way — the step-by-step details are in Run history whenever you want them.
- When a run fails you get a clear explanation — what failed, why, and how to fix it — with the raw provider error tucked behind "Technical details".
- Workflow settings → General gained a Canvas section: show or hide the minimap, move it to any corner, and turn snap-to-grid on for good (it now survives a reload). Plus a Panels section for the beginner palette, sidebar labels, developer info, and a "reset panel layout" button.
- The same tab now opens with a summary of the workflow: steps, triggers, total runs, status, when it was created and last edited, and a one-click copy of its ID.
- Fixed: `{{roles[0].id}}` and any other variable with an array index was reported as a reference to a node that "doesn't exist". The checker was looking for a variable literally named `roles[0]`; the index is the runtime's business, and these expressions always worked.
- A dangling variable in an OPTIONAL field is now a warning instead of an error, so it no longer blocks activation — the step still runs, the reference just renders empty. In a required field it stays blocking.
- Fixed: a run that stopped before its first step — because a step was still missing a required setting — reported nothing at all. No notification after a test, and clicking it in Run history opened an empty panel. Those runs now explain themselves like any other failure, name the step in plain language ("Send Message is missing something"), and take you straight to it.
v2026.07.30.5NewRole dropdowns, and tickets your support team can actually run
- "Pick a Role" can now post a dropdown instead of a row of buttons. Members set every role they want in one go, each option can carry an emoji, and "Only one role at a time" is enforced by Discord itself.
- Support tickets gained five optional staff controls: Claim (with hand-back and take-over), Hold / Resume to pause a waiting member's replies, Escalate to ping a senior role, Priority from Low to Urgent, and Transcript.
- Claim, priority and hold status show up in the ticket channel's topic, so a whole support queue can be read from the channel list without opening anything.
- Turn on "Save a transcript when a ticket is closed" and the conversation is posted as a text file before the channel is deleted — closing a ticket no longer destroys its history.
- Existing panels are untouched: extra controls only appear once you tick them under "Extra ticket controls".
v2026.07.30.4FixedSend Embed no longer fails when it has fields
- Any "Send Embed" step carrying at least one field failed with `Unexpected token 'o', "[object Obj"... is not valid JSON`. The visual Fields builder and the step that reads it had drifted apart. Fixed — no change needed to your workflows.
v2026.07.30.3NewTwitch workflows can react to the moments that matter
- Nine new Twitch triggers: "Stream Info Changed", "Ad Break Started", "Hype Train Started" and "Ended", "Poll Ended", "Prediction Resolved", "Goal Ended", "Subscription Ended" and "Redemption Updated".
- "Ad Break Started" pairs with the ad actions — the moment to drop a "brb, ads" message — and "Poll Ended" / "Prediction Resolved" close the loop on the poll and prediction actions: create one, then act on the result without checking for it.
- Filters where they matter: only fire on a hype train that reached a given level, only on goals that were actually reached, only when a redemption is refunded, or only when you switch to a specific category.
- Reconnect your Twitch account in Settings → Integrations to use the hype train and goal triggers — they need two permissions your existing connection was not asked for.
v2026.07.30.2NewYour bot can finally watch the whole server
- Six new Discord triggers cover what happens around your server, not just in chat: Channel, Role and Thread created/updated/deleted, Invite created/deleted, Scheduled Event (including RSVPs), and AutoMod Rule changed.
- Each one groups its events into a single node with a branch per event, so a server log is one trigger wired to one message — not twelve separate nodes on the canvas.
- New reads to build conditions on: "Get Server Info", "List Members", "Search Members", "List Channels", "Get User", "Check If Banned", "List Active Threads" and "Read Audit Log".
- "Ban Multiple Members" bans up to 200 people in one call — Discord's own raid-response endpoint — and reports how many it could not ban rather than pretending to a clean sweep.
- "Update AutoMod Rule" switches a rule off or swaps its keyword list without recreating it.
v2026.07.30.1NewReaction giveaways, channel point rewards, and a raid panic button
- Discord "Get Reactors" reads everyone who reacted with an emoji — so a reaction giveaway or a reaction poll can finally pick a winner, not just collect reactions.
- Discord "Update Server" can now raise your verification level and content filter, not just rename the server: one action locks the doors when a raid starts, another opens them afterwards.
- More Discord reads: "List Pinned Messages", "List Channel Invites", "List Thread Members", "List Archived Threads", plus "Join Thread", "Leave Thread" and "Follow Announcement Channel".
- Discord "Get Recent Messages" can now page forwards or around a message, and "Bulk Delete" can target specific message IDs instead of only "the last N".
- Twitch channel point rewards are fully manageable: create, update, pause, hide, delete and list them, and read a reward's redemption queue — "switch my rewards off when I go offline" is now a two-node workflow.
- Twitch "Get Channel Info" reads any channel's title, category and tags — handy for shoutouts — and ad controls arrived: "Start Commercial", "Get Ad Schedule" and "Snooze Next Ad".
- YouTube: "Get Comment Replies" and "Get Video Categories". The Search action now warns that it costs 100× a normal read, because exhausting your daily quota also stops your YouTube triggers.
- Reconnect your Twitch account in Settings → Integrations to use the new ad actions — they need permissions your existing connection was not asked for.
- Three new Discord triggers: "AutoMod Blocked Something" (log or escalate when Discord's own AutoMod acts, filtered by rule), "Poll Vote" (react as votes land, scoped to one poll), and "Audit Log Entry" — the one that answers "who deleted that channel?", filtered by action and by moderator.
- Fixed: the "Member Banned / Unbanned" trigger never fired. Your bot was not subscribed to the ban event, so the workflow sat there silently doing nothing. It works now — no action needed on your side.
v2026.07.29.2NewTwitch workflows can run the stream, not just the chat
- "Update Stream Info" now sets your category, tags, language and delay — not only the title. Going live can set everything about the channel in one step.
- "Update Chat Settings" flips followers-only, slow, emote-only, subscribers-only and unique chat from a workflow — the one-click reaction to a hate raid, and each mode has a "leave unchanged" option so you only touch what you mean to.
- Polls and predictions: create one, then end it and act on the result — "Create Poll", "End Poll", "Create Prediction", "End Prediction".
- "Start Raid" and "Cancel Raid" — send your viewers somewhere at the end of a stream, and call it off if you change your mind.
- New reads for smarter conditions: "Get Stream Info" (are you live, viewers, category), "Get Followers" (does this specific viewer follow?), "Get Chatters" (who is in chat right now — a ready-made giveaway pool) and "Get Chat Settings".
- Fixed: "Send Shoutout" and "Update Redemption Status" always failed with a permission error because Twitch was never asked for the matching permission. Reconnect your Twitch account in Settings → Integrations to pick up this fix and the new actions.
v2026.07.29.1NewYour bot can now read your server, control channel access and close polls
- New "Get Member" action: pull someone's roles, nickname, join date and boost status, then branch on them — the missing half of "only do this for people with the Subscriber role".
- New reads to build on: "Get Recent Messages" for digests and clean-ups, plus "List Roles" and "Get Channel Info".
- "Set Channel Permission" and "Reset Channel Permission" let a workflow open a channel for one member or role and close it again — the piece ticket and private-room flows were missing.
- "End Poll" closes a poll your bot posted and hands back the final tally, and "Get Poll Voters" tells you who picked an answer — so a poll can now decide what happens next.
- "Update Role" renames a role or changes its colour without recreating it.
v2026.07.28.1ImprovedCollaborating feels more like Google Docs
- Join a workflow someone else is already editing and you now see their unsaved changes right away — the canvas catches you up to the live state instead of showing the last-saved version.
- You can see what your teammates have selected: the node someone else is working on gets a coloured outline in their cursor's colour, so you don't both grab the same step at once.
- One-click "Quick setup" presets now cover giveaways and leveling too — pick an intent (like "Quick giveaway: 1 winner, 24 hours") and the fiddly fields fill in for you.
v2026.07.27.1ImprovedFresher docs, a changelog feed, and a friendlier 404
- Every doc and guide now shows when it was last updated, so you can tell at a glance whether a walkthrough matches the current product.
- The changelog has an RSS feed — subscribe at /changelog/feed.xml to hear about new features the moment they ship.
- The 404 page now points you to the templates gallery and the docs instead of dead-ending.
v2026.07.26.2NewDecide what happens when your workflow is triggered while it's already running
- New "When a new run starts" setting (Settings → Execution): Allow parallel runs (the default, exactly as before), Queue new runs (one at a time, in order), Skip the new run (ignore triggers while a run is active), or Replace the previous run (cancel older runs — the most recent trigger wins).
- Skipped and replaced runs stay visible in the run history with a clear reason ("Skipped because another run was active", "Replaced by a newer run") — they are never counted as failures and never fire your error workflow.
- Runs paused on a Wait step don't block the queue: they give up their turn while waiting and politely queue up again when they resume.
- Tests from the editor ignore this setting entirely — a Test never blocks, skips or cancels your real runs.
- The old "Allow concurrent runs" switch was renamed to "Run independent branches in parallel" — same behavior as always (it controls branches inside one run), the name just says what it actually does now that simultaneous runs have their own setting.
- The node panel got lighter: a compact header, Configure and Test tabs, a labelled Preview toggle for message steps, and a database icon up top that opens the Available data window (the old Input/Output tabs are gone — everything lives in that window now).
- The message preview now speaks as YOUR bot: it shows your connected bot's real name and avatar instead of a generic "Your bot" placeholder — what you see is exactly what your community sees.
- Fixed: on a workflow shared with you, the node palette no longer locks Discord/Twitch nodes because YOUR bot isn't connected — shared workflows always run with the owner's bot, so you can add nodes freely (misleading "connect your bot" warnings on activation are gone too).
- Fixed: embed images that silently vanished from the message preview now show a clear notice instead — usually an expired Discord attachment link (links copied from Discord only work for about a day; the preview now tells you exactly that).
- Shared workflows: the Server, Channel, Member, Role and emoji pickers now list the OWNER's bot data — the bot the workflow actually runs with — for every collaborator, instead of your own (often empty) bot. The message preview signs as the owner's bot too (their name and avatar).
- Collaboration: saving or testing no longer takes over everyone's screen — the live run sweep of a save's validation run (or an editor Test) now appears only for the person who triggered it. Real triggered runs stay visible to everyone.
- Collaboration: undo and redo are now personal. Ctrl+Z only steps back through YOUR changes and never wipes what a teammate built in the meantime — even if they edited the canvas right after you.
- Hovering a wire now shows a red disconnect button in place of the branch label (the label comes right back when you move away) — one click to unlink two steps, next to the existing data pill and insert "+".
- The first-run tip bar at the bottom of the canvas no longer slides under the Feedback and Guide buttons on narrow windows.
- Fixed: nodes wired from a button or select-menu option no longer claim "this trigger doesn't provide a user" — whoever clicks IS the user (and the channel/server come along too), so Add Role and friends can stay on Auto after an interaction.
v2026.07.26.1NewCollect answers with Discord form modals
- New Discord action "Open a Form Modal": a button can now pop up a form (up to 5 fields) for whoever clicked — ask their age, reason, in-game name, anything. Wire it straight from a message button, then handle the answers with a "Discord — Modal Submitted" trigger; each field arrives as {{field_<id>}}.
- "Build with AI" understands forms now: describe an application or signup form in plain language and it builds the button, the modal and the submission handler for you.
- Testing a workflow stays safe from end to end: a Test never sends a real Discord message or opens a real form for someone — even when the flow pauses on a wait and resumes later, it stays simulated for the whole run.
v2026.07.25.1ImprovedClearer error messages and a smarter activation check
- When something fails — saving, publishing, installing a template, managing your bot — the error toast now shows the actual reason from the server whenever one is available, instead of a generic message.
- Activating a workflow now checks every platform it uses: if your Twitch account (or any other connected platform) is missing, you get a heads-up before activation — previously only Discord was checked.
- Workflows imported via "Build with AI" keep readable variable names: {{body.data.name}} instead of a machine id like {{node_ms05eoc8_7.body.data.name}}. The long form is kept only where two nodes publish the same name and it genuinely disambiguates.
- The floating Feedback button no longer covers the minimap and the Guide button in the editor — Feedback and Guide now sit side by side in the bottom-right corner, with the minimap above them.
- Discord messages now handle hyperlinks properly: a new link button in message content, embed descriptions and field values inserts [text](url) for you, embeds get a "Title link" field (the native way to make the title clickable), and the message preview renders those links exactly where Discord does.
- Discord text got a full formatting menu ("Aa" in message content, embed descriptions and field values): bold, italic, underline, strikethrough, spoiler, code, quote, code block — plus one-click inserts for user/role/channel mentions, live timestamps, and your server's own custom emojis.
- The message preview now renders Discord formatting for real: bold/italic/spoilers (click to reveal), code blocks, headers, quotes, lists, mention pills, formatted timestamps and custom emojis — what you see is what Discord shows.
- Embeds are now fully editable: author link and icon, footer icon, timestamp, and reorder arrows on fields — all rendered faithfully in the preview.
- Fixed: connecting a Discord action after a Message trigger no longer claims "this trigger doesn't provide a user" — the message author now counts as the user everywhere (DM the author, give them a role…), matching what actually happens at run time.
- Support Tickets can now post as embeds: the panel message gets a "Send as an embed" toggle with an optional title, the welcome message gets its own toggle, and a shared accent color ties them together.
- "Auto" fields fixed for good, everywhere: a server, channel or user left on Auto now resolves from the trigger (or your default server) for every Discord action — including Support Tickets, Self Role and Giveaway, which used to fail runs with "Channel is required" even though the editor said Auto was fine.
- No more false "This workflow changed elsewhere" warnings: a live workflow's own runs no longer count as edits, and activating or restoring a version now refreshes the editor's baseline — the conflict dialog only appears when something really did change in another tab.
- Ticket messages now resolve {{timestamp}}, {{date}}, {{time}} and {{weekday}} when the ticket opens, instead of showing the raw text.
- Editing a Support Tickets node now applies to panels you already posted — welcome message, embed toggle and color, support roles, ticket name, category and log channel are read live at click time. Only the panel text and its buttons still need a repost (they are the posted message itself). The embed color picker also moved up next to the panel options so it's easier to find.
- Publishing a workflow no longer reports a false "Channel is required" error from the automatic dry-run when the channel (or user, message…) comes from the trigger — there is no real event behind a dry-run, so those values are now simulated instead of failing the check. A real run still reports genuinely missing values.
- The standalone Send Embed action caught up with the embed builder: title link, author link and footer icon are now configurable, and its settings are organized into clear sections (embed, appearance, interactions, delivery, permanent update).
- Every Discord operation was audited against what the bot can actually do, and hidden options are now visible: pick which role to delete (Delete Role), which emoji to remove (Remove Reaction), start a thread from a specific message (Create Thread), create a channel inside a category, and add audit-log reasons to Delete Channel, Create Role and Delete Role.
v2026.07.24.1NewPick a value from data, Compute, and Regex can now hold several values at once
- Pick a value from data (Extract Field) can now pull several values out of the same object in one node — add as many Name | Path rows as you need instead of chaining a separate node per value.
- Compute can now hold several independent formulas in one node, each its own named output.
- Regex (in Extract mode) can now hold several patterns in one node, each its own named output — Replace and Match are unchanged.
- "Build with AI" now knows about this, so it stops generating a chain of separate nodes when a workflow needs several values pulled from the same data.
v2026.07.19.1NewMore visual builders: nested data, HTTP auth, formulas, and custom fields
- Any JSON-shaped field (Merge Objects, a manual trigger's test payload) and a structured HTTP request body now have a visual builder for nested data — add a key, pick its type (text, number, boolean, object, array…), and go as many levels deep as you need, instead of hand-typing JSON. "Edit as JSON" is still one click away, and existing raw-JSON configs keep working unchanged.
- The HTTP Request node now has a proper Authentication picker — Bearer Token, Basic Auth, or API Key Header. Pick one, fill in the token or credentials, and Noria sends the right header for you; no more hand-typing "Authorization: Bearer …" into Headers.
- Every node can now hold its own "Custom Fields" — name/value pairs you attach directly on the node, each instantly available as its own {{variable}} to later steps. A quick way to carry one extra value without reaching for a separate Set Data node.
- Compute (the node that builds an object, array, or value from an expression) now has a visual formula builder alongside the raw-expression box: pick a variable or a typed value, pipe it through the same transforms you already use in text fields (uppercase, round, truncate…), and branch with an if/else — no jexl syntax required. Switch to Advanced for raw text any time.
v2026.07.15.3ImprovedA round of small editor polish
- Consistent hover feedback across the editor — the zoom/fit buttons, node library group headers, and row add/remove buttons now all respond the same way.
- Find on canvas now tells you when nothing matches, instead of showing a blank list.
- Version history and template previews now show a clear message (with a way out) if they fail to load, instead of spinning forever or silently showing "no versions yet".
- Restoring a version now shows "Restoring…" while it works.
- A few small copy and keyboard-shortcut display fixes, and better keyboard-focus visibility on a few dropdown fields.
- Sticky notes and the wire "insert a node" / "inspect data" buttons now have proper hover feedback and accessible names, matching the rest of the editor.
- The top bar's command-palette and "Build with AI" buttons, and each node's "add a step" button, now respond on hover like every other button in the editor.
- The "Change action" button, the empty-canvas "Browse workflow templates" button, "Edit as JSON", and the workshop category filters now all give hover feedback too.
- The preset colour swatches now announce which colour they are to screen readers, and the "Build with AI" buttons respond on hover.
- Keyboard focus is now visible when tabbing into an expression field (the {{variable}} field used across most node settings) — the most common field in the editor.
- The Delete/Save workflow buttons and "Run this node" now visibly grey out while busy, instead of looking clickable but doing nothing.
- The channel/role/member pickers, the "Call Workflow" workflow picker, and the Twitch account field now show a real error message when they fail to load, instead of misleadingly reporting "none found" or "not connected".
- Workflow settings' Twitch account row now also shows a real error instead of "None connected" when it fails to load.
- Dropdown fields (Select, action-type, store key, multi-select) and the embed collapse toggle now correctly announce open/closed state to screen readers.
- The command palette (Ctrl+K) now works properly with a screen reader — it announces itself as a search box connected to a results list, and reads out the highlighted result as you arrow through it.
- A node setting's on/off toggle now announces its state and which setting it belongs to; the sticky note colour picker's swatches now announce which colour each one is.
- Screen readers now hear the same confirmations sighted users see in a toast: settings saved, workflow deleted, published to the workshop, version restored, template imported, copy/paste, "fix all", and run-from-here — not just save/activate/run as before.
v2026.07.15.2ImprovedClearer error messages, and better permission errors
- Editor warnings and errors now name nodes and connections the same plain way you see them on the canvas — no more technical names or Redis-style errors leaking into a message.
- When your bot can't see a channel, the error now says so clearly instead of a confusing "not a text channel" message.
- When a role can't be assigned because the bot's own role isn't positioned above it, the error now says exactly that and what to do — instead of a generic "missing permission".
v2026.07.15.1ImprovedPlainer language in the editor for newcomers
- The simplified names you see in "Add a node" (Beginner Mode) now stay on the card and in the config panel too, instead of switching back to the technical name the moment you place the node.
- If / Switch / Filter now have a plain-language name in Beginner Mode, matching the other Logic nodes.
- "Wait" and "Signal / Cancel Wait" (advanced, cross-workflow coordination) are now tucked under "Show advanced actions" like other advanced nodes — still one search away if you need them.
- Clearer wording in a few config options: "Set fields" instead of "Upsert fields" (Remember Data), "Reduce — combine all items into one result" instead of "fold to one value" (List), and Cooldown's Beginner Mode name no longer says "rate-limit".
v2026.07.14.14ImprovedA calmer, more polished public site
- Every public page (home, pricing, docs, templates, integrations, legal, status) now gently animates into view as you scroll — restrained fades and lifts, never re-triggered on scroll-back, and skipped entirely if your system prefers reduced motion.
- Removed two scroll-jump links on the homepage ("Why Noria" and "Examples" in the top bar, "See examples" in the hero) that didn't really go anywhere new — the hero button now goes straight to the Templates gallery instead.
- Added a "Docs" link to the dashboard sidebar, opening in a new tab.
v2026.07.14.13ImprovedDocs and Templates now have a persistent category sidebar
- Every documentation page now shows a left sidebar with the full library grouped by section, so you can jump between guides without going back to the index each time.
- The templates gallery groups its cards into labelled sections by category (Notifications, Fun, Moderation, Automation, …) instead of one flat list — pick a category from the sidebar to narrow it down, or search across all of them.
v2026.07.14.12FixedFixed: a private reply to a button click was showing publicly instead
- When a button's "Reply to Slash Command" step was set to only-you (ephemeral), clicking the button could instead edit the original public message for everyone to see. Button and select-menu clicks that lead to a reply step now correctly get a private reply when configured as such — buttons with no reply step are unaffected.
v2026.07.14.11FixedFixed: a second reply on a slash command could silently fail after a visibility change
- If a "Reply to Slash Command" node sent a reply whose visibility (public/only-you) differed from the initial one, a LATER reply or follow-up on that same command could fail to send. Both now stay in sync with the visibility that was actually used, and an earlier reply is never held back from a later step.
v2026.07.14.10ImprovedThe Discord Action node now previews its output before you run anything
- Operations like Get Message, Create Channel, Create Thread, Create Invite, Create Role, Create Event, List Events, Create AutoMod Rule, List AutoMod Rules, Create Webhook, Create Emoji, Prune Server, List Bans and List Invites now show their real fields (message content, invite URL, the list of bans, …) in the "Insert variable" picker — no need to run the workflow first just to see what data is available.
v2026.07.14.9FixedConfig panel: fixed silent required-field gaps and added real variable/JSON support
- Switch and Durable Store had settings that were secretly required (Switch's "Value to test" and case list, Store's "Value" for Set) but never showed a red asterisk or blocked Run — they just failed with a confusing error. They now show up as required exactly when they matter, and Run/Test catches them before the workflow ever starts.
- Variables created by a Set Data node ({{winner}}, {{prize}}, …) now actually appear in the "Insert variable" picker on later nodes — they were being published correctly but the picker didn't know about them.
- JSON-shaped fields (HTTP Request's body, Merge Objects) now get a real JSON editor with live validation, an error message, and a Format button — instead of a plain text box with no feedback until the workflow ran.
- Switch's case list and a slash command argument's default value can now have variables inserted directly, matching every other text field.
- A node's error badge no longer inflates its number by counting warnings alongside real errors.
- Clicking Run/Test on a node that's missing a required field now always opens that node's Config tab, even if you were looking at its Input/Output/Test tab.
v2026.07.14.8ImprovedThe node library's "Data" group is now "Values & memory", organized by what it actually does
- 17 very different nodes used to sit in one flat "Data" list. They're now grouped by what you're actually trying to do: This run (Set Data, Text Template, Compute), Across runs (Remember Data, Collection, Scores), and Transform (Date, List, Extract Field, and the rest of the data-shaping tools).
- "Leaderboard" is now "Scores" — same node, friendlier name.
- Durable Store (the raw single-value primitive) moved into "Show advanced actions" now that Remember Data covers the common multi-field case in a friendlier way — still there, just a level down.
v2026.07.14.7Improved"Record" is now "Remember Data" — pick who shares a value instead of typing {{}} syntax
- Creating a new key for Remember Data, Collection, Scores, Durable Store or Cooldown now asks "Shared across: this channel / this server / this member / everyone" instead of a single "one per Discord channel" checkbox — pick one and the technical key is built for you, no {{}} syntax to write yourself.
v2026.07.14.6Improved"Set Variable" is now "Set Data" — hold several values in one node
- Set Data can now hold as many Name | Value rows as you need — a giveaway announcement needing winner, prize, channel and message used to take four separate nodes just to hold four small values. Add a row for each, and every one becomes its own {{variable}} for later nodes to use, no dot-path needed.
- The node now shows what it actually holds right on the canvas — "3 values · winner, prize, channel" — instead of the same generic description on every instance.
- Existing single-value nodes keep working exactly as before; nothing is migrated or changed until you edit one.
v2026.07.14.5FixedRequired fields now correctly flagged on Workshop-imported nodes
- Installing or importing a Workshop template used to silently hide which fields still needed your own server/channel/role — the node looked fine on the canvas and you'd only discover a required field was empty by opening its Config panel. Those fields now correctly show the usual "missing required setting" indicator (on the node itself, in Config, and before you Test/Run) until you pick your own.
v2026.07.14.4Fixed"Tidy up layout" no longer scatters multi-trigger workflows
- A workflow with several slash commands (or any workflow with more than one trigger) could come out of "Tidy up layout" with chains scattered in every direction — each trigger's chain now gets its own clean row, stacked top to bottom with no overlap, flowing out from wherever your topmost trigger already sits.
v2026.07.14.3ImprovedPick a store key instead of typing one
- The "key" field on Collection, Record, Leaderboard, Durable Store and Cooldown is no longer a blank text box. It's now a list of every key already used elsewhere in the workflow (grouped by compatible vs. incompatible, so you can't accidentally pick one that would clash), plus a "Create a new key" option — just type a friendly name and Noria builds the key text for you, including a "one per Discord channel" option, with the old free-text field still there if you want it.
- That same protection now follows you into "Create a new key" and "Type it myself" too — if the key you're about to create or type collides with a different kind of node elsewhere, you get a warning right there (and Create is blocked) instead of finding out at runtime.
v2026.07.14.2FixedClearer errors — and a warning — when two nodes fight over the same store key
- Collection, Record, Leaderboard, Durable Store and Cooldown all remember their data under a key you choose — but if two of them use the EXACT SAME key while storing different kinds of data (e.g. a Collection's list and a Record's object both keyed "giveaway:{{channel_id}}"), Redis used to throw a raw, confusing "WRONGTYPE" error. It now tells you plainly which key is shared and how to fix it (give each node its own key).
- The workflow checker now catches this BEFORE you run into it: it flags any two nodes of different kinds (Collection/Record/Leaderboard/Store/Cooldown) sharing one key, right in the editor.
v2026.07.14.1NewNamed outputs, repeatable actions, durable records, and Discord ergonomics
- Every transform node (Set Variable, Extract, Math, Collection, Leaderboard, and more) can now “Also publish as” a name of your own, so two nodes that both produce {{result}} or {{value}} no longer silently overwrite each other — reference the one you mean by name.
- Loop can now run its body a fixed number of times ("Repeat") instead of only over a list — handy for "do this 5 times" without a real array to loop over.
- Collection can add several copies of a value in one step, remove one/all/a specific number of matches, and pick a "Weighted Random" winner where entries with more copies (bonus entries) are more likely to be drawn — never the same winner twice in one draw.
- New "Record" node: a durable, structured object (like a Redis hash) for things such as a giveaway’s full state — get/set fields, increment a number, add/remove from a list without duplicates, and safely close something exactly once even if two people click at the same time (Compare & Set).
- Slash command arguments now support Mentionable (user or role) and Attachment (file) types, and an optional argument can have a default value that’s used whenever someone omits it.
- More Discord triggers (edited/deleted messages, voice events, modal submissions) now expose the member’s role IDs, matching what On Message and buttons already had.
- New condition operators: “has any/all/none of these roles” — check a member’s roles directly in an If/Filter node without a Code node.
- Editing a Discord message now has a "Buttons & menus mode" — leave existing buttons as-is, replace them, grey them all out, or remove them entirely.
- Duration fields (Cooldown, Wait, Delay) now accept human durations like "1h30m" or "2 days", not just a plain number of seconds.
- New "Signal / Cancel Wait" node: wake up — or cancel — a DIFFERENT workflow run that’s paused in a Wait node, by the same key it’s waiting on. Lets a "/endgiveaway" command end the wait a "/giveaway" command started, instead of only a button click or a timeout being able to.
- Two new checks catch a class of Discord mistake that used to fail silently: reusing the same button/menu id on two different messages (only one of them would ever respond to a click), and giving two slash-command arguments the same name (they’d overwrite the same variable).
v2026.07.13.5ImprovedA cleaner node config panel
- Every setting in a node’s Config panel now sits in its own clearly-defined card instead of blending into the background — easier to scan, especially on nodes with a lot of fields.
- A field that’s missing something now stands out immediately (a red accent on its left edge) instead of a barely-visible tint you could miss while scrolling.
- Required fields are marked with a simple “*” next to the label instead of a separate badge — one less thing competing for your attention.
- Opening a collapsed “Optional” or “Advanced” section now reveals its fields with a quick, smooth animation instead of popping in instantly.
- Fixed: hovering a field while its dropdown was open (picking a channel, an operation, a role…) could make the dropdown’s list render behind the next field instead of on top of it.
- Fixed: a long message with several lines could show its last line poking out past the field’s rounded border instead of staying neatly inside it.
- Fixed: “Only run if…” couldn’t be edited or removed once set — reopening it always looked like starting from scratch. It now reopens showing your actual condition, ready to change or remove.
- “Insert a condition” is no longer offered on single-value fields (like Interaction ID) where a condition never made sense — it now only appears on message/content fields, so those fields stay clean.
v2026.07.13.4NewConditions without writing a formula
- A new “ƒ” button next to “Variables” on every text field lets you insert a condition — pick a variable, a comparison, and what to show for each outcome. No formula to write; it builds one for you.
- Any node can now say “Only run if…” from its toolbar (the branch icon) — a lightweight alternative to wiring a separate Filter node in front of it for a single check.
- Switch can take as many cases as you need — it was capped at 4.
- Filter now has a “Case sensitive” option, matching If (it was missing).
- Fixed: a Cooldown shared by two different timers (same key, different durations) now gets flagged — whichever fired first was silently deciding the other’s window.
- Fixed: testing a Loop node with more than 1,000 items used to show fewer than an actual run would process — the two now agree.
- Fixed: clicking “Insert variable” while writing an advanced Condition/Filter expression could silently make the whole condition evaluate to false.
- Fixed: the “Insert a condition” and “Only run if…” popovers could open off-screen or get clipped by the panel and appear to do nothing.
- Fixed: on a single-line field with a long value (like a slash command’s Description), most of the text was hidden behind the field’s buttons — the buttons are now compact icons, and the field fades the text out at the edge instead of cutting it off abruptly.
- Fixed: deleting a {{variable}} required backspacing through it one character at a time and could leave it broken. One Backspace or Delete now removes it whole. Clicking the left or right half of a variable now places the cursor precisely before or after it.
- Fixed: “Insert a condition” and “Only run if…” only let you pick a variable for the “If” side — the “Value” (and “Then”/“Else”) had to be typed by hand, so comparing against a second variable meant guessing its exact name. Every field now has its own {} button to insert one.
- Fixed: when two different nodes upstream both publish a variable with the same name (e.g. a Collection’s random pick and an If/Else both use {{result}}), Noria silently used whichever ran last — you could reference the wrong one with no error. It’s now flagged with which nodes are involved, so you can point at the right one explicitly.
- A Webhook trigger and an HTTP Request action chained together both used to publish {{body}}/{{headers}} — referencing the bare name after the HTTP call ran could silently grab the wrong one. Webhook now also exposes {{requestBody}}/{{requestHeaders}} and HTTP Request exposes {{responseStatus}}/{{responseBody}}/{{responseHeaders}}, so you can always point at exactly the one you mean (the original names still work).
v2026.07.13.3FixedSlash commands left on the default server now actually get created
- If you left a slash command’s Server on “Auto”, nothing worked: the command was never created in Discord, and any run of that workflow failed on the spot with “Server is required”. The editor promised it would use the server from the trigger (or your default), but three separate pieces — the command registration, the workflow run, and the “test this node” path — only ever looked at the default in Settings → Connections. They now all resolve it the way the editor shows it, including from the Discord event itself, which always names its server.
- And when no server can be resolved at all (no default, and the bot is in several servers), activating now tells you which commands won’t reach Discord instead of pretending everything is fine. Activation warnings in general — invalid schedules included — were being computed and then thrown away; they’re shown now.
v2026.07.13.2FixedBuild with AI: buttons that actually work, variables that actually resolve
- Buttons and menus built by an AI now work. The AI was told to add a separate “Button Click” trigger — the old way — and Noria had no way to express “this runs when the button is clicked”, so the follow-up ran the instant the message was SENT. The AI is now taught the real model (a button on a message turns that message into the entry point), and a workflow written the old way is rewired automatically on import — including the server it used to ask you to pick.
- Variables the AI writes now resolve. It had no idea that a variable only exists downstream of the node that produces it, so it happily wrote {{content}} in a slash-command branch (where it doesn’t exist). The prompt now states the rule and lists exactly what each node publishes, near-misses are repaired on import, and anything still wrong tells the AI which variables ARE available at that node instead of just “unknown”.
- The catalogue was also hiding variables from the AI: a webhook’s {{body}}, a schedule’s {{timestamp}}, an HTTP call’s {{status}} and every button/menu variable ({{value}}, {{user_id}}…) were never mentioned. They are now.
- And the hand-off is one click: “ChatGPT” / “Claude” open the chat with your prompt already typed. If the import finds problems, one button copies exactly what the AI needs to fix — and nothing it can’t (it never sees “pick a server”).
v2026.07.13.1ImprovedBuild with AI: give it a link, and it stops inventing servers
- New “Short prompt + link” mode: instead of pasting a huge prompt, you give the AI a link to noriaflow.com/ai-context.txt and it reads the complete node catalog itself. It can no longer work from a half-pasted, out-of-date schema — which was the main reason it produced JSON Noria refused.
- The AI no longer invents Discord servers, channels or roles. It cannot know your real IDs, so any it made up is now cleared on import and listed under “Finish in the editor” — where you pick the real one. Those items are also kept out of “Copy issues for the AI”, so asking it to fix things can’t make it invent a new ID.
- Broken variables are repaired on import instead of being sent back to the AI: {{input.channel_id}} → {{channel_id}}, {{channelId}} → {{channel_id}}, and a slash-command option like {{prize}} → {{option_prize}}.
- Problems no longer block the import. “Import anyway” brings the workflow onto the canvas with the affected nodes flagged, so you can fix them where you have the real context — instead of being stuck in the dialog re-prompting the AI.
v2026.07.12.13FixedBan template fixed, guides corrected
- The “Ban Command” template now actually confirms the ban. It had a delay node set to what looked like 100 milliseconds but was really 100 SECONDS — and Discord discards any slash-command reply that takes more than 3 seconds, so the confirmation could never appear. The delay is gone.
- Several guides referred to buttons and nodes that don’t exist: “Assign Role” (it’s Add Role), “Discord — Send DM” (it’s a Discord action set to Send Direct Message), “Message Sent” (it’s Discord — Message), an “Acknowledge” action that was never real, and a “Functions” group in the node panel that doesn’t exist. All corrected.
- The Test tab guide now describes what the tab really does — it fills in the upstream input for you, rather than asking you to type sample data.
- The “music” filter on Templates is gone: no template was in it, so it could only ever show an empty result.
v2026.07.12.12ImprovedSign-in and billing polish
- The magic-link page now shows the Noria logo (it was a generic sparkle icon) and reads correctly to screen readers.
- “Continue with Discord/Twitch” now highlights when you reach it with the keyboard, not just with the mouse.
- On Billing, the payment-method card no longer claims “No card on file” without checking, and its button actually opens the billing portal instead of doing nothing.
- Template category filters announce which one is selected, and are big enough to tap comfortably on a phone.
v2026.07.12.11ImprovedKeyboard and screen-reader fixes
- The “Delete account” dialog now closes with Escape, keeps focus inside itself, and its confirmation field has a proper label — it was the one destructive action in the app that didn’t use the shared confirmation dialog.
- The “Getting started” checklist’s dismiss button is now a real button next to the collapse control instead of being nested inside it, so the keyboard behaves predictably.
- Icon-only buttons and search fields that only had a tooltip (disconnect an account, refresh servers, show/hide bot token, search templates, music search and play) now announce what they do to screen readers.
v2026.07.12.10FixedSearch actually searches all your workflows
- Searching, filtering by status, and sorting on the Workflows page now run across your whole account. They used to only look at the twelve workflows on the page you were viewing — so searching for a workflow that lived on page 2 told you “No workflows match your filters”, about a workflow you definitely had.
- The header counts are account-wide too: “N live” and “total runs” previously counted only the workflows visible on the current page.
v2026.07.12.9FixedA hiccup no longer looks like data loss
- If we can’t reach the server for a moment, your Discord bot page no longer shows the “Add your bot” setup form as though your bot had been wiped — it says it couldn’t load, and offers a retry.
- Same on Integrations: a failed load used to hide your connected accounts and flip every card back to “Connect”. It now tells you it’s a loading error, and your accounts are untouched.
- The Workshop no longer shows a blank panel when it can’t be reached, and the music server picker says “Loading…” instead of claiming you have no servers while it’s still fetching them.
- The music session tiles now show listeners and queued tracks — the old “quality: Hi-Fi” tile was a fixed label dressed up as a live measurement.
v2026.07.12.8FixedNumbers you can trust
- A workflow that has failed now shows as “Error” on your dashboard too — it used to say “Paused” there while the workflows list correctly called it an error.
- “Total runs” on the dashboard now counts every workflow on your account, not just the first hundred, and “Monthly usage” no longer flashes “0 runs” for a moment while it loads.
- The “Avg. runtime” chart on Analytics now actually plots your runtime — it was drawing how MANY runs you had, under a label that promised how LONG they took. The “Active workflows” card no longer shows a trend line, because we don’t keep that history to draw one honestly.
- When Analytics can’t be reached, the success-rate and runtime cards say so instead of confidently showing “0%” and “0ms”.
- Pricing is clearer during the beta: every account runs at the Pro tier (50 workflows, 25,000 runs/month), and the plan cards now show launch prices rather than implying the Scale tier’s unlimited quotas are free right now.
v2026.07.12.7FixedClearer Discord errors + auto-fixed embeds/buttons
- When Discord rejects a message, the error now names the exact field that’s wrong (e.g. “embeds.0.color” or a button) instead of a vague “check your content”.
- Embeds and buttons — especially from AI/templates — that used a colour like “#5865F2” (text instead of a number) or a button that wasn’t wrapped in a row no longer get rejected; they’re fixed up automatically before sending.
v2026.07.12.6FixedA batch of fixes
- The “Insert a node” and “Data on wire” popovers now close when you click away, the sticky note is draggable and editable again, and the branch labels on wires no longer duplicate when you hover them.
- Seeking in the music player is now instant and no longer jumps around — the bot jumps straight to the spot in memory instead of slowly re-loading the track from the start.
- The cookie banner no longer flashes for a moment on every page load once you’ve made a choice.
v2026.07.12.5ImprovedCleaner branches and a smarter Tidy-up
- A step’s outputs are now grouped and colour-coded on the card — flow, Interactions (button/menu clicks), and Options (per-menu-choice branches, in orange) — with labels kept to a single line. The little branch labels on the wires no longer wrap to two lines or resize.
- Tidy-up layout now stacks a step’s targets to match its handle order, so multi-branch steps (Discord actions, Switch…) come out untangled instead of crossing every wire.
v2026.07.12.4NewBranch on the exact menu choice
- A select menu on a message step now gives you one output handle per option — so “if they pick Support do this, if Feedback do that” is a direct wire, no Condition node needed. The “on any selection” handle still works too, and interaction branches are now drawn in a distinct purple so they stand out on the canvas.
v2026.07.12.3NewSee your Discord message as you build it
- Opening a Discord message step now shows a live preview — rendered like Discord, with your text, embeds, buttons AND select menus, and variables filled in with sample values. It updates as you type. It’s a small floating window you can drag anywhere by its title bar, and show/hide from the step’s eye button or Workflow settings → Editor.
v2026.07.12.2ImprovedA cleaner, calmer editor
- The node cards and the settings panel got a visual refresh — tidier section headers, lighter “Auto” hints, and a crisp focus outline (tinted to each step’s colour) so you always see exactly which field you’re editing.
v2026.07.12.1ImprovedReact to what people click and choose
- When a button or select menu is clicked, the next step can now read exactly what happened: {{value}} / {{values}} (which option was chosen), plus {{custom_id}}, {{user_id}}, {{username}} and more — they show up in the Input tab tagged “on click/select”. Referencing them no longer flags a false error, so “reply based on the selected option / only let mods click” finally works end-to-end.
- A workflow with an error can no longer be activated by accident — activation is now checked on the server, not just in your browser. And a workflow whose only trigger is paused is flagged instead of silently never running.
- Node moves and tidy-ups are no longer silently lost when you close the tab, duplicating a selection keeps the connections between the copied steps, and copied buttons get fresh ids so two steps never fight over one click.
- The on-canvas “+ Event / + Interaction / add node” menus are now keyboard-accessible, and a field bound to a variable (e.g. a channel from the trigger) is shown as such instead of looking empty.
v2026.07.11.2NewBuild triggers and buttons right on the node
- Trigger nodes now have a “+ Event” button on the card: start from “On Message”, add “On Member Join”, a reaction, and more — all stacked into one custom trigger. Each event gets its own output so you can branch it however you like. The picker only shows events for the same platform (Discord stays Discord).
- Message actions with buttons or menus have a “+ Interaction” button: add a button straight on the node and its click branch (an output handle) appears instantly — no separate trigger node to wire up.
- Your existing single-trigger nodes and the config panel still work exactly as before — this just lets you compose faster, right on the canvas.
v2026.07.11.1ImprovedExplore your data — click into any output
- Click a connection between two steps and you can now open up the data flowing across it: expand an object, drill into nested fields (body → user → name), and copy or drag any value straight into another field as its {{reference}}. The same explorer shows up in a step’s Output and Test tabs.
- HTTP headers and query parameters are now a simple key/value list — add a row, type the name, pick a value — instead of hand-writing JSON. The raw-JSON view is still one click away under “Edit as JSON”.
- Secrets are now hidden everywhere you preview data. Tokens, passwords and API keys in a step’s output, logs, test run or live view show up as [redacted] instead of leaking into the editor.
- Saving a workflow now catches broken graphs early — a dangling connection or an unknown step is rejected with a clear message instead of silently saving something that can’t run.
v2026.07.10.3ImprovedPoint-and-drag your data into any field
- In a step’s Input tab, you can now DRAG a variable straight onto a field to drop in its {{reference}} — no more typing dotted paths by hand (clicking still copies it).
- The "Insert variable" picker now understands what a field expects: for a number field, number variables float to the top and mismatched ones dim — so the right data to pick is obvious.
- Nodes now describe their outputs up front, so an HTTP request’s status/body/headers (and a Collection’s result/count) show up in the picker before you’ve even run the workflow.
v2026.07.10.2ImprovedGiveaways & sign-ups without a line of code
- The Collection node can now draw a random winner directly (pick one, or several distinct winners at once) — no more chaining nodes or writing JavaScript.
- New "Add if new" and "Has" operations block duplicate entries and check membership, so "you already joined" is a single node. Perfect for giveaways, raffles and waitlists.
- A reminder baked into the AI helper: one workflow can hold several triggers (a /giveaway command, a 🎉 join button and a timed draw) — you don't need to split it into separate workflows.
v2026.07.10.1NewBuild with AI — using any AI you like
- New "Build with AI" button in the editor: copy a ready-made prompt that teaches ChatGPT, Claude or Gemini exactly how Noria workflows work — every node, every setting — then just describe what you want your bot to do.
- Paste the AI's answer back into Noria and it builds the workflow on your canvas. It checks the result, quietly fixes common mistakes (variable names, connections), and flags anything that needs another look — with a one-click "copy the issues back to the AI" so you can iterate.
- Tick "include my current workflow" to have the AI edit what you already have instead of starting from scratch. No extra account or API key — you bring your own AI.
v2026.07.08.3NewSee a workflow before you build it — live previews everywhere
- Every template and guide now shows the real editor canvas instead of a screenshot — the same node cards, ports and connections you'll actually get. Click any step to see its example configuration on the side.
- The homepage now shows a real, interactive workflow rather than a static image — click a step to peek at how it's wired.
- Previews are framed like a mini editor (browser bar, step count, the integrations it uses) and size themselves to the workflow, so a two-step flow no longer floats in empty space.
v2026.07.08.2ImprovedA smarter, cleaner editor
- The node library now knows what you've connected: Discord nodes stay locked until you've added your bot, and Twitch nodes until you've linked an account — each clearly marked, with a one-click link to connect. No more building a workflow that can't run.
- In a step's Input and Output tabs, click any field to copy its {{reference}} straight to your clipboard — no more retyping variable names by hand.
- Node settings are less noisy: purely informational hints no longer clutter the config panel, so the fields that matter (and real errors) stand out. Those hints are still listed in the Problems panel.
- Every page — templates, guides, docs — now shows the top navigation bar, so you're always one click from home.
- A refreshed design system runs across the whole app — cleaner buttons, switches, menus and dialogs that look and behave consistently.
v2026.07.08.1FixedFixes & polish
- Disconnecting a Discord or Twitch account now fully removes it — no more "ghost" account that made a workflow think it was still connected.
- Dialogs no longer close by accident when you click a notification, so you won't lose what you were typing.
- Fixed hard-to-read text on some pages in dark mode, and restored the subtle depth on dashboard cards.
- The mobile navigation drawer no longer gets stuck when you rotate or resize your screen.
v2026.07.03.3ImprovedA clearer, calmer editor
- "Dry-run" is now simply "Test" everywhere — one clear word, with "nothing is sent" spelled out.
- The left toolbar now shows labels (Node library, Problems, Run history…) grouped by what they do, so you never have to decode icons. Power users can collapse it to icons and the choice is remembered.
- Choosing what a Discord/Twitch action does is now a searchable, grouped picker (Messages, Moderation, Roles…) instead of one giant 50-item dropdown — and it hides advanced actions until you search.
- Confirming a real run now uses a proper in-app dialog instead of the browser's grey pop-up.
- After a test, the result now leads with a plain-language summary — "Success — your bot sent “Hey there!”" — instead of raw data.
- The canvas is calmer: Test is now the single prominent button, and the layout/preview/grid toggles are tucked into one "View" menu.
- The test results panel now has a Simple/Detailed toggle — Simple shows what a step produced as clean labelled rows, Detailed keeps the raw JSON for power users.
- Twitch and data (transform) nodes now have the same "?" field explanations Discord nodes already had.
- The minimap now only appears on bigger workflows, keeping small ones tidy.
- Starter templates now use the same modern Discord action node as everything else — so an action looks and configures identically whether you added it yourself or it came from a template.
- Node settings are now all laid out openly under clear headings — no more "Advanced settings" drawer to dig through. Everything a node can do is visible and organised.
- The node library is far tidier: six clear groups (Triggers, Discord, Twitch, Logic & flow, Data, Web & API) instead of a dozen nested sub-categories.
v2026.07.03.2NewVisual embed & button builders — zero JSON required
- Embeds are now built visually: title, description, color picker, images, author, footer and fields — with a live Discord-style preview as you type. Variables like {{username}} work in every text.
- Buttons and select menus are now built visually too: pick a style, type a label, done. Each button gets an ID with one-click copy — and the editor shows a green link icon when a "Button Click" trigger in your workflow already listens to it.
- Power users can still switch any builder to raw JSON mode with one click, and existing workflows keep working unchanged.
v2026.07.03.1ImprovedSimpler node configs — no more raw JSON for the common stuff
- Attachments are now a simple list of file links — paste a URL per entry instead of writing a JSON array. Your computer's local files can't be attached directly; the field now explains that clearly.
- Mentions & pings is now a dropdown (No pings / Users only / Everyone…) instead of a JSON object.
- Polls are now three simple fields: question, answers, duration — no more hand-written Discord poll JSON.
- The remaining advanced JSON fields got a live "Valid JSON" indicator, a Format button, and honest labels pointing you to the simpler alternative.
- The editor panels are now resizable: drag the edges of the node library, the config panel, and the execution bar — sizes are remembered.
v2026.07.02.2NewThe editor now teaches itself
- First time in the editor? An interactive guide walks you through building a workflow — you place the trigger, pick your server, connect the action yourself, and the guide follows your progress live.
- Replay it anytime with the "Guide" button at the bottom-right of the canvas.
- Config fields now have a "?" next to their label — hover it to learn exactly what the field does, including what happens when you leave it empty (e.g. no channel selected = the bot watches every channel it can see).
v2026.07.02.1NewNew guided setup — your first bot in under 5 minutes
- New accounts now get a step-by-step guided setup: connect your bot, pick your server, and we build and activate your first working command (!noria) for you — no configuration screens, no IDs to paste.
- The setup ends with a live test: send !noria on your own server and watch the workflow run in real time, node by node, right in the app.
- Connecting a bot now shows a clear recommendation: use a bot dedicated to Noria for predictable behavior — reusing a bot that other services also run can cause duplicated replies and overwritten commands.
- You can reopen the guided setup any time from the "Getting started" panel in the sidebar.
v2026.06.30.7ImprovedRunning a workflow is clearer (and safer)
- Running a workflow now plainly says its actions fire for real — there is no silent "test" that quietly bans or messages your live server.
- Before running a workflow that contains irreversible actions (ban, kick, time out, delete), we now ask you to confirm first — so a quick "let me try this" click can't moderate a real server by accident.
v2026.06.30.6NewChoose the account and server a workflow runs as
- Workflow settings now have a Connections tab: pick the default Discord server an action uses when you leave its Server field empty, and — if you stream on more than one channel — the Twitch account the whole workflow acts as.
- Multi-channel streamers: switching the Twitch account re-points the triggers AND actions to that channel automatically, so the same workflow can run on a second channel without rebuilding it.
v2026.06.30.5NewThe Code node can remember things and call APIs
- Inside a Code node you now have store — a little database that survives between runs: await store.get(key), store.set, store.increment, store.delete and store.cooldown. Build counters, per-user state, leaderboards and rate-limits in a few lines.
- And fetch(url, opts?) → { status, body, headers } to call any HTTP API right from your code, the same way the HTTP Request node does.
v2026.06.30.4ImprovedSmarter variable suggestions + grab a node anywhere
- The Insert-variable list now drills into nested data: after a test run you can pick body.user.name directly instead of just body — every field of the real output is suggested and searchable.
- Nodes drag from anywhere now — including the title. Renaming moved to right-click → Rename so a click on the name never gets in the way of moving the node.
v2026.06.30.3NewReal expressions in any field
- Inside {{ }} you can now write real expressions, not just a single variable. Do maths ({{ price * qty }}), compare and choose ({{ score > 5 ? "win" : "lose" }}), check membership ({{ "mod" in roles }}), and call handy functions like length(...), includes(...), round(...), min and max — all alongside the text and date helpers you already pipe with |.
- This turns plain fields into a mini formula bar: build a message, a number, or a condition right where you need it, without reaching for the Code node.
v2026.06.30.2NewNew data nodes — work with lists, text and dates, no code
- List — reshape a list without code: Map, Filter, Find, Sort, Unique, Group by, Reduce, Aggregate (sum / average / min / max / count), Slice and Join. Per-item expressions use item and index (and acc for Reduce).
- Compute — evaluate an expression to build an object ({ a: x, b: y }), an array ([x, y]) or a single value, ready for the next step.
- Regex — Extract values with capture groups, Replace text, or Match against a pattern.
- Date — get “now”, add or subtract a duration, measure the difference between two dates, format a date, or compare two.
- Together these cover the data-wrangling you used to need a Code node for — find them under Data and Functions in the Add-a-node panel.
v2026.06.30.1ImprovedActions target the right place automatically
- Discord and Twitch action nodes now use the server, member and channel from the trigger automatically when you leave those fields empty — so “Member Join → Add Role” just works, no IDs to copy in. Flip the new “Auto / Pick a specific…” toggle when you want to target somewhere else.
- The Add-a-node panel is reorganised for clarity: your connected Plugins first (Discord, Twitch, YouTube — each with its Triggers and themed actions like Messages, Roles and Moderation), then Flow control, Data, Variables, Functions, Utilities and Code.
v2026.06.22.4ImprovedCatch broken variables as you type
- When a {{variable}} points at a field that doesn’t exist on your data (a typo like {{body.usrname}}), it’s now underlined in red right in the field — hover it for a “did you mean {{body.username}}?” hint. No more discovering it only when the workflow runs.
v2026.06.22.3NewStart from a template
- A brand-new, empty workflow now offers one-click starter templates (Discord welcome, stream live alert…) right on the canvas — pick one, tweak it, save. Fastest way from blank to working.
v2026.06.22.2NewDrag data into fields & visible error handling
- Drag a variable chip straight onto any text field to drop it in (and auto-connect it) — no more typing {{paths}} by hand.
- Nodes with a custom “on error” recovery (skip / fallback / error branch…) now show a small shield badge on the canvas, so error handling is visible at a glance instead of hidden in the config.
v2026.06.22.1ImprovedEditor clarity pass
- Branch wires (true / false / error / case…) are now labelled right on the canvas, so you read a flow at a glance.
- A required field left empty is now flagged inline (red marker) instead of just a count in the header.
- Execution errors show in full in the run history (no more cut-off at two lines).
- Cleaner running/done/error badges on nodes (better contrast on the dark canvas) and a softer node-editor open.
v2026.06.21.5ImprovedMore multi-value options
- Channel and role filters on triggers can now hold SEVERAL channels/roles — the trigger fires if it matches any of them. Just keep adding from the picker.
- If/Else and Filter nodes gained “is one of” and “is not one of” operators — check a value against a whole list at once instead of chaining conditions.
- “Set member roles” is now a proper role picker (pick several by name; leave empty to clear all), and AutoMod blocked keywords use the same add-a-chip input.
v2026.06.21.4ImprovedFilters accept multiple values
- Trigger filters now take more than one value — add several emojis, keywords, prefixes, users or IDs and the trigger fires when ANY of them matches. Works on Discord (message, reaction, voice, button…) and Twitch (chat, channel points). Type a value and press Enter to add a chip.
v2026.06.21.3ImprovedSmarter node inputs
- Schedules: pick your timezone from a searchable list, and choose a cron schedule from ready-made presets (every 5 min, weekdays at 9am…) with a plain-language read-out so you know exactly when it runs.
- HTTP Request “Extract field” now autocompletes the path straight from the response — type a dot and pick the key instead of guessing the JSON shape.
v2026.06.21.2FixedEditor & reliability fixes
- The “You’re all set!” welcome no longer pops up every time you sign in — you’ll see it once, when you finish setting up.
- Discord channel, role, member and server pickers no longer flash blank for a moment while their lists load — your saved choice stays visible.
- Loops now isolate each pass cleanly, so a step skipped on one iteration can’t leak a stale value into the next.
v2026.06.21.1NewYouTube integration
- YouTube triggers — announce automatically when you go live or upload a new video, straight to Discord, Twitch, email or any API. Just paste your channel; no Google login needed.
v2026.06.20.1NewAccount security
- Two-factor authentication (2FA) — secure your account with an authenticator app (Google Authenticator, Authy, 1Password…). Turn it on in Settings → Security; you’ll get one-time recovery codes in case you lose your device.
- Optional sign-in captcha to keep bots and spam sign-ups out.
v2026.06.18.3FixedPolish & fixes
- Twitch (and all) trigger runs now reliably count toward a workflow’s run total — a run is counted the moment it starts, so nothing slips through.
- Run counts on the dashboard and analytics now refresh on their own — no more manual reload to see a workflow that just fired.
- Long values in node fields no longer get cut off — they scroll within the field.
- Cleaner node panel: the Discord config is open by default, and the input panel groups every upstream source (trigger included).
v2026.06.18.2NewNew building blocks
- Store node — keep counters, cooldowns and leaderboards that survive across runs.
- Cooldown node — rate-limit anything: anti-spam chat, one alert per N seconds, and more.
- Error handler — automatically run a workflow of your choice whenever another one fails.
- More {{ }} text helpers: capitalize, title-case, truncate, replace, length, round and abs.
v2026.06.18.1ImprovedA sharper editor
- Version history — compare any past version with the current one and roll back in a click.
- Run from here — test a node and everything downstream in one go.
- New auto-layout modes (Compact and one lane per trigger), magnetic alignment guides, and align / distribute for a selection.
- Copy & paste whole sections of a workflow — even across tabs.
- The node panel now lists every upstream source (the trigger included) grouped by origin, and long values scroll instead of getting cut off.
- Smoother, more reliable music playback with self-healing auto-skip.
v2026.06.17.1NewFaster, smoother, everywhere
- Command palette — press Ctrl + K anywhere to jump to any page or action.
- Light / dark theme toggle in the sidebar.
- A global loading bar so page loads feel snappier.
- The whole site (except the editor) is now mobile-friendly.
v2026.06.16.1ImprovedReliability & notifications
- Email alerts when a workflow fails or you near your monthly limit — toggle them in Settings → Notifications.
- Twitch triggers re-subscribe automatically after a restart — no more toggling workflows off/on.
- Self-healing: a node can fall back to a value, reuse its last good output, or skip instead of failing the run.
v2026.06.15.1NewA more powerful engine
- Loops — run a branch once per item in a list.
- Parallel execution — independent branches can run at the same time.
- Time-travel debugging — step through a finished run and inspect every node’s output.