# Spam Flag and Health

> Mark an Edesy Collect pool number as spam-flagged so rotation skips it, reactivate it later, or retire it, from the portal or the API.

Source: https://edesy.in/docs/collect/numbers/spam-flag-and-health

Every number in a Collect pool has a health state: active, flagged or retired. Only active numbers are used for calls. When you suspect a carrier has spam-flagged a number, for example its answer rate drops sharply, flag it and rotation skips it at once; reactivate it when it recovers. Flagging is a manual action you take.

## Health states

| Health | Used for calls | Meaning |
|---|---|---|
| `active` | Yes | Default for a new pool number |
| `flagged` | No | You suspect a carrier spam block |
| `retired` | No | Taken out of service |

## Change health

**Portal:** on the pool, use the **Flag as spam-blocked** button next to an active number, or **Reactivate** next to a flagged one. **Remove** takes the number out of the pool.

**API:**

```bash
curl -X PATCH https://voice-api.edesy.in/v1/collect/pools/POOL_ID/numbers/MEMBER_ID/health \
  -H "Authorization: Bearer sk_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{"health": "flagged"}'
```

```json
{ "status": "ok" }
```

`health` must be `active`, `flagged` or `retired`. Any other value returns `400`. `MEMBER_ID` is the `id` from `GET /v1/collect/pools/:id/numbers`, which also returns each number's `health` and `last_used_at`.

## Signs a number may be flagged

- Debtors who answered before stop answering calls from that number
- Debtors tell you the call showed a spam warning

## Good practice

- Keep pools small (2 to 4 numbers).
- Keep the daily cap and gap at or near the defaults: 2 a day, 180 minutes apart.
- Keep a spare active number so a flag does not cut the pool too far. Remember a debtor's attempts are limited by the number of active numbers. See [Number Pools and Rotation](https://edesy.in/docs/collect/numbers/number-pools-and-rotation).
