---
title: "Get password complexity requirements"
method: GET
path: "/api/{org_id}/password_complexity"
tags: ["Organizations"]
---

# Get password complexity requirements

`GET /api/{org_id}/password_complexity`

## Request

- Base URL: `https://api.openobserve.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://api.openobserve.ai/api/{org_id}/password_complexity`
- Auth: API key in header `Authorization`
- TypeScript: <https://skmtc.dev/openobserve/apis/openobserve-api-http/docs/api/:org_id/password_complexity/get.ts> (a function with typed inputs; its response is checked against the schema)

Returns only what a password must look like — length bounds, required character classes, and the special-character set. Readable by any authenticated user in any organization, because the caller who most needs it is one who has just been forced to reset their password and holds no settings permission. Rotation, reuse and lockout settings are never included.

## Path parameters

- `org_id` string, required

## Response `200`

Success

- PasswordComplexity: The subset of the policy safe to show a non-admin: what a password must look like, and nothing about how the instance defends itself. Lockout thresholds and history depth are deliberately absent. A brute-forcer who can read `lockout.threshold` and `lockout.start_secs` knows exactly how to pace attempts to stay under them, which turns a defence into a published rate limit.
  - `max_length` integer, required
  - `min_length` integer, required
  - `require_digit` boolean, required
  - `require_lowercase` boolean, required
  - `require_special` boolean, required
  - `require_uppercase` boolean, required
  - `special_char_set` string, required: Empty means any non-alphanumeric character counts as special.

---

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