Skip to content

API reference components

Parameters, response fields, badges and tables.

Four components for documenting an interface by hand. Pages generated from an OpenAPI spec use these too — hand-written and generated pages share one vocabulary.

namestringrequired

The parameter’s name. Required — this is the prop migrated content most often lacks.

typestring

The parameter’s type, as you want it displayed.

in"query" | "path" | "header" | "body" | "cookie"

Where the parameter goes.

requiredbooleandefault: false

Marks the parameter as required.

defaultstring

Default value when the parameter is omitted.

deprecatedbooleandefault: false

Marks the parameter as deprecated.

placeholderstring

Example value shown in the field.

dialect"reed" | "fern" | "mintlify"

Per-element dialect override. Prefer the project-wide content.dialect setting.

mdx
<ParamField name="limit" type="integer" in="query" default="20">
Maximum number of results to return.
</ParamField>

If migrated MDX fails with DS-S03 complaining that name is missing, the file is almost certainly written in another platform’s dialect where path doubles as the name. Set content.dialect rather than rewriting every field.

namestringrequired

The field’s name.

typestringrequired

The field’s type. Required here, unlike on ParamField.

defaultstring

Default value.

requiredbooleandefault: false

Marks the field as always present.

deprecatedbooleandefault: false

Marks the field as deprecated.

intent"info" | "note" | "tip" | "success" | "warning" | "error" | "launch" | "check"

Colour treatment. Shares its vocabulary with Callout.

minimalbooleandefault: false

Renders without a filled background.

outlinedbooleandefault: false

Renders with a border.

Children: inline content — the badge’s text. Reed’s Badge takes its label as children rather than as a text prop, and it accepts intent.

stickybooleandefault: false

Keeps the header row visible while scrolling.

searchablebooleandefault: false

Adds a filter input.

paginatebooleandefault: false

Splits rows into pages.

pageSizenumberdefault: 10

Rows per page when pagination is on.

expandablebooleandefault: false

Lets rows expand to reveal detail.

placeholderstringdefault: Search...

Placeholder for the filter input.

One component covers sticky, searchable, paginated and expandable tables through boolean props, rather than a family of separate components. Plain markdown tables still work and remain the right choice for a handful of rows.