---
title: "Block User"
method: POST
path: "/customer/block"
tags: ["Customer Management"]
---

# Block User

`POST /customer/block`

[BETA] Reject calls with this end-user id

Parameters:
- user_ids (List[str], required): The unique `user_id`s for the users to block

    (any /chat/completion call with this user={end-user-id} param, will be rejected.)

    ```
    curl -X POST "http://0.0.0.0:8000/user/block"
    -H "Authorization: Bearer sk-1234"
    -d '{
    "user_ids": [<user_id>, ...]
    }'
    ```

## Request body

- BlockUsers
  - `user_ids` string[], required

## Response `200`

Successful Response

- BlockUsersResponse
  - `blocked_users` LiteLLMEndUserTable[], required
    - `user_id` string, required
    - `blocked` boolean, required
    - `alias` string, nullable
    - `spend` number
    - `allowed_model_region` 'eu' | 'us', nullable
    - `default_model` string, nullable
    - `budget_id` string, nullable
    - `litellm_budget_table` LiteLLMBudgetTable — Represents user-controllable params for a LiteLLM_BudgetTable record. Budget-write paths use `model_fields.keys()` on this class as an allowlist for user input. Keep server-managed fields (e.g. `budget_reset_at`) on `LiteLLM_BudgetTableFull` so they aren't user-settable.
      - `budget_id` string, nullable
      - `soft_budget` number, nullable
      - `max_budget` number, nullable
      - `max_parallel_requests` integer, nullable
      - `tpm_limit` integer, nullable
      - `rpm_limit` integer, nullable
      - `model_max_budget` object, nullable
      - `budget_duration` string, nullable
      - `allowed_models` string[], nullable
    - `object_permission_id` string, nullable
    - `object_permission` LiteLLMObjectPermissionTable — Represents a LiteLLM_ObjectPermissionTable record
      - `object_permission_id` string, required
      - `mcp_servers` string[], nullable
      - `mcp_access_groups` string[], nullable
      - `mcp_tool_permissions` object, nullable
      - `vector_stores` string[], nullable
      - `agents` string[], nullable
      - `agent_access_groups` string[], nullable
      - `models` string[], nullable
      - `mcp_toolsets` string[], nullable
      - `blocked_tools` string[], nullable
      - `search_tools` string[], nullable
      - `mcp_tool_search_enabled` boolean, nullable

## Other responses

- `422` — Validation Error

## Changes

- **2026-09-18** `082b5fabd909` — 1 breaking, 3 info
  - the response's body type changed from no type to `object` for status `200`
  - 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
  - added the required property `blocked_users` to the response with the `200` status

[Change history](https://skmtc.dev/flock/apis/litellm-api/changes/customer/block/post.md)

---

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