Suede AI Agent StudioDocsStart buildingOpen workspace
Navigation menu

Every node in the catalog

Every node you can wire: 122 node types in 11 groups, 72 of them free on the platform side and 33 with a fixed per-call estimate. Each row says what the node does, what a dry run stubs, and what it can read, write or spend, and the reference updates itself whenever the palette grows.

What you'll do
Look up any node: what it does, whether a dry run stubs it, what it can read, write, or spend, and what it costs per call.
What you'll have
The right node for each step, with its cost and side effects known before you wire it in.
Quick definitions: node and dry run
Node
One step on the canvas: a trigger, a model call, a tool, a branch, or an output. Edges between nodes carry data and set the order they run in.
Dry run
A test run that executes your flow's logic for real but stubs every step that would cost money or reach an outside system, so nothing is spent.

Four columns, no surprises

Dry run is what the node does in the default free mode. “Runs for real” means the node executes its actual logic in a dry run because it costs nothing and reaches nothing external on its own. “Stubbed” means the engine intercepts the node before its executor runs and returns a placeholder in the real output shape: no money moves, no external system is touched.

Effects are the node's declared capabilities: what it can read, write, send, spend, publish, or settle. A dash means the node is pure local computation. Subflow and Loop declare every effect because they run another flow: their true effects are whatever the inner flow contains, and the engine budgets them accordingly.

Cost is the platform-side price. “Variable” covers three pricing cases: AI nodes metered in gateway tokens, HTTP-shaped nodes whose real cost is whatever the target service bills you, and Subflow/Loop whose cost is the sum of what runs inside them. Fixed estimates are per call when the backing route is public. Internal operational profiles say “Internal only”; retired compatibility profiles say “Route unavailable.” Neither is part of the public price ledger. The pricing model behind all of this is documented in Billing.

Field-level detail for the four general-purpose workhorses (HTTP, Webhook, Transform, Loop), including caps, the SSRF guard, and the expression grammar, lives on the quick reference.

Triggers

3 nodes

How a run starts: on a five-field UTC cron schedule, or when an HMAC-authenticated webhook delivery arrives.

NodeWhat it doesDry runEffectsCost
SchedulescheduleRuns the flow on a schedule you pick: daily, weekdays, weekly or monthly.Runs for real-Free
WebhookwebhookStarts a flow when an authenticated inbound request arrives.Runs for real-Free
CRM Triggercrm.triggerStarts this workflow when something happens in your CRM: a contact is created or tagged, a deal changes stage, a task comes due.Runs for real-Free

I/O

2 nodes

The flow's boundary: what comes in when a trigger fires, and what a finished run returns to its caller.

NodeWhat it doesDry runEffectsCost
InputinputSupplies trigger data and optional default fields to a flow.Runs for real-Free
OutputoutputMarks and labels a final flow result.Runs for real-Free

AI

5 nodes

Judgment steps on the Claude-backed gateway. No API key of your own; usage is metered in gateway tokens.

NodeWhat it doesDry runEffectsCost
LLM (Claude)llmGenerates a model response from a prompt and upstream context.StubbedspendVariable
Classifyai.classifySorts an upstream value into one of your own labels.StubbedspendVariable
Extract Fieldsai.extractPulls named fields out of messy text as a structured object.StubbedspendVariable
Transcribe Audioai.transcribeTurns a spoken audio clip into text, or passes typed text straight through.Stubbedspend$0.053 est.
Speak (Text to Speech)ai.speakReads text aloud and returns a playable MP3 clip.Stubbedspend$0.089 est.

Logic

8 nodes

The plumbing that makes a graph a program: HTTP calls, reshaping, routing, reducing, and running other flows as steps.

NodeWhat it doesDry runEffectsCost
HTTP RequesthttpCalls an HTTP endpoint with a configurable method, headers, and body.Stubbedread · write · delete · sendVariable
TransformtransformReshapes upstream data with the local expression language.Runs for real-Free
Waitlogic.waitPauses this branch of a CRM workflow for a set time or until a date, then carries on. Test runs skip the wait.Runs for real-Free
BranchbranchRoutes an upstream value through a true or false output.Runs for real-Free
Switchlogic.switchRoutes an upstream value to one of four named outputs, or to fallback.Runs for real-Free
Aggregatelogic.aggregateReduces a list to a single count, sum, average, minimum or maximum.Runs for real-Free
SubflowsubflowRuns another flow as a reusable step.Runs for realread · write · delete · send · spend · publish · settleVariable
LooploopRuns a referenced flow once for each item in an array.Runs for realread · write · delete · send · spend · publish · settleVariable

Docs & Data

10 nodes

