---
title: "New Api Key"
method: POST
path: "/dashboard/bot/{guild_id}/new/api_key/"
tags: ["dashboard"]
---

# New Api Key

`POST /dashboard/bot/{guild_id}/new/api_key/`

## Request

- Base URL: `https://api.monni.fyi` (the document declares no server; this is the origin it was published from)
- URL: `https://api.monni.fyi/dashboard/bot/{guild_id}/new/api_key/`
- Auth: HTTP bearer

## Path parameters

- `guild_id` integer, required

## Request body

- APIKeyModel
  - `id` string, nullable
  - `name` string, required
  - `permissions` Permissions
    - `points` PointsPermission
      - `view` boolean
      - `edit` boolean
    - `verification` VerificationPermission: Split so a key can answer "is this member verified" without being handed identities. API keys get pasted into other people's systems. A forum that only gates registration on verification has no business receiving Roblox ids, and a key scoped to `status` cannot leak them even if that system is compromised.
      - `status` boolean
      - `accounts` boolean
    - `automations` AutomationsPermission
      - `run` boolean
    - `discord` DiscordPermission
      - `view_members` boolean
  - `api_key` string, nullable
  - `deleted` boolean

## Response `200`

Successful Response

- unknown

## Other responses

- `422`: Validation Error

## Changes

- **2026-09-16** `83ac8f547df8`: 3 info
  - request property `id` list-of-types was widened by adding types `null` to media type `application/json`
  - added the optional property `detail/items/ctx` to the response with the `422` status
  - added the optional property `detail/items/input` to the response with the `422` status

[Operation history](https://skmtc.dev/monni/apis/monni-api/changes/dashboard/bot/:guild_id/new/api_key/post.md)

---

[API](https://skmtc.dev/monni/apis/monni-api.md) - [All operations](https://skmtc.dev/monni/apis/monni-api/llms.txt) - [OpenAPI document](https://skmtc.dev/monni/apis/monni-api/revisions/a35aef40d880?raw)
