Class: MetafieldsService
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/metafields.ts:20
Extends
BaseService
Constructors
Constructor
new MetafieldsService(
client):MetafieldsService
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/base.ts:12
Parameters
client
Returns
MetafieldsService
Inherited from
BaseService.constructor
Properties
client
protectedclient:TanqoryClient
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/base.ts:10
Inherited from
BaseService.client
Methods
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
checkKeyExists()
checkKeyExists(
storeId,namespace,key,resourceType):Promise<{exists:boolean; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/metafields.ts:38
Check if a metafield key already exists
Parameters
storeId
string
namespace
string
key
string
resourceType
string
Returns
Promise<{ exists: boolean; }>
createMetafieldDefinition()
createMetafieldDefinition(
storeId,data):Promise<{addedBy?:string;categoryAssignments?:string[];createdAt:Date;customerAccountApiAccess:"none"|"read_only"|"read_and_write";description?:string;filterOnOrderList:boolean;id:string;isList:boolean;isStandard:boolean;key:string;name:string;namespace:string;ownerType:"tanqory"|"app"|"merchant";pinnedPosition?:number;resourceType:"customer"|"product"|"variant"|"company"|"order"|"draft_order"|"page"|"collection"|"blog"|"market"|"location"|"shop"|"blog_post"|"company_location";standardNamespace?:string;storefrontAccess:boolean;storeId:string;type:"id"|"json"|"color"|"product"|"variant"|"dimension"|"date"|"money"|"weight"|"page"|"url"|"collection"|"file"|"integer"|"link"|"volume"|"single_line_text"|"multi_line_text"|"rich_text"|"decimal"|"rating"|"date_time"|"true_or_false"|"metaobject"|"mixed_reference";updatedAt:Date;useAsProductFilter:boolean;useInSmartRules:boolean;validations?: {limitToPresetChoices?:boolean;maxCharacters?:number;maxDate?:string;maxMeasurement?:number;maxRating?:number;maxValue?:number;minCharacters?:number;minDate?:string;minMeasurement?:number;minRating?:number;minValue?:number;presetChoices?:string[];regex?:string;required?:boolean;uniqueValues?:boolean;unit?:string; };valuesCount:number; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/metafields.ts:81
Create a new metafield definition
Parameters
storeId
string
data
categoryAssignments?
string[]
customerAccountApiAccess
"none" | "read_only" | "read_and_write"
description?
string
filterOnOrderList
boolean
isList
boolean
key
string
name
string
namespace
string
resourceType
"customer" | "product" | "variant" | "company" | "order" | "draft_order" | "page" | "collection" | "blog" | "market" | "location" | "shop" | "blog_post" | "company_location"
storefrontAccess
boolean
type
"id" | "json" | "color" | "product" | "variant" | "dimension" | "date" | "money" | "weight" | "page" | "url" | "collection" | "file" | "integer" | "link" | "volume" | "single_line_text" | "multi_line_text" | "rich_text" | "decimal" | "rating" | "date_time" | "true_or_false" | "metaobject" | "mixed_reference"
useAsProductFilter
boolean
useInSmartRules
boolean
validations?
{ limitToPresetChoices?: boolean; maxCharacters?: number; maxDate?: string; maxMeasurement?: number; maxRating?: number; maxValue?: number; minCharacters?: number; minDate?: string; minMeasurement?: number; minRating?: number; minValue?: number; presetChoices?: string[]; regex?: string; required?: boolean; uniqueValues?: boolean; unit?: string; }
validations.limitToPresetChoices?
boolean
validations.maxCharacters?
number
validations.maxDate?
string
validations.maxMeasurement?
number
validations.maxRating?
number
validations.maxValue?
number
validations.minCharacters?
number
validations.minDate?
string
validations.minMeasurement?
number
validations.minRating?
number
validations.minValue?
number
validations.presetChoices?
string[]
validations.regex?
string
validations.required?
boolean
validations.uniqueValues?
boolean
validations.unit?
string
Returns
Promise<{ addedBy?: string; categoryAssignments?: string[]; createdAt: Date; customerAccountApiAccess: "none" | "read_only" | "read_and_write"; description?: string; filterOnOrderList: boolean; id: string; isList: boolean; isStandard: boolean; key: string; name: string; namespace: string; ownerType: "tanqory" | "app" | "merchant"; pinnedPosition?: number; resourceType: "customer" | "product" | "variant" | "company" | "order" | "draft_order" | "page" | "collection" | "blog" | "market" | "location" | "shop" | "blog_post" | "company_location"; standardNamespace?: string; storefrontAccess: boolean; storeId: string; type: "id" | "json" | "color" | "product" | "variant" | "dimension" | "date" | "money" | "weight" | "page" | "url" | "collection" | "file" | "integer" | "link" | "volume" | "single_line_text" | "multi_line_text" | "rich_text" | "decimal" | "rating" | "date_time" | "true_or_false" | "metaobject" | "mixed_reference"; updatedAt: Date; useAsProductFilter: boolean; useInSmartRules: boolean; validations?: { limitToPresetChoices?: boolean; maxCharacters?: number; maxDate?: string; maxMeasurement?: number; maxRating?: number; maxValue?: number; minCharacters?: number; minDate?: string; minMeasurement?: number; minRating?: number; minValue?: number; presetChoices?: string[]; regex?: string; required?: boolean; uniqueValues?: boolean; unit?: string; }; valuesCount: number; }>
deleteMetafieldDefinition()
deleteMetafieldDefinition(
storeId,id):Promise<{deleted:true;id:string;object:"metafield_definition"; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/metafields.ts:108
Delete a metafield definition
Parameters
storeId
string
id
string
Returns
Promise<{ deleted: true; id: string; object: "metafield_definition"; }>
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
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
getMetafieldDefinition()
getMetafieldDefinition(
storeId,id):Promise<{addedBy?:string;categoryAssignments?:string[];createdAt:Date;customerAccountApiAccess:"none"|"read_only"|"read_and_write";description?:string;filterOnOrderList:boolean;id:string;isList:boolean;isStandard:boolean;key:string;name:string;namespace:string;ownerType:"tanqory"|"app"|"merchant";pinnedPosition?:number;resourceType:"customer"|"product"|"variant"|"company"|"order"|"draft_order"|"page"|"collection"|"blog"|"market"|"location"|"shop"|"blog_post"|"company_location";standardNamespace?:string;storefrontAccess:boolean;storeId:string;type:"id"|"json"|"color"|"product"|"variant"|"dimension"|"date"|"money"|"weight"|"page"|"url"|"collection"|"file"|"integer"|"link"|"volume"|"single_line_text"|"multi_line_text"|"rich_text"|"decimal"|"rating"|"date_time"|"true_or_false"|"metaobject"|"mixed_reference";updatedAt:Date;useAsProductFilter:boolean;useInSmartRules:boolean;validations?: {limitToPresetChoices?:boolean;maxCharacters?:number;maxDate?:string;maxMeasurement?:number;maxRating?:number;maxValue?:number;minCharacters?:number;minDate?:string;minMeasurement?:number;minRating?:number;minValue?:number;presetChoices?:string[];regex?:string;required?:boolean;uniqueValues?:boolean;unit?:string; };valuesCount:number; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/metafields.ts:74
Get a metafield definition by ID
Parameters
storeId
string
id
string
Returns
Promise<{ addedBy?: string; categoryAssignments?: string[]; createdAt: Date; customerAccountApiAccess: "none" | "read_only" | "read_and_write"; description?: string; filterOnOrderList: boolean; id: string; isList: boolean; isStandard: boolean; key: string; name: string; namespace: string; ownerType: "tanqory" | "app" | "merchant"; pinnedPosition?: number; resourceType: "customer" | "product" | "variant" | "company" | "order" | "draft_order" | "page" | "collection" | "blog" | "market" | "location" | "shop" | "blog_post" | "company_location"; standardNamespace?: string; storefrontAccess: boolean; storeId: string; type: "id" | "json" | "color" | "product" | "variant" | "dimension" | "date" | "money" | "weight" | "page" | "url" | "collection" | "file" | "integer" | "link" | "volume" | "single_line_text" | "multi_line_text" | "rich_text" | "decimal" | "rating" | "date_time" | "true_or_false" | "metaobject" | "mixed_reference"; updatedAt: Date; useAsProductFilter: boolean; useInSmartRules: boolean; validations?: { limitToPresetChoices?: boolean; maxCharacters?: number; maxDate?: string; maxMeasurement?: number; maxRating?: number; maxValue?: number; minCharacters?: number; minDate?: string; minMeasurement?: number; minRating?: number; minValue?: number; presetChoices?: string[]; regex?: string; required?: boolean; uniqueValues?: boolean; unit?: string; }; valuesCount: number; }>
getMetafieldDefinitions()
getMetafieldDefinitions(
storeId,options?):Promise<{data:object[];limit:number;page:number;total:number;total_pages:number; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/metafields.ts:60
List all metafield definitions
Parameters
storeId
string
options?
hasCategories?
boolean
isStandard?
boolean
limit
number
namespace?
string
page
number
resourceType?
"customer" | "product" | "variant" | "company" | "order" | "draft_order" | "page" | "collection" | "blog" | "market" | "location" | "shop" | "blog_post" | "company_location"
search?
string
sortBy?
"name" | "createdAt" | "updatedAt" | "namespace" | "key" | "pinnedPosition" | "valuesCount"
sortOrder?
"asc" | "desc"
type?
"id" | "json" | "color" | "product" | "variant" | "dimension" | "date" | "money" | "weight" | "page" | "url" | "collection" | "file" | "integer" | "link" | "volume" | "single_line_text" | "multi_line_text" | "rich_text" | "decimal" | "rating" | "date_time" | "true_or_false" | "metaobject" | "mixed_reference"
useInSmartRules?
boolean
Returns
Promise<{ data: object[]; limit: number; page: number; total: number; total_pages: number; }>
getResourceTypes()
getResourceTypes(
storeId):Promise<object[]>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/metafields.ts:28
Get all resource types with their definition counts
Parameters
storeId
string
Returns
Promise<object[]>
reorderMetafieldDefinitions()
reorderMetafieldDefinitions(
storeId,resourceType,definitionIds):Promise<object[]>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/metafields.ts:121
Reorder pinned definitions
Parameters
storeId
string
resourceType
string
definitionIds
string[]
Returns
Promise<object[]>
updateMetafieldDefinition()
updateMetafieldDefinition(
storeId,id,data):Promise<{addedBy?:string;categoryAssignments?:string[];createdAt:Date;customerAccountApiAccess:"none"|"read_only"|"read_and_write";description?:string;filterOnOrderList:boolean;id:string;isList:boolean;isStandard:boolean;key:string;name:string;namespace:string;ownerType:"tanqory"|"app"|"merchant";pinnedPosition?:number;resourceType:"customer"|"product"|"variant"|"company"|"order"|"draft_order"|"page"|"collection"|"blog"|"market"|"location"|"shop"|"blog_post"|"company_location";standardNamespace?:string;storefrontAccess:boolean;storeId:string;type:"id"|"json"|"color"|"product"|"variant"|"dimension"|"date"|"money"|"weight"|"page"|"url"|"collection"|"file"|"integer"|"link"|"volume"|"single_line_text"|"multi_line_text"|"rich_text"|"decimal"|"rating"|"date_time"|"true_or_false"|"metaobject"|"mixed_reference";updatedAt:Date;useAsProductFilter:boolean;useInSmartRules:boolean;validations?: {limitToPresetChoices?:boolean;maxCharacters?:number;maxDate?:string;maxMeasurement?:number;maxRating?:number;maxValue?:number;minCharacters?:number;minDate?:string;minMeasurement?:number;minRating?:number;minValue?:number;presetChoices?:string[];regex?:string;required?:boolean;uniqueValues?:boolean;unit?:string; };valuesCount:number; }>
Defined in: tanqory-platform-packages/packages/api/sdk/src/services/metafields.ts:93
Update an existing metafield definition
Parameters
storeId
string
id
string
data
categoryAssignments?
string[]
customerAccountApiAccess?
"none" | "read_only" | "read_and_write"
description?
string
expected_updated_at?
string
filterOnOrderList?
boolean
name?
string
pinnedPosition?
number
storefrontAccess?
boolean
useAsProductFilter?
boolean
useInSmartRules?
boolean
validations?
{ limitToPresetChoices?: boolean; maxCharacters?: number; maxDate?: string; maxMeasurement?: number; maxRating?: number; maxValue?: number; minCharacters?: number; minDate?: string; minMeasurement?: number; minRating?: number; minValue?: number; presetChoices?: string[]; regex?: string; required?: boolean; uniqueValues?: boolean; unit?: string; }
validations.limitToPresetChoices?
boolean
validations.maxCharacters?
number
validations.maxDate?
string
validations.maxMeasurement?
number
validations.maxRating?
number
validations.maxValue?
number
validations.minCharacters?
number
validations.minDate?
string
validations.minMeasurement?
number
validations.minRating?
number
validations.minValue?
number
validations.presetChoices?
string[]
validations.regex?
string
validations.required?
boolean
validations.uniqueValues?
boolean
validations.unit?
string
Returns
Promise<{ addedBy?: string; categoryAssignments?: string[]; createdAt: Date; customerAccountApiAccess: "none" | "read_only" | "read_and_write"; description?: string; filterOnOrderList: boolean; id: string; isList: boolean; isStandard: boolean; key: string; name: string; namespace: string; ownerType: "tanqory" | "app" | "merchant"; pinnedPosition?: number; resourceType: "customer" | "product" | "variant" | "company" | "order" | "draft_order" | "page" | "collection" | "blog" | "market" | "location" | "shop" | "blog_post" | "company_location"; standardNamespace?: string; storefrontAccess: boolean; storeId: string; type: "id" | "json" | "color" | "product" | "variant" | "dimension" | "date" | "money" | "weight" | "page" | "url" | "collection" | "file" | "integer" | "link" | "volume" | "single_line_text" | "multi_line_text" | "rich_text" | "decimal" | "rating" | "date_time" | "true_or_false" | "metaobject" | "mixed_reference"; updatedAt: Date; useAsProductFilter: boolean; useInSmartRules: boolean; validations?: { limitToPresetChoices?: boolean; maxCharacters?: number; maxDate?: string; maxMeasurement?: number; maxRating?: number; maxValue?: number; minCharacters?: number; minDate?: string; minMeasurement?: number; minRating?: number; minValue?: number; presetChoices?: string[]; regex?: string; required?: boolean; uniqueValues?: boolean; unit?: string; }; valuesCount: number; }>