Documents and structured data processed on the platform: PDF and DOCX text, spreadsheets, row cleanup, knowledge search, and one read-only web fetch.

NodeWhat it doesDry runEffectsCost
Extract PDF Textdocs.extractTextExtracts plain text from a PDF's raw bytes.Runs for real-Free
Resource Queryresource.queryQueries one exact approved Resource Pack version through its public field allowlists.Runs for realreadFree
Extract DOCX Textdocs.extractDocxExtracts plain text from a Word document's raw bytes.Runs for real-Free
Knowledge Searchdocs.knowledgeSearchRetrieves the passages most relevant to a query from a small set of documents.Runs for real-Free
Generate Text Report PDFdocs.generateReportPdfRenders a title and bounded plain-text sections into a downloadable PDF.Runs for real-Free
Parse Spreadsheetdata.parseSpreadsheetParses CSV or XLSX bytes into an array of row objects.Runs for real-Free
Filter and Clean Rowsdata.filterRowsFilters, removes empty or duplicate rows, projects fields, and stable-sorts structured data.Runs for real-Free
Generate Spreadsheetdata.generateSpreadsheetGenerates a downloadable XLSX workbook from structured rows.Runs for real-Free
Fetch a URLweb.fetchUrlFetches a URL with a read-only GET and returns bounded page text, parsed JSON, or a matched price number.StubbedreadVariable
Generate CSVdata.generateCsvGenerates a downloadable CSV file from structured rows, ready for Excel, Google Sheets, or a CRM import. Takes keyword, backlink, and audit results straight from the step before it.Runs for real-Free

Comms & CRM

38 nodes

Outbound messages to the systems a business already runs on, delivered through webhooks you configure.

