Form Vertex

Every workflow starts with a vertex.

Create a form at a vertex URL, collect structured responses, and append every submission to another vertex as JSON without building a form app, database table, webhook, or API.

With Form Vertex, a form is just another programmable endpoint. One vertex collects the input. Another vertex stores the responses. Agents, apps, devices, and humans can react instantly.

Forms without form infrastructure.
/acme/customer-intake
↓ submit
/acme/customer-intake-responses
↓ append JSON
A form is just another vertex. Submissions are just signals. Responses are just appended data.

New primitive

Forms should not require a form platform.

With Node Vertex, a form is just a vertex. Create a URL, define the fields, choose where the responses go, and every submission becomes structured JSON that can be appended, queued, routed, or processed by agents.

Capture customer intake, device registration, approvals, attestations, task requests, support tickets, IoT configuration, and internal workflows without building another API.

Stop building forms, databases, and webhooks for simple data capture. Use a vertex.

How it works

A form is an interface. A vertex is the destination.

  1. Create a Form Vertex.
  2. Define fields and validation.
  3. Choose a target vertex.
  4. Submit the form.
  5. Append the response as structured JSON.
  6. Let agents, applications, IoT devices, or humans react.
/form/customer-intake
        ↓ submit
/data/customer-intake-responses
        ↓ append JSON
/queues/enrich-lead
        ↓ trigger agent
/signals/new-lead

Use cases

What can you build with Form Vertex?

Customer Intake

/form/contact → /data/contact-submissions

An agent can enrich the lead, send email, notify Slack, or update CRM.

IoT Device Registration

/device/register → /fleet/pending-devices

A technician submits structured provisioning data.

Agent Task Submission

/tasks/new → /queues/agent-tasks

A human submits a task. An agent polls or reacts.

Policy Attestation

/attest/ai-policy → /attest/ai-policy/signatures

Evidence is written to an immutable response vertex.

Event Registration

/events/webinar-signup → /events/webinar-attendees

Collect registrations without a separate form system.

Internal Approvals

/approve/vendor-risk → /approvals/vendor-risk

Capture approvals, comments, timestamps, and evidence hashes.

Differentiation

Not another form builder.

Traditional form tools stop at submission. Form Vertex turns every submission into programmable infrastructure.

Traditional FormsForm Vertex
Stores responses in a form platformWrites responses to any authorized vertex
Requires exports or integrationsNative JSON output
Usually human-facing onlyWorks for humans, agents, apps, and devices
Limited workflow behaviorAppend, queue, signal, route, transform, and trigger
Separate from infrastructurePart of the programmable signaling fabric

Form definition

{
  "type": "form",
  "title": "Customer Intake",
  "submit": { "method": "append", "targetVertex": "/acme/customer-intake-responses" },
  "fields": [
    { "name": "companyName", "label": "Company Name", "type": "text", "required": true },
    { "name": "contactEmail", "label": "Contact Email", "type": "email", "required": true },
    { "name": "requestType", "label": "Request Type", "type": "select", "options": ["Cybersecurity Audit", "Ransomware Defense", "Zero Trust", "Other"] },
    { "name": "message", "label": "Message", "type": "textarea" }
  ]
}

Appended response

{
  "id": "rsp_01HX0000000000000000000000",
  "submittedUtc": "2026-05-05T20:44:00Z",
  "sourceVertex": "/acme/customer-intake",
  "data": { "companyName": "Example Corp", "contactEmail": "buyer@example.com" },
  "submittedBy": { "authType": "anonymous" },
  "metadata": { "ipAddress": "203.0.113.10", "userAgent": "..." }
}

Write modes

Choose how the target vertex behaves

Most forms should append. Some forms should queue. High-trust evidence workflows should be immutable.

setappendmergequeuestreamimmutable

MVP fields: text, email, number, textarea, select, checkbox, hidden. Future fields include file, signature, typedAcknowledgement, radio, date, vertexRef, json, boolean, and secret.

A form can be a vertex. A response can be a vertex. A queue can be a vertex. A signal can be a vertex.

Node Vertex is a programmable fabric where interfaces, data, signals, queues, files, agents, and workflows can meet.

Create a Form Vertex