> ## Documentation Index
> Fetch the complete documentation index at: https://docs.0xmonaco.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Region Status

> Whether Monaco is available in the caller's region

Monaco is not available in some jurisdictions. Requests from a restricted region are refused with HTTP `451` and the error code `REGION_RESTRICTED`. The region status endpoint is the one exception: it is **public** — no authentication is required — and answers from every region, so a frontend can show a region notice up front instead of failing on the next call. The restriction applies to production only: on the testnet environments `restricted` is always `false` and no request is refused for its region.

```typescript theme={null}
import { MonacoSDK } from "@0xmonaco/core";

// Public — works without a wallet or session
await sdk.compliance.getRegionStatus();
```

## Get Region Status

**getRegionStatus** `() =\> Promise\<GetRegionStatusResponse\>`

Fetch the caller's region status. No authentication required.

**Returns:** `GetRegionStatusResponse`:

* `restricted`: boolean — `true` when Monaco is not available in the caller's region.
* `country`: string — the ISO 3166-1 alpha-2 country code the edge geolocated (`T1` for Tor, `XX` for unknown); empty when the request carried no location.

**Example:**

```typescript theme={null}
const { restricted } = await sdk.compliance.getRegionStatus();
if (restricted) {
  showRegionNotice();
}
```

## Refused requests

Every other request from a restricted region is refused before it is processed, with this body:

```json theme={null}
{
  "error": "REGION_RESTRICTED",
  "message": "Monaco is not available in your region.",
  "statusCode": 451,
  "details": { "reason": "edge_geo_block" }
}
```

`details.reason` is `edge_geo_block` when the edge refused the request and `app_geo_block` when the API did. Branch on `error`, not on the reason. In the SDK the refusal is an `APIError` with `statusCode` `451` and `retryable: false`. A WebSocket connection from a restricted region is refused at the upgrade with the same `451` body, and gRPC calls fail with `PERMISSION_DENIED` (see [ComplianceService](/grpc/protos/compliance.md)).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.