Quick-Start Templates
Every template below is a working workflow you can deploy in under five minutes. Click the "Create this workflow" link to open Tensorify with the nodes already wired up — then hit Test to see live output.
Prerequisites:
- A Tensorify account with a workspace
- CLI installed if you plan to deploy locally:
npm install -g @tensorify.io/cli
Difficulty: Beginner · Nodes: Webhook Trigger → Return
The simplest possible workflow. It receives any webhook request and returns the full envelope — body, headers, query string, HTTP method, and path. Use it to inspect what external services are actually sending you.
When to use this:
- Debugging a third-party webhook (Stripe, GitHub, Shopify) to see the exact payload
- Building a health-check endpoint for monitoring tools
- Learning how Tensorify nodes connect
The webhook payload includes body, headers, query, method, path, and request.receivedAt — everything you need for debugging.
Difficulty: Beginner · Nodes: Webhook Trigger → Transform → Return
Takes a name from the request body and returns a personalised greeting. Demonstrates the Transform node's {{ }} binding syntax, which lets you build JSON responses from incoming data without writing code.
When to use this:
- First-time introduction to Tensorify's data-binding syntax
- Quick prototype of a micro-API that formats a response from user input
Example request:
{ "name": "Faisal" }
Example response:
{ "greeting": "Hello, Faisal!", "receivedAt": "2026-05-15T17:28:37Z" }
Difficulty: Beginner · Nodes: Webhook Trigger → HTTP Request → Return
Forwards an incoming webhook request to an external REST API and returns the result. The default calls JSONPlaceholder, but you can swap the URL to proxy any public API — weather, exchange rates, or your own internal services.
When to use this:
- Adding CORS headers or auth to an API your frontend can't call directly
- Aggregating multiple APIs behind a single Tensorify endpoint
- Quickly testing external API responses without writing a server
If the upstream API is slow, increase the timeout setting on the HTTP Request node (default is 10 seconds).
Difficulty: Beginner · Nodes: Webhook Trigger → Transform → Return
Takes flat, inconsistent JSON and remaps it into a clean, standardised structure. The example converts raw contact data (separate first_name, last_name, email_address fields) into a unified contact object.
When to use this:
- Normalising webhook payloads from different CRMs or forms before storing them
- Mapping between two API formats (e.g., Salesforce → HubSpot)
- Cleaning up data before passing it to a downstream workflow
Example input:
{
"first_name": "Faisal",
"last_name": "Sifat",
"email_address": "[email protected]",
"phone": "+1234567890"
}
Example output:
{
"contact": {
"fullName": "Faisal Sifat",
"email": "[email protected]",
"phone": "+1234567890"
},
"source": "webhook",
"processedAt": "2026-05-15T17:30:17Z"
}
Difficulty: Intermediate · Nodes: Webhook Trigger → If → Transform / Stop → Return
Routes incoming events based on a condition. High-priority events build a critical alert response; low-priority events are silently dropped with the Stop node.
When to use this:
- Filtering noisy monitoring alerts — only forward critical ones to Slack / PagerDuty
- Building a simple triage layer for event-driven systems
- Demonstrating branching logic to your team
The If node uses {{ }} expression syntax. The condition {{ input.get("body", {}).get("priority", "") }} == "high" checks the priority field in the request body.
High-priority response:
{
"alert": true,
"severity": "critical",
"message": "Server CPU at 95%",
"action": "Notify on-call engineer"
}
Difficulty: Intermediate · Nodes: Webhook Trigger → HTTP Request → Transform → Return
Receives a request, fetches additional data from an external API, and merges the results into a clean response. The example calls JSONPlaceholder to look up a user profile and returns only the essential fields.
When to use this:
- Enriching CRM leads with company data from Clearbit, Apollo, or your own database
- Building an internal lookup service that combines multiple data sources
- Adding computed fields (like
enriched: trueor a timestamp) before returning data
The Transform node uses http_request (the emitted variable from the HTTP Request node) to access the API response. This is how Tensorify passes data between non-adjacent nodes.
Example output:
{
"user": {
"name": "Leanne Graham",
"email": "[email protected]",
"company": "Romaguera-Crona"
},
"enriched": true,
"source": "jsonplaceholder-api"
}
Difficulty: Intermediate · Nodes: Webhook Trigger → Code → Return
Runs arbitrary Python on the incoming data. The example filters a list of numbers above a threshold and computes statistics. Use this when Transform bindings aren't enough and you need loops, math, or custom logic.
When to use this:
- Running business logic that's too complex for Transform expressions
- Batch-processing arrays, computing aggregations, or validating schemas
- Prototyping a data pipeline step before moving it to production code
The Code node runs in a sandboxed Python environment. Most standard builtins and modules (including math, json, os.path, round, etc.) are available. Only dangerous operations like eval, exec, and ctypes are blocked.
Example request:
{ "items": [10, 25, 3, 47, 8, 15], "threshold": 10 }
Example response:
{
"filtered": [25, 47, 15],
"count": 3,
"total": 6,
"average": 29,
"max": 47
}
- Deploy a workflow: Once you've tested your template, deploy it as a live webhook endpoint.
- Chain workflows: Use the Subworkflow plugin to call one workflow from another.
- Add secrets: Store API keys safely with Environment Variables.
- Explore all plugins: See the full Plugin Reference.
