setResponseStatus()
Sets the HTTP status code (and optional message) for the response.
Syntax
setResponseStatus(event, code, text?) Parameters
| Name | Type | Required | Description |
|---|---|---|---|
event | H3Event | Yes | The request event. |
code | number | Yes | HTTP status code (e.g. 201, 204, 404). |
text | string | No | Optional status message. |
Returns
void — Mutates the outgoing response status.
Examples
// server/api/posts.post.ts
export default defineEventHandler(async (event) => {
const post = await db.posts.create(await readBody(event))
setResponseStatus(event, 201)
return post
})
export default defineEventHandler((event) => {
setResponseStatus(event, 204)
return null
})
Notes
Use for success statuses (201 Created, 204 No Content) where you
still return data normally. For error responses prefer throwing
`createError({ statusCode })` so the error is handled and serialized
consistently.