> For the complete documentation index, see [llms.txt](https://docs.aevo.xyz/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.aevo.xyz/api-reference/urls/private-api/postmmp.md).

# POST /mmp

Sets market maker protection (MMP) settings.

`POST https://api.aevo.xyz/mmp`

> **Authentication required.** Include your `AEVO-KEY` and `AEVO-SECRET` headers. See [Authentication](/api-reference/urls/authentication.md).

## Body Parameters

| Field          | Type    | Required | Description                                                                                                       |
| -------------- | ------- | -------- | ----------------------------------------------------------------------------------------------------------------- |
| `interval`     | integer | Yes      | Interval in seconds. A setting for market maker protection (MMP). If set to 0, MMP is disabled. Example: `30`     |
| `frozen`       | integer | Yes      | Duration in seconds during which the account will be frozen. If set to 0, manual reset is required. Example: `30` |
| `amount_limit` | string  | Yes      | Amount limit setting for market maker protection (MMP). In 6 decimals fixed number. Example: `1000000`            |
| `delta_limit`  | number  | No       | Delta limit setting for market maker protection (MMP). In unsigned float. Example: `0.1`                          |
| `asset`        | string  | Yes      | Name of underlying asset. Example: `ETH`                                                                          |

## Example Request

```bash
curl --request POST \
     --url https://api.aevo.xyz/mmp \
     --header 'accept: application/json' \
     --header 'AEVO-KEY: <your-api-key>' \
     --header 'AEVO-SECRET: <your-api-secret>' \
     --header 'content-type: application/json' \
     --data '{ ... }'
```

## Responses

**`200`** — Setting successful.

| Field     | Type    | Required | Description                                                 |
| --------- | ------- | -------- | ----------------------------------------------------------- |
| `success` | boolean | Yes      | Request successful if true. Example: `true` Example: `True` |

**`400`** — Bad request.

| Field   | Type   | Required | Description                                     |
| ------- | ------ | -------- | ----------------------------------------------- |
| `error` | string | Yes      | Error message. Example: `ERR_MALFORMED_REQUEST` |

**`401`** — Unauthorized.

| Field   | Type   | Required | Description                            |
| ------- | ------ | -------- | -------------------------------------- |
| `error` | string | Yes      | Error message. Example: `UNAUTHORIZED` |

**`429`** — Rate limit exceeded.

| Field   | Type   | Required | Description                                   |
| ------- | ------ | -------- | --------------------------------------------- |
| `error` | string | Yes      | Error message. Example: `RATE_LIMIT_EXCEEDED` |

**`500`** — Internal server error.

| Field   | Type   | Required | Description                              |
| ------- | ------ | -------- | ---------------------------------------- |
| `error` | string | Yes      | Error message. Example: `INTERNAL_ERROR` |
