Class: CustomersService
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:123
Extends
BaseService
Constructors
Constructor
new CustomersService(
client):CustomersService
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:131
Parameters
client
Returns
CustomersService
Overrides
BaseService.constructor
Properties
client
protectedclient:TanqoryClient
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/base.ts:10
Inherited from
BaseService.client
Methods
addAddress()
addAddress(...
args):Promise<{address1:string;address2?:string;city:string;company?:string;country:string;firstName:string;id:string;isDefault:boolean;lastName:string;phone?:string;postalCode:string;province:string; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:271
Parameters
args
...[string, object, string]
Returns
Promise<{ address1: string; address2?: string; city: string; company?: string; country: string; firstName: string; id: string; isDefault: boolean; lastName: string; phone?: string; postalCode: string; province: string; }>
addCustomerAddress()
addCustomerAddress(
storeId,customerId,data):Promise<{address1:string;address2?:string;city:string;company?:string;country:string;firstName:string;id:string;isDefault:boolean;lastName:string;phone?:string;postalCode:string;province:string; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:673
Parameters
storeId
string
customerId
string
data
address1
string
address2?
string
city
string
company?
string
country
string
firstName
string
isDefault?
boolean
lastName
string
phone?
string
postalCode
string
province
string
Returns
Promise<{ address1: string; address2?: string; city: string; company?: string; country: string; firstName: string; id: string; isDefault: boolean; lastName: string; phone?: string; postalCode: string; province: string; }>
Deprecated
Use addAddress() instead
See
addAddress
addCustomerNote()
addCustomerNote(
storeId,customerId,data):Promise<{author?:string;createdAt:Date;id:string;note:string; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:685
Parameters
storeId
string
customerId
string
data
note
string
Returns
Promise<{ author?: string; createdAt: Date; id: string; note: string; }>
Deprecated
Use addNote() instead
See
addNote
addCustomersToSegment()
addCustomersToSegment(...
args):Promise<{addedCount?:number;newCustomerCount:number;removedCount?:number;segmentId:string;success:boolean; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:393
Parameters
args
...[string, string, object]
Returns
Promise<{ addedCount?: number; newCustomerCount: number; removedCount?: number; segmentId: string; success: boolean; }>
addNote()
addNote(...
args):Promise<{author?:string;createdAt:Date;id:string;note:string; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:215
Parameters
args
...[string, object, string]
Returns
Promise<{ author?: string; createdAt: Date; id: string; note: string; }>
addTimelineComment()
addTimelineComment(...
args):Promise<{attachments?:object[];author?:string;authorId?:string;authorName?:string;createdAt?:Date;description?:string;editedAt?:Date;id:string;isComment?:boolean;isEdited?:boolean;isSystem?:boolean;mentions?:object[];metadata?:Record<string,unknown>;relatedId?:string;relatedType?:string;storeId?:string;timestamp:Date;title:string;type:"NOTE_ADDED"|"COMMENT"|"GIFT_CARD_ISSUED"|"ORDER_CANCELLED"|"ORDER_EDITED"|"REFUND_ISSUED"|"PASSWORD_CHANGED"|"EMAIL_SENT"|"ORDER_PLACED"|"ORDER_FULFILLED"|"RETURN_REQUESTED"|"RETURN_COMPLETED"|"EXCHANGE_CREATED"|"SMS_SENT"|"NOTE_CHANGED"|"NOTE_REMOVED"|"TAG_ADDED"|"TAG_REMOVED"|"ACCOUNT_CREATED"|"ACCOUNT_ACTIVATED"|"ACCOUNT_DISABLED"|"PASSWORD_RESET_REQUESTED"|"CUSTOMER_MERGED"|"STATUS_CHANGED"|"ADDRESS_ADDED"|"ADDRESS_UPDATED"|"ADDRESS_DELETED"|"MARKETING_SUBSCRIBED"|"MARKETING_UNSUBSCRIBED"|"GIFT_CARD_REDEEMED"|"STORE_CREDIT_ADDED"|"STORE_CREDIT_USED"|"TAX_EXEMPTION_CHANGED"; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:233
Parameters
args
...[string, object, string]
Returns
Promise<{ attachments?: object[]; author?: string; authorId?: string; authorName?: string; createdAt?: Date; description?: string; editedAt?: Date; id: string; isComment?: boolean; isEdited?: boolean; isSystem?: boolean; mentions?: object[]; metadata?: Record<string, unknown>; relatedId?: string; relatedType?: string; storeId?: string; timestamp: Date; title: string; type: "NOTE_ADDED" | "COMMENT" | "GIFT_CARD_ISSUED" | "ORDER_CANCELLED" | "ORDER_EDITED" | "REFUND_ISSUED" | "PASSWORD_CHANGED" | "EMAIL_SENT" | "ORDER_PLACED" | "ORDER_FULFILLED" | "RETURN_REQUESTED" | "RETURN_COMPLETED" | "EXCHANGE_CREATED" | "SMS_SENT" | "NOTE_CHANGED" | "NOTE_REMOVED" | "TAG_ADDED" | "TAG_REMOVED" | "ACCOUNT_CREATED" | "ACCOUNT_ACTIVATED" | "ACCOUNT_DISABLED" | "PASSWORD_RESET_REQUESTED" | "CUSTOMER_MERGED" | "STATUS_CHANGED" | "ADDRESS_ADDED" | "ADDRESS_UPDATED" | "ADDRESS_DELETED" | "MARKETING_SUBSCRIBED" | "MARKETING_UNSUBSCRIBED" | "GIFT_CARD_REDEEMED" | "STORE_CREDIT_ADDED" | "STORE_CREDIT_USED" | "TAX_EXEMPTION_CHANGED"; }>
adjustStoreCredit()
adjustStoreCredit(...
args):Promise<{data: {amount:number;balanceAfter:number;balanceBefore:number;createdAt:string;createdBy?:string;createdByName?:string;currency:string;customerId:string;expiresAt?:string;id:string;note?:string;orderId?:string;orderNumber?:string;reason?:string;refundId?:string;returnId?:string;source?:"MANUAL"|"RETURN"|"TRANSFER"|"REFUND"|"PROMOTION"|"REWARD";storeCreditId:string;type:"ADJUSTMENT"|"CREDIT"|"DEBIT"|"EXPIRY"; }; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:597
Parameters
args
...[string, object]
Returns
Promise<{ data: { amount: number; balanceAfter: number; balanceBefore: number; createdAt: string; createdBy?: string; createdByName?: string; currency: string; customerId: string; expiresAt?: string; id: string; note?: string; orderId?: string; orderNumber?: string; reason?: string; refundId?: string; returnId?: string; source?: "MANUAL" | "RETURN" | "TRANSFER" | "REFUND" | "PROMOTION" | "REWARD"; storeCreditId: string; type: "ADJUSTMENT" | "CREDIT" | "DEBIT" | "EXPIRY"; }; }>
applyStoreCredit()
applyStoreCredit(...
args):Promise<{data: {amount:number;balanceAfter:number;balanceBefore:number;createdAt:string;createdBy?:string;createdByName?:string;currency:string;customerId:string;expiresAt?:string;id:string;note?:string;orderId?:string;orderNumber?:string;reason?:string;refundId?:string;returnId?:string;source?:"MANUAL"|"RETURN"|"TRANSFER"|"REFUND"|"PROMOTION"|"REWARD";storeCreditId:string;type:"ADJUSTMENT"|"CREDIT"|"DEBIT"|"EXPIRY"; }; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:591
Parameters
args
...[string, object]
Returns
Promise<{ data: { amount: number; balanceAfter: number; balanceBefore: number; createdAt: string; createdBy?: string; createdByName?: string; currency: string; customerId: string; expiresAt?: string; id: string; note?: string; orderId?: string; orderNumber?: string; reason?: string; refundId?: string; returnId?: string; source?: "MANUAL" | "RETURN" | "TRANSFER" | "REFUND" | "PROMOTION" | "REWARD"; storeCreditId: string; type: "ADJUSTMENT" | "CREDIT" | "DEBIT" | "EXPIRY"; }; }>
archiveSegment()
archiveSegment(...
args):Promise<{segmentId:string;status:"active"|"paused"|"archived"|"calculating";success:boolean; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:411
Parameters
args
...[string, string]
Returns
Promise<{ segmentId: string; status: "active" | "paused" | "archived" | "calculating"; success: boolean; }>
buildQuery()
protectedbuildQuery(options?):Record<string,any>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/base.ts:26
Build query parameters
Parameters
options?
Returns
Record<string, any>
Inherited from
BaseService.buildQuery
bulkAddTags()
bulkAddTags(...
args):Promise<{success:boolean;updatedCount:number; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:191
Parameters
args
...[string, string[], string[]]
Returns
Promise<{ success: boolean; updatedCount: number; }>
bulkAddTagToSegment()
bulkAddTagToSegment(...
args):Promise<{affectedCount:number;jobId?:string;message:string;success:boolean; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:435
Parameters
args
...[string, string, object]
Returns
Promise<{ affectedCount: number; jobId?: string; message: string; success: boolean; }>
bulkApplyDiscountToSegment()
bulkApplyDiscountToSegment(...
args):Promise<{affectedCount:number;jobId?:string;message:string;success:boolean; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:447
Parameters
args
...[string, string, object]
Returns
Promise<{ affectedCount: number; jobId?: string; message: string; success: boolean; }>
bulkDelete()
bulkDelete(...
args):Promise<{deletedCount:number;success:boolean; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:185
Parameters
args
...[string, string[]]
Returns
Promise<{ deletedCount: number; success: boolean; }>
bulkEdit()
bulkEdit(...
args):Promise<{errors?:object[];failed:number;success:boolean;updated:number; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:203
Parameters
args
...[string, object[]]
Returns
Promise<{ errors?: object[]; failed: number; success: boolean; updated: number; }>
bulkEmailSegment()
bulkEmailSegment(...
args):Promise<{affectedCount:number;jobId?:string;message:string;success:boolean; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:423
Parameters
args
...[string, string, object]
Returns
Promise<{ affectedCount: number; jobId?: string; message: string; success: boolean; }>
bulkRemoveTagFromSegment()
bulkRemoveTagFromSegment(...
args):Promise<{affectedCount:number;jobId?:string;message:string;success:boolean; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:441
Parameters
args
...[string, string, object]
Returns
Promise<{ affectedCount: number; jobId?: string; message: string; success: boolean; }>
bulkRemoveTags()
bulkRemoveTags(...
args):Promise<{success:boolean;updatedCount:number; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:197
Parameters
args
...[string, string[], string[]]
Returns
Promise<{ success: boolean; updatedCount: number; }>
bulkSmsSegment()
bulkSmsSegment(...
args):Promise<{affectedCount:number;jobId?:string;message:string;success:boolean; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:429
Parameters
args
...[string, string, object]
Returns
Promise<{ affectedCount: number; jobId?: string; message: string; success: boolean; }>
create()
create(...
args):Promise<{addresses:object[];createdAt:Date;currency?:string;defaultAddress?: {address1:string;address2?:string;city:string;company?:string;country:string;firstName:string;id:string;isDefault:boolean;lastName:string;phone?:string;postalCode:string;province:string; };string;emailMarketingConsent:"SUBSCRIBED"|"UNSUBSCRIBED"|"NOT_SUBSCRIBED";firstName:string;id:string;language?:string;lastName:string;market?:string;note?:string;phone?:string;rfmSegment?:"CHAMPIONS"|"LOYAL"|"POTENTIAL_LOYALISTS"|"NEW_CUSTOMERS"|"PROMISING"|"NEED_ATTENTION"|"AT_RISK"|"CANT_LOSE"|"HIBERNATING"|"LOST";smsMarketingConsent:"SUBSCRIBED"|"UNSUBSCRIBED"|"NOT_SUBSCRIBED";stats?: {averageOrderValue:number;lastOrderDate?:Date;lastOrderId?:string;ordersCount:number;totalSpent:number; };status:"DISABLED"|"ACTIVE"|"DECLINED";tags:string[];taxExempt:"PENDING"|"NONE"|"EXEMPT";updatedAt:Date; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:155
Parameters
args
...[object, string]
Returns
Promise<{ addresses: object[]; createdAt: Date; currency?: string; defaultAddress?: { address1: string; address2?: string; city: string; company?: string; country: string; firstName: string; id: string; isDefault: boolean; lastName: string; phone?: string; postalCode: string; province: string; }; email: string; emailMarketingConsent: "SUBSCRIBED" | "UNSUBSCRIBED" | "NOT_SUBSCRIBED"; firstName: string; id: string; language?: string; lastName: string; market?: string; note?: string; phone?: string; rfmSegment?: "CHAMPIONS" | "LOYAL" | "POTENTIAL_LOYALISTS" | "NEW_CUSTOMERS" | "PROMISING" | "NEED_ATTENTION" | "AT_RISK" | "CANT_LOSE" | "HIBERNATING" | "LOST"; smsMarketingConsent: "SUBSCRIBED" | "UNSUBSCRIBED" | "NOT_SUBSCRIBED"; stats?: { averageOrderValue: number; lastOrderDate?: Date; lastOrderId?: string; ordersCount: number; totalSpent: number; }; status: "DISABLED" | "ACTIVE" | "DECLINED"; tags: string[]; taxExempt: "PENDING" | "NONE" | "EXEMPT"; updatedAt: Date; }>
createComputedTrait()
createComputedTrait(...
args):Promise<{config: {aggregation?:"count"|"min"|"max"|"sum"|"avg"|"first"|"last";customExpression?:string;eventName?:string;propertyName?:string;timeWindowDays?:number; };description?:string;id:string;isActive:boolean;lastRefreshAt?:Date;name:string;refreshIntervalHrs:number;type:"custom"|"event_count"|"event_sum"|"event_avg"|"first_value"|"last_value"|"most_frequent"|"unique_list"; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:485
Parameters
args
...[string, object]
Returns
Promise<{ config: { aggregation?: "count" | "min" | "max" | "sum" | "avg" | "first" | "last"; customExpression?: string; eventName?: string; propertyName?: string; timeWindowDays?: number; }; description?: string; id: string; isActive: boolean; lastRefreshAt?: Date; name: string; refreshIntervalHrs: number; type: "custom" | "event_count" | "event_sum" | "event_avg" | "first_value" | "last_value" | "most_frequent" | "unique_list"; }>
createCustomer()
createCustomer(
storeId,data):Promise<{addresses:object[];createdAt:Date;currency?:string;defaultAddress?: {address1:string;address2?:string;city:string;company?:string;country:string;firstName:string;id:string;isDefault:boolean;lastName:string;phone?:string;postalCode:string;province:string; };string;emailMarketingConsent:"SUBSCRIBED"|"UNSUBSCRIBED"|"NOT_SUBSCRIBED";firstName:string;id:string;language?:string;lastName:string;market?:string;note?:string;phone?:string;rfmSegment?:"CHAMPIONS"|"LOYAL"|"POTENTIAL_LOYALISTS"|"NEW_CUSTOMERS"|"PROMISING"|"NEED_ATTENTION"|"AT_RISK"|"CANT_LOSE"|"HIBERNATING"|"LOST";smsMarketingConsent:"SUBSCRIBED"|"UNSUBSCRIBED"|"NOT_SUBSCRIBED";stats?: {averageOrderValue:number;lastOrderDate?:Date;lastOrderId?:string;ordersCount:number;totalSpent:number; };status:"DISABLED"|"ACTIVE"|"DECLINED";tags:string[];taxExempt:"PENDING"|"NONE"|"EXEMPT";updatedAt:Date; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:645
Parameters
storeId
string
data
currency?
string
defaultAddress?
{ address1: string; address2?: string; city: string; company?: string; country: string; firstName: string; isDefault: boolean; lastName: string; phone?: string; postalCode: string; province: string; }
defaultAddress.address1
string
defaultAddress.address2?
string
defaultAddress.city
string
defaultAddress.company?
string
defaultAddress.country
string
defaultAddress.firstName
string
defaultAddress.isDefault
boolean
defaultAddress.lastName
string
defaultAddress.phone?
string
defaultAddress.postalCode
string
defaultAddress.province
string
email
string
emailMarketingConsent?
"SUBSCRIBED" | "UNSUBSCRIBED" | "NOT_SUBSCRIBED"
firstName
string
language?
string
lastName
string
market?
string
metafields?
object[]
note?
string
phone?
string
smsMarketingConsent?
"SUBSCRIBED" | "UNSUBSCRIBED" | "NOT_SUBSCRIBED"
tags?
string[]
taxExempt?
"PENDING" | "NONE" | "EXEMPT"
Returns
Promise<{ addresses: object[]; createdAt: Date; currency?: string; defaultAddress?: { address1: string; address2?: string; city: string; company?: string; country: string; firstName: string; id: string; isDefault: boolean; lastName: string; phone?: string; postalCode: string; province: string; }; email: string; emailMarketingConsent: "SUBSCRIBED" | "UNSUBSCRIBED" | "NOT_SUBSCRIBED"; firstName: string; id: string; language?: string; lastName: string; market?: string; note?: string; phone?: string; rfmSegment?: "CHAMPIONS" | "LOYAL" | "POTENTIAL_LOYALISTS" | "NEW_CUSTOMERS" | "PROMISING" | "NEED_ATTENTION" | "AT_RISK" | "CANT_LOSE" | "HIBERNATING" | "LOST"; smsMarketingConsent: "SUBSCRIBED" | "UNSUBSCRIBED" | "NOT_SUBSCRIBED"; stats?: { averageOrderValue: number; lastOrderDate?: Date; lastOrderId?: string; ordersCount: number; totalSpent: number; }; status: "DISABLED" | "ACTIVE" | "DECLINED"; tags: string[]; taxExempt: "PENDING" | "NONE" | "EXEMPT"; updatedAt: Date; }>
Deprecated
Use create() instead
See
create
createSegment()
createSegment(...
args):Promise<{autoRefresh:boolean;category?:"value"|"custom"|"rfm"|"engagement"|"lifecycle"|"geographic"|"seasonal"|"behavioral"|"predictive";color?:string;createdAt:Date;createdBy?: {id:string;name:string; };customerCount:number;description?:string;filterGroups?:FilterGroup;filters?:object[];icon?:string;id:string;lastCalculatedAt?:Date;lastRefreshAt?:Date;memberCount?:number;name:string;percentageOfTotal?:number;priority:number;query?:string;refreshIntervalHrs?:number;status:"active"|"paused"|"archived"|"calculating";trend?:object[];type:"static"|"dynamic";updatedAt:Date;updatedBy?: {id:string;name:string; }; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:315
Parameters
args
...[string, object]
Returns
Promise<{ autoRefresh: boolean; category?: "value" | "custom" | "rfm" | "engagement" | "lifecycle" | "geographic" | "seasonal" | "behavioral" | "predictive"; color?: string; createdAt: Date; createdBy?: { id: string; name: string; }; customerCount: number; description?: string; filterGroups?: FilterGroup; filters?: object[]; icon?: string; id: string; lastCalculatedAt?: Date; lastRefreshAt?: Date; memberCount?: number; name: string; percentageOfTotal?: number; priority: number; query?: string; refreshIntervalHrs?: number; status: "active" | "paused" | "archived" | "calculating"; trend?: object[]; type: "static" | "dynamic"; updatedAt: Date; updatedBy?: { id: string; name: string; }; }>
delete()
delete(...
args):Promise<{deleted:true;id:string;object:"customer"; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:167
Parameters
args
...[string, string]
Returns
Promise<{ deleted: true; id: string; object: "customer"; }>
deleteAddress()
deleteAddress(...
args):Promise<{deleted:true;id:string;object:"customer_address"; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:289
Parameters
args
...[string, string, string]
Returns
Promise<{ deleted: true; id: string; object: "customer_address"; }>
deleteComputedTrait()
deleteComputedTrait(...
args):Promise<{deleted:true;id:string;object:"computed_trait"; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:497
Parameters
args
...[string, string]
Returns
Promise<{ deleted: true; id: string; object: "computed_trait"; }>
deleteCustomer()
deleteCustomer(
storeId,customerId):Promise<{deleted:true;id:string;object:"customer"; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:665
Parameters
storeId
string
customerId
string
Returns
Promise<{ deleted: true; id: string; object: "customer"; }>
Deprecated
Use delete() instead
See
delete
deleteEvent()
deleteEvent(...
args):Promise<DeletedResponse>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:541
Parameters
args
...[string, string]
Returns
Promise<DeletedResponse>
deleteSegment()
deleteSegment(...
args):Promise<{deleted:true;id:string;object:"customer_segment"; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:327
Parameters
args
...[string, string]
Returns
Promise<{ deleted: true; id: string; object: "customer_segment"; }>
deleteTimelineComment()
deleteTimelineComment(...
args):Promise<{deleted:true;id:string;object:"customer_timeline_comment"; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:245
Parameters
args
...[string, string, string]
Returns
Promise<{ deleted: true; id: string; object: "customer_timeline_comment"; }>
duplicateSegment()
duplicateSegment(...
args):Promise<{autoRefresh:boolean;category?:"value"|"custom"|"rfm"|"engagement"|"lifecycle"|"geographic"|"seasonal"|"behavioral"|"predictive";color?:string;createdAt:Date;createdBy?: {id:string;name:string; };customerCount:number;description?:string;filterGroups?:FilterGroup;filters?:object[];icon?:string;id:string;lastCalculatedAt?:Date;lastRefreshAt?:Date;memberCount?:number;name:string;percentageOfTotal?:number;priority:number;query?:string;refreshIntervalHrs?:number;status:"active"|"paused"|"archived"|"calculating";trend?:object[];type:"static"|"dynamic";updatedAt:Date;updatedBy?: {id:string;name:string; }; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:357
Parameters
args
...[string, string, string]
Returns
Promise<{ autoRefresh: boolean; category?: "value" | "custom" | "rfm" | "engagement" | "lifecycle" | "geographic" | "seasonal" | "behavioral" | "predictive"; color?: string; createdAt: Date; createdBy?: { id: string; name: string; }; customerCount: number; description?: string; filterGroups?: FilterGroup; filters?: object[]; icon?: string; id: string; lastCalculatedAt?: Date; lastRefreshAt?: Date; memberCount?: number; name: string; percentageOfTotal?: number; priority: number; query?: string; refreshIntervalHrs?: number; status: "active" | "paused" | "archived" | "calculating"; trend?: object[]; type: "static" | "dynamic"; updatedAt: Date; updatedBy?: { id: string; name: string; }; }>
editTimelineComment()
editTimelineComment(...
args):Promise<{attachments?:object[];author?:string;authorId?:string;authorName?:string;createdAt?:Date;description?:string;editedAt?:Date;id:string;isComment?:boolean;isEdited?:boolean;isSystem?:boolean;mentions?:object[];metadata?:Record<string,unknown>;relatedId?:string;relatedType?:string;storeId?:string;timestamp:Date;title:string;type:"NOTE_ADDED"|"COMMENT"|"GIFT_CARD_ISSUED"|"ORDER_CANCELLED"|"ORDER_EDITED"|"REFUND_ISSUED"|"PASSWORD_CHANGED"|"EMAIL_SENT"|"ORDER_PLACED"|"ORDER_FULFILLED"|"RETURN_REQUESTED"|"RETURN_COMPLETED"|"EXCHANGE_CREATED"|"SMS_SENT"|"NOTE_CHANGED"|"NOTE_REMOVED"|"TAG_ADDED"|"TAG_REMOVED"|"ACCOUNT_CREATED"|"ACCOUNT_ACTIVATED"|"ACCOUNT_DISABLED"|"PASSWORD_RESET_REQUESTED"|"CUSTOMER_MERGED"|"STATUS_CHANGED"|"ADDRESS_ADDED"|"ADDRESS_UPDATED"|"ADDRESS_DELETED"|"MARKETING_SUBSCRIBED"|"MARKETING_UNSUBSCRIBED"|"GIFT_CARD_REDEEMED"|"STORE_CREDIT_ADDED"|"STORE_CREDIT_USED"|"TAX_EXEMPTION_CHANGED"; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:239
Parameters
args
...[string, string, object, string]
Returns
Promise<{ attachments?: object[]; author?: string; authorId?: string; authorName?: string; createdAt?: Date; description?: string; editedAt?: Date; id: string; isComment?: boolean; isEdited?: boolean; isSystem?: boolean; mentions?: object[]; metadata?: Record<string, unknown>; relatedId?: string; relatedType?: string; storeId?: string; timestamp: Date; title: string; type: "NOTE_ADDED" | "COMMENT" | "GIFT_CARD_ISSUED" | "ORDER_CANCELLED" | "ORDER_EDITED" | "REFUND_ISSUED" | "PASSWORD_CHANGED" | "EMAIL_SENT" | "ORDER_PLACED" | "ORDER_FULFILLED" | "RETURN_REQUESTED" | "RETURN_COMPLETED" | "EXCHANGE_CREATED" | "SMS_SENT" | "NOTE_CHANGED" | "NOTE_REMOVED" | "TAG_ADDED" | "TAG_REMOVED" | "ACCOUNT_CREATED" | "ACCOUNT_ACTIVATED" | "ACCOUNT_DISABLED" | "PASSWORD_RESET_REQUESTED" | "CUSTOMER_MERGED" | "STATUS_CHANGED" | "ADDRESS_ADDED" | "ADDRESS_UPDATED" | "ADDRESS_DELETED" | "MARKETING_SUBSCRIBED" | "MARKETING_UNSUBSCRIBED" | "GIFT_CARD_REDEEMED" | "STORE_CREDIT_ADDED" | "STORE_CREDIT_USED" | "TAX_EXEMPTION_CHANGED"; }>
evaluateSegment()
evaluateSegment(...
args):Promise<{count:number;customers?:object[]; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:345
Parameters
args
...[string, object]
Returns
Promise<{ count: number; customers?: object[]; }>
exportSegment()
exportSegment(...
args):Promise<{downloadUrl:string;expiresAt:Date;fileName:string; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:363
Parameters
args
...[string, string, object]
Returns
Promise<{ downloadUrl: string; expiresAt: Date; fileName: string; }>
generateIdempotencyKey()
protectedgenerateIdempotencyKey(prefix):string
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/base.ts:19
Generate idempotency key
Parameters
prefix
string
Returns
string
Inherited from
BaseService.generateIdempotencyKey
generateSegmentWithAI()
generateSegmentWithAI(...
args):Promise<{confidence:number;description:string;explanation:string;filterGroups?:FilterGroup;filters:object[];query:string;suggestedName:string; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:459
Parameters
args
...[string, object]
Returns
Promise<{ confidence: number; description: string; explanation: string; filterGroups?: FilterGroup; filters: object[]; query: string; suggestedName: string; }>
getAddresses()
getAddresses(...
args):Promise<{addresses:object[]; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:277
Parameters
args
...[string, string]
Returns
Promise<{ addresses: object[]; }>
getAnalytics()
getAnalytics(...
args):any
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:257
Parameters
args
...any
Returns
any
getCounts()
getCounts(...
args):Promise<{acceptsMarketing:number;all:number;hasOrders:number;new:number;noOrders:number;returning:number; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:173
Parameters
args
...[string]
Returns
Promise<{ acceptsMarketing: number; all: number; hasOrders: number; new: number; noOrders: number; returning: number; }>
getCountsTimeseries()
getCountsTimeseries(...
args):Promise<{all:object[];marketing:object[];newCustomers:object[];returning:object[]; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:179
Parameters
args
...[string, object]
Returns
Promise<{ all: object[]; marketing: object[]; newCustomers: object[]; returning: object[]; }>
getCustomer()
getCustomer(
storeId,customerId):Promise<{addresses:object[];createdAt:Date;currency?:string;defaultAddress?: {address1:string;address2?:string;city:string;company?:string;country:string;firstName:string;id:string;isDefault:boolean;lastName:string;phone?:string;postalCode:string;province:string; };string;emailMarketingConsent:"SUBSCRIBED"|"UNSUBSCRIBED"|"NOT_SUBSCRIBED";firstName:string;id:string;language?:string;lastName:string;market?:string;note?:string;phone?:string;rfmSegment?:"CHAMPIONS"|"LOYAL"|"POTENTIAL_LOYALISTS"|"NEW_CUSTOMERS"|"PROMISING"|"NEED_ATTENTION"|"AT_RISK"|"CANT_LOSE"|"HIBERNATING"|"LOST";smsMarketingConsent:"SUBSCRIBED"|"UNSUBSCRIBED"|"NOT_SUBSCRIBED";stats?: {averageOrderValue:number;lastOrderDate?:Date;lastOrderId?:string;ordersCount:number;totalSpent:number; };status:"DISABLED"|"ACTIVE"|"DECLINED";tags:string[];taxExempt:"PENDING"|"NONE"|"EXEMPT";updatedAt:Date; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:637
Parameters
storeId
string
customerId
string
Returns
Promise<{ addresses: object[]; createdAt: Date; currency?: string; defaultAddress?: { address1: string; address2?: string; city: string; company?: string; country: string; firstName: string; id: string; isDefault: boolean; lastName: string; phone?: string; postalCode: string; province: string; }; email: string; emailMarketingConsent: "SUBSCRIBED" | "UNSUBSCRIBED" | "NOT_SUBSCRIBED"; firstName: string; id: string; language?: string; lastName: string; market?: string; note?: string; phone?: string; rfmSegment?: "CHAMPIONS" | "LOYAL" | "POTENTIAL_LOYALISTS" | "NEW_CUSTOMERS" | "PROMISING" | "NEED_ATTENTION" | "AT_RISK" | "CANT_LOSE" | "HIBERNATING" | "LOST"; smsMarketingConsent: "SUBSCRIBED" | "UNSUBSCRIBED" | "NOT_SUBSCRIBED"; stats?: { averageOrderValue: number; lastOrderDate?: Date; lastOrderId?: string; ordersCount: number; totalSpent: number; }; status: "DISABLED" | "ACTIVE" | "DECLINED"; tags: string[]; taxExempt: "PENDING" | "NONE" | "EXEMPT"; updatedAt: Date; }>
Deprecated
Use retrieve() instead
See
retrieve
getCustomerEvents()
getCustomerEvents(...
args):Promise<{data:object[];limit:number;page:number;total:number;total_pages:number; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:517
Parameters
args
...[string, string, object]
Returns
Promise<{ data: object[]; limit: number; page: number; total: number; total_pages: number; }>
getCustomerJourney()
getCustomerJourney(...
args):Promise<{customerId:string;sessions:object[];totalEvents:number; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:565
Parameters
args
...[string, string, object]
Returns
Promise<{ customerId: string; sessions: object[]; totalEvents: number; }>
getCustomers()
getCustomers(
storeId):Promise<{data:object[];limit:number;page:number;total:number;total_pages:number; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:629
Parameters
storeId
string
Returns
Promise<{ data: object[]; limit: number; page: number; total: number; total_pages: number; }>
Deprecated
Use list() instead
See
list
getCustomerTimeline()
getCustomerTimeline(
storeId,customerId):Promise<{timeline:object[]; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:697
Parameters
storeId
string
customerId
string
Returns
Promise<{ timeline: object[]; }>
Deprecated
Use getTimeline() instead
See
getTimeline
getEventCountsByType()
getEventCountsByType(...
args):Promise<{data:object[];endDate?:Date;startDate?:Date; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:547
Parameters
args
...[string, object]
Returns
Promise<{ data: object[]; endDate?: Date; startDate?: Date; }>
getEventCountsOverTime()
getEventCountsOverTime(...
args):Promise<{data:object[];endDate:Date;eventName?:string;granularity:string;startDate:Date; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:553
Parameters
args
...[string, object]
Returns
Promise<{ data: object[]; endDate: Date; eventName?: string; granularity: string; startDate: Date; }>
getEventNames()
getEventNames(...
args):Promise<{eventNames:object[];standardTypes:string[]; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:559
Parameters
args
...[string]
Returns
Promise<{ eventNames: object[]; standardTypes: string[]; }>
getExportMimeType()
protectedgetExportMimeType(format):string
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/base.ts:45
Get MIME type for export format
Parameters
format
string
Returns
string
Inherited from
BaseService.getExportMimeType
getFunnelAnalysis()
getFunnelAnalysis(...
args):Promise<{endDate?:Date;funnel:object[];startDate?:Date;steps:string[];totalConversion:number; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:571
Parameters
args
...[string, object]
Returns
Promise<{ endDate?: Date; funnel: object[]; startDate?: Date; steps: string[]; totalConversion: number; }>
getNotes()
getNotes(...
args):Promise<{notes:object[]; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:221
Parameters
args
...[string, string]
Returns
Promise<{ notes: object[]; }>
getOrders()
getOrders(...
args):Promise<{data:object[];limit:number;page:number;total:number;total_pages:number; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:251
Parameters
args
...[string, object, string]
Returns
Promise<{ data: object[]; limit: number; page: number; total: number; total_pages: number; }>
getSegment()
getSegment(
storeId,segmentId):Promise<{autoRefresh:boolean;category?:"value"|"custom"|"rfm"|"engagement"|"lifecycle"|"geographic"|"seasonal"|"behavioral"|"predictive";color?:string;createdAt:Date;createdBy?: {id:string;name:string; };customerCount:number;description?:string;filterGroups?:FilterGroup;filters?:object[];icon?:string;id:string;lastCalculatedAt?:Date;lastRefreshAt?:Date;memberCount?:number;name:string;percentageOfTotal?:number;priority:number;query?:string;refreshIntervalHrs?:number;status:"active"|"paused"|"archived"|"calculating";trend?:object[];type:"static"|"dynamic";updatedAt:Date;updatedBy?: {id:string;name:string; }; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:713
Parameters
storeId
string
segmentId
string
Returns
Promise<{ autoRefresh: boolean; category?: "value" | "custom" | "rfm" | "engagement" | "lifecycle" | "geographic" | "seasonal" | "behavioral" | "predictive"; color?: string; createdAt: Date; createdBy?: { id: string; name: string; }; customerCount: number; description?: string; filterGroups?: FilterGroup; filters?: object[]; icon?: string; id: string; lastCalculatedAt?: Date; lastRefreshAt?: Date; memberCount?: number; name: string; percentageOfTotal?: number; priority: number; query?: string; refreshIntervalHrs?: number; status: "active" | "paused" | "archived" | "calculating"; trend?: object[]; type: "static" | "dynamic"; updatedAt: Date; updatedBy?: { id: string; name: string; }; }>
Deprecated
Use retrieveSegment() instead
See
retrieveSegment
getSegmentAISuggestions()
getSegmentAISuggestions(...
args):Promise<{suggestions:object[]; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:465
Parameters
args
...[string, string]
Returns
Promise<{ suggestions: object[]; }>
getSegmentAnalytics()
getSegmentAnalytics(...
args):Promise<{addedToday:number;averageOrdersPerMember:number;averageOrderValue:number;currentCount:number;netChange:number;percentageOfTotal:number;removedToday:number;segmentId:string;topMembers?:object[];totalSpent:number;trend:object[]; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:369
Parameters
args
...[string, string, object]
Returns
Promise<{ addedToday: number; averageOrdersPerMember: number; averageOrderValue: number; currentCount: number; netChange: number; percentageOfTotal: number; removedToday: number; segmentId: string; topMembers?: object[]; totalSpent: number; trend: object[]; }>
getSegmentCustomers()
getSegmentCustomers(...
args):Promise<{data:object[];limit:number;page:number;total:number;total_pages:number; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:351
Parameters
args
...[string, string, object]
Returns
Promise<{ data: object[]; limit: number; page: number; total: number; total_pages: number; }>
getSegmentMembershipChanges()
getSegmentMembershipChanges(...
args):Promise<{data:object[];limit:number;page:number;total:number;total_pages:number; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:387
Parameters
args
...[string, string, object]
Returns
Promise<{ data: object[]; limit: number; page: number; total: number; total_pages: number; }>
getSegments()
getSegments(
storeId):Promise<{data:object[];limit:number;page:number;total:number;total_pages:number; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:705
Parameters
storeId
string
Returns
Promise<{ data: object[]; limit: number; page: number; total: number; total_pages: number; }>
Deprecated
Use listSegments() instead
See
listSegments
getSegmentTemplates()
getSegmentTemplates(...
args):Promise<{templates:object[]; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:333
Parameters
args
...[string]
Returns
Promise<{ templates: object[]; }>
getSegmentTopMembers()
getSegmentTopMembers(...
args):Promise<{members:object[];total:number; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:381
Parameters
args
...[string, string, number]
Returns
Promise<{ members: object[]; total: number; }>
getSegmentTrend()
getSegmentTrend(...
args):Promise<{trend:object[]; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:375
Parameters
args
...[string, string, object]
Returns
Promise<{ trend: object[]; }>
getStoreCredit()
getStoreCredit(...
args):Promise<{data: {balance:number;currency:string;pendingExpiry:number;recentTransactions:object[];totalIssued:number;totalUsed:number; }; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:579
Parameters
args
...[string, string]
Returns
Promise<{ data: { balance: number; currency: string; pendingExpiry: number; recentTransactions: object[]; totalIssued: number; totalUsed: number; }; }>
getTimeline()
getTimeline(...
args):Promise<{timeline:object[]; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:227
Parameters
args
...[string, string]
Returns
Promise<{ timeline: object[]; }>
issueStoreCredit()
issueStoreCredit(...
args):Promise<{data: {amount:number;balanceAfter:number;balanceBefore:number;createdAt:string;createdBy?:string;createdByName?:string;currency:string;customerId:string;expiresAt?:string;id:string;note?:string;orderId?:string;orderNumber?:string;reason?:string;refundId?:string;returnId?:string;source?:"MANUAL"|"RETURN"|"TRANSFER"|"REFUND"|"PROMOTION"|"REWARD";storeCreditId:string;type:"ADJUSTMENT"|"CREDIT"|"DEBIT"|"EXPIRY"; }; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:585
Parameters
args
...[string, object]
Returns
Promise<{ data: { amount: number; balanceAfter: number; balanceBefore: number; createdAt: string; createdBy?: string; createdByName?: string; currency: string; customerId: string; expiresAt?: string; id: string; note?: string; orderId?: string; orderNumber?: string; reason?: string; refundId?: string; returnId?: string; source?: "MANUAL" | "RETURN" | "TRANSFER" | "REFUND" | "PROMOTION" | "REWARD"; storeCreditId: string; type: "ADJUSTMENT" | "CREDIT" | "DEBIT" | "EXPIRY"; }; }>
list()
list(...
args):Promise<{data:object[];limit:number;page:number;total:number;total_pages:number; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:143
Parameters
args
...[string, object]
Returns
Promise<{ data: object[]; limit: number; page: number; total: number; total_pages: number; }>
listComputedTraits()
listComputedTraits(...
args):Promise<{data:object[];limit:number;page:number;total:number;total_pages:number; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:473
Parameters
args
...[string, object]
Returns
Promise<{ data: object[]; limit: number; page: number; total: number; total_pages: number; }>
listSegments()
listSegments(...
args):Promise<{data:object[];limit:number;page:number;total:number;total_pages:number; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:303
Parameters
args
...[string, object]
Returns
Promise<{ data: object[]; limit: number; page: number; total: number; total_pages: number; }>
listStoreCreditTransactions()
listStoreCreditTransactions(...
args):Promise<{data:object[];pagination: {hasNext:boolean;hasPrev:boolean;limit:number;page:number;total:number;totalPages:number; }; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:615
Parameters
args
...[string, object]
Returns
Promise<{ data: object[]; pagination: { hasNext: boolean; hasPrev: boolean; limit: number; page: number; total: number; totalPages: number; }; }>
listStoreEvents()
listStoreEvents(...
args):Promise<{data:object[];limit:number;page:number;total:number;total_pages:number; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:523
Parameters
args
...[string, object]
Returns
Promise<{ data: object[]; limit: number; page: number; total: number; total_pages: number; }>
mergeCustomers()
mergeCustomers(...
args):Promise<{archivedCustomerId:string;mergedCustomer: {billingAddress?: {city:string;country:string;line1?:string;line2?:string;postalCode:string;state?:string;street:string; };createdAt:Date;string;firstName?:string;id:string;lastName?:string;metadata?:Record<string,unknown>;phone?:string;shippingAddress?: {city:string;country:string;line1?:string;line2?:string;postalCode:string;state?:string;street:string; };status:CustomerStatus;storeId:string;updatedAt:Date; };mergeDetails: {addressesTransferred:number;draftOrdersTransferred:number;metafieldsTransferred:number;notesTransferred:number;ordersTransferred:number;tagsAdded:number;timelineEventsTransferred:number; };success:boolean; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:209
Parameters
args
...[string, object]
Returns
Promise<{ archivedCustomerId: string; mergedCustomer: { billingAddress?: { city: string; country: string; line1?: string; line2?: string; postalCode: string; state?: string; street: string; }; createdAt: Date; email: string; firstName?: string; id: string; lastName?: string; metadata?: Record<string, unknown>; phone?: string; shippingAddress?: { city: string; country: string; line1?: string; line2?: string; postalCode: string; state?: string; street: string; }; status: CustomerStatus; storeId: string; updatedAt: Date; }; mergeDetails: { addressesTransferred: number; draftOrdersTransferred: number; metafieldsTransferred: number; notesTransferred: number; ordersTransferred: number; tagsAdded: number; timelineEventsTransferred: number; }; success: boolean; }>
previewSegment()
previewSegment(...
args):Promise<{count:number;customers:object[]; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:339
Parameters
args
...[string, object]
Returns
Promise<{ count: number; customers: object[]; }>
refreshComputedTrait()
refreshComputedTrait(...
args):Promise<{affectedCustomers:number;lastRefreshAt:Date;success:boolean;traitId:string; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:503
Parameters
args
...[string, string]
Returns
Promise<{ affectedCustomers: number; lastRefreshAt: Date; success: boolean; traitId: string; }>
refreshSegment()
refreshSegment(...
args):Promise<{calculationTimeMs:number;customerCount:number;lastCalculatedAt:Date;segmentId:string;success:boolean; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:405
Parameters
args
...[string, string]
Returns
Promise<{ calculationTimeMs: number; customerCount: number; lastCalculatedAt: Date; segmentId: string; success: boolean; }>
refundToStoreCredit()
refundToStoreCredit(...
args):Promise<{data: {amount:number;balanceAfter:number;balanceBefore:number;createdAt:string;createdBy?:string;createdByName?:string;currency:string;customerId:string;expiresAt?:string;id:string;note?:string;orderId?:string;orderNumber?:string;reason?:string;refundId?:string;returnId?:string;source?:"MANUAL"|"RETURN"|"TRANSFER"|"REFUND"|"PROMOTION"|"REWARD";storeCreditId:string;type:"ADJUSTMENT"|"CREDIT"|"DEBIT"|"EXPIRY"; }; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:609
Parameters
args
...[string, object]
Returns
Promise<{ data: { amount: number; balanceAfter: number; balanceBefore: number; createdAt: string; createdBy?: string; createdByName?: string; currency: string; customerId: string; expiresAt?: string; id: string; note?: string; orderId?: string; orderNumber?: string; reason?: string; refundId?: string; returnId?: string; source?: "MANUAL" | "RETURN" | "TRANSFER" | "REFUND" | "PROMOTION" | "REWARD"; storeCreditId: string; type: "ADJUSTMENT" | "CREDIT" | "DEBIT" | "EXPIRY"; }; }>
removeCustomersFromSegment()
removeCustomersFromSegment(...
args):Promise<{addedCount?:number;newCustomerCount:number;removedCount?:number;segmentId:string;success:boolean; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:399
Parameters
args
...[string, string, object]
Returns
Promise<{ addedCount?: number; newCustomerCount: number; removedCount?: number; segmentId: string; success: boolean; }>
restoreSegment()
restoreSegment(...
args):Promise<{segmentId:string;status:"active"|"paused"|"archived"|"calculating";success:boolean; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:417
Parameters
args
...[string, string]
Returns
Promise<{ segmentId: string; status: "active" | "paused" | "archived" | "calculating"; success: boolean; }>
retrieve()
retrieve(...
args):Promise<{addresses:object[];createdAt:Date;currency?:string;defaultAddress?: {address1:string;address2?:string;city:string;company?:string;country:string;firstName:string;id:string;isDefault:boolean;lastName:string;phone?:string;postalCode:string;province:string; };string;emailMarketingConsent:"SUBSCRIBED"|"UNSUBSCRIBED"|"NOT_SUBSCRIBED";firstName:string;id:string;language?:string;lastName:string;market?:string;note?:string;phone?:string;rfmSegment?:"CHAMPIONS"|"LOYAL"|"POTENTIAL_LOYALISTS"|"NEW_CUSTOMERS"|"PROMISING"|"NEED_ATTENTION"|"AT_RISK"|"CANT_LOSE"|"HIBERNATING"|"LOST";smsMarketingConsent:"SUBSCRIBED"|"UNSUBSCRIBED"|"NOT_SUBSCRIBED";stats?: {averageOrderValue:number;lastOrderDate?:Date;lastOrderId?:string;ordersCount:number;totalSpent:number; };status:"DISABLED"|"ACTIVE"|"DECLINED";tags:string[];taxExempt:"PENDING"|"NONE"|"EXEMPT";updatedAt:Date; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:149
Parameters
args
...[string, string]
Returns
Promise<{ addresses: object[]; createdAt: Date; currency?: string; defaultAddress?: { address1: string; address2?: string; city: string; company?: string; country: string; firstName: string; id: string; isDefault: boolean; lastName: string; phone?: string; postalCode: string; province: string; }; email: string; emailMarketingConsent: "SUBSCRIBED" | "UNSUBSCRIBED" | "NOT_SUBSCRIBED"; firstName: string; id: string; language?: string; lastName: string; market?: string; note?: string; phone?: string; rfmSegment?: "CHAMPIONS" | "LOYAL" | "POTENTIAL_LOYALISTS" | "NEW_CUSTOMERS" | "PROMISING" | "NEED_ATTENTION" | "AT_RISK" | "CANT_LOSE" | "HIBERNATING" | "LOST"; smsMarketingConsent: "SUBSCRIBED" | "UNSUBSCRIBED" | "NOT_SUBSCRIBED"; stats?: { averageOrderValue: number; lastOrderDate?: Date; lastOrderId?: string; ordersCount: number; totalSpent: number; }; status: "DISABLED" | "ACTIVE" | "DECLINED"; tags: string[]; taxExempt: "PENDING" | "NONE" | "EXEMPT"; updatedAt: Date; }>
retrieveComputedTrait()
retrieveComputedTrait(...
args):Promise<{config: {aggregation?:"count"|"min"|"max"|"sum"|"avg"|"first"|"last";customExpression?:string;eventName?:string;propertyName?:string;timeWindowDays?:number; };description?:string;id:string;isActive:boolean;lastRefreshAt?:Date;name:string;refreshIntervalHrs:number;type:"custom"|"event_count"|"event_sum"|"event_avg"|"first_value"|"last_value"|"most_frequent"|"unique_list"; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:479
Parameters
args
...[string, string]
Returns
Promise<{ config: { aggregation?: "count" | "min" | "max" | "sum" | "avg" | "first" | "last"; customExpression?: string; eventName?: string; propertyName?: string; timeWindowDays?: number; }; description?: string; id: string; isActive: boolean; lastRefreshAt?: Date; name: string; refreshIntervalHrs: number; type: "custom" | "event_count" | "event_sum" | "event_avg" | "first_value" | "last_value" | "most_frequent" | "unique_list"; }>
retrieveEvent()
retrieveEvent(...
args):Promise<{customerId:string;deviceType?:string;eventName:string;eventType:"order_cancelled"|"order_updated"|"order_fulfilled"|"order_edited"|"order_placed"|"page_viewed"|"product_viewed"|"collection_viewed"|"search_performed"|"product_added_to_cart"|"product_removed_from_cart"|"cart_viewed"|"checkout_started"|"checkout_completed"|"checkout_abandoned"|"order_refunded"|"order_returned"|"order_exchanged"|"email_received"|"email_opened"|"email_clicked"|"email_bounced"|"email_unsubscribed"|"sms_received"|"sms_clicked"|"coupon_used"|"loyalty_points_earned"|"loyalty_points_redeemed"|"referral_made"|"custom_event";id:string;properties?:Record<string,unknown>;sessionId?:string;source?:string;timestamp:Date; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:535
Parameters
args
...[string, string]
Returns
Promise<{ customerId: string; deviceType?: string; eventName: string; eventType: "order_cancelled" | "order_updated" | "order_fulfilled" | "order_edited" | "order_placed" | "page_viewed" | "product_viewed" | "collection_viewed" | "search_performed" | "product_added_to_cart" | "product_removed_from_cart" | "cart_viewed" | "checkout_started" | "checkout_completed" | "checkout_abandoned" | "order_refunded" | "order_returned" | "order_exchanged" | "email_received" | "email_opened" | "email_clicked" | "email_bounced" | "email_unsubscribed" | "sms_received" | "sms_clicked" | "coupon_used" | "loyalty_points_earned" | "loyalty_points_redeemed" | "referral_made" | "custom_event"; id: string; properties?: Record<string, unknown>; sessionId?: string; source?: string; timestamp: Date; }>
retrieveSegment()
retrieveSegment(...
args):Promise<{autoRefresh:boolean;category?:"value"|"custom"|"rfm"|"engagement"|"lifecycle"|"geographic"|"seasonal"|"behavioral"|"predictive";color?:string;createdAt:Date;createdBy?: {id:string;name:string; };customerCount:number;description?:string;filterGroups?:FilterGroup;filters?:object[];icon?:string;id:string;lastCalculatedAt?:Date;lastRefreshAt?:Date;memberCount?:number;name:string;percentageOfTotal?:number;priority:number;query?:string;refreshIntervalHrs?:number;status:"active"|"paused"|"archived"|"calculating";trend?:object[];type:"static"|"dynamic";updatedAt:Date;updatedBy?: {id:string;name:string; }; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:309
Parameters
args
...[string, string]
Returns
Promise<{ autoRefresh: boolean; category?: "value" | "custom" | "rfm" | "engagement" | "lifecycle" | "geographic" | "seasonal" | "behavioral" | "predictive"; color?: string; createdAt: Date; createdBy?: { id: string; name: string; }; customerCount: number; description?: string; filterGroups?: FilterGroup; filters?: object[]; icon?: string; id: string; lastCalculatedAt?: Date; lastRefreshAt?: Date; memberCount?: number; name: string; percentageOfTotal?: number; priority: number; query?: string; refreshIntervalHrs?: number; status: "active" | "paused" | "archived" | "calculating"; trend?: object[]; type: "static" | "dynamic"; updatedAt: Date; updatedBy?: { id: string; name: string; }; }>
sendMarketingEmail()
sendMarketingEmail(...
args):Promise<{message:string;sentCount:number;success:boolean; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:263
Parameters
args
...[string, object]
Returns
Promise<{ message: string; sentCount: number; success: boolean; }>
setDefaultAddress()
setDefaultAddress(...
args):Promise<{address1:string;address2?:string;city:string;company?:string;country:string;firstName:string;id:string;isDefault:boolean;lastName:string;phone?:string;postalCode:string;province:string; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:295
Parameters
args
...[string, string, string]
Returns
Promise<{ address1: string; address2?: string; city: string; company?: string; country: string; firstName: string; id: string; isDefault: boolean; lastName: string; phone?: string; postalCode: string; province: string; }>
trackCustomerEvent()
trackCustomerEvent(...
args):Promise<{customerId:string;deviceType?:string;eventName:string;eventType:"order_cancelled"|"order_updated"|"order_fulfilled"|"order_edited"|"order_placed"|"page_viewed"|"product_viewed"|"collection_viewed"|"search_performed"|"product_added_to_cart"|"product_removed_from_cart"|"cart_viewed"|"checkout_started"|"checkout_completed"|"checkout_abandoned"|"order_refunded"|"order_returned"|"order_exchanged"|"email_received"|"email_opened"|"email_clicked"|"email_bounced"|"email_unsubscribed"|"sms_received"|"sms_clicked"|"coupon_used"|"loyalty_points_earned"|"loyalty_points_redeemed"|"referral_made"|"custom_event";id:string;properties?:Record<string,unknown>;sessionId?:string;source?:string;timestamp:Date; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:511
Parameters
args
...[string, object]
Returns
Promise<{ customerId: string; deviceType?: string; eventName: string; eventType: "order_cancelled" | "order_updated" | "order_fulfilled" | "order_edited" | "order_placed" | "page_viewed" | "product_viewed" | "collection_viewed" | "search_performed" | "product_added_to_cart" | "product_removed_from_cart" | "cart_viewed" | "checkout_started" | "checkout_completed" | "checkout_abandoned" | "order_refunded" | "order_returned" | "order_exchanged" | "email_received" | "email_opened" | "email_clicked" | "email_bounced" | "email_unsubscribed" | "sms_received" | "sms_clicked" | "coupon_used" | "loyalty_points_earned" | "loyalty_points_redeemed" | "referral_made" | "custom_event"; id: string; properties?: Record<string, unknown>; sessionId?: string; source?: string; timestamp: Date; }>
trackEventsBatch()
trackEventsBatch(...
args):Promise<{created_count:number;message:string; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:529
Parameters
args
...[string, object[]]
Returns
Promise<{ created_count: number; message: string; }>
transferStoreCredit()
transferStoreCredit(...
args):Promise<{data: {fromTransaction: {amount:number;balanceAfter:number;balanceBefore:number;createdAt:string;createdBy?:string;createdByName?:string;currency:string;customerId:string;expiresAt?:string;id:string;note?:string;orderId?:string;orderNumber?:string;reason?:string;refundId?:string;returnId?:string;source?:"MANUAL"|"RETURN"|"TRANSFER"|"REFUND"|"PROMOTION"|"REWARD";storeCreditId:string;type:"ADJUSTMENT"|"CREDIT"|"DEBIT"|"EXPIRY"; };toTransaction: {amount:number;balanceAfter:number;balanceBefore:number;createdAt:string;createdBy?:string;createdByName?:string;currency:string;customerId:string;expiresAt?:string;id:string;note?:string;orderId?:string;orderNumber?:string;reason?:string;refundId?:string;returnId?:string;source?:"MANUAL"|"RETURN"|"TRANSFER"|"REFUND"|"PROMOTION"|"REWARD";storeCreditId:string;type:"ADJUSTMENT"|"CREDIT"|"DEBIT"|"EXPIRY"; }; }; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:603
Parameters
args
...[string, object]
Returns
Promise<{ data: { fromTransaction: { amount: number; balanceAfter: number; balanceBefore: number; createdAt: string; createdBy?: string; createdByName?: string; currency: string; customerId: string; expiresAt?: string; id: string; note?: string; orderId?: string; orderNumber?: string; reason?: string; refundId?: string; returnId?: string; source?: "MANUAL" | "RETURN" | "TRANSFER" | "REFUND" | "PROMOTION" | "REWARD"; storeCreditId: string; type: "ADJUSTMENT" | "CREDIT" | "DEBIT" | "EXPIRY"; }; toTransaction: { amount: number; balanceAfter: number; balanceBefore: number; createdAt: string; createdBy?: string; createdByName?: string; currency: string; customerId: string; expiresAt?: string; id: string; note?: string; orderId?: string; orderNumber?: string; reason?: string; refundId?: string; returnId?: string; source?: "MANUAL" | "RETURN" | "TRANSFER" | "REFUND" | "PROMOTION" | "REWARD"; storeCreditId: string; type: "ADJUSTMENT" | "CREDIT" | "DEBIT" | "EXPIRY"; }; }; }>
update()
update(...
args):Promise<{addresses:object[];createdAt:Date;currency?:string;defaultAddress?: {address1:string;address2?:string;city:string;company?:string;country:string;firstName:string;id:string;isDefault:boolean;lastName:string;phone?:string;postalCode:string;province:string; };string;emailMarketingConsent:"SUBSCRIBED"|"UNSUBSCRIBED"|"NOT_SUBSCRIBED";firstName:string;id:string;language?:string;lastName:string;market?:string;note?:string;phone?:string;rfmSegment?:"CHAMPIONS"|"LOYAL"|"POTENTIAL_LOYALISTS"|"NEW_CUSTOMERS"|"PROMISING"|"NEED_ATTENTION"|"AT_RISK"|"CANT_LOSE"|"HIBERNATING"|"LOST";smsMarketingConsent:"SUBSCRIBED"|"UNSUBSCRIBED"|"NOT_SUBSCRIBED";stats?: {averageOrderValue:number;lastOrderDate?:Date;lastOrderId?:string;ordersCount:number;totalSpent:number; };status:"DISABLED"|"ACTIVE"|"DECLINED";tags:string[];taxExempt:"PENDING"|"NONE"|"EXEMPT";updatedAt:Date; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:161
Parameters
args
...[string, object, string]
Returns
Promise<{ addresses: object[]; createdAt: Date; currency?: string; defaultAddress?: { address1: string; address2?: string; city: string; company?: string; country: string; firstName: string; id: string; isDefault: boolean; lastName: string; phone?: string; postalCode: string; province: string; }; email: string; emailMarketingConsent: "SUBSCRIBED" | "UNSUBSCRIBED" | "NOT_SUBSCRIBED"; firstName: string; id: string; language?: string; lastName: string; market?: string; note?: string; phone?: string; rfmSegment?: "CHAMPIONS" | "LOYAL" | "POTENTIAL_LOYALISTS" | "NEW_CUSTOMERS" | "PROMISING" | "NEED_ATTENTION" | "AT_RISK" | "CANT_LOSE" | "HIBERNATING" | "LOST"; smsMarketingConsent: "SUBSCRIBED" | "UNSUBSCRIBED" | "NOT_SUBSCRIBED"; stats?: { averageOrderValue: number; lastOrderDate?: Date; lastOrderId?: string; ordersCount: number; totalSpent: number; }; status: "DISABLED" | "ACTIVE" | "DECLINED"; tags: string[]; taxExempt: "PENDING" | "NONE" | "EXEMPT"; updatedAt: Date; }>
updateAddress()
updateAddress(...
args):Promise<{address1:string;address2?:string;city:string;company?:string;country:string;firstName:string;id:string;isDefault:boolean;lastName:string;phone?:string;postalCode:string;province:string; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:283
Parameters
args
...[string, string, Partial<{ address1: string; address2?: string; city: string; company?: string; country: string; firstName: string; isDefault?: boolean; lastName: string; phone?: string; postalCode: string; province: string; }>, string]
Returns
Promise<{ address1: string; address2?: string; city: string; company?: string; country: string; firstName: string; id: string; isDefault: boolean; lastName: string; phone?: string; postalCode: string; province: string; }>
updateComputedTrait()
updateComputedTrait(...
args):Promise<{config: {aggregation?:"count"|"min"|"max"|"sum"|"avg"|"first"|"last";customExpression?:string;eventName?:string;propertyName?:string;timeWindowDays?:number; };description?:string;id:string;isActive:boolean;lastRefreshAt?:Date;name:string;refreshIntervalHrs:number;type:"custom"|"event_count"|"event_sum"|"event_avg"|"first_value"|"last_value"|"most_frequent"|"unique_list"; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:491
Parameters
args
...[string, string, object]
Returns
Promise<{ config: { aggregation?: "count" | "min" | "max" | "sum" | "avg" | "first" | "last"; customExpression?: string; eventName?: string; propertyName?: string; timeWindowDays?: number; }; description?: string; id: string; isActive: boolean; lastRefreshAt?: Date; name: string; refreshIntervalHrs: number; type: "custom" | "event_count" | "event_sum" | "event_avg" | "first_value" | "last_value" | "most_frequent" | "unique_list"; }>
updateCustomer()
updateCustomer(
storeId,customerId,data):Promise<{addresses:object[];createdAt:Date;currency?:string;defaultAddress?: {address1:string;address2?:string;city:string;company?:string;country:string;firstName:string;id:string;isDefault:boolean;lastName:string;phone?:string;postalCode:string;province:string; };string;emailMarketingConsent:"SUBSCRIBED"|"UNSUBSCRIBED"|"NOT_SUBSCRIBED";firstName:string;id:string;language?:string;lastName:string;market?:string;note?:string;phone?:string;rfmSegment?:"CHAMPIONS"|"LOYAL"|"POTENTIAL_LOYALISTS"|"NEW_CUSTOMERS"|"PROMISING"|"NEED_ATTENTION"|"AT_RISK"|"CANT_LOSE"|"HIBERNATING"|"LOST";smsMarketingConsent:"SUBSCRIBED"|"UNSUBSCRIBED"|"NOT_SUBSCRIBED";stats?: {averageOrderValue:number;lastOrderDate?:Date;lastOrderId?:string;ordersCount:number;totalSpent:number; };status:"DISABLED"|"ACTIVE"|"DECLINED";tags:string[];taxExempt:"PENDING"|"NONE"|"EXEMPT";updatedAt:Date; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:653
Parameters
storeId
string
customerId
string
data
currency?
string
defaultAddress?
{ address1: string; address2?: string; city: string; company?: string; country: string; firstName: string; isDefault: boolean; lastName: string; phone?: string; postalCode: string; province: string; }
defaultAddress.address1
string
defaultAddress.address2?
string
defaultAddress.city
string
defaultAddress.company?
string
defaultAddress.country
string
defaultAddress.firstName
string
defaultAddress.isDefault
boolean
defaultAddress.lastName
string
defaultAddress.phone?
string
defaultAddress.postalCode
string
defaultAddress.province
string
email?
string
emailMarketingConsent?
"SUBSCRIBED" | "UNSUBSCRIBED" | "NOT_SUBSCRIBED"
firstName?
string
language?
string
lastName?
string
market?
string
metafields?
object[]
note?
string
phone?
string
smsMarketingConsent?
"SUBSCRIBED" | "UNSUBSCRIBED" | "NOT_SUBSCRIBED"
status?
"DISABLED" | "ACTIVE" | "DECLINED"
tags?
string[]
taxExempt?
"PENDING" | "NONE" | "EXEMPT"
Returns
Promise<{ addresses: object[]; createdAt: Date; currency?: string; defaultAddress?: { address1: string; address2?: string; city: string; company?: string; country: string; firstName: string; id: string; isDefault: boolean; lastName: string; phone?: string; postalCode: string; province: string; }; email: string; emailMarketingConsent: "SUBSCRIBED" | "UNSUBSCRIBED" | "NOT_SUBSCRIBED"; firstName: string; id: string; language?: string; lastName: string; market?: string; note?: string; phone?: string; rfmSegment?: "CHAMPIONS" | "LOYAL" | "POTENTIAL_LOYALISTS" | "NEW_CUSTOMERS" | "PROMISING" | "NEED_ATTENTION" | "AT_RISK" | "CANT_LOSE" | "HIBERNATING" | "LOST"; smsMarketingConsent: "SUBSCRIBED" | "UNSUBSCRIBED" | "NOT_SUBSCRIBED"; stats?: { averageOrderValue: number; lastOrderDate?: Date; lastOrderId?: string; ordersCount: number; totalSpent: number; }; status: "DISABLED" | "ACTIVE" | "DECLINED"; tags: string[]; taxExempt: "PENDING" | "NONE" | "EXEMPT"; updatedAt: Date; }>
Deprecated
Use update() instead
See
update
updateSegment()
updateSegment(...
args):Promise<{autoRefresh:boolean;category?:"value"|"custom"|"rfm"|"engagement"|"lifecycle"|"geographic"|"seasonal"|"behavioral"|"predictive";color?:string;createdAt:Date;createdBy?: {id:string;name:string; };customerCount:number;description?:string;filterGroups?:FilterGroup;filters?:object[];icon?:string;id:string;lastCalculatedAt?:Date;lastRefreshAt?:Date;memberCount?:number;name:string;percentageOfTotal?:number;priority:number;query?:string;refreshIntervalHrs?:number;status:"active"|"paused"|"archived"|"calculating";trend?:object[];type:"static"|"dynamic";updatedAt:Date;updatedBy?: {id:string;name:string; }; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:321
Parameters
args
...[string, string, object]
Returns
Promise<{ autoRefresh: boolean; category?: "value" | "custom" | "rfm" | "engagement" | "lifecycle" | "geographic" | "seasonal" | "behavioral" | "predictive"; color?: string; createdAt: Date; createdBy?: { id: string; name: string; }; customerCount: number; description?: string; filterGroups?: FilterGroup; filters?: object[]; icon?: string; id: string; lastCalculatedAt?: Date; lastRefreshAt?: Date; memberCount?: number; name: string; percentageOfTotal?: number; priority: number; query?: string; refreshIntervalHrs?: number; status: "active" | "paused" | "archived" | "calculating"; trend?: object[]; type: "static" | "dynamic"; updatedAt: Date; updatedBy?: { id: string; name: string; }; }>
validateSegmentQuery()
validateSegmentQuery(...
args):Promise<{errors?:object[];parsedFilters?:object[];valid:boolean; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/customers.ts:453
Parameters
args
...[string, string]
Returns
Promise<{ errors?: object[]; parsedFilters?: object[]; valid: boolean; }>