Skip to content

Objects

Every response body is one of these objects. Objects are closed: the API sends exactly these fields, and a new field is always additive. Fields marked optional may be absent; nullable fields are present with null.

FieldTypeDescription
changedboolean
requestednumber
appliednumberWhat actually landed; differs from requested when a negative delta is clamped at zero.
balance_afternumber or null(nullable)
balanceBalance
FieldTypeDescription
idstring
namestring
commissionobject or null(nullable)
customer_discountobject or null(nullable)
member_countinteger or null(nullable)
FieldTypeDescription
dataarray of AffiliateGroup
FieldTypeDescription
dry_runboolean
groupAffiliateGroup
members_detachedintegerDeleting: partners who fall back to the programme’s rates. (optional)
partner_codes_sync_failedboolean(optional)

The partner (affiliate) programme’s defaults. Partners, approvals and payouts are managed in the admin.

FieldTypeDescription
revisioninteger
enabledbooleanWhether the partner programme is on. Switched in the Charm admin only.
applications_openbooleanPublic applications open. Admin only.
auto_approvebooleanApplications approved without review. Admin only.
commissionobject
customer_discountobject
commission_baseobject
holdback_daysintegerDays a commission waits before it can be paid out (refund window).
link_attribution_window_daysintegerHow long after a click an order still counts for the partner’s link.
code_prefixstringPartner codes start with this.
terms_urlstring or nullThe partner terms page. (nullable)
allow_self_referralbooleanA partner earns on their own orders.
hub_invite_after_referralsintegerCustomers are invited to become partners after this many referrals; 0 = straight away.
hide_order_valuebooleanPartners do not see order values.
utmobject
FieldTypeDescription
dry_runboolean
revisioninteger
operationstring: update, none
diffarray of FieldChange
summarystring or null(nullable)
affiliate_settingsAffiliateProgramSettings
partner_codes_sync_failedbooleanSaved, but some partner codes did not take the new buyer discount yet; the next change retries. (optional)
FieldTypeDescription
windowobject
currency_codestring or null(nullable)
membersobject
pointsobject
revenueobject
rewardsobject
tier_distributionobject
revenue_series_granularitystring: day, month
revenue_seriesarray of object
enrollment_seriesobject
FieldTypeDescription
idstringShopify customer GID, e.g. gid://shopify/Customer/123. Accepted by every endpoint that takes a customer id, as is the numeric legacy_id.
legacy_idinteger or nullThe numeric Shopify customer id (the part after the last slash of the GID). (nullable)
points_balancenumber
points_earnednumber
points_redeemednumber
pending_pointsnumber
FieldTypeDescription
monthinteger or null(nullable)
dayinteger or null(nullable)
FieldTypeDescription
changedboolean
birthdayobject or null(nullable)
FieldTypeDescription
idstring or nullNull only in a dry run of a create. (nullable)
namestring or nullShown on the storefront banner and in campaign emails. (nullable)
typestring: earning_boost, reward_spotlight
templatestring or null(nullable)
statusstring: draft, scheduled, active, ended, cancelled
multipliernumber or nullPoints multiplier while the campaign runs (earning_boost). (nullable)
stacking_modestring or nullHow it combines with the VIP tier multiplier: compound, max or replace. (nullable)
starts_atstring or null(nullable)
ends_atstring or null(nullable)
rule_typesarray of stringThe ways to earn it boosts.
product_scopeobject
audienceobject
limitsobject
consumedobject
badge_textstring or null(nullable)
banner_copyobject{ [language]: { title, subtitle } } for the storefront banner.
spotlight_rewardsarray of object
emailsobject
deletablebooleanDraft, ended and cancelled campaigns can be deleted; others are cancelled.
revisionintegerSend it back as if_revision so a concurrent edit is refused instead of overwritten.
created_atstring or null(nullable)
updated_atstring or null(nullable)
FieldTypeDescription
enabledbooleanWhether this email goes out. Campaigns created through the API start with every phase off.
scheduled_forstring or nullWhen it is due (from the window). (nullable)
sent_atstring or nullWhen it went out; it never goes out twice. (nullable)
FieldTypeDescription
dataarray of Campaign
next_cursorstring or nullPass as cursor to fetch the next page; null on the last page. (nullable)
has_morebooleanTrue when another page exists.
FieldTypeDescription
dry_runbooleanTrue when nothing was written.
revisionintegerThe campaign’s revision after the write (unchanged on a dry run).
operationstring: create, update, delete, none
diffarray of FieldChange
campaignCampaign or null(nullable)
would_emailobject or null(nullable)
FieldTypeDescription
statestring: redeemable, insufficient_points, tier_required, not_started, customer_excluded
points_neededintegerHow many more points the customer needs (insufficient_points). (optional)
required_tierstringThe tier that unlocks the reward (tier_required). (optional)
starts_atstring or nullWhen the reward opens (not_started). (optional, nullable)
FieldTypeDescription
enabledbooleanFalse when nothing would be earned; see reason.
reasonstring or null: program_disabled, no_points_layer, customer_excluded, no_eligible_lines, nothing_earned(nullable)
pointsintegerTotal the cart would earn.
base_pointsintegerBefore tier and campaign multipliers.
bonus_pointsintegerFrom the tier multiplier and campaigns.
tier_multipliernumber
campaign_multipliernumber
points_per_currencynumberThe order rule’s rate, points per unit of the shop currency.
eligible_amountnumberThe amount that earns, in the shop currency, after exclusions and tax handling.
linesarray of CartEstimateLine
currencystring or null(nullable)
customer_idstring or nullThe customer the estimate was priced for; null for anonymous. (nullable)
estimatetrue
FieldTypeDescription
indexintegerPosition of the line in the request.
product_idstring
eligiblebooleanFalse when a collection, tag or product exclusion removes the line from earning.
FieldTypeDescription
changedboolean
childrenarray of Subject
FieldTypeDescription
changedboolean
rule_idstring
points_awardednumber
balance_afternumber or null(nullable)
discount_codestring or nullWhen the rule rewards with a code (e.g. a birthday reward). (nullable)
is_pendingbooleanPoints held until a waiting period passes.

