---
title: Region
description: An AWS region, by its name.
---

```python
@final
class Region
```

An AWS region, by its name.

`Region.parse` takes any well-formed region name; the five named constructors cover the
regions of AWS's first MicroVMs launch.

## Constructor

`Region` declares no `__new__` or `__init__`, so it is not constructed directly: an instance comes back from another call in this package.

## Properties

### `is_measured`

```python
is_measured: bool
```

Whether AWS was measured running MicroVMs here: membership in `Region.measured()`.

### `is_supported`

```python
is_supported: bool
```

Deprecated since 1.3.0: use `is_measured`.

Whether this is one of the five named regions, as in 1.2, and a `DeprecationWarning`.

### `name`

```python
name: str
```

The wire spelling, which is also the endpoint's middle segment.

## Methods

### `ap_northeast_1`

```python
@staticmethod
def ap_northeast_1() -> Region
```

### `eu_west_1`

```python
@staticmethod
def eu_west_1() -> Region
```

### `measured`

```python
@staticmethod
def measured() -> list[Region]
```

The regions AWS was measured running MicroVMs in: the 14 the Pricing API priced on
2026-10-24.

### `parse`

```python
@staticmethod
def parse(name: str) -> Region
```

Any well-formed region name, or `InvalidArgError` for a malformed one.

The boundary a region name arrives at from an environment variable or a config
file, where it is still a string. The check is the core's `FromStr`, message and
all — this is a call, not a check written here.

### `supported`

```python
@staticmethod
def supported() -> list[Region]
```

Deprecated since 1.3.0: AWS runs MicroVMs in more regions than these five; use
`Region.measured()`.

The five named regions, as 1.2 returned, and a `DeprecationWarning`.

### `unlisted`

```python
@staticmethod
def unlisted(name: str) -> Region
```

Deprecated since 1.3.0: `Region.parse` takes any well-formed region name.

Builds the region without the shape check, as 1.2 did, and raises a
`DeprecationWarning`. `Region.unlisted("us-east-1") == Region.us_east_1()`.

### `us_east_1`

```python
@staticmethod
def us_east_1() -> Region
```

### `us_east_2`

```python
@staticmethod
def us_east_2() -> Region
```

### `us_west_2`

```python
@staticmethod
def us_west_2() -> Region
```

## Special methods

### `__eq__`

```python
def __eq__(other: object, /) -> bool
```

### `__hash__`

```python
def __hash__() -> int
```

### `__repr__`

```python
def __repr__() -> str
```

### `__str__`

```python
def __str__() -> str
```

## Provenance

This page is generated from `bindings/microvms-py/microvms.pyi` by Griffe 2.3.0, run from `site/scripts/gen-reference.mjs` on every `pnpm run sync`, so an edit made here is overwritten by the next run.

To change the page, change the doc comment in the binding's Rust source, then regenerate the declarations with `mise run stubs`. `mise run stubs:check` fails when the committed file no longer matches the source.