---
title: "Search Users"
method: GET
path: "/api/v1/users"
tags: ["Users"]
---

# Search Users

`GET /api/v1/users`

## Request

- Base URL: `https://public-api.linearb.io`
- URL: `https://public-api.linearb.io/api/v1/users`
- Auth: API key in header `x-api-key`
- TypeScript: <https://skmtc.dev/linearb/apis/linearb-api/docs/api/v1/users/get.ts> (a function with typed inputs; its response is checked against the schema)

Users API endpoint performs a LinearB users paginated search

## Query parameters

- `offset` integer
- `page_size` integer
- `order_by` 'name' | 'email'
- `order_dir` 'ASC' | 'DESC'
- `search_by_field` 'name' | 'email'
- `search_term` string
- `user_role` 'admin' | 'editor' | 'viewer' | 'external' | 'basic': An enumeration.
- `include_user_children` boolean

## Response `200`

Successful Response

- UsersPaginatedResponseModel: A paginated response model specifically for Users API. This model represents a paginated response containing a list of users and their total count. It is specifically designed for the Users API endpoints to provide consistent pagination structure across user-related responses. Attributes: total (int): The total number of users available across all pages. This count represents the complete dataset size, not just the current page. items (List[UserModel]): The list of users in the current page.
  - `total` integer, required
  - `items` UserModel[], required
    - `id` integer, required: The unique identifier of the user
    - `organization_id` string, required: The ID of the organization this user belongs to
    - `name` string, required: The full name of the user
    - `email` string: The user's email address
    - `avatar_url` string: URL to the user's avatar image
    - `extra` object: Additional custom information about the user
    - `created_at` string, required: The timestamp when the user was created
    - `updated_at` string: The timestamp when the user was last updated
    - `deleted_at` string: The timestamp when the user was deleted, if applicable
    - `team_membership` object[]: List of teams the user belongs to
    - `user_type_id` integer: The type identifier for this user
    - `connected_users` ConnectedUsersModel: Model representing connected users in different platforms. Attributes: platform_users (List[Dict]): List of connected platform user accounts contributors (List[Dict]): List of connected contributor accounts
      - `platform_users` object[]: List of connected platform user accounts
      - `contributors` object[]: List of connected contributor accounts
    - `permissions` object: User's permission settings

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `403`: Forbidden
- `404`: Not Found
- `405`: Method Not Allowed
- `409`: Conflict
- `422`: Validation Error
- `500`: Internal Server Error
- `504`: Gateway Timeout

---

[API](https://skmtc.dev/linearb/apis/linearb-api.md) - [All operations](https://skmtc.dev/linearb/apis/linearb-api/llms.txt) - [OpenAPI document](https://skmtc.dev/linearb/apis/linearb-api/revisions/3aea06710db6?raw)