next_tier is present on GET /customers/{customer_id} only; rewards, history, program and referral only when named in include.

FieldTypeDescription
idstringShopify customer GID, e.g. gid://shopify/Customer/123. Accepted by every endpoint that takes a customer id, as is the numeric legacy_id.
legacy_idinteger or nullThe numeric Shopify customer id (the part after the last slash of the GID). (nullable)
emailstring or null(nullable)
first_namestring or null(nullable)
last_namestring or null(nullable)
points_balancenumberSpendable points.
points_earnednumberLifetime points earned.
points_redeemednumberLifetime points spent.
pending_pointsnumberPoints waiting for the return window to pass.
tierCustomerTier or null(nullable)
next_tierNextTier or null(optional, nullable)
rewardsarray of CustomerRewardWith include=rewards. (optional)
historyarray of HistoryEntryWith include=history: the latest 10 rows. (optional)
programProgram(optional)
referralReferral or null(optional, nullable)
referral_codestring or null(nullable)
excluded_from_programboolean
enrolled_atstring or null(nullable)
enrolled_viastring or null(nullable)
birthdayBirthday or null(nullable)
orders_countnumber
lifetime_spendnumber or nullIn the shop currency. (nullable)
last_activity_atstring or null(nullable)
updated_atstring or null(nullable)
FieldTypeDescription
dataarray of Customer
next_cursorstring or nullPass as cursor to fetch the next page; null on the last page. (nullable)
has_morebooleanTrue when another page exists.
FieldTypeDescription
idstring or null(nullable)
typestring or null(nullable)
enabledboolean
namestring or null(nullable)
points_costnumber or nullWhat this customer pays: their tier’s price when the reward has one. (nullable)
discount_typestring or null(nullable)
discount_valuenumber or null(nullable)
code_valid_daysnumber or null(nullable)
titlestring or null(nullable)
title_translationsobject
fieldsobject
summarystring or null(nullable)
minimum_purchasenumber or nullOrder minimum for the reward’s code, in the shop currency. (nullable)
ends_atstring or nullWhen the reward stops being available. (nullable)
can_redeemCanRedeem

