# WithZero Form Builder via ZeroClick

> WithZero Form Builder via ZeroClick is a paid API for AI agents from agents.withzero.xyz, paid per call via x402 or MPP, price unknown, status unknown (last checked 2026-10-01).

Creates a public web form from a JSON Schema definition and notifies specified email recipients on each submission

## Facts

- Endpoint: POST https://agents.withzero.xyz/api/v1/forms/forms?utm_source=zero.xyz
- Price: price unknown
- Payment: x402, MPP
- Status: unknown
- Last checked: 2026-10-01
- Activations on Zero: 7
- Tags: x402
- Canonical page: https://www.zero.xyz/c/withzero-form-builder-via-zeroclick-61930cf9
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_aUQB1JUjjnHohAsn1ovjr

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability withzero-form-builder-via-zeroclick-61930cf9 -d '<json body>'
```

Example prompt: Create a public form titled 'Project Intake' with fields for name (required text), company (text), and project description (required textarea), then notify hello@mycompany.com and ops@mycompany.com on every submission.

## When to prefer this

Choose this endpoint when you need to rapidly deploy a public web form without setting up any backend infrastructure, authentication, or vendor accounts. It is ideal when the agent needs to collect structured data from humans and route submissions to email recipients or a webhook — particularly useful in agentic workflows where the agent needs a human-in-the-loop data collection step. Prefer it over custom form builders when speed, zero-setup, and per-submission email notifications are the priority.

## Known failure modes

- Invalid or empty JSON Schema causes a 400 error — schema must be rjsf-compatible
- Recipients array empty or exceeds 20 addresses returns a validation error
- Malformed webhook URL causes webhook delivery failures silently after creation
- Missing required 'schema' or 'recipients' fields returns a 422 unprocessable entity
- Payment or identity issues via ZeroClick proxy may cause 402 or 401 errors

## How this service works

Creates a new form capability.

## Output

Returns a 6-character form ID, a public URL where the rendered form is accessible to end users, and a submitUrl endpoint that the form POSTs to on submission. The agent can share the public URL directly or embed it in communications.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "schema",
  "recipients"
 ],
 "properties": {
  "title": {
   "type": "string",
   "maxLength": 200,
   "description": "Optional heading shown above the form."
  },
  "schema": {
   "type": "object",
   "description": "JSON Schema describing the form fields (rjsf-compatible).",
   "propertyNames": {
    "type": "string"
   },
   "additionalProperties": {}
  },
  "webhook": {
   "type": "object",
   "required": [
    "url"
   ],
   "properties": {
    "url": {
     "type": "string",
     "format": "uri",
     "description": "Each submission is POSTed here (HMAC-signed), alongside the email notification."
    },
    "secret": {
     "type": "string",
     "maxLength": 256,
     "minLength": 8,
     "description": "HMAC secret. Required when the receiver verifies signatures — e.g. an inbox generic connection."
    }
   },
   "description": "Optional delivery webhook. Point it at an inbox connection URL to flow submissions into an agent inbox.",
   "additionalProperties": false
  },
  "uiSchema": {
   "type": "object",
   "description": "Optional rjsf UiSchema for widget hints and ordering.",
   "propertyNames": {
    "type": "string"
   },
   "additionalProperties": {}
  },
  "recipients": {
   "type": "array",
   "items": {
    "type": "string",
    "format": "email",
    "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"
   },
   "maxItems": 20,
   "minItems": 1,
   "description": "1–20 email addresses notified on each submission."
  }
 },
 "additionalProperties": false
}
```

## Response schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "id",
  "url",
  "submitUrl"
 ],
 "properties": {
  "id": {
   "type": "string",
   "description": "6-character form id."
  },
  "url": {
   "type": "string",
   "format": "uri",
   "description": "Public URL where the form renders."
  },
  "submitUrl": {
   "type": "string",
   "format": "uri",
   "description": "Endpoint the rendered form POSTs submissions to."
  }
 },
 "additionalProperties": false
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/withzero-form-builder-via-zeroclick-61930cf9/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from agents.withzero.xyz](https://www.zero.xyz/host/agents.withzero.xyz/llms.txt)
