---
title: "Freeze an account"
method: POST
path: "/v1/accounts/{accountId}/freeze"
tags: ["Accounts and money"]
---

# Freeze an account

`POST /v1/accounts/{accountId}/freeze`

## Request

- Base URL: `https://hyperscale0.ai`
- URL: `https://hyperscale0.ai/v1/accounts/{accountId}/freeze`
- Auth: one of:
  - HTTP bearer
  - HTTP bearer

Moves an open account to frozen status without mutating ledger balances, holds, or internal transfers. While frozen, transfer legs that debit the account always refuse; credits refuse per the freeze reason class. Tenant freezes cannot be lifted over a system-plane freeze.

## Path parameters

- `accountId` string, required: Hyperscale account ID

## Headers

- `X-Hyperscale-Environment` 'sandbox' | 'live'
- `Idempotency-Key` string, required

## Request body

- object
  - `reason` string, required
  - `reasonClass` 'customer_request', required

## Response `200`

Success

- AccountFreezeOutput
  - `tenantId` string, required: Organization tenant ID
  - `accountId` string, required: Hyperscale account ID
  - `productId` string: Hyperscale product ID
  - `updatedAt` string, date-time, required
  - `reason` string, required
  - `reasonClass` 'customer_request', required
  - `previousStatus` 'open', required
  - `status` 'frozen', required

## Other responses

- `default`: ErrorResponse. See x-error-codes and x-errors for codes, HTTP statuses and retry guidance.

---

[API](https://skmtc.dev/hyperscale0/apis/hyperscale-product-api.md) · [All operations](https://skmtc.dev/hyperscale0/apis/hyperscale-product-api/llms.txt) · [OpenAPI document](https://skmtc.dev/hyperscale0/apis/hyperscale-product-api/revisions/e9e8faa044d5?raw)
