> The full uetr.ai documentation index is at https://uetr.ai/llms.txt, and every page under https://uetr.ai/docs/api is also Markdown at its address plus `.md`.

# Count the people following a transfer

Count how many people follow a transfer's updates by email: those who receive its email alerts through its share link or payment record link, from sign-ups they confirmed and have not stopped, each address once. An archived transfer sends no alerts, so it counts none. It never returns their addresses, and alert sign-ups are made and stopped only by each person. Reading changes nothing.

`GET https://uetr.ai/api/v1/transfers/{uetr}/watchers`

- MCP tool: `get_watcher_count`
- Access: any key or connection

## Parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `uetr` | path | string (matching `^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89aAbB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$`) | Yes | The transfer's UETR. |

## Response

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `uetr` | string | Yes |  |
| `watchers` | integer | Yes | How many people receive the alerts. |

## Example

```sh
curl -X GET "https://uetr.ai/api/v1/transfers/eb6305c9-1f7f-49de-aed0-16487c27b42d/watchers" \
  -H "Authorization: Bearer $UETR_API_KEY"
```

The answer:

```json
{
  "uetr": "eb6305c9-1f7f-49de-aed0-16487c27b42d",
  "watchers": 2
}
```

## Refusals

Besides the [access refusals](/docs/api/errors#access-refusals) every call can meet, this call can answer:

- [`not_found`](/docs/api/errors#not_found) (404): Not found.