# getVoiceTrustSummary

One org-wide picture of caller-trust registration: the carrier registration that keeps outbound calls from showing as "Spam Likely". accountState is chosen by loudest call to action, not by progress (FAILED > REGISTERING > REGISTERED > SELF_MANAGED > NOT_ELIGIBLE), so one refused account reads FAILED even when another is done. The line counts split the org's numbers by registration (registered / registering / failed, summing to eligibleLineCount) and by carrier health (watch / atRisk). needsAttention is the only flag that means "a human must act now": a refused account or a number carriers appear to be rejecting; failedLineCount alone does not raise it, because a single errored attempt is retried by the next sweep. Read-only: registration runs on its own schedule and there is nothing to submit through this API.

- Call: `POST https://server.goliathdata.com/api/v1/call` with `{ "operationId": "getVoiceTrustSummary", "variables": {...} }`
- Scope: `READ`
- Type: query
- Idempotency: a read; rejects `Idempotency-Key`
- Rate-limited: no

## Variables

None.

## Response (data, an example)

```json
{
  "voiceTrustQuery": {
    "summary": {
      "accountState": "REGISTERED",
      "eligibleLineCount": 0,
      "registeredLineCount": 0,
      "registeringLineCount": 0,
      "failedLineCount": 0,
      "watchLineCount": 0,
      "atRiskLineCount": 0,
      "needsAttention": true
    }
  }
}
```

## Example

```bash
curl https://server.goliathdata.com/api/v1/call \
  -H "Authorization: Bearer $GOLIATH_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "operationId": "getVoiceTrustSummary",
    "variables": {}
  }'
```
