Workflow Nodes & Integrations
Every endpoint you build in the API Builder is a workflow made of nodes. The engine ships 40 active nodes organized by category — from triggers and database access to AI, payments, and ~24 third-party integrations. Drag them onto the Visual Canvas, or just ask the AI to wire them up for you.
The postgresql node is disabled
Use the built-in dypai_database node to read and write your project database — no connection string needed. The standalone postgresql node is currently disabled.
Triggers
A trigger is the entry point of an endpoint. There are four trigger types — most endpoints use the HTTP API trigger (no node needed; it's the default).
| Trigger | Node | When it runs |
|---|---|---|
| HTTP API | (none — default) | When your app calls /api/v0/{name} |
| Webhook | webhook_trigger | When an external service POSTs to your webhook URL |
| Schedule | schedule_trigger | On a cron schedule |
| Telegram | telegram_trigger | On an incoming Telegram message |
| Twilio | twilio_trigger | On an incoming SMS/voice event from Twilio |
AI
| Node | What it does | Credential |
|---|---|---|
agent | Runs an AI agent (DYPAI Managed or BYOK), can call your tool endpoints | Optional — none for Managed, or OpenAI/Anthropic/Gemini for BYOK |
image_generation | Generates images, managed-only, returns a storage URL | None (billed as AI Credits) |
AI usage is metered as AI Credits
The agent node in DYPAI Managed mode and the image_generation node both consume AI Credits. With BYOK you pay your provider directly instead.
Database, Storage & Auth
| Node | What it does |
|---|---|
dypai_database | Query, insert, update, and delete rows in your project database |
dypai_storage | Upload, download, and manage files in your buckets |
dypai_auth | Server-side auth operations (create users, verify tokens, etc.) |
Payments
| Node | What it does | Credential |
|---|---|---|
stripe | Charges, customers, subscriptions, and more | Stripe (+ Stripe Webhook) |
polar | Billing and subscription management | Polar (+ Polar Webhook) |
Communication
| Node | What it does | Credential |
|---|---|---|
telegram | Send Telegram messages | Telegram |
whatsapp | Send WhatsApp messages | |
slack | Post to Slack channels | Slack |
discord | Post to Discord | Discord |
twilio | Send SMS / voice | Twilio |
resend | Send transactional email | Resend |
sendgrid | Send transactional email | SendGrid |
email_smtp | Send email over SMTP | SMTP |
email_imap | Read email over IMAP | IMAP |
dypai_mail | Managed email — zero-config sending | None |
Productivity, CRM & Ecommerce
| Node | What it does | Credential |
|---|---|---|
google_sheets | Read/write Google Sheets | Google Sheets |
airtable | Read/write Airtable bases | Airtable |
notion | Read/write Notion pages & databases | Notion |
trello | Manage Trello cards & boards | Trello |
github | Repos, issues, PRs | GitHub |
linear | Issues & projects | Linear |
calendly | Scheduling & events | Calendly |
hubspot | CRM contacts & deals | HubSpot |
shopify | Products & orders | Shopify |
Logic, Data & Core
These nodes shape and route data — no credentials required.
| Node | What it does |
|---|---|
logic | Conditional branching (if / else) |
filter | Keep or drop items by a condition |
merge | Combine multiple inputs into one |
foreach | Loop over a list |
set_fields | Build or reshape an object |
crypto | Hashing and encoding helpers |
wait_delay | Pause the workflow for a set time |
datetime | Format and manipulate dates/times |
HTTP Request & Code
| Node | What it does | Credential |
|---|---|---|
http_request | Call any REST API not covered by a dedicated node | HTTP Request (optional) |
javascript_code | Run custom JavaScript with plaintext env_vars (ctx.env) | None |
The Code node can't use typed Credentials
The javascript_code node reads only its own plaintext env_vars exposed as ctx.env.* — it cannot select typed Credentials and has no ctx.secrets. For runtime secrets, use Backend Secrets; for third-party provider keys, use Credentials on the dedicated integration nodes.
Which nodes need Credentials?
Any node that talks to a third-party service asks for a matching typed credential — DYPAI ships 26 credential types plus a generic Custom key-value type. Store them once in the Credentials section, then pick them on the node. Logic, data, core, and the dypai_* nodes need no credential at all.