Intake Overview
Intake is a standalone, hardened HTTP service that accepts anonymous form submissions from static sites. It validates each payload against a per-form YAML schema and writes it durably to DuckDB (default) or JSONL.
It is self-contained — it imports no other kis.ai platform libraries. The gateway is the trust boundary: the binary itself is unauthenticated by design and must only ever be reachable through the gateway.
Who uses it
Section titled “Who uses it”- Site developers wiring an Astro (or any static) site to a form backend: author a form schema and post submissions to it. See Defining Forms.
- Operators deploying and running the service on a public box behind the gateway. See Operations.
The model in one minute
Section titled “The model in one minute”- You define a form as a YAML schema — the fields, their types, and validation rules.
- A static site POSTs a submission to Intake; the payload is validated against that form’s schema.
- Valid submissions are written durably to the configured store (DuckDB or JSONL); invalid ones are rejected with field-level errors.
Continue with:
- Defining Forms — form schema YAML, field types, validation, posting, and wiring an Astro form
- Operations — deploying and running Intake behind the gateway
- End-to-End Testing — verifying a deployment