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

# Nooks: List Users

> List the users with seats in your Nooks workspace, filtered by email. Includes SDK V2 guidance, input constraints, response fields, and Deepline credit cost.

List the users with seats in your Nooks workspace, filtered by email.

> [!NOTE]
>
> Tool ID: `nooks_list_users`

## Run this action

Use the TypeScript SDK for one call. Use `ctx.tools.execute(...)` inside a Play for durable calls, scheduled calls, or CSV processing.

```ts theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
import { Deepline } from 'deepline';

const deepline = await Deepline.connect();
const result = await deepline.tools.execute(
  'nooks_list_users',
  {
    "page": {
      "size": 50,
      "after": "cursor_123",
      "before": "cursor_123"
    },
    "filter": {
      "name": "Example",
      "email": "jane.doe@example.com",
      "crmId": "crm_123"
    }
  },
);

console.log(result.toolResponse.raw);
```

### CLI

```bash theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
deepline tools execute nooks_list_users --input '{
  "page": {
    "size": 50,
    "after": "cursor_123",
    "before": "cursor_123"
  },
  "filter": {
    "name": "Example",
    "email": "jane.doe@example.com",
    "crmId": "crm_123"
  }
}' --json
```

## Example response

The static output schema lacks the details for a reliable example. Use `deepline describe nooks_list_users --json` for the complete live contract.

## Input reference

Returns a paginated list of users in the workspace. Only users with active seat assignments are returned. Example: `bash curl -X GET 'https://partner-api.nooks.in/v1/users?page[size]=50' \ -H "Authorization: Bearer nooks-api-..." ` Filter by email: `bash curl -X GET 'https://partner-api.nooks.in/v1/users?filter[email]=jane@example.com' \ -H "Authorization: Bearer nooks-api-..." ` Filter by CRM id — looks up the Nooks user mapped to the given external id in the connected CRM (e.g. a Salesforce `User.Id` / `OwnerId`). Returns an empty list if no Nooks user is mapped to that id: `bash curl -X GET 'https://partner-api.nooks.in/v1/users?filter[crmId]=0051a000000XyzABC' \ -H "Authorization: Bearer nooks-api-..." `

| Name | Type | Required | Default | Details |
| - | - | - | - | - |
| `payload.page` | `object` | No | — | Number of items per page (max 100) |
| `payload.filter` | `object` | No | — | Filter users by exact name match |

<details>
  <summary>Show raw input schema</summary>

  ### Input JSON Schema

  ````json theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
  {
    "type": "object",
    "description": "Returns a paginated list of users in the workspace. Only users with active seat assignments are returned. Example: ```bash curl -X GET 'https://partner-api.nooks.in/v1/users?page[size]=50' \\ -H \"Authorization: Bearer nooks-api-...\" ``` Filter by email: ```bash curl -X GET 'https://partner-api.nooks.in/v1/users?filter[email]=jane@example.com' \\ -H \"Authorization: Bearer nooks-api-...\" ``` Filter by CRM id — looks up the Nooks user mapped to the given external id in the connected CRM (e.g. a Salesforce `User.Id` / `OwnerId`). Returns an empty list if no Nooks user is mapped to that id: ```bash curl -X GET 'https://partner-api.nooks.in/v1/users?filter[crmId]=0051a000000XyzABC' \\ -H \"Authorization: Bearer nooks-api-...\" ```",
    "properties": {
      "page": {
        "type": "object",
        "description": "Number of items per page (max 100)",
        "properties": {
          "size": {
            "type": "integer",
            "description": "Number of items per page (max 100)",
            "default": 50,
            "minimum": 1,
            "maximum": 100
          },
          "after": {
            "type": "string",
            "description": "Cursor for fetching the next page. Opaque token returned by the API in `links.next`; callers should treat it as opaque and only pass values they received from a previous response. Malformed cursors return `400 Bad Request`."
          },
          "before": {
            "type": "string",
            "description": "Cursor for fetching the previous page. Opaque token returned by the API in `links.prev`; callers should treat it as opaque and only pass values they received from a previous response. Malformed cursors return `400 Bad Request`."
          }
        },
        "required": [],
        "additionalProperties": false
      },
      "filter": {
        "type": "object",
        "description": "Filter users by exact name match",
        "properties": {
          "name": {
            "type": "string",
            "description": "Filter users by exact name match"
          },
          "email": {
            "type": "string",
            "description": "Filter users by exact email match.",
            "format": "email"
          },
          "crmId": {
            "type": "string",
            "description": "Filter to the Nooks user mapped to the given id in the customer's CRM (e.g. a Salesforce User.Id or OwnerId). Resolved via the workspace's CRM user mappings. Returns an empty list if no Nooks user is mapped to the given id."
          },
          "updatedAt": {
            "type": "object",
            "description": "Filter by minimum updatedAt (ISO 8601 datetime)",
            "properties": {
              "gte": {
                "type": "string",
                "description": "Filter by minimum updatedAt (ISO 8601 datetime)",
                "format": "date-time"
              },
              "lt": {
                "type": "string",
                "description": "Filter by updatedAt before this timestamp, exclusive (ISO 8601 datetime)",
                "format": "date-time"
              }
            },
            "required": [],
            "additionalProperties": false
          }
        },
        "required": [],
        "additionalProperties": false
      }
    },
    "required": [],
    "additionalProperties": false
  }
  ````
