Skip to content

Disabled apps and accounts

Tori can disable a single app, or a whole account together with every app in it. It does so when an app or an account breaks the terms of service, for example abuse, or something that endangers the security or operation of Tori or of other customers. Only Tori disables an app or an account, and only Tori can enable it again. Nothing is deleted either way.

This is not the billing hold. An unpaid invoice refuses deploys and stops serving on a schedule of its own, and paying the invoice lifts it (Plans and billing). Nothing you do in the console or the CLI lifts a disable.

  • It is not served. Its <slug>.tori.cloud address answers HTTP 404 with Tori’s “nothing here” page, the same answer as an address with no app behind it. Its custom domains stop serving it too.

  • Deploys and rollbacks are refused. npx tori.host, the MCP deploy tool and the API all get HTTP 403 with this body, and the CLI prints the sentence:

    { "error": "This app has been disabled by Tori.", "code": "app_disabled" }
  • The console says so. The app page shows a banner with the date and time the app was disabled. The apps list marks the app disabled in place of its status and does not count it as running, and the deploys tab does not offer a rollback.

  • Nothing is deleted. Its deploys, environment variables, custom domains and data are kept. When Tori enables the app again, the live deploy serves again without a new deploy. A custom domain can take a few minutes longer, while its certificate is issued again.

  • You can still delete it, the same way as any other app.

Through the API, an app carries disabledAt: the time Tori disabled it, or null. It is on every app that GET /api/apps and GET /api/apps/{slug} return (API reference). The reason Tori recorded is not part of the API.

  • You cannot sign in. Requesting a magic link works as before, but opening it ends on the sign-in page with This account has been disabled by Tori. instead of the console. The API answers that request with HTTP 403 and "code": "account_disabled".
  • Sessions and API tokens stop working. An open console is signed out, and the CLI, the MCP server and CI jobs using TORI_TOKEN get HTTP 401 on every request. The CLI reports a refused token: from a 401 it cannot tell a disabled account from a revoked token.
  • None of its apps is served, whatever the state of each app.
  • Nothing is deleted. Apps, deploys, domains, data and API tokens are kept. When Tori enables the account again, its apps serve again and its API tokens work as they did. Console sessions do not come back: sign in again.

Write to hello@tori.host from the address of the account, and say which app or account the message is about. The console’s banner and sign-in notice, and the CLI’s refusal, give the same address.

Download this page as Markdown.