---
title: "List user"
---

> Documentation Index
> Fetch the complete documentation index at: https://docs.sureshake.com/llms.txt
> Use this file to discover all available pages before exploring further.

Path: Sureshake API › users

`GET /v2/users`

## Query parameters

- `search` (`user-list.query.search`; string, required)
  - minLength 1; maxLength 100
- `limit` (`user-list.query.limit`; integer, optional)
  - min 1; max 50; default `10`

## Code samples

### cURL

```bash
curl --request GET \
  --url 'https://api.sureshake.com/v2/users?search=string'
```

### TypeScript

```typescript
const url = 'https://api.sureshake.com/v2/users?search=string';
const options = {method: 'GET'};

fetch(url, options)
  .then(res => res.json())
  .then(json => console.log(json))
  .catch(err => console.error(err));
```

### Python

```python
import requests

url = "https://api.sureshake.com/v2/users?search=string"

response = requests.get(url)

print(response.text)
```

## Responses

### 200

Default Response

#### Example

```json
{
  "data": [
    {
      "id": "string",
      "name": "string",
      "email": "user@example.com",
      "avatar": "string",
      "title": "string",
      "company": "string"
    }
  ],
  "meta": {
    "total": 0,
    "limit": 0,
    "offset": 0,
    "hasMore": true,
    "page": 0,
    "totalPages": 0
  }
}
```

- `data` (`user-list.response.200.data`; array<object>, required)
  - `id` (`user-list.response.200.data.id`; string, required)
  - `name` (`user-list.response.200.data.name`; string, required, nullable)
  - `email` (`user-list.response.200.data.email`; string, required, nullable)
    - format `email`
  - `avatar` (`user-list.response.200.data.avatar`; string, required, nullable)
  - `title` (`user-list.response.200.data.title`; string, required, nullable)
  - `company` (`user-list.response.200.data.company`; string, required, nullable)
- `meta` (`user-list.response.200.meta`; object, required)
  - `total` (`user-list.response.200.meta.total`; number, required) — Total number of items available
  - `limit` (`user-list.response.200.meta.limit`; number, required) — Number of items per page
  - `offset` (`user-list.response.200.meta.offset`; number, required) — Number of items skipped
  - `hasMore` (`user-list.response.200.meta.hasMore`; boolean, required) — Whether more items are available
  - `page` (`user-list.response.200.meta.page`; number, optional) — Current page number
  - `totalPages` (`user-list.response.200.meta.totalPages`; number, optional) — Total number of pages

### 400

Default Response

#### Example

```json
{
  "error": {
    "code": "string",
    "message": "string",
    "details": null,
    "traceId": "string"
  }
}
```

- `error` (`user-list.response.400.error`; object, required)
  - `code` (`user-list.response.400.error.code`; string, required) — Machine-readable error code (e.g., NOT_FOUND)
  - `message` (`user-list.response.400.error.message`; string, required) — Human-readable error message
  - `details` (`user-list.response.400.error.details`; unknown, optional) — Optional structured error details
  - `traceId` (`user-list.response.400.error.traceId`; string, optional) — Unique ID for log correlation

### 401

Default Response

#### Example

```json
{
  "error": {
    "code": "string",
    "message": "string",
    "details": null,
    "traceId": "string"
  }
}
```

- `error` (`user-list.response.401.error`; object, required)
  - `code` (`user-list.response.401.error.code`; string, required) — Machine-readable error code (e.g., NOT_FOUND)
  - `message` (`user-list.response.401.error.message`; string, required) — Human-readable error message
  - `details` (`user-list.response.401.error.details`; unknown, optional) — Optional structured error details
  - `traceId` (`user-list.response.401.error.traceId`; string, optional) — Unique ID for log correlation

### 404

Default Response

#### Example

```json
{
  "error": {
    "code": "string",
    "message": "string",
    "details": null,
    "traceId": "string"
  }
}
```

- `error` (`user-list.response.404.error`; object, required)
  - `code` (`user-list.response.404.error.code`; string, required) — Machine-readable error code (e.g., NOT_FOUND)
  - `message` (`user-list.response.404.error.message`; string, required) — Human-readable error message
  - `details` (`user-list.response.404.error.details`; unknown, optional) — Optional structured error details
  - `traceId` (`user-list.response.404.error.traceId`; string, optional) — Unique ID for log correlation

### 500

Default Response

#### Example

```json
{
  "error": {
    "code": "string",
    "message": "string",
    "details": null,
    "traceId": "string"
  }
}
```

- `error` (`user-list.response.500.error`; object, required)
  - `code` (`user-list.response.500.error.code`; string, required) — Machine-readable error code (e.g., NOT_FOUND)
  - `message` (`user-list.response.500.error.message`; string, required) — Human-readable error message
  - `details` (`user-list.response.500.error.details`; unknown, optional) — Optional structured error details
  - `traceId` (`user-list.response.500.error.traceId`; string, optional) — Unique ID for log correlation

### 503

Default Response

#### Example

```json
{
  "error": {
    "code": "string",
    "message": "string",
    "details": null,
    "traceId": "string"
  }
}
```

- `error` (`user-list.response.503.error`; object, required)
  - `code` (`user-list.response.503.error.code`; string, required) — Machine-readable error code (e.g., NOT_FOUND)
  - `message` (`user-list.response.503.error.message`; string, required) — Human-readable error message
  - `details` (`user-list.response.503.error.details`; unknown, optional) — Optional structured error details
  - `traceId` (`user-list.response.503.error.traceId`; string, optional) — Unique ID for log correlation


Source: https://docs.sureshake.com/reference/users/list/index.md
