> For the complete documentation index, see [llms.txt](https://api.bind.hr/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://api.bind.hr/contact-insights/models.md).

# Models

## The MsisdnRequest object

```json
{"openapi":"3.1.0","info":{"title":"Contact intelligence API","version":"1.0"},"components":{"schemas":{"MsisdnRequest":{"type":"object","required":["msisdn"],"properties":{"msisdn":{"type":"array","items":{"type":"string"},"description":"A list of MSISDNs to look up."},"callback_url":{"type":"string","format":"uri","description":"An optional URL to receive a callback with the results."}}}}}}
```

## The ContactIntelligenceRecord object

```json
{"openapi":"3.1.0","info":{"title":"Contact intelligence API","version":"1.0"},"components":{"schemas":{"ContactIntelligenceRecord":{"type":"object","required":["msisdn","metadata"],"properties":{"msisdn":{"type":"string","description":"The MSISDN to validate."},"metadata":{"type":"string","description":"Client reference echoed back on this number's result. Required — records missing `msisdn` or `metadata` are ignored."},"country_iso":{"type":"string","description":"Optional ISO 3166-1 alpha-2 country code for this number (e.g. `HR`). Falls back to the top-level `country_iso` when omitted."}}}}}}
```

## The ContactIntelligenceRequest object

```json
{"openapi":"3.1.0","info":{"title":"Contact intelligence API","version":"1.0"},"components":{"schemas":{"ContactIntelligenceRequest":{"type":"object","description":"Submit either a `msisdn` array **or** a `records` array — not both (a mixed request is rejected with response code 6). A maximum of 100 numbers can be validated per request.","properties":{"msisdn":{"type":"array","items":{"type":"string"},"maxItems":100,"description":"A list of MSISDNs to validate. Mutually exclusive with `records`."},"records":{"type":"array","items":{"$ref":"#/components/schemas/ContactIntelligenceRecord"},"maxItems":100,"description":"A list of records to validate, each carrying its own `metadata` and optional `country_iso`. Mutually exclusive with `msisdn`. A record is only processed when it contains both `msisdn` and `metadata`."},"country_iso":{"type":"string","description":"Optional default ISO 3166-1 alpha-2 country code (e.g. `HR`) applied to every submitted number. For `records`, a record's own `country_iso` takes precedence over this value."},"metadata":{"type":"string","description":"Optional client reference echoed back on every result. Applies to the `msisdn` array form; for `records` use the per-record `metadata` field instead."},"callback_url":{"type":"string","format":"uri","description":"Optional URL to receive an asynchronous callback with the results. When provided, the endpoint responds with `202` and `{ \"id\": \"<uuid>\" }`, then POSTs `{ \"id\": \"<uuid>\", \"data\": [ ... ] }` to this URL once processing completes."}}},"ContactIntelligenceRecord":{"type":"object","required":["msisdn","metadata"],"properties":{"msisdn":{"type":"string","description":"The MSISDN to validate."},"metadata":{"type":"string","description":"Client reference echoed back on this number's result. Required — records missing `msisdn` or `metadata` are ignored."},"country_iso":{"type":"string","description":"Optional ISO 3166-1 alpha-2 country code for this number (e.g. `HR`). Falls back to the top-level `country_iso` when omitted."}}}}}}
```
