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

# endstate.chips.list

> Returns a cursor-paginated list of chips in your organization, each with a reference to the unit it is paired to. Use `is_test` to filter to test or encoded chips.

```ts theme={null}
list(query?: ListParams & {
    is_test?: "true" | "false";
}, options?: RequestOptions): Paginated<ChipListItem, ListChipsResponse>
```

|             |                                                    |
| ----------- | -------------------------------------------------- |
| Endpoint    | [`GET /v1/chips`](/api-reference/chips/list-chips) |
| Credential  | Secret key (`end_sk_...`)                          |
| Retry class | `read`                                             |

Retried on network failure, timeout, `429`, and `5xx`.

## Example

```ts theme={null}
const result = await endstate.chips.list();
```

## Parameters

<ParamField body="limit" type="integer">
  Maximum number of records to return. Defaults to 50; maximum 100.
</ParamField>

<ParamField body="cursor" type="string">
  Opaque cursor from the previous page.
</ParamField>

<ParamField body="is_test" type="'true' | 'false'">
  Filter by test-chip flag. Omit to return both test and encoded chips.
</ParamField>

## Returns

`200` - `ListChipsResponse`.

<ResponseField name="chips" type="object[]" required />

<ResponseField name="pagination" type="object" required />

## Errors

Branch on `error.code`, never on the HTTP status - several codes share one.

| Code                  | HTTP | Retry         |
| --------------------- | ---- | ------------- |
| `auth.unauthorized`   | 401  | Do not retry  |
| `internal.error`      | 500  | Safe to retry |
| `rate_limit.exceeded` | 429  | Safe to retry |
| `validation.failed`   | 400  | Do not retry  |

See [Errors and retries](/sdks/core/errors-and-retries) for the error types and how to narrow them.
