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

# Core Lead Schema

> Parameter reference for contact, address, demographic, and financial fields.

The 3i Inbound Gateway accepts both flat key-value pairs and nested objects (`form.*`, `scoring.*`, `attribution.*`).

<Info>
  **Adaptive Schema & Zero Data Loss Guarantee:**\
  The parameters below represent our recommended canonical field names. However, **you do not need to rewrite your platform's existing JSON format**.

  * **Auto-Adaptation:** 3i's multi-pass ingestion engine uses proprietary semantic resolution to automatically align your custom field names with our platform schema (e.g. `phone_num` → `phone`, `coverage_requested` → `coverage_amount`, `dob` → `date_of_birth`, `zip` → `zipcode`).
  * **Unmapped Data Preservation:** Any question, score, or custom parameter unique to your system is **never dropped**—it is automatically swept into `custom_fields` and displayed in the agent's CRM drawer under **Vendor Data**.
</Info>

## Primary Contact Fields

<ParamField body="name" type="string" required>
  The full contact name (e.g. `"Marcus Vance"`). Alternatively, provide `first_name` and `last_name`; 3i will combine them automatically into the display name.

  *Accepted aliases:* `fullname`, `full_name`, `contact_name`, `lead_name`.
</ParamField>

<ParamField body="first_name" type="string">
  The contact's first name.
</ParamField>

<ParamField body="last_name" type="string">
  The contact's surname. Automatically combined with `first_name` if `name` is omitted.

  *Accepted aliases:* `lastName`, `surname`, `family_name`, `lname`.
</ParamField>

<ParamField body="phone" type="string">
  The primary telephone number. Accepts standard E.164 (`+15125550188`), punctuated US format (`(512) 555-0188`), or 10 raw digits (`5125550188`). 3i automatically strips punctuation and normalizes to a clean 10-digit format for carrier dialing.

  *Accepted aliases:* `phone_number`, `telephone`, `tel`, `mobile`, `cell`, `contact_phone`.
</ParamField>

<ParamField body="email" type="string">
  Primary email address. Automatically trimmed and stored lowercase.

  *Accepted aliases:* `email_address`, `contact_email`, `e_mail`, `lead_email`.
</ParamField>

***

## Address & Geographic Fields

<ParamField body="address" type="string">
  Street address (e.g. `"1204 Pecan Grove Rd"`).

  *Accepted aliases:* `street`, `street_address`, `address1`.
</ParamField>

<ParamField body="city" type="string">
  City or municipality name (e.g. `"Austin"`).

  *Accepted aliases:* `town`, `municipality`.
</ParamField>

<ParamField body="state" type="string">
  US state. Accepts 2-letter abbreviation (`TX`, `FL`, `CA`) or full name (`Texas`, `Florida`).

  <Info>
    **Automatic Timezone Detection:** 3i automatically infers and assigns the prospect's local timezone based on the `state` code or telephone area code.
  </Info>

  *Accepted aliases:* `st`, `region`, `province`.
</ParamField>

<ParamField body="zipcode" type="string">
  5-digit postal code (e.g. `"78704"`). Automatically coerced to a clean string format.

  *Accepted aliases:* `zip`, `zip_code`, `postal_code`.
</ParamField>

<ParamField body="county" type="string">
  County or parish name (e.g. `"Travis"`).

  *Accepted aliases:* `parish`.
</ParamField>

***

## Demographics & Language

<ParamField body="date_of_birth" type="string">
  Date of birth formatted as `YYYY-MM-DD` or standard US format `MM/DD/YYYY` (e.g. `"1963-04-12"`).

  *Accepted aliases:* `dob`, `DOB`, `birth_date`, `birthdate`.
</ParamField>

<ParamField body="age" type="integer">
  Contact's age in years. Validated strictly between 18 and 120 to prevent coverage amounts or zip codes from polluting age fields.
</ParamField>

<ParamField body="gender" type="string">
  Contact gender: `Male` or `Female`. Values like `m`, `f`, `male`, or `female` are normalized automatically to canonical `Male` or `Female`.
</ParamField>

<ParamField body="language" type="string">
  Primary preferred language (e.g. `"English"`, `"Spanish"`).

  *Accepted aliases:* `lang`, `preferred_language`.
</ParamField>

***

## Notes & Custom Fields

<ParamField body="notes" type="string">
  Free-text briefing notes for the agent. If you send multiple note fields (`comments`, `remarks`, `additional_info`, `description`), 3i automatically concatenates them using a `|` separator.
</ParamField>

<ParamField body="custom_fields" type="object">
  A flexible JSON object holding any partner-specific metadata, external database identifiers, call recording URLs, or quiz answers.

  3i automatically preserves all custom properties and renders them inside the CRM Lead Details drawer under **Vendor Data**:

  ```json theme={null}
  "custom_fields": {
    "intent_score": 94,
    "quote_presented": "$48/mo",
    "call_recording_url": "https://recordings.partner.com/rec_99214.mp3"
  }
  ```
</ParamField>
