---
title: "Update End User"
method: POST
path: "/customer/update"
tags: ["Customer Management"]
---

# Update End User

`POST /customer/update`

Example curl 

Parameters:
- user_id: str
- alias: Optional[str] = None  # human-friendly alias
- blocked: bool = False  # allow/disallow requests for this end-user
- max_budget: Optional[float] = None
- budget_id: Optional[str] = None  # give either a budget_id or max_budget
- allowed_model_region: Optional[AllowedModelRegion] = (
    None  # require all user requests to use models in this specific region
)
- default_model: Optional[str] = (
    None  # if no equivalent model in allowed region - default all requests to this model
)
- object_permission: Optional[LiteLLM_ObjectPermissionBase] - Customer-specific object permissions to control access to resources.
    Supported fields:
    * mcp_servers: List[str] - List of allowed MCP server IDs
    * mcp_access_groups: List[str] - List of MCP access group names
    * mcp_tool_permissions: Dict[str, List[str]] - Map of server ID to allowed tool names
    * vector_stores: List[str] - List of allowed vector store IDs
    * agents: List[str] - List of allowed agent IDs
    * agent_access_groups: List[str] - List of agent access group names
    Example: {"mcp_servers": ["server_1"], "vector_stores": ["vector_store_1"]}
    IF null or {} then no object-level restrictions apply.

Example curl:
```
curl --location 'http://0.0.0.0:4000/customer/update'     --header 'Authorization: Bearer sk-1234'     --header 'Content-Type: application/json'     --data '{
    "user_id": "test-litellm-user-4",
    "budget_id": "paid_tier"
}'

# Updating object permissions
curl -L -X POST 'http://localhost:4000/customer/update'     --header 'Authorization: Bearer sk-1234'     --header 'Content-Type: application/json'     --data '{
    "user_id": "user_1",
    "object_permission": {
      "mcp_servers": ["server_3"],
      "vector_stores": ["vector_store_2", "vector_store_3"]
    }
  }'

See below for all params
```

## Request body

- UpdateCustomerRequest — Update a Customer, use this to update customer budgets etc
  - `user_id` string, required
  - `alias` string, nullable
  - `blocked` boolean
  - `max_budget` number, nullable
  - `budget_id` string, nullable
  - `allowed_model_region` 'eu' | 'us', nullable
  - `default_model` string, nullable
  - `object_permission` LiteLLMObjectPermissionBase
    - `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

## Response `200`

Successful Response

- unknown

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.net/sea-lion/apis/litellm-api.md) · [All operations](https://skmtc.net/sea-lion/apis/litellm-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/sea-lion/litellm-api/revisions/1e929292ddd5/schema)
