/Knowledge/sources/honojs__hono/llms-full/rpc-status-code--71742446ec14.md
RPC: Status code - hono-docs
RPC: Status code Source evidence: /Sources/honojs hono/provenance.md Canonical citation: https://hono.dev/llms full.txt status code Summary If you explicitly...
RPC: Status code
Source evidence: /Sources/honojs__hono/provenance.md Canonical citation: https://hono.dev/llms-full.txt#status-code
Summary
If you explicitly specify the status code, such as 200 or 404, in c.json(), it will be added as a type for passing to the client. ```ts // server.ts const app = new Hono().get( '/posts', zValidator( 'query', z.object({ id: z.string...
Content
If you explicitly specify the status code, such as 200 or 404, in c.json(), it will be added as a type for passing to the client.
// server.ts
const app = new Hono().get(
'/posts',
zValidator(
'query',
z.object({
id: z.string(),
})
),
async (c) => {
const { id } = c.req.valid('query')
const post: Post | undefined = await getPost(id)
if (post === undefined) {
return c.json({ error: 'not found' }, 404) // Specify 404
}
return c.json({ post }, 200) // Specify 200
}
)
export type AppType = typeof app
You can get the data by the status code.
Metadata
{
"chunk_index": 0,
"citation": "https://hono.dev/llms-full.txt#status-code",
"coverage_role": "overview",
"qualified_title": "Hono / llms-full / RPC > Status code (1)",
"retrieved_at": "2026-07-02T05:51:01Z",
"section_index": 50,
"source_id": "/honojs/hono",
"source_type": "llms_full",
"target_label": "llms-full",
"title": "RPC: Status code",
"upstream_url": "https://hono.dev/llms-full.txt",
"version": "2026"
}