Aller au contenu principal

getOrdersByVectorSearch

Recherche sémantique (vectorielle) pour les commandes de l'utilisateur actuel. 🔐 Cette méthode nécessite l'autorisation.

Description

Cette méthode effectue une recherche sémantique (vectorielle) sur les commandes de l'utilisateur autorisé à partir d'une requête en langage naturel - elle correspond au sens plutôt qu'aux mots-clés exacts. Elle renvoie une promesse qui se résout en un objet IOrdersByMarkerEntity - un conteneur avec items (les commandes) et total.

Orders.getOrdersByVectorSearch(

body*, langCode, offset, limit

);

Schéma des paramètres

Schéma

body(obligatoire): IOrdersVectorSearch
Corps de la recherche vectorielle
exemple:

{ queryText: "winter jacket" }

body.queryText(obligatoire): string
Requête de recherche en langage naturel.
exemple : "veste d'hiver"

body.vectorDistanceThreshold: number
Remplacement du seuil de distance cosinus (0..2).
exemple : 0.3

body.maxHits: number
Top-K candidats récupérés avant la pagination. Par défaut : 100. Max : 500.
exemple : 10

body.debug: boolean
Lorsque vrai, chaque élément retourné obtient un champ distance.
exemple : false

langCode: string
Code de langue. Par défaut : "en_US"
exemple : "en_US"

offset: number
Paramètre pour la pagination. Par défaut : 0
exemple : 0

limit: number
Paramètre pour la pagination. Par défaut : 30
exemple : 30

Exemples

Exemple minimal

const response = await Orders.getOrdersByVectorSearch({ queryText: 'winter jacket' });

Exemple avec des attributs

const response = await Orders.getOrdersByVectorSearch(
{
queryText: 'winter jacket',
vectorDistanceThreshold: 0.3,
maxHits: 50,
debug: true,
},
'en_US',
0,
30,
);

Exemple de réponse

{
"items": [
{
"id": 746,
"storageId": 1,
"createdDate": "2026-08-14T13:02:50.761Z",
"statusIdentifier": "inProgress-payment",
"statusLocalizeInfos": {
"title": "In progress"
},
"fulfillmentStatusIdentifier": null,
"fulfillmentStatusLocalizeInfos": null,
"paymentStatusIdentifier": "inProgress-payment",
"paymentStatusLocalizeInfos": {
"title": "In progress"
},
"formIdentifier": "orderForm",
"formData": [
{
"marker": "order_name",
"value": "Ivan",
"type": "string"
}
],
"attributeSetIdentifier": "order_form",
"paymentStrategy": "once",
"totalSum": "285",
"totalSumRaw": "300",
"currency": "USD",
"paymentAccountIdentifier": "cash",
"paymentAccountLocalizeInfos": {
"title": "Cash"
},
"products": [
{
"id": 2957,
"title": "Cosmo",
"sku": null,
"previewImage": [],
"price": 150,
"quantity": 2,
"isGift": false
}
],
"paymentUrl": null,
"discountConfig": {
"orderDiscounts": [
{
"id": 2,
"identifier": "personal_discount",
"type": "PERSONAL_DISCOUNT",
"localizeInfos": {
"title": "Personal discount"
},
"startDate": "2026-04-21T18:26:19.815Z",
"endDate": "2028-03-21T19:26:24.741Z",
"discountValue": {
"value": 15,
"maxAmount": null,
"discountType": "FIXED_AMOUNT",
"applicability": "TO_ORDER"
},
"exclusions": null,
"position": 1,
"conditionLogic": "AND",
"gifts": [],
"userGroups": null,
"userExclusions": null,
"conditions": [],
"coupon": null
}
],
"productDiscounts": [],
"coupon": null,
"settings": {
"allowStacking": true,
"maxDiscountValue": 50,
"allowGiftStacking": false,
"maxBonusPaymentPercent": null,
"minBonusAmount": null,
"minOrderAmountForBonus": null,
"giftRefundPolicy": "KEEP_GIFT"
},
"additionalDiscountsMarkers": [],
"totalRaw": 300,
"totalSumWithDiscount": 285,
"excludedGiftProductIds": [],
"bonus": {
"availableBalance": 0,
"maxBonusDiscount": 0,
"minBonusAmount": null,
"minOrderAmountForBonus": null,
"bonusApplied": 0
},
"bonusApplied": 0,
"totalDue": 285
},
"isPartial": false,
"isCompleted": null
}
],
"total": 1
}

