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

# CreateCustomerEventInput

> A single customer event to record.

<ResponseField name="customer" type={<a href="/docs/api-reference/v3/reference/events/customer-event-customer-input">CustomerEventCustomerInput!</a>} required>
  The customer the event belongs to.

  <Expandable title="fields" lazyRender>
    <ResponseField name="customFields" type={<a href="/docs/api-reference/v3/reference/common/json">JSON</a>}>
      Patches customer custom fields — a flat object of string, number, or boolean values.
    </ResponseField>

    <ResponseField name="email" type="String">
      The customer's email.
    </ResponseField>

    <ResponseField name="firstName" type="String">
      Patches the customer's first name.
    </ResponseField>

    <ResponseField name="id" type="String">
      The Redo customer id.
    </ResponseField>

    <ResponseField name="lastName" type="String">
      Patches the customer's last name.
    </ResponseField>

    <ResponseField name="location" type={<a href="/docs/api-reference/v3/reference/events/customer-event-location-input">CustomerEventLocationInput</a>}>
      Patches the customer's current location.

      <Expandable title="fields" lazyRender>
        <ResponseField name="city" type="String">
          City.
        </ResponseField>

        <ResponseField name="country" type="String">
          Country name.
        </ResponseField>

        <ResponseField name="countryCode" type="String">
          ISO country code.
        </ResponseField>

        <ResponseField name="ianaTimeZoneName" type="String">
          IANA time zone name, e.g. America/New\_York.
        </ResponseField>

        <ResponseField name="latitude" type="Float">
          Latitude.
        </ResponseField>

        <ResponseField name="longitude" type="Float">
          Longitude.
        </ResponseField>

        <ResponseField name="postalCode" type="String">
          Postal code.
        </ResponseField>

        <ResponseField name="state" type="String">
          State or province.
        </ResponseField>

        <ResponseField name="stateCode" type="String">
          State or province code.
        </ResponseField>

        <ResponseField name="street1" type="String">
          Street line 1.
        </ResponseField>

        <ResponseField name="street2" type="String">
          Street line 2.
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="phoneNumber" type="String">
      The customer's phone number.
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="data" type={<a href="/docs/api-reference/v3/reference/common/json">JSON</a>}>
  Custom event properties — a flat object of segmentable values (nest non-segmentable data under `$extra`). Max 400 properties, 100 KB per string, 4,000 array items.
</ResponseField>

<ResponseField name="eventName" type="String!" required>
  The event name (1–100 characters).
</ResponseField>

<ResponseField name="eventTimestamp" type={<a href="/docs/api-reference/v3/reference/common/date-time">DateTime</a>}>
  When the event occurred (ISO-8601). Defaults to ingest time if omitted.
</ResponseField>

<ResponseField name="uniqueId" type="String">
  A merchant-controlled deduplication key (1–255 characters). Reusing it dedupes retries of the same event.
</ResponseField>

<ResponseField name="value" type="Float">
  A monetary or conversion value associated with the event.
</ResponseField>

<ResponseField name="valueCurrency" type="String">
  ISO 4217 currency code for `value`, e.g. "USD".
</ResponseField>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.