Primate Logo Primate
Guides Responses

Show errors

Return error responses with appropriate status codes. Use Response for custom errors.

Throw errors to trigger +error.ts; return responses for controlled errors.

Throw error

Triggers error handler.

// routes/api.ts
import route from "primate/route";

export default route({
  get() {
    throw new Error("Something went wrong");
  },
});

Return error response

Controlled error response.

import response from "primate/response";

export default route({
  get() {
    return response.json({ error: "Bad request" }, { status: 400 });
  },
});

Error handler

Use +error.ts for global handling. Routes placed alongside +error.ts or in subdirectories in its tree will trigger it upon throwing.

// routes/+error.ts
import route from "primate/route";

export default route({
  get() {
    return response.json({ error: "Internal error" }, { status: 500 });
  },
});