---
title: "Validate a list of call reasons"
method: POST
path: "/call_reasons/validate"
tags: ["Reference Data"]
---

# Validate a list of call reasons

`POST /call_reasons/validate`

Check up to 10 candidate `call_reasons` strings against Telnyx's vetting heuristics before sending them on a DIR create or update. The endpoint flags strings that are likely to be rejected during vetting (too generic, banned phrases, length issues, etc.) so you can fix them up front.

## Request body

- string[] — **Bare JSON array** of candidate call-reason strings (NOT an object - there is no top-level `call_reasons` key on this endpoint). 1–10 strings, each ≤64 characters.

## Response `200`

Per-string validation result.

- ValidateCallReasonsResponse
  - `data` object, required
    - `all_pre_approved` boolean, required — `true` when every supplied reason matches a pre-vetted entry in the call-reason library. When `true`, the DIR will sail through the call-reasons portion of vetting.
    - `non_approved_reasons` string[], required — Subset of the input that does NOT match the pre-vetted library. The DIR can still be submitted with these - they will go through manual review.
    - `requires_manual_vetting` boolean, required — `true` when at least one supplied reason is in `non_approved_reasons`. Equivalent to `non_approved_reasons.length > 0` and the inverse of `all_pre_approved`.

## Other responses

- `default` — An error occurred. The response carries the standard Telnyx error envelope.
- `4XX` — An error occurred. The response carries the standard Telnyx error envelope.

---

[API](https://skmtc.net/team-telnyx/apis/telnyx-api-2.md) · [All operations](https://skmtc.net/team-telnyx/apis/telnyx-api-2/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/team-telnyx/telnyx-api-2/versions/8f5f4e537994/schema)
