repost forward session, select an event with a JSON body and press t to open the Generate Types view. It turns the captured request body into typed models in the language of your choice — generated from real traffic, not a hand-written schema.
The view is a live split: the captured request body on the left, the generated code on the right. Switch languages with ← / → and the code regenerates from the same payload.
Supported languages
Cycle through targets with the windowed selector. Each language renders the same payload in its idiomatic shape:TypeScript
Plain
interface / type, Zod schemas, or Effect Schema.JavaScript & JSON
JavaScript with JSDoc, or a JSON Schema document.
Backend languages
Python, Go, Java, C#, Rust, Swift, and Kotlin.
Name the output
The generated root type is namedWebhookPayload by default. Press tab to edit the Type name, then enter to commit — the code regenerates with the new name applied to every reference.
Inference options
Presso to open the options panel. The first group controls how the payload is interpreted, and these choices persist as you switch languages.
Toggle a row with
space; the code regenerates immediately.
Language options
Below the inference group, each language exposes its own renderer options — booleans, value pickers (◀ ▶), and editable text fields. These are specific to the selected language and reset when you switch, so a TypeScript-only option does not carry over to Go.
Keyboard
Your preferred language and option choices are saved to the CLI config directory and restored on the next session. See Authentication & configuration for where that lives.