> ## 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.tapIntents.list

> Lists the tap intents you opened on one unit that are pending or approved and not yet consumed, oldest first, each with its `status`; it never returns a code.

```ts theme={null}
list(query: ListTapIntentsParams, options?: RequestOptions): Promise<TapIntentList>
```

| | |
| - | - |
| Endpoint | [`GET /v1/tap-intents`](https://docs.endstate.io/api-reference/tap-intents/list-a-units-live-tap-intents) |
| Credential | Secret key (`end_sk_...`) |
| Retry class | `read` |

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

## Example

```ts theme={null}
const result = await endstate.tapIntents.list({ unitId: unit.id });
```

## Parameters

**unit\_id** `string` *required*

The unit whose tap intents to list.

## Returns

`200` - `TapIntentList`.

**tap\_intents** `object[]` *required*

The unit's tap intents that you opened and can still act on: `pending` ones, and `approved` ones you have not consumed and whose `use_by` has not passed. Oldest first, each with its `status`.

## Errors

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

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

See [Errors and retries](https://docs.endstate.io/sdks/core/errors-and-retries.md) for the error types and how to narrow them.


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