Data Nodes let your forms make HTTP API calls during the form flow. They are invisible to respondents — they execute automatically and can fetch data from external APIs, validate answers against your backend, or trigger actions.
Data Nodes are available on all plans and do not count as a visible question in the form.
Adding a Data Node
- Open your form in the builder.
- Click + to add a new question.
- Select Data Node from the Advanced category.
- Configure the HTTP request in the question properties.
Configuration
HTTP Method
Choose from GET, POST, PUT, or DELETE depending on your API endpoint.
URL
The endpoint URL to call. Supports variable interpolation — use {variableName} to insert form variable values.
Example: https://api.example.com/users/{email}
If the respondent entered jane@example.com in an earlier email question stored as the email variable, the actual request goes to https://api.example.com/users/jane@example.com.
Headers
JSON object of request headers. Variable interpolation is supported here too.
Example:
{
"Authorization": "Bearer {api_token}",
"Content-Type": "application/json"
}
Request Body
For POST and PUT requests, provide a JSON body template. Variable interpolation is supported.
Example:
{
"name": "{full_name}",
"email": "{email}",
"source": "nueform"
}
Response Handling
Storing the Response
Set the Response Variable field to save the full JSON response as a form variable. You can then reference this data in later questions using {variableName} syntax.
Example: If you set the response variable to user_data and the API returns {"name": "Jane", "plan": "pro"}, you can reference {user_data} in subsequent questions.
Display Options
Loading Text
Customize the loading message shown while the request is in progress. Default: "Loading..."
Silent Mode
Enable Silent mode to make the request in the background with no loading indicator. The form continues without waiting. Useful for fire-and-forget scenarios like analytics pings or webhook triggers.
Debug Mode
Enable Debug mode to show a panel with the full request and response details. Useful during form development — disable before publishing.
Validation Gate
Enable Validation gate to use the Data Node as a validator for the previous question. If the API request fails (non-2xx response), the respondent is blocked from proceeding and shown an error.
Use case: Validate a coupon code, check email availability, or verify an access code against your backend.
Timeout
Configure the request timeout in seconds (default: 10 seconds). If the request takes longer, it fails and the form shows an error (unless in silent mode).
Examples
Example 1: Validate a Coupon Code
- Add a Short Text question asking for a coupon code (store answer as
couponvariable). - Add a Data Node after it with:
- Method:
GET - URL:
https://api.yoursite.com/coupons/{coupon} - Validation gate: enabled
- Response variable:
coupon_data
- Method:
- If the coupon is invalid, the API returns a 404 and the respondent sees an error.
- If valid, the discount info is stored in
{coupon_data}for use later.
Example 2: Enrich User Data
- Add an Email question (store answer as
emailvariable). - Add a Data Node:
- Method:
GET - URL:
https://api.yoursite.com/users/{email} - Silent mode: enabled
- Response variable:
user_info
- Method:
- Later questions can reference
{user_info}to pre-fill fields or personalize the experience.
Example 3: Submit to CRM
- At the end of the form, add a Data Node:
- Method:
POST - URL:
https://api.yourcrm.com/leads - Body:
{"name": "{name}", "email": "{email}", "phone": "{phone}"} - Silent mode: enabled
- Method:
- The lead is created in your CRM as part of the form flow — no webhook delay.
Related
- Variables — How variable substitution works
- Logic Jumps — Conditional branching based on answers
- Webhooks — Alternative for post-submission integrations