Convot Convot
Back to Contacts & People
Contacts & People

Custom Data

Store arbitrary key-value pairs on a contact to surface your app's context directly in the conversation sidebar.

Updated June 11, 2026

Custom data is a set of key-value pairs you attach to a contact via Convot.identify(). It appears in the Contact sidebar during a conversation and on the contact’s profile page, so your agents always have the right context without switching to another tool.

Sending custom data

Pass a custom_data object in the Convot.identify() call:

<script>
  Convot.identify({
    email: "[email protected]",
    external_id: "user_123",
    custom_data: {
      plan: "pro",
      shopify_store: "acme.myshopify.com",
      order_count: 42,
      trial_ends_at: "2026-07-01",
      mrr_usd: 99
    }
  });
</script>

Values can be strings, numbers, or booleans.

Merge behavior

Each time you call Convot.identify(), the custom_data is merged with whatever is already stored. Existing keys you don’t include are untouched. To update a single field, just send that field.

To clear a specific key, pass null as the value.

Where it appears

Custom data shows up in the Contact sidebar under the “Custom data” section, in a key-value list. Agents can see it without leaving the conversation.

It also appears on the full contact profile page under Contacts → [contact name].

Per-app custom data

Custom data is stored per-app (on the AppContact record), not at the organization level. The same contact can have different custom data in different apps. For example, if you have two Shopify apps, each app’s custom_data block is independent.

Protect existing values (unverified sessions)

For unverified sessions (no user_hash in the identify call, or verification not enabled), incoming custom_data can only fill blank fields - it cannot overwrite values already stored. This prevents a visitor from spoofing another user’s data.

When you use identity verification, the verified session can write any field freely.

Suggested fields for Shopify app developers

💡
Key Example value Why it’s useful
plan "pro" Know immediately what tier the customer is on
shopify_domain "store.myshopify.com" Direct link to the store
app_version "2.4.1" Reproduce bugs against the right version
install_date "2025-01-15" Assess churn risk
active true Filter for active vs. churned users

Was this article helpful?