NodeWhat it doesDry runEffectsCost
Create or Update Contactcrm.upsertContactFinds a contact by email or phone and updates it, or creates one. Tags are added, never removed.StubbedwriteFree
Update Contactcrm.updateContactAdds or removes tags, sets fields, changes do-not-disturb or adjusts the lead score of one contact.StubbedwriteFree
Find Contactcrm.findContactLooks up a contact by id, email or phone and passes it along. Finds nothing without failing.StubbedreadFree
Opportunitycrm.opportunityCreates an opportunity, moves it to a stage, marks it won or lost, or updates its value.StubbedwriteFree
Add Notecrm.addNoteAdds a note to a contact's timeline.StubbedwriteFree
Create Taskcrm.createTaskAdds a follow-up task for a contact, due a number of hours or days from now.StubbedwriteFree
Send Emailcomms.sendEmailEmails a contact and logs it on their timeline. Skips contacts with email do-not-disturb on.Stubbedsend · writeFree
Send Textcomms.sendSmsTexts a contact through your Twilio number and logs it on their timeline. Skips contacts with text do-not-disturb on.Stubbedsend · writeFree
Send Email Templatecomms.sendTemplateEmails a contact one of your designed templates from CRM → Marketing, with merge fields and trigger links filled in for that contact and the unsubscribe footer added. Skips contacts with email do-not-disturb on.Stubbedsend · writeFree
Invoice or Payment Linkcrm.invoiceBills the contact through your own Stripe account: creates and sends an invoice from your products or line items, or texts and emails a payment link for an amount.Stubbedsend · writeFree
Appointmentcrm.appointmentBooks a contact onto one of your calendars, marks an appointment confirmed, showed, no-show or cancelled, makes a booking link prefilled with the contact's details, or checks whether the contact booked so follow-ups reach only the leads who did not.Stubbedsend · writeFree
Send a document for signaturecrm.sendDocumentTurns one of your document templates into a contract, proposal or agreement for the contact, fills in their details, and emails each signer a secure signing link. Signed copies come back with a certificate of completion.Stubbedsend · writeFree
Ask for a Reviewcrm.reviewRequestSends the contact your review request by email, text or both, with a link to rate you and every review site you list in CRM → Reputation. Skips anyone asked in the last 30 days.Stubbedsend · writeFree
Post to Socialsocial.postPublishes a post to your own social accounts in CRM → Social (LinkedIn, Facebook, Instagram, X, Bluesky, Threads, Google Business Profile, Pinterest), now or a few minutes later, or sends it for your approval first.Stubbedsend · writeFree
Grant Course Accesscrm.grantCourseAccessGives the contact access to one or more of your courses in CRM → Memberships and emails them their member portal sign-in link, so a purchase, a form or a tag can open a course on its own.Stubbedsend · writeFree
Revoke Course Accesscrm.revokeCourseAccessTakes the contact's access to courses in CRM → Memberships away, for example when a refund is issued or a subscription ends. Their progress is kept if you grant access again.StubbedwriteFree
Create One-use Couponcrm.couponCreates a coupon with one redemption in CRM Payments, then passes its code to the next step.StubbedwriteFree
Add to Affiliate Programcrm.affiliateMakes the contact an affiliate in one of your campaigns in CRM → Affiliates, with a referral code and link, and can email them their links and portal sign-in. Also batches an affiliate's approved commissions into a scheduled payout, or marks a payout paid once you have sent it.Stubbedsend · writeFree
CRM Reportcrm.reportReads your CRM's numbers for a date range: new leads, deals won, revenue, appointments, replies, campaigns, reviews and top lead sources, each with its change from the period before. Agencies can roll up every account they manage into one report.StubbedreadFree
Record Ad Spendcrm.adSpendRecords what you spent on ads in CRM → Reporting, so attribution shows cost per lead and return on ad spend: import the spend per ad from your connected Google Ads, Meta and TikTok accounts (Marketing → Ads), or record a day, a platform, a campaign and its utm tags from a schedule, an inbound webhook or an HTTP step.StubbedwriteFree
Manage Sub-accountcrm.subAccountCreates a sub-account for a new client (with its plan and a snapshot loaded), pauses, reactivates or archives one, changes its plan, or loads a snapshot into it. Acts only on sub-accounts your agency owns.Stubbedsend · writeFree
Sub-account Plancrm.saasPlanReads a sub-account's plan, trial, payment state, caps and this month's usage so a workflow can branch on them, or extends its trial by a number of days. Acts only on sub-accounts your agency owns.StubbedwriteFree
Invite Team Membercrm.teamInviteInvites someone to this account's team, or to a sub-account your agency owns, as an Admin or a User with the areas you choose, and emails them the sign-in link.Stubbedsend · writeFree
Load Snapshot into Sub-accountcrm.loadSnapshotLoads one of your snapshots into a sub-account: pipelines, forms, calendars, sites, templates and the workflows that run them. Put it after a CRM Trigger on Sub-account created and every new client starts fully set up.StubbedwriteFree
Communitycrm.communityAdds the contact to a community group on your member portal, removes them, publishes an announcement, awards community points or pins a post. Pair it with Course access granted or Payment received to open a group the moment someone enrols or buys.StubbedwriteFree
Review Assignmentcrm.reviewAssignmentApproves a member's lesson assignment or asks for changes, with feedback and a score, like the review queue in CRM → Memberships. Put an AI step before it to grade the answers, and approval completes the member's lesson.StubbedwriteFree
Store Ordercrm.orderShips a store order with a carrier and tracking link, or refunds it on your Stripe. Refunds are dry runs until you turn on live refunds in CRM → Store → Settings.StubbedwriteFree
Send Messagecrm.sendMessageReplies to a contact on any inbox channel: the one they just wrote on, or text, email, web chat, Messenger, Instagram, WhatsApp. Uses the channels in CRM → Conversations, follows each provider's reply window, and can send only outside your open hours for an after-hours reply.Stubbedsend · writeFree
Call: Saycrm.callSayA call flow (IVR) step: reads a message to the caller. Put it after a CRM Trigger on Inbound call and set the number to answer with this workflow in CRM → Settings → Phone.Runs for real-Free
Call: Menucrm.callGatherA call flow (IVR) step: asks the caller to press a key and continues along the matching option (A to D), or Fallback when they press nothing or another key. In the workflow's own run it follows the key the caller pressed.Runs for real-Free
Call: Forwardcrm.callForwardA call flow (IVR) step: rings a phone and connects the caller. Continues along Missed when nobody answers (or into voicemail when nothing follows). Can record the call after a consent notice.Runs for real-Free
Power Dialer Listcrm.dialListBuilds a power dialer session from a smart list or a pipeline stage (or the contact this run is about), ready in CRM → Phone → Dialer. Contacts without a phone or with call do-not-disturb are left out.StubbedwriteFree
Add Phone Numbercrm.buyNumberFinds an available number (by area code or digits) and adds it to the account on the agency's Twilio. A dry run that rents nothing unless the agency turned on live numbers in CRM → Settings → Phone. Emits Phone number added.StubbedwriteFree
Assign Calendar Teamcrm.calendarTeamPuts real people on the numbered seats (Team member 1, 2, ...) a snapshot leaves on its calendars: the ones you name, and the rest from this account's team. Put it after a CRM Trigger on Snapshot loaded and every new account's booking calendars name its own staff.StubbedwriteFree
Audit Prospect Websitecrm.prospectAuditChecks a prospect website with the public SEO and AI-answer readiness crawler, saves the evidence and emits Prospect audit completed.Stubbedread · writeFree
Open SEO Client Workspacecrm.prospectWorkspaceCarries an attached prospect audit into a reusable client workspace and SEO project. Evidence stays private until reviewed for a packet.Stubbedread · writeFree
Slack Messagecomms.slackMessagePosts a message to a Slack incoming webhook.StubbedsendFree
CRM Webhookcomms.crmWebhookSends a JSON record to any CRM or automation webhook.StubbedsendFree