What a customer write reports when the key lacks customers:read: state only, no personal data. Keys that also hold customers:read receive the full Customer.

FieldTypeDescription
idstringShopify customer GID, e.g. gid://shopify/Customer/123. Accepted by every endpoint that takes a customer id, as is the numeric legacy_id.
legacy_idinteger or nullThe numeric Shopify customer id (the part after the last slash of the GID). (nullable)
excluded_from_programboolean
tier_idstring or null(nullable)
is_manual_overrideboolean
FieldTypeDescription
idstring
namestring or null(nullable)
achieved_atstring or null(nullable)
grace_untilstring or null(nullable)
points_in_periodnumberThe evaluated qualifying total in the tier period.
is_manual_overrideboolean
manual_override_atstring or null(nullable)
FieldTypeDescription
changedboolean
customerCustomer or CustomerState
previous_tier_idstring or null(optional, nullable)
bonus_pointsnumber(optional)
FieldTypeDescription
changedboolean
requestednumber
appliednumber
points_deductednumberSame as applied. Kept for existing integrations.
balance_afternumber or null(nullable)
balanceBalance
FieldTypeDescription
changedtrue
deletedtrue
FieldTypeDescription
changedbooleanFalse when source_ref was already awarded (a retry).
deduplicatedbooleanSame as !changed. Kept for existing integrations.
points_awardednumber
balanceBalance
FieldTypeDescription
idstring or null(nullable)
typestring or null(nullable)
enabledboolean
labelstring or null(nullable)
pointsnumber or nullFlat award, when the rule pays one. (nullable)
points_per_currencynumber or nullPoints per unit of the shop currency, for order rules. (nullable)
limitnumber or null(nullable)
titlestring or nullThe merchant’s own title for the rule, when set; null means the catalog default. (nullable)
title_translationsobjectTitles in the shop’s other published languages, keyed by language code (sk, pt-br). The primary language’s title is title.
fieldsobjectThe rule’s configuration, keyed as GET /program/rule-types documents it and as POST /program/earn-rules accepts it.
summarystring or nullThe one-line summary the admin shows, in English, with money in the shop currency. (nullable)

Who earns, and on which orders and products.

FieldTypeDescription
revisioninteger
customer_audiencestring: all, b2c_only, b2b_onlyWho can earn: everyone, only retail (B2C) customers, or only B2B company customers.
excluded_customer_tagsarray of stringCustomers with any of these tags never earn.
excluded_order_tagsarray of stringOrders with any of these tags earn nothing.
excluded_product_tagsarray of stringProducts with any of these tags earn nothing.
excluded_productsarray of object
excluded_collectionsarray of object
exclude_gift_cardsboolean
exclude_discounted_itemsbooleanItems sold below their compare-at price earn nothing.
exclude_subscription_renewalsbooleanRecurring subscription orders earn nothing (the first order still does).
exclude_membership_purchasesbooleanBuying a paid membership earns no points.
opt_inobject
member_discountsobjectWhat the automatic VIP tier and membership discount may touch at checkout. Membership products and gift cards are never discounted.
FieldTypeDescription
dry_runboolean
revisioninteger
operationstring: update, none
diffarray of FieldChange
summarystring or null(nullable)
eligibilityEligibility
FieldTypeDescription
typestringThe template id, e.g. points_earned.
namestring
descriptionstring or null(nullable)
sends_whenstring or null(nullable)
enabledbooleanThe template’s own switch.
sendsbooleanTrue when it actually goes out: the template and the shop’s global e-mail switch are both on.
toggleablebooleanWhether the API can switch it (campaign e-mails and the launch announcement cannot).
FieldTypeDescription
revisioninteger
emails_enabledbooleanThe shop’s global e-mail switch, changed in the admin only.
dataarray of EmailTemplate
FieldTypeDescription
dry_runboolean
revisioninteger
operationstring: update, none
diffarray of FieldChange
summarystring or null(nullable)
email_templateEmailTemplate
emails_enabledboolean
reachobject
FieldTypeDescription
pathstringThe field that changed, e.g. fixedPoints or enabled.
beforeobjectThe value before; null when the field did not exist.
afterobjectThe value after; null when the field was removed.

