---
title: "Ban a token"
method: POST
path: "/v1/token-bans"
tags: ["token-bans"]
---

# Ban a token

`POST /v1/token-bans`

## Request

- Base URL: `https://lpad-backend.stage.defi.ovh.gala.com`
- URL: `https://lpad-backend.stage.defi.ovh.gala.com/v1/token-bans`
- Auth: one of:
  - API key in header `x-api-key`
  - HTTP bearer
- TypeScript: <https://skmtc.dev/gala/apis/launchpad-backend-api/docs/v1/token-bans/post.ts> (a function with typed inputs; its response is checked against the schema)

Ban a token from the platform (admin/overseer only)

## Request body

- CreateTokenBanDto
  - `reason` string: Optional reason for the ban.
  - `tokenName` string, required: Token name to ban.

## Response `200`

Created token ban with associated pool metadata.

- object
  - `error` false, required: Successful response marker.
  - `message` string, required: Response message.
  - `status` number, required: HTTP status code.
  - `data` TokenBanResponseDto, required
    - `bannedBy` string, required
    - `createdAt` string, date-time, required
    - `id` number, required
    - `pool` TokenBanPoolResponseDto
      - `creatorAddress` string, required
      - `image` string, nullable, required
      - `symbol` string, required
    - `reason` string, nullable, required
    - `tokenName` string, required

## Other responses

- `400`: Bad request - tokenName missing or reason exceeds max length
- `401`: Unauthorized - missing or invalid JWT token or admin API key
- `403`: Forbidden - user is not admin or overseer
- `404`: Token not found - tokenName does not match any existing pool
- `500`: Internal server error - failed to create ban in database
- `default`: Shared error envelope for authorization and token ban failures.

---

[API](https://skmtc.dev/gala/apis/launchpad-backend-api.md) - [All operations](https://skmtc.dev/gala/apis/launchpad-backend-api/llms.txt) - [OpenAPI document](https://skmtc.dev/gala/apis/launchpad-backend-api/revisions/74545971be2b?raw)