Finance & Ops

2 nodes

Operational paperwork as a node: structured line items in, a rendered invoice out.

NodeWhat it doesDry runEffectsCost
Commerce Shoppercommerce.shopperSearch a merchant catalog and prepare a buyer-approved PayPal checkout through its MCP storefront.Stubbedread · write · spendVariable
Generate Invoice PDFfinance.generateInvoicePdfRenders structured line items into a PDF invoice.Runs for real-Free

Dev & Infra

3 nodes

GitHub as a set of typed steps: read issues and pull requests, file or comment on issues, dispatch workflows.

NodeWhat it doesDry runEffectsCost
GitHub Readdevops.githubReadReads an issue, a pull request, or a filtered issue list from GitHub.Stubbedread · sendFree
GitHub Issuedevops.githubIssueCreates or comments on a GitHub issue via the REST API.StubbedsendFree
GitHub Workflow Dispatchdevops.githubWorkflowDispatchTriggers a workflow_dispatch event via the GitHub REST API.StubbedsendFree

Music & IP

9 nodes

The Suede AI music vertical. Generate Song uses a public x402 route; Analyze and Rights Lookup are internal-only; other authored profiles remain visible for saved-flow compatibility.

NodeWhat it doesDry runEffectsCost
Style Coachsuede.styleCoachCompatibility profile · route unavailableDevelops a creative direction from a style reference.Stubbedread · spendRoute unavailable
Lyricssuede.lyricsCompatibility profile · route unavailableGenerates lyrics from a prompt or upstream result.Stubbedread · spendRoute unavailable
Generate Songsuede.generateSongGenerates a song from a text description.Stubbedread · spend$0.500 est.
Analyzesuede.analyzeInternal profile · not a public offeringAnalyzes an audio asset and returns its musical characteristics.Stubbedread · spendInternal only
Stemssuede.stemsCompatibility profile · route unavailableSeparates an audio asset into instrumental and vocal stems.Stubbedread · spendRoute unavailable
MIDIsuede.midiCompatibility profile · route unavailableConverts an audio asset to MIDI data.Stubbedread · spendRoute unavailable
Masteringsuede.masteringCompatibility profile · route unavailableMasters an audio asset for polished playback.Stubbedread · spendRoute unavailable
Rights Lookupsuede.rightsLookupInternal profile · not a public offeringLooks up registry-backed rights data for an asset hash.Stubbedread · spendInternal only
Chain Chatsuede.chainChatCompatibility profile · route unavailableSends a message through the Suede chain chat endpoint.Stubbedread · spendRoute unavailable

Rails

5 nodes

Agent-commerce rails: IP registration and promo campaigns on Base, royalty split tables, and the Connector Lab's simulation-only prototype.

NodeWhat it doesDry runEffectsCost
API Operationapi.operationPrototype: simulation onlySimulates one immutable imported API operation with typed request and result ports.StubbedwriteVariable
Register IPsuede.registerIpRegisters an upstream asset with the Suede AI IP Registry on Base.Stubbedwrite · publishFree
Royalty Splitsuede.royaltySplitBuilds a basis-point royalty split table for an asset.Runs for real-Free
Launch Promosuede.promoCreates a creator promotion campaign from a campaign brief.Stubbedwrite · publishFree
Promo Claimssuede.promoClaimsReads Suede Promo campaign claims and verdicts (read-only mirror).StubbedreadVariable

Catalog versus palette

This page lists the complete authored catalog, generated from the catalog module the studio ships (src/lib/flow/node-definitions.ts), so it matches the product node for node. Your studio palette shows the nodes enabled for your workspace. 2 Suede profiles power internal operations, and 6 compatibility profiles keep older saved flows readable. The Connector Lab's API Operation node is built for simulation, so launch keeps it out of live agents. The public gateway routes and their prices live on Pricing.

Last updated .

Good work starts with a clear flow.

Give an agent a job. Connect the steps. See how the work becomes a service someone else can call.

Input
Reason
Output

A workflow you can inspect

Make the steps visible.

Start with a template or describe the job. Connect inputs, reasoning, and output on the canvas.

Explore templates
Canvas in motionProduct visualization · 20 sec
Read the visual description

A stylized organization chart opens into a workflow canvas. Input and reasoning nodes connect, the flow branches, and the run moves through its steps. The film ends with Suede AI Agent Studio. Music only; no spoken narration.