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

# talkvalue path company list

> List companies in the workspace with a keyword filter and pagination.

Page through every company in the active workspace. Filter by keyword to narrow the result, then pipe to `jq` or save as JSON. The dashboard Companies page uses the same backend query.

## Synopsis

```bash theme={null}
talkvalue path company list [options]
```

## Options

| Flag                  | Type    | Description                                              |
| --------------------- | ------- | -------------------------------------------------------- |
| `--keyword <keyword>` | string  | Free-text match against company display name and domain. |
| `--page <n>`          | integer | Page number (zero-indexed). Defaults to `0`.             |
| `--page-size <n>`     | integer | Page size. Defaults to the server default.               |

## Examples

### 1. Browse companies in the terminal

```bash theme={null}
talkvalue path company list --page-size 20
```

Prints the first 20 companies as a table: ID, domain, display name, and the people count attributed to the company.

### 2. Filter by keyword and pipe to jq

```bash theme={null}
talkvalue path company list --keyword "acme" --json \
  | jq '.data[] | {id, displayName, peopleCount}'
```

Returns the matching companies stripped to three fields. The `--json` envelope also carries `.pagination`.

### 3. Walk every page in a script

```bash theme={null}
page=0
while :; do
  resp=$(talkvalue path company list --page "$page" --page-size 100 --json)
  echo "$resp" | jq -e '.data | length > 0' >/dev/null || break
  echo "$resp" | jq '.data[]'
  page=$((page + 1))
done
```

Loops until a page returns no rows. See [Scripting with jq](/cli/recipes/scripting-with-jq) for richer pagination patterns.

## Response

```jsonc theme={null}
{
  "data": [
    {
      "id": 88,
      "domain": "acme.com",
      "displayName": "Acme Inc.",
      "peopleCount": 142
    }
  ],
  "pagination": { "page": 0, "pageSize": 20, "totalElements": 1320, "totalPages": 66 }
}
```

`pagination` appears only in `--json`. `peopleCount` may be `null` on companies that have never had a person attributed. Treat it as `0` when computing totals.

## See also

* [`company get`](/cli/commands/path/company/get). Fetch a single company in full detail.
* [`company person list`](/cli/commands/path/company/person-list). Drill into the people behind `peopleCount`.
* [`path person list`](/cli/commands/path/person/list). The workspace-wide people query with `--company-id` filtering.
* [Companies](/path/manage/companies). The dashboard surface this command mirrors.
