NueForm

Advanced Question Types

Legal/Terms, Payment, Date, Ranking, Matrix, Contact Info, Address, और Data Node question types का documentation।

एक terms and conditions acceptance question जो statement present करता है और respondent से accept या decline करने की आवश्यकता होती है।

Legal Question
A legal/terms acceptance question.

Type identifier: legal

Properties

PropertyTypeविवरणDefault
buttonTextstringDisplay होने वाला legal text या terms। यह उस legal agreement का text है जिसे respondent accept कर रहा है।None

Behavior

  • buttonText से legal text display होता है।
  • Respondent "I accept" या "I don't accept" click करता है।
  • Typically privacy policies, terms of service, consent forms, और data processing agreements के लिए उपयोग होता है।

Validation

यदि required true है, respondent को आगे बढ़ने के लिए terms accept करने होंगे। Required question पर decline करने ("I don't accept" select करने) पर validation error दिखाई देगा।

Logic Jump Operators

equals, not_equals, is_answered, is_not_answered

equals उपयोग करते समय, true (accepted) या false (declined) से compare करें।

Answer Format

Answer एक boolean (true accept के लिए, false decline के लिए, या unanswered होने पर null) के रूप में store होता है।

Quiz Mode Scoring

Legal एक scorable question type है:

  • Knowledge Quiz: correctAnswers को "true" या "false" के साथ set करें।
  • Lead Qualification: choiceScores को "true" और "false" keys के साथ set करें।
  • Match Quiz: choiceOutcomes को acceptance/decline से end screens में mapping set करें।

Legal question type functionally Yes/No के समान है लेकिन विशेष रूप से terms and conditions scenarios के लिए designed है। UI "Yes" / "No" की बजाय "I accept" / "I don't accept" buttons present करता है।


Payment

Stripe integration का उपयोग करके form flow के हिस्से के रूप में respondents से payments collect करें। दो payment modes, configurable currencies, और fixed या variable amounts support करता है।

Type identifier: payment

Payment Modes

ModePlansविवरण
platformAll plansNueForm payments process करता है और आपको funds transfer करता है। प्रति transaction 2.9% + $0.30 fee।
connectPro, EnterprisePayments सीधे आपके connected Stripe account में जाते हैं। कोई NueForm fees नहीं।

Properties

PropertyTypeविवरणDefault
pricenumberMajor units में fixed payment amount (जैसे, 29.99)। Variable amounts के लिए खाली छोड़ें।None
currencystringCurrency code (जैसे, "USD", "EUR", "GBP")।"usd"
paymentModestringPayment mode: "platform" या "connect""platform"
paymentDescriptionstringStripe charge पर दिखाई देने वाला description।None
paymentButtonTextstringPay button के लिए custom text।"Pay $X.XX"
minAmountnumberVariable payments के लिए minimum allowed amount (major units)।None
maxAmountnumberVariable payments के लिए maximum allowed amount (major units)।None
stripeConnectionIdstringउपयोग किए जाने वाले connected Stripe account की ID।None
enableTrackingbooleanCumulative payment totals track करें।false
paymentAccountIdstringPayment tracking account ID।None
accountTotalVariablestringRunning account total store करने के लिए variable name।None

Behavior

  • यदि price set है, respondent fixed amount देखता है और card details provide करता है।
  • यदि price set नहीं है, respondent अपना amount enter करता है (variable/donation mode)।
  • Secure card collection के लिए Stripe Payment Element render होता है।
  • Successful payment पर, form अगले question पर auto-advance करता है।

Validation

यदि required true है, respondent को आगे बढ़ने के लिए payment complete करना होगा।

Logic Jump Operators

equals, not_equals, is_answered, is_not_answered

Answer Format

Answer एक PaymentResult object के रूप में store होता है:

json
{
  "paymentIntentId": "pi_abc123",
  "amount": 2999,
  "currency": "usd",
  "status": "succeeded"
}

