Skip to content

authentication_required

The endpoint isn’t public, and the request carries no credentials it accepts: no session cookie, a cookie for a session that doesn’t exist, or no Authorization header on a route that takes API keys…

HTTP 401 · authentication_error · not retryable

The endpoint isn’t public, and the request carries no credentials it accepts: no session cookie, a cookie for a session that doesn’t exist, or no Authorization header on a route that takes API keys (step 1 of the bearer check, AGENTS.md §5). An API key on a route only a signed-in person may call is insufficient_role instead. Every 401 carries WWW-Authenticate: Bearer realm="deedglass". For a Console route the message names the sign-in page: “You’re not signed in. Sign in at https://app.deedglass.com/login.”

Send Authorization: Bearer dg_live_…, or call the endpoint from a signed-in Console session.

HTTP 401 · authentication_required
{
"error": {
"type": "authentication_error",
"code": "authentication_required",
"message": "This endpoint needs an API key (Authorization: Bearer dg_live_…) or a Console session.",
"param": null,
"request_id": "req_01j9zr3m5k8q2w7x4t6v0b1c9d",
"doc_url": "https://docs.deedglass.com/errors/authentication_required"
}
}

The message is for a person and can get more exact over time: branch on type and code, never on the message.

SDK Raised as
TypeScript (@deedglass/sdk) AuthenticationError with code === "authentication_required"
Python (deedglass) deedglass.AuthenticationError with .code == "authentication_required"