A display card for the Gorgias sidebar: localized, human-readable strings. Fields beyond found are present only when they have a value. Build integrations on /customers/{customer_id} instead.

FieldTypeDescription
foundboolean
FieldTypeDescription
idstring
typestring or null(nullable)
pointsnumberSigned.
titlestring or nullThe line the shopper reads in their history, in their language. (nullable)
is_pendingboolean
created_atstring or null(nullable)

A paid membership: a Shopify product that, once bought, grants benefits for a term.

FieldTypeDescription
idstring
namestringIn the shop’s primary language.
name_translationsobject
enabledbooleanOn sale. Switched in the Charm admin only.
billing_typestring: term, subscriptionterm: one purchase grants the benefits for term. subscription: renews every billing_interval.
termobject
billing_intervalobject
grace_daysintegerDays the benefits stay after the membership lapses.
points_multipliernumberExtra points while a member; 1 = none. A member who is also in a tier gets the higher of the two.
activity_window_monthsintegerThe multiplier holds while the member buys at least once in this many months; 0 = always.
inactive_points_multipliernumberWhat a member’s next order earns after a gap longer than activity_window_months; the full multiplier returns from the order after.
highlightbooleanShown with a Best value badge.
show_payoffbooleanThe storefront shows when the plan pays for itself.
productobject or null(nullable)
benefitsarray of objectSame shape as a tier’s benefits.
FieldTypeDescription
revisioninteger
subscriptions_availablebooleanWhether auto-renewing (subscription) memberships can be created on this shop yet.
dataarray of Membership
FieldTypeDescription
dry_runboolean
revisioninteger
operationstring: create, update, delete, none
diffarray of FieldChange
summarystring or null(nullable)
membershipMembership
product_createdbooleanA new draft (unpublished) product was created in Shopify for this membership. (optional)
would_create_productobjectDry run: the draft product a real call would create. (optional)
product_statusstringThe product’s Shopify status when it is not ACTIVE (a DRAFT product cannot be bought until published). (optional)
gating_republish_failedbooleanSaved, but the members-only content rules did not republish; save again to retry. (optional)
FieldTypeDescription
amountnumber
currencystring or nullISO 4217 code. (nullable)

The tier the customer reaches next and the gap to it. Null on the top tier, when tiers are off, or when the tier is pinned by hand.