Setup instructions के लिए, Collect Payments how-to guide देखें।


Date

Respondents को date select करने की अनुमति देने वाला date picker। Configurable date formats support करता है।

Date Question
A date picker question.

Type identifier: date

Properties

PropertyTypeविवरणDefault
dateFormatstringवह format जिसमें date display और parse होती है (जैसे, "MM/DD/YYYY", "DD/MM/YYYY", "YYYY-MM-DD")।System default

Behavior

  • Date picker interface display होता है।
  • Respondent manually date type कर सकता है या calendar widget से select कर सकता है।
  • Display format से स्वतंत्र, date ISO format में store होती है।

Validation

यदि required true है, respondent को date select करनी होगी।

Ruleविवरण
minMinimum allowed date।
maxMaximum allowed date।
customMessageDate validation के लिए custom error message।

Logic Jump Operators

equals, not_equals, is_answered, is_not_answered

Answer Format

Answer एक string (date value, typically ISO format या configured dateFormat में) के रूप में store होता है।


Ranking

Respondent को drag and drop करके preferred order में arrange करने के लिए items की list present करें।

Ranking Question
A drag-to-rank question.

Type identifier: ranking

Properties

PropertyTypeविवरणDefault
choicesChoice[]Rank करने के लिए items का array। प्रत्येक में id और label है।[]

Behavior

  • Items list में display होते हैं।
  • Respondent items reorder करने के लिए drag करता है।
  • Drag handles draggable items indicate करते हैं।
  • Touch और mouse interaction दोनों supported हैं।

Validation

यदि required true है, respondent को ranking submit करनी होगी।

Logic Jump Operators

equals, not_equals, is_answered, is_not_answered

Answer Format

Answer एक array of strings (respondent के ranked order में choice IDs) के रूप में store होता है।


Matrix

एक grid-based question type जहां respondents multiple items को multiple categories में rate करते हैं।

Matrix Question
A matrix/grid question.

Type identifier: matrix

Properties

PropertyTypeविवरणDefault
rowsstring[]Row labels का array (rate किए जा रहे items)।[]
columnsstring[]Column labels का array (rating categories)।[]
randomizeRowsbooleanRows का order randomize करें।false
randomizeColumnsbooleanColumns का order randomize करें।false

Behavior

  • Grid rows left side पर और columns top पर display होता है।
  • Respondent प्रति row एक option select करता है।
  • Mobile पर, grid बेहतर usability के लिए stacked format में adapt होता है।

Validation

यदि required true है, respondent को हर row के लिए option select करना होगा।

Logic Jump Operators

equals, not_equals, is_answered, is_not_answered

Answer Format

Answer एक object के रूप में store होता है जो row labels को selected column labels से map करता है:

json
{
  "Quality": "Excellent",
  "Speed": "Good",
  "Support": "Average"
}

Contact Info

एक ही question में name, email address, और phone number सहित structured contact information collect करें।

Type identifier: contact_info

Properties

PropertyTypeविवरणDefault
defaultCountryCodestringPhone field के लिए default country code (जैसे, "US", "GB")।None

Behavior

  • First Name, Last Name, Email, और Phone Number के लिए fields display होते हैं।
  • Phone field में country code selector शामिल है।
  • प्रत्येक sub-field individually required या optional हो सकता है।

Validation

यदि required true है, सभी visible sub-fields complete होने चाहिए।

Logic Jump Operators

equals, not_equals, is_answered, is_not_answered

Answer Format

Answer एक object के रूप में store होता है:

json
{
  "firstName": "Jane",
  "lastName": "Smith",
  "email": "jane@example.com",
  "phone": "+14155551234"
}

Address

Google Places द्वारा powered optional autocomplete के साथ पूर्ण mailing address collect करें।

Type identifier: address

Properties

PropertyTypeविवरणDefault
enableAddressAutocompletebooleanAddress lookup के लिए Google Places autocomplete enable करें।false

