Customers
Customers with lifetime spend and order statistics.
30 fields — 23 dimensions, 7 metrics. Date clauses (SINCE, UNTIL, DURING) use firstOrderDate.
The live, authoritative list is always GET /v1/datasets — this page is regenerated from the same catalog, but the endpoint reflects exactly what is deployed.
Query it
FROM customers
SHOW customer_count
GROUP BY customer_name
SINCE -30d
See Querying with SoloQL for the language.
Fetch records
curl -H "Authorization: Bearer esk_live_..." \
"https://api.ecomsolo.com/v1/customers?page_size=50&fields=customer_name,customer_email,customer_id"
Any field marked ✅ below can be returned, requested via fields=, and used as an equality filter (?field=value). Fields marked aggregate only exist for COUNT-style questions and have no value on a single record — ask SoloQL for those. See Fetching records.
Fields
| Field | Type | Role | Records | Description |
|---|---|---|---|---|
customer_name | string | dimension | ✅ | Customer display name. |
customer_email | string | dimension | ✅ | Email address of the customer. |
customer_id | string | dimension | ✅ | Shopify identifier for the customer. |
first_name | string | dimension | ✅ | Customer first name. |
last_name | string | dimension | ✅ | Customer last name. |
customer_account_status | string | dimension | ✅ | Status of the customer's account. |
customer_language | string | dimension | ✅ | Language associated with the customer. |
customer_tag | string | dimension | ✅ | Tag associated with the customer. |
tax_exempt | boolean | dimension | ✅ | Whether the customer is tax exempt. |
verified_email | boolean | dimension | ✅ | Whether the email address is verified. |
customer_email_subscription_status | string | dimension | ✅ | Email marketing subscription status of the customer. |
customer_sms_subscription_status | string | dimension | ✅ | SMS marketing subscription status of the customer. |
customer_added_date | date | dimension | ✅ | Date the customer record was added. |
customer_first_order_date | date | dimension | ✅ | Date of the customer's first order. |
customer_last_order_date | date | dimension | ✅ | Date of the customer's most recent order. |
customer_number_of_orders | number | dimension | ✅ | Number of orders the customer has placed across all time. |
customer_amount_spent | money | dimension | ✅ | Amount the customer has spent across all time. |
predicted_spend_tier | string | dimension | ✅ | Shopify's prediction of how much the customer is likely to spend, as a tier. |
rfm_group | string | dimension | ✅ | Shopify's recency/frequency/monetary grouping of the customer (Champions, Loyal, At risk, …). |
customer_city | string | dimension | ✅ | Individual cities in the customer's history of addresses. |
customer_region | string | dimension | ✅ | Individual regions in the customer's history of addresses. |
customer_country | string | dimension | ✅ | Individual countries in the customer's history of addresses. |
customer_count | number | metric | aggregate only | Number of customers in the group (document count — value_count on createdAt). Sums across stores. |
new_customer_records | number | metric | aggregate only | Number of customers whose first purchase is within the period. Sums across stores. |
total_number_of_orders | number | metric | ✅ | Number of orders the customer has placed across all time. |
total_amount_spent | money | metric | ✅ | Amount the customer has spent across all time. |
total_amount_spent_per_order | money | metric | aggregate only | Average amount spent per order — total amount spent divided by total number of orders. |
percent_of_customers | percent | metric | aggregate only | Each group's customer count as a percentage of all customers matching the query. |
days_since_last_order | number | metric | ✅ | Average days since the customers' most recent order. Customers with no orders are excluded. |
store | string | dimension | ✅ | The shop the record belongs to. Filter with WHERE store IN ('Shop name') or GROUP BY store. |