FieldTypeDescription
idstring
namestring or null(nullable)
gapobject
progressobject
FieldTypeDescription
changedboolean
petsarray of Subject
FieldTypeDescription
product_idstring
variant_idstring or null(nullable)
quantityinteger
pricenumberThe unit price you sent, in the shop currency.
currencystring or null(nullable)
estimatetrue
enabledbooleanFalse when nothing would be earned; see reason.
reasonstring or null: program_disabled, no_points_layer, product_excluded, customer_excluded(nullable)
pointsintegerTotal the purchase would earn.
base_pointsinteger
bonus_pointsinteger
tier_multipliernumber(optional)
campaign_multipliernumber(optional)
customer_idstring or nullThe customer the estimate was priced for; null for anonymous. (optional, nullable)
FieldTypeDescription
enabledboolean
program_namestring or null(nullable)
points_namestring or null(nullable)
points_expiryobject or null(nullable)
reward_expiryobject or null(nullable)
eligibilityobject or null(nullable)
referralobject
memberships_enabledboolean
tiers_enabledboolean
earning_rulesarray of EarningRule
redemption_rulesarray of Reward
revisionintegerCounts the program’s saves. Send it as if_revision on a write so a concurrent admin edit is refused instead of overwritten.
updated_atstring or null(nullable)
FieldTypeDescription
idstring
atstring
actorobject
operationstring: create, update, delete
targetobject
diffarray of FieldChange
revisionintegerThe program revision this change produced.
undone_atstring or null(nullable)
undo_ofstring or nullWhen this change is itself an undo: the id of the change it reverted. (nullable)
summarystring or nullThe admin’s one-line description of the change (English). (nullable)
undoablebooleanWhether the API may undo it: not undone yet, and not a program switch or an admin-only setting. Undo is still refused when the target changed again since.
FieldTypeDescription
dataarray of ProgramChange
next_cursorstring or nullPass as cursor to fetch the next page; null on the last page. (nullable)
has_morebooleanTrue when another page exists.
FieldTypeDescription
typestring
kindstring: earning, reward, benefit
labelstring
descriptionstring or null(nullable)
categorystring or null(nullable)
allow_multiplebooleanWhether the program may hold more than one rule of this type.
fulfillment_modesarray of stringBenefit types only. (optional)
restrictedstringPresent when the API may not create, delete or switch this type (a master switch). (optional)
fieldsobjectJSON Schema of the fields object this type accepts: every key, its type, range, choices and default.
defaultsobjectThe fields a rule of this type gets when created without any.
FieldTypeDescription
languagesobject or null(nullable)
dataarray of ProgramRuleType
FieldTypeDescription
dry_runboolean
revisioninteger
operationstring: create, update, delete, none
diffarray of FieldChange
summarystring or null(nullable)
undoneProgramChange
FieldTypeDescription
dry_runbooleanTrue when nothing was written: the diff shows what the same call without dry_run would do.
revisionintegerThe program revision after the write (unchanged on a dry run). Send it back as if_revision on the next write.
operationstring: create, update, delete, none
diffarray of FieldChange
summarystring or nullThe admin’s one-line summary of the rule after the change. (nullable)
earning_ruleEarningRule or null(optional, nullable)
rewardReward or null(optional, nullable)
tierTier or null(optional, nullable)
programProgram or null(optional, nullable)
positionintegerTier writes: the tier’s place in the ladder, 0 = the entry tier. (optional)
tiers_enabledbooleanTier writes: whether VIP tiers are live. While they are off, adding or removing a tier moves nobody. (optional)
member_impactTierMemberImpact or null(optional, nullable)
referencesarray of objectRemoving a tier: rules and live campaigns that name it. They keep working, but their per-tier part no longer applies to anyone. (optional)
FieldTypeDescription
changedtrue
variant_idstring or nullThe gift variant, when variant_id was sent. (nullable)
line_attributeobject or null(nullable)
idstring or nullRedemption id; pass to /redemptions/{redemption_id}/reverse. (nullable)
reward_idstring
reward_namestring or null(nullable)
quantitynumber
points_spentnumber
balance_afternumber or null(nullable)
discount_codestring or null(nullable)
expires_atstring or null(nullable)
credit_amountnumber or null(nullable)
FieldTypeDescription
changedtrue
idstring
reversedtrue
points_returnednumber
balance_afternumber or null(nullable)
FieldTypeDescription
codestring
linkstring or nullThe share link on the shop’s own domain, in the customer’s market language. (nullable)
sharesintegerShares recorded with POST /customers/{customer_id}/referral-shares, all channels.
FieldTypeDescription
changedbooleanTrue when the referral was attributed to customer_id now.
referral_codestring
discountobject or null(nullable)
friend_rewardsobject
cart_attributeobjectSet on the Storefront API cart so the order attributes the referral without the code.
attributedboolean or nullWith customer_id: whether the referral is now attributed (fraud guards may refuse). Null without. (nullable)

The whole referral program: both sides’ rewards and conditions (the referral rule’s fields), the friend’s discount code and the code prefix.