Behavior

  • Street address, city, state/province, postal code, और country के लिए fields display होते हैं।
  • Autocomplete enabled होने पर, street field में type करने पर address suggestions दिखाई देते हैं।
  • Suggestion select करने पर सभी address fields auto-fill हो जाते हैं।

Validation

यदि required true है, सभी address fields complete होने चाहिए।

Logic Jump Operators

equals, not_equals, is_answered, is_not_answered

Answer Format

Answer एक object के रूप में store होता है:

json
{
  "street": "123 Main St",
  "city": "San Francisco",
  "state": "CA",
  "postalCode": "94105",
  "country": "US"
}

Data Node

एक invisible question type जो form flow के दौरान HTTP API calls करता है। Data Nodes respondents को render नहीं होते -- ये स्वचालित रूप से execute होते हैं और data fetch, answers validate, या external actions trigger कर सकते हैं।

Type identifier: data_node

Properties

PropertyTypeविवरणDefault
dataNodeUrlstringCall करने के लिए URL। {variable} interpolation support करता है।None
dataNodeMethodstringHTTP method: "GET", "POST", "PUT", "DELETE""GET"
dataNodeHeadersstringRequest headers की JSON string। {variable} interpolation support करती है।"{}"
dataNodeBodystringRequest body की JSON string। {variable} interpolation support करती है।""
dataNodeResponseVariablestringपूर्ण JSON response store करने के लिए variable name।None
dataNodeTimeoutnumberSeconds में request timeout।10
dataNodeSilentbooleanFire-and-forget mode -- कोई loading screen नहीं दिखाई देती।false
dataNodeDebugbooleanRequest/response details के साथ debug panel दिखाएं।false
dataNodeLoadingTextstringRequest के दौरान दिखाया जाने वाला custom loading text।"Loading..."
dataNodeValidationbooleanPrevious question के लिए validation gate के रूप में उपयोग करें।false

Behavior

  • Form flow में पहुंचने पर स्वचालित रूप से execute होता है।
  • URL, headers, और body में सभी {variableName} tokens current variable values से replace होते हैं।
  • यदि dataNodeResponseVariable set है, पूर्ण JSON response form variable के रूप में store होता है।
  • Silent mode में, request background में fire होती है बिना loading indicator के।
  • Validation gate mode में, failing request previous question से progression block करती है।

Use Cases

  • External data fetch करें: Form flow के दौरान product details, pricing, या user profiles look up करें।
  • Answers validate करें: अपने database में email check करें, coupon code verify करें, या address validate करें।
  • Actions trigger करें: Webhook को data भेजें, अपने CRM में record create करें, या workflow start करें।

Data Nodes respondents को invisible हैं। ये builder और workflow editor में दिखाई देते हैं लेकिन live form में skip होते हैं -- केवल API call execute होती है। Examples के लिए Data Nodes how-to guide देखें।


Common Advanced Features

Titles और Descriptions में Rich Text

सभी advanced question types अपने title और description fields में rich text support करते हैं। Rich text form builder में Tiptap-based editor के माध्यम से enter किया जाता है और निम्नलिखित support करता है:

  • Bold, italic, underline, और strikethrough
  • Links (href, target, rel attributes के साथ)
  • Ordered और unordered lists
  • Inline code
  • Subscript और superscript
  • Inline styles के माध्यम से custom font families और colors

Rich text HTML के रूप में store होता है और tags और attributes की strict allowlist के साथ DOMPurify उपयोग करके rendering से पहले sanitize होता है।

Variable Substitution

सभी advanced question types अपने title और description fields में {variableName} substitution support करते हैं। Variables guide देखें।

Media Attachments

सभी advanced question types layout options की पूर्ण range के साथ media attachments (image, video, icon, QR code) support करते हैं। Creating Forms guide देखें।

अंतिम अपडेट: 6 अप्रैल 2026