</details>

## Output reference

Standard tool result payload.

| Name | Type | Required | Default | Details |
| - | - | - | - | - |
| `result.data` | `object` | Yes | — | Provider response payload. |
| `result.data.data` | `array` | No | — | — |
| `result.data.data[].id` | `string` | Yes | — | Unique identifier for the user |
| `result.data.data[].name` | `string` | Yes | — | Full name of the user |
| `result.data.data[].email` | `string` | Yes | — | Email address of the user Format: `email`. |
| `result.data.data[].crmId` | `string \| null` | Yes | — | The user's id in the customer's CRM of record (e.g. a Salesforce User.Id / OwnerId), resolved via the workspace's CRM user mappings. Null when the user has no CRM mapping. |
| `result.data.data[].createdAt` | `string` | Yes | — | When the user was created Format: `date-time`. |
| `result.data.data[].updatedAt` | `string` | Yes | — | When the user was last updated Format: `date-time`. |
| `result.data.links` | `object` | No | — | Pagination links for navigating through results. Links are returned as relative references (path + query) that should be resolved against the base URL of the request. |
| `result.data.links.first` | `string` | No | — | URL for the first page Format: `uri-reference`. |
| `result.data.links.prev` | `string \| null` | No | — | URL for the previous page (null if on first page) Format: `uri-reference`. |
| `result.data.links.next` | `string \| null` | No | — | URL for the next page (null if on last page) Format: `uri-reference`. |
| `result.meta` | `object` | No | — | Additional response metadata (status, paging). |

<details>
  <summary>Show raw output schema</summary>

  ### Output JSON Schema

  ```json theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
  {
    "type": "object",
    "description": "Standard tool result payload.",
    "properties": {
      "data": {
        "type": "object",
        "description": "Provider response payload.",
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "type": "object",
              "description": "A workspace user",
              "properties": {
                "id": {
                  "type": "string",
                  "description": "Unique identifier for the user"
                },
                "name": {
                  "type": "string",
                  "description": "Full name of the user"
                },
                "email": {
                  "type": "string",
                  "description": "Email address of the user",
                  "format": "email"
                },
                "crmId": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The user's id in the customer's CRM of record (e.g. a Salesforce User.Id / OwnerId), resolved via the workspace's CRM user mappings. Null when the user has no CRM mapping."
                },
                "createdAt": {
                  "type": "string",
                  "description": "When the user was created",
                  "format": "date-time"
                },
                "updatedAt": {
                  "type": "string",
                  "description": "When the user was last updated",
                  "format": "date-time"
                }
              },
              "required": [
                "id",
                "name",
                "email",
                "crmId",
                "createdAt",
                "updatedAt"
              ],
              "additionalProperties": false
            }
          },
          "links": {
            "type": "object",
            "description": "Pagination links for navigating through results. Links are returned as relative references (path + query) that should be resolved against the base URL of the request.",
            "properties": {
              "first": {
                "type": "string",
                "description": "URL for the first page",
                "format": "uri-reference"
              },
              "prev": {
                "type": [
                  "string",
                  "null"
                ],
                "description": "URL for the previous page (null if on first page)",
                "format": "uri-reference"
              },
              "next": {
                "type": [
                  "string",
                  "null"
                ],
                "description": "URL for the next page (null if on last page)",
                "format": "uri-reference"
              }
            },
            "additionalProperties": false
          }
        },
        "additionalProperties": false
      },
      "meta": {
        "type": "object",
        "description": "Additional response metadata (status, paging).",
        "additionalProperties": true
      }
    },
    "required": [
      "data"
    ],
    "additionalProperties": false
  }
  ```
</details>

## Deepline cost

* Pricing model: `fixed` (per call).
* Estimated Deepline credits: `0` per pricing unit.
* Provider-native pricing may still exist outside Deepline credit billing.

## Related documentation

* [Nooks provider guide](https://deepline.com/docs/providers/nooks/guide.md)
* [SDK V2 quickstart](https://deepline.com/docs/sdk-v2/quickstart.md)
* [SDK reference](https://deepline.com/docs/sdk-v2/sdk-reference.md)
* [Run tools across a CSV](https://deepline.com/docs/sdk-v2/batch-csv.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.