---
title: "Api User Update Partial Update"
method: PATCH
path: "/api/user/update/{customer_identifier}/"
tags: ["users"]
---

# Api User Update Partial Update

`PATCH /api/user/update/{customer_identifier}/`

PATCH handler with superadmin lock and field protection.

Checks:
1. Object lock (is_managed=True -> non-superadmins can't modify)
2. Field protection (non-superadmins can't modify specific fields)

## Path parameters

- `customer_identifier` string, required

## Headers

- `Authorization` string, required

## Request body

- PatchedCustomerUserDetailRequest — Serializer for customer user detail view (retrieve/update/delete). Used by both: - Public API: /api/users/<customer_identifier>/ - Dashboard: /clickhouse/customer-users/<id>/ Differences from base CustomerUserUpdateSerializer: - id: Returns string (frontend compatibility) via SerializerMethodField - organization_name: Included for dashboard display - Explicit fields list: Only returns relevant fields for detail view
  - `name` string, nullable
  - `email` string, nullable
  - `customer_identifier` string, nullable
  - `environment` union
    - 'prod' | 'stage' | 'test' | 'all' — * `prod` - Prod * `stage` - Dev * `test` - Test * `all` - All
    - ''
  - `total_budget` number, double, nullable
  - `period_budget` number, double, nullable
  - `total_period_usage` number, double
  - `period_start` string, date-time
  - `period_end` string, date-time, nullable
  - `budget_duration` string
  - `updated_at` string, date-time

## Response `200`

- CustomerUserDetail — Serializer for customer user detail view (retrieve/update/delete). Used by both: - Public API: /api/users/<customer_identifier>/ - Dashboard: /clickhouse/customer-users/<id>/ Differences from base CustomerUserUpdateSerializer: - id: Returns string (frontend compatibility) via SerializerMethodField - organization_name: Included for dashboard display - Explicit fields list: Only returns relevant fields for detail view
  - `id` string, required
  - `name` string, nullable
  - `email` string, nullable
  - `customer_identifier` string, nullable
  - `environment` union
    - 'prod' | 'stage' | 'test' | 'all' — * `prod` - Prod * `stage` - Dev * `test` - Test * `all` - All
    - ''
  - `total_budget` number, double, nullable
  - `period_budget` number, double, nullable
  - `organization_name` string, required
  - `total_period_usage` number, double
  - `period_start` string, date-time
  - `period_end` string, date-time, nullable
  - `budget_duration` string
  - `updated_at` string, date-time

---

[API](https://skmtc.net/keywordsai/apis/api-reference.md) · [All operations](https://skmtc.net/keywordsai/apis/api-reference/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/keywordsai/api-reference/versions/c26d550029f8/schema)
