---
title: "List organization users"
method: GET
path: "/api/{org_id}/users"
tags: ["Users"]
---

# List organization users

`GET /api/{org_id}/users`

## 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}/users`
- Auth: API key in header `Authorization`
- TypeScript: <https://skmtc.dev/openobserve/apis/openobserve-api-http/docs/api/:org_id/users/get.ts> (a function with typed inputs; its response is checked against the schema)

Retrieves a list of all users within the specified organization, including their roles, status, and basic profile information. Optionally filter to list users across all organizations if the requesting user has sufficient permissions. Returns user metadata such as email addresses, assigned roles, last login times, and account status.

## Path parameters

- `org_id` string, required

## Response `200`

Success

- UserList
  - `data` UserResponse[], required
    - `created_at` integer, required
    - `description` string, nullable: Human-readable description of what this account is used for.
    - `email` string, required
    - `first_name` string
    - `is_external` boolean
    - `is_system` boolean: True when this account is a system-managed service account. The UI should display "System Managed" for the role instead of the raw role string.
    - `last_name` string
    - `orgs` OrgRoleMapping[], nullable
      - `org_id` string, required
      - `org_name` string, required
      - `role` 'root' | 'admin' | 'editor' | 'viewer' | 'user' | 'service_account' | 'sre_agent', required
    - `role` string, required
    - `token` string, nullable

---

[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)