FieldTypeDescription
revisionintegerThe program revision; send it back as if_revision.
enabledbooleanWhether the referral program is on. Switched in the Charm admin only.
earning_ruleEarningRule or null(nullable)
friend_discountobject
code_prefixobject
FieldTypeDescription
dry_runbooleanTrue when nothing was written.
revisionintegerThe program revision after the write (unchanged on a dry run).
operationstring: create, update, none
diffarray of FieldChange
summarystring or nullThe admin’s one-line summary of the referral rule after the change. (nullable)
referral_programReferralProgram
friend_codes_resync_failedintegerLive friend codes that could not be updated to the new settings now; the next save retries them. (optional)
FieldTypeDescription
idstring or null(nullable)
typestring or null(nullable)
enabledboolean
namestring or null(nullable)
points_costnumber or null(nullable)
discount_typestring or null(nullable)
discount_valuenumber or null(nullable)
code_valid_daysnumber or null(nullable)
titlestring or nullThe merchant’s own title for the reward, when set; null means the catalog default. (nullable)
title_translationsobjectTitles in the shop’s other published languages, keyed by language code (sk, pt-br). The primary language’s title is title.
fieldsobjectThe reward’s configuration, keyed as GET /program/rule-types?kind=reward documents it and as POST /program/rewards accepts it.
summarystring or nullThe one-line summary the admin shows, in English, with money in the shop currency. (nullable)
FieldTypeDescription
dataarray of Reward
next_cursorstring or nullPass as cursor to fetch the next page; null on the last page. (nullable)
has_morebooleanTrue when another page exists.
FieldTypeDescription
tokenstringchrm_st_…; send as Authorization: Bearer <token>.
token_type"Bearer"
customer_idstringShopify customer GID, e.g. gid://shopify/Customer/123. Accepted by every endpoint that takes a customer id, as is the numeric legacy_id.
scopesarray of string: read, write
api_scopesarray of string
expires_ininteger
expires_atstring
FieldTypeDescription
changedboolean
channelstring
FieldTypeDescription
domainstringThe shop’s myshopify.com domain.
namestring or null(nullable)
currencystring or nullThe shop’s currency (ISO 4217). (nullable)
planstring or nullCharm plan. (nullable)
program_enabledboolean
program_namestring or null(nullable)
points_namestring or null(nullable)
FieldTypeDescription
idstring
namestring
birthdaystringYYYY-MM-DD; the year is a placeholder when none was given.
speciesstring or nullPets only. (optional, nullable)
updated_atstring or null(nullable)
FieldTypeDescription
idstring or null(nullable)
namestring or null(nullable)
handlestring or nullStable slug used by theme code and customer tags. (nullable)
name_translationsobjectThe tier’s name in the shop’s other published languages; name is the primary language.
thresholdnumber or nullPoints needed. For multi-criteria tiers, see criteria. (nullable)
points_multipliernumber or null(nullable)
combinestring: any, all
criteriaarray of TierCriterion
benefitsarray of TierBenefit
FieldTypeDescription
idstring or null(nullable)
typestring
fulfillment_modestring
enabledboolean
labelstring or nullThe merchant’s wording for the benefit, as the hub shows it. (nullable)
label_translationsobjectThe label in the shop’s other published languages.
configobjectThe benefit’s configuration, keyed as GET /program/rule-types?kind=benefit documents it and as PATCH /program/tiers/{tier_id} accepts it.
summarystring or null(nullable)
FieldTypeDescription
typestring: points, spend, orders, referrals, tag
thresholdnumber or null(nullable)
FieldTypeDescription
changedbooleanFalse when the gift was already claimed; the same code comes back.
gift_idstring
discount_codestring or null(nullable)
reward_namestring or null(nullable)
FieldTypeDescription
dataarray of Tier
next_cursorstring or nullPass as cursor to fetch the next page; null on the last page. (nullable)
has_morebooleanTrue when another page exists.
enabledbooleanWhether VIP tiers are on.
qualificationobject or null(nullable)

