Skip to content

Ask AI

Ask anything about Destesi — setup, products, APIs.

Powered by Claude. Answers may be wrong — always verify against the docs.

Space troubleshooting

The first request after a quiet period is slow

Section titled “The first request after a quiet period is slow”

Symptom: the first page load or API call takes several seconds; everything after it is fast.

Space scales to zero when idle and is started by the first request that arrives. That request pays the start-up; the ones behind it do not. It is not an error, and nothing is lost — the request is served, just later than usual.

If it does not resolve at all, check https://api.space.destesi.io/healthz.

401 unknown_bearer_scheme from the CLI or a script

Section titled “401 unknown_bearer_scheme from the CLI or a script”

Symptom: every dst space command or scripted request fails with 401, while other dst commands work.

Space accepts an identity Personal Access Token (idn_pat_…) and nothing else. The token dst login’s browser flow stores is a destesi-api key, which is a different credential — Space rejects it before looking at the request.

Mint a PAT from your account’s tokens page and log in with it:

Terminal window
dst login --token idn_pat_…

dst space checks the token’s prefix before making the request, so it tells you this rather than passing a doomed call to the server.

A PAT is scoped to a user, not a workspace, so the workspace is chosen per request:

X-Destesi-Workspace: acme-co

The CLI sends it from dst workspace switch <slug> or --workspace. Note it is the workspace slug, not the ws_… id.

403 when creating an issue, while reading works fine

Section titled “403 when creating an issue, while reading works fine”

Symptom: issues and channels list normally, but creating anything returns 403.

Reads do not pass the quota gate; writes do. A 403 on the write path with reads healthy points at the workspace’s entitlement for Space rather than at Space itself — the quota policy is answered by entitlements, and a workspace with no Space entitlement cannot be given an answer.

Check that Space appears in your launcher for that workspace. If it does not, the workspace is missing the entitlement and an operator has to grant it.

Section titled “404 on an issue or channel you were sent a link to”

Two different causes share one answer, deliberately:

  • The id belongs to another workspace. Switch workspaces and try again.
  • It is a private channel you are not a member of. Ask someone in it to add you.

Space answers 404 rather than 403 in both cases so that the API never confirms the existence of something you cannot see.

Symptom: a teammate’s change only shows up after a reload, or arrives with a delay.

Space delivers changes over a server-sent event stream. Where that is not configured for a deployment, GET /v1/stream answers 503 live_disabled and the app switches itself to polling rather than reconnecting forever. You keep working; updates arrive later.

If you are running Space yourself, the stream needs a Redis URL in the api’s environment. Without one the api boots and everything else works — only the stream is affected.

POST /v1/chat answers 503 chat_disabled when the deployment has no model provider configured. Issues, threads, channels and DMs are unaffected — only the assistant is.

Locally, the api prefers the developer’s claude CLI over any API key. See the suite’s LLM provider notes if you are running Space on your own machine.

503 members_disabled, or @ mentions never fire

Section titled “503 members_disabled, or @ mentions never fire”

The member directory comes from identity, and Space needs a controller secret to read it. Without it, GET /v1/members answers 503 members_disabled, the assignee picker is empty, and mentions resolve to nobody.

Mentions fail quietly on purpose: a message posts even when the directory cannot be reached, because failing the whole message would make posting depend on identity being up.

It should not be. Any status can move to any other in Space — done back to todo included. A 422 invalid_status means the value itself is outside the vocabulary (backlog, todo, in_progress, in_review, done, cancelled), not that the move was illegal.

Team keys are 2–6 characters, must start with a letter, and contain only uppercase letters and digits: ENG, DES, PLAT2. Lowercase, spaces, punctuation and single characters are refused with 422 invalid_key.

The key cannot be changed after the team exists, because it is baked into every issue key the team has minted.

The usage bar shows a number I have exceeded

Section titled “The usage bar shows a number I have exceeded”

Space’s quotas are measured, not enforced — usage is recorded and displayed, and nothing is refused on the basis of it. A number over the shown allowance means exactly that: it was measured. See Plans and billing.