## List planned maintenances

Retrieve recent and upcoming planned maintenance windows for our services.

## Endpoint signature

```http
POST https://api.reservepay.com/merchants/list-planned-maintenances HTTP/1.1
Content-Type: application/json
Accept: application/json

{
  language: string?,
}
```

Returns: array<object.planned_maintenance>

## Request arguments

### `language` (string)

_Optional_. The language for localized text attributes (e.g. 'en', 'th'). Defaults to 'en'.

Allowed values:

- `en`
- `th`

## Planned maintenance attributes

### `id` (string)

**Always present**. Unique identifier of the planned maintenance window.

### `service_name` (string)

**Always present**. Name of the service undergoing maintenance, in the requested locale.

### `status` (string)

**Always present**. Current lifecycle status of the planned maintenance window.

Possible values:

- `pending`
- `in_progress`
- `completed`

### `start_at` (number)

**Always present**. Scheduled start time as a Unix timestamp.

### `end_at` (number)

**Always present**. Scheduled end time as a Unix timestamp.

### `expected_impact` (string)

**Always present**. Category of expected service impact during the maintenance window.

Possible values:

- `no_impact`
- `intermittent_service`
- `temporary_unavailable`

### `expected_impact_description` (string)

**Always present**. Description of the expected service impact, in the requested locale.

### `purpose` (string)

**Always present**. Detailed description of the maintenance purpose, in the requested locale.

### `action_required` (string)

**Always present**. Action required by merchants or partners during the maintenance window.

Possible values:

- `no_action`
- `pause_transactions`

## Errors common to all endpoints

### `UNHANDLED_ERROR`

This error occurs when the server encounters an unexpected internal error that
it cannot handle gracefully. This typically happens due to bugs, infrastructure
issues, or edge cases that weren't anticipated during development.

### `INVALID_ARGUMENTS`

This error occurs when the request contains invalid or missing parameters.
Common cases include missing required fields, or values that don't match the
expected format or type.

### `BAD_VERSION`

This error occurs when making requests to an API version that does not exist.
This commonly happens when using an outdated SDK or when the API version
specified in the request URL is incorrect.
