Aller au contenu principal

getAttributes

Obtenir tous les ensembles d'attributs et leur nombre total.

Description​

Renvoie un IAttributesSetsResponse : les ensembles d'attributs et leur nombre total, utilisable pour la pagination. Une boutique en ligne, par exemple, peut avoir un ensemble d'attributs pour les vêtements (taille, couleur, matière) et un autre pour l'électronique.

L'ensemble d'attributs n'inclut pas les valeurs des attributs ; elles sont stockées dans des entités spécifiques comme les pages et les produits. La seule exception est le type d'attribut timeInterval, qui peut contenir des valeurs lorsque la case correspondante est cochée dans le panneau d'administration (ouvre dans un nouvel onglet).

.getAttributes(

, , , ,

);

Schéma des paramètres​

Schéma

langCode: string
Code de langue. Par défaut : le langCode passé à defineOneEntry ("en_US" s'il n'y en a pas).
exemple : "en_US"

offset: number
Nombre d'enregistrements à ignorer. Par défaut : 0. offset + limit ne doit pas dépasser 200 ; une fenêtre plus grande est rejetée avec 400.
exemple : 0

limit: number
Nombre maximal d'enregistrements à renvoyer. Par défaut : 30.
exemple : 30

typeId: number
ID du type d'ensemble d'attributs pour filtrer. Par défaut : null.

sortBy: string
Champ de tri : id ou position. Par défaut : "id".
exemple : "id"

Limite d’enregistrements. Si la permission du groupe d’utilisateurs pour cette méthode n’autorise qu’une lecture restreinte, l’API renvoie au plus le nombre d’enregistrements défini dans les paramètres du projet (10 par défaut), quelle que soit la valeur de limit. Avec un accès complet en lecture, limit fonctionne normalement. Voir Module permissions (ouvre dans un nouvel onglet).
Tant que ce plafond s'applique, l'API ignore actuellement offset : chaque requête renvoie à nouveau les premiers enregistrements.

Exemples​

Exemple minimal​

const response = await AttributesSets.getAttributes();

Exemple avec tous les paramètres​

const response = await AttributesSets.getAttributes('en_US', 0, 30, null, 'id');

Exemple de réponse​

{
"total": 21,
"items": [
{
"id": 38,
"createdDate": "2026-06-09T06:06:13.667Z",
"updatedDate": "2026-06-09T06:12:00.790Z",
"version": 0,
"identifier": "subscription",
"title": "Subscription",
"schema": {
"price": {
"id": 2,
"type": "integer",
"isPrice": true,
"original": true,
"isVisible": true,
"splitUnit": "percent",
"identifier": "price",
"isCurrency": false,
"splitPrice": false,
"initialValue": null,
"localizeInfos": {
"title": "price"
},
"value": null
},
"currency_products": {
"id": 4,
"type": "string",
"isPrice": false,
"original": true,
"isVisible": true,
"splitUnit": false,
"identifier": "currency_products",
"isCurrency": true,
"splitPrice": false,
"validators": {
"defaultValueValidator": {
"customErrorText": "Custom error",
"fieldDefaultValue": "usd",
"fieldDefaultValue2": ""
}
},
"initialValue": null,
"localizeInfos": {
"title": "Currency"
}
}
},
"isVisible": true,
"type": {
"id": 5,
"type": "forProducts"
},
"position": 1
},
{
"id": 33,
"createdDate": "2026-04-22T16:28:05.346Z",
"updatedDate": "2026-04-23T10:57:26.245Z",
"version": 1,
"identifier": "percent_split",
"title": "Percent split",
"schema": {
"s0": {
"id": 1,
"type": "float",
"isPrice": true,
"original": true,
"isVisible": true,
"splitUnit": "percent",
"identifier": "s0",
"splitParts": [
2,
3
],
"splitPrice": true,
"localizeInfos": {
"title": "s0"
},
"value": null
},
"s1": {
"id": 2,
"type": "float",
"isPrice": false,
"original": true,
"isVisible": true,
"splitUnit": false,
"identifier": "s1",
"splitParts": false,
"splitPrice": false,
"localizeInfos": {
"title": "s1"
},
"value": null
},
"s2": {
"id": 3,
"type": "float",
"isPrice": false,
"original": true,
"isVisible": true,
"splitUnit": false,
"identifier": "s2",
"splitParts": false,
"localizeInfos": {
"title": "s2"
},
"value": null
},
"currency": {
"id": 4,
"type": "string",
"isPrice": false,
"original": true,
"isVisible": true,
"splitUnit": false,
"identifier": "currency",
"isCurrency": true,
"validators": {
"defaultValueValidator": {
"fieldDefaultValue": "usd",
"fieldDefaultValue2": ""
}
},
"localizeInfos": {
"title": "currency"
}
}
},
"isVisible": true,
"type": {
"id": 5,
"type": "forProducts"
},
"position": 2
},
{
"id": 31,
"createdDate": "2026-03-14T14:53:28.721Z",
"updatedDate": "2026-03-14T14:53:52.760Z",
"version": 0,
"identifier": "discounts",
"title": "Discounts",
"schema": {
"example_discount": {
"id": 1,
"type": "string",
"original": true,
"isVisible": true,
"identifier": "example_discount",
"localizeInfos": {
"title": "example_discount"
}
}
},
"isVisible": true,
"type": {
"id": 11,
"type": "forDiscounts"
},
"position": 3
}
]
}

Schéma de réponse​

Schéma : IAttributesSetsResponse

total: number
Nombre total d'ensembles d'attributs.
exemple : 100

items: IAttributeSetsEntity[]
Ensembles d'attributs de cette réponse.
exemple :

[
{
"id": 1,
"identifier": "set1"
},
{
"id": 2,
"identifier": "set2"
}
]

items.id: number
ID de l'ensemble d'attributs.
exemple : 123

items.createdDate: string
Date de création de l'ensemble d'attributs.
exemple : "2023-10-01T12:00:00Z"

items.updatedDate: string
Date de la dernière mise à jour de l'ensemble d'attributs.
exemple : "2023-10-01T12:00:00Z"

items.version: number
Numéro de version de l'ensemble d'attributs ; change à chaque mise à jour.
exemple : 1

items.identifier: string
Marqueur de l'ensemble d'attributs.
exemple : "attributeSet1"

items.title: string
Nom de l'ensemble d'attributs.
exemple : "Attributs de produit"

items.schema: Record<string, IAttributeSchemaItem>
Champs de schéma indexés par marqueur.
exemple :

{
"attribute1": {
"id": 1,
"type": "string",
"isPrice": false,
"original": true,
"identifier": "string",
"localizeInfos": {
"en_US": {
"title": "String"
}
}
}
}

items.isVisible: boolean
Indique si l'ensemble d'attributs est visible.
exemple : true

items.type: string
Type de l'ensemble d'attributs.
example: "product"

items.position: number
Index, à partir de 1, de l'ensemble dans la réponse (1 pour un ensemble unique).
exemple : 1