What saving the tier ladder would do to members while VIP tiers are live, evaluated exactly as the recalculation will.

FieldTypeDescription
members_evaluatedintegerMembers the recalculation looks at (excluded and not-joined members are skipped).
promotedintegerMembers who would move up a tier.
demotedintegerMembers who would move down a tier (or start their grace period).
replacedintegerMembers of a removed tier who would be placed in a remaining one: no promotion email, no tier gifts.
gift_codesintegerTier gift codes the promotions would issue.
giftsarray of object
per_tierarray of objectHow many members would be in each tier after the change.
members_in_removed_tierintegerRemoving a tier: members currently in it. (optional)
truncatedbooleanTrue when the shop is too large to evaluate every member for this preview; the counts cover the first ones.
FieldTypeDescription
idstring
typestring or nullearn, redeem, adjust, expire, credit, … Read points for the sign. (nullable)
pointsnumberSigned. Zero-point marker rows exist.
balance_afternumber or null(nullable)
sourcestring or null(nullable)
source_refstring or null(nullable)
descriptionstring or nullUntranslated English snapshot; prefer title_key. (nullable)
title_keystring or nullLocalizable title key. (nullable)
title_paramsobject or null(nullable)
discount_codestring or null(nullable)
order_totalMoney or null(nullable)
credit_amountMoney or null(nullable)
is_pendingboolean
pending_untilstring or null(nullable)
cancelledboolean
created_atstring or null(nullable)
FieldTypeDescription
dataarray of Transaction
next_cursorstring or nullPass as cursor to fetch the next page; null on the last page. (nullable)
has_morebooleanTrue when another page exists.
FieldTypeDescription
idstring
descriptionstringDisplay-ready text.
FieldTypeDescription
idstringbase, tier_multiplier or campaigns.
amountinteger
descriptionstring
benefit_idstringThe tier benefit that produced this row. (optional)

Exactly the UCP loyalty extension object (UCP 2026-08-25), ready to pass through in a UCP catalog, cart or checkout response.

FieldTypeDescription
loyaltyobjectThe UCP dev.ucp.common.loyalty map, keyed by the program’s reverse-domain claim id (com.myshopify.<handle>.loyalty). Empty when the buyer is not a member.
messagesarray of UcpMessage
FieldTypeDescription
idstringOpaque and stable per member; not the Shopify id.
namestring
display_idstringMasked, e.g. ****2345. (optional)
tiersarray of UcpTier(optional)
rewardsarray of UcpReward
provisionalbooleanAlways false: the caller identified the buyer.
FieldTypeDescription
typestring: info, warning, error
codestringmembership_benefit_eligible, membership_benefit_ineligible or eligibility_invalid.
pathstring(optional)
contentstring
FieldTypeDescription
currencyobject
earning_forecastobject(optional)
FieldTypeDescription
idstring
namestring
benefitsarray of UcpBenefit
FieldTypeDescription
idstring
urlstring
topicsarray of string
statusstring
created_atstring or null(nullable)
consecutive_failuresnumber
last_success_atstring or null(nullable)
last_failure_atstring or null(nullable)
disabled_reasonstring or null(nullable)
api_versionstringThe dated API version this endpoint’s deliveries are rendered in (Charm-Version).
FieldTypeDescription
idstring
urlstring
topicsarray of string
statusstring
created_atstring or null(nullable)
consecutive_failuresnumber
last_success_atstring or null(nullable)
last_failure_atstring or null(nullable)
disabled_reasonstring or null(nullable)
api_versionstringThe dated API version this endpoint’s deliveries are rendered in (Charm-Version).
secretstringThe signing secret, shown exactly once.
FieldTypeDescription
dataarray of WebhookEndpoint
next_cursorstring or nullPass as cursor to fetch the next page; null on the last page. (nullable)
has_morebooleanTrue when another page exists.
webhooksarray of WebhookEndpointDeprecated alias of data.