> ## Documentation Index
> Fetch the complete documentation index at: https://docs.minerva.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Country inference

> Infer each record's country from its contact info (phone country code, email TLD, address signals, etc.).

```python theme={null}
mc.api.infer_record_country([
    {"record_id": "1", "emails": ["test@example.com"]}
])
```

Returns a most-likely country per record.

## Parameters

<ParamField path="records" type="list[dict]" required>
  Record objects (1–500), each with `record_id` + any of `emails` / `phones` /
  `name`.
</ParamField>

<ParamField path="dry_run" type="bool" default="False">
  Validate input locally without sending.
</ParamField>

## Response shape

```python theme={null}
result = mc.api.infer_record_country([{"record_id": "1", "emails": ["test@example.com"]}])
# {
#   "results": [
#     {"record_id": "1", "inferred_country": "US", "confidence": ...}
#   ]
# }
```

## Validation

`dry_run=True` returns the validated `InferCountryRequest` without sending;
an empty `records` list raises `MinervaValidationError` locally. See
[Validation](/sdk/guides/validation-dry-run).