Schéma de réponse

Schéma : IOrdersByMarkerEntity

items: IOrderByMarkerEntity[]
Tableau d'objets de stockage de commandes.
exemple :

[
{
"id": 55,
"storageId": 1,
"createdDate": "2025-03-22T21:12:42.371Z",
"statusIdentifier": "inProgress",
"formIdentifier": "orderForm",
"formData": [
{
"marker": "order_name",
"value": "Ivan",
"type": "string"
}
],
"attributeSetIdentifier": "order_form",
"totalSum": "300.00",
"currency": "",
"paymentAccountIdentifier": "cash",
"paymentAccountLocalizeInfos": {
"title": "Cash"
},
"products": [
{
"id": 2957,
"title": "Cosmo",
"sku": null,
"previewImage": null,
"price": 150,
"quantity": 2
}
],
"isCompleted": false
}
]

items.id: number
Identifiant de l'objet.
exemple : 125

items.storageId: number
Identifiant de l'objet de stockage de commande.
exemple : 1

items.createdDate: string
Date à laquelle la commande a été créée.
exemple : "2023-10-01T12:00:00Z"

items.statusIdentifier: string
Identifiant textuel de l'état de la commande.
exemple : "order-status-1"

items.formIdentifier: string
Identifiant textuel du formulaire.
exemple : "bar-orders-form"

items.formData: IOrdersFormData[]
Données soumises par le formulaire lié au stockage de la commande.
exemple :

[
{
"marker": "order_name",
"value": "Ivan",
"type": "string"
}
]

items.attributeSetIdentifier: string | null
Identifiant textuel de l'ensemble d'attributs.
exemple : "attribute-set-1"

items.totalSum: string
Montant total de la commande.
exemple : "100.00"

items.totalSumRaw: string
Montant total brut de la commande avec pleine précision.
exemple : "100.00"

items.currency: string
Devise utilisée pour payer la commande.
exemple : "USD"

items.paymentAccountIdentifier: string | null
Identifiant textuel pour le paiement de la commande.
exemple : "payment-1"

items.paymentAccountLocalizeInfos: ILocalizeInfo
Nom du compte de paiement tenant compte de la localisation.
exemple :

{
"title": "Cash"
}

items.products: IOrderProducts[]
Tableau de produits ajoutés à la commande.
exemple :

[
{
"id": 1,
"name": "Product 1",
"quantity": 2
}
]

items.paymentUrl: string | null
Lien de paiement.
exemple : "https://example.com/pay/123"

items.isCompleted: boolean | null
Indique que la commande a été complétée.
exemple : true

items.isPartial: boolean | null
Indique que la commande est partiellement payée ; null pour les anciennes commandes où cela n'était pas suivi.
exemple : false

items.paymentStrategy: string
Stratégie de paiement de la commande.
exemple : "once"

items.statusLocalizeInfos: ILocalizeInfo
Nom d'état localisé.

items.fulfillmentStatusIdentifier: string | null
Identifiant textuel de l'état d'exécution (livraison) ; null tant qu'aucun état d'exécution n'est attribué.
exemple : "shipped"

items.fulfillmentStatusLocalizeInfos: ILocalizeInfo | null
Nom d'état d'exécution localisé ; null tant qu'aucun état d'exécution n'est attribué.

items.paymentStatusIdentifier: string | null
Identifiant textuel de l'état de paiement ; null tant qu'aucun état de paiement n'est attribué.
exemple : "inProgress-payment"

items.paymentStatusLocalizeInfos: ILocalizeInfo | null
Nom d'état de paiement localisé ; null tant qu'aucun état de paiement n'est attribué.

items.discountConfig: IOrderDiscountConfig | null
Configuration de remise résolue appliquée à la commande (orderDiscounts, productDiscounts, coupon, settings, bonus, totals) ; null pour les anciennes commandes sans configuration de remise résolue.

items.split: IOrderSplit
Configuration de paiement fractionné (staged) ; présente sur le point de terminaison de commande par ID.

items.distance: number
Distance cosinus par rapport à la requête. Renvoie uniquement par le point de terminaison de recherche sémantique (vectorielle) lorsque debug: true est passé dans le corps de la recherche.
exemple : 0.12

total: number
Nombre total d'enregistrements trouvés.
exemple : 100

ℹ️ La recherche sémantique correspond au sens, et non au texte littéral. Pour une correspondance de mots-clés sur chaque type d'entité à la fois, utilisez globalSearch().