Saltar al contenido principal

getAttributes

Obtener todos los conjuntos de atributos y su número total.

Descripción​

Se resuelve en un IAttributesSetsResponse: los conjuntos de atributos más su recuento total, que puedes usar para la paginación. Una tienda online, por ejemplo, podría tener un conjunto de atributos para ropa (talla, color, material) y otro para electrónica.

El conjunto de atributos no incluye los valores de los atributos; estos se encuentran en entidades concretas, como páginas y productos. La única excepción es el tipo de atributo timeInterval, que puede contener valores cuando la casilla correspondiente está marcada en el panel de administración (abre en una nueva pestaña).

.getAttributes(

, , , ,

);

Esquema de parámetros​

Esquema

langCode: cadena
Código de idioma. Predeterminado: el langCode pasado a defineOneEntry ("en_US" si no se pasó ninguno).
ejemplo: "en_US"

offset: number
Número de registros que se omiten. Predeterminado: 0. offset + limit no debe superar 200; una ventana mayor se rechaza con 400.
ejemplo: 0

limit: number
Número máximo de registros que se devuelven. Predeterminado: 30.
ejemplo: 30

typeId: number
ID del tipo de conjunto de atributos por el que filtrar. Predeterminado: null.

sortBy: string
Campo de ordenación: id o position. Predeterminado: "id".
ejemplo: "id"

Límite de registros. Si el permiso del grupo de usuarios para este método solo permite lectura restringida, la API devuelve como máximo el número de registros configurado en los ajustes del proyecto (10 por defecto), sin importar el limit que pases. Con acceso de lectura completo, limit funciona con normalidad. Consulta Module permissions (abre en una nueva pestaña).
Mientras este límite esté vigente, la API ignora actualmente offset: cada solicitud vuelve a devolver los primeros registros.

Ejemplos​

Ejemplo mínimo​

const response = await AttributesSets.getAttributes();

Ejemplo con todos los parámetros​

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

Ejemplo de respuesta​

{
"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
}
]
}

Esquema de respuesta​

Esquema: IAttributesSetsResponse

total: número
Número total de conjuntos de atributos.
ejemplo: 100

items: IAttributeSetsEntity[]
Conjuntos de atributos de esta respuesta.
ejemplo:

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

items.id: número
ID del conjunto de atributos.
ejemplo: 123

items.createdDate: cadena
Fecha de creación del conjunto de atributos.
ejemplo: "2023-10-01T12:00:00Z"

items.updatedDate: cadena
Fecha de la última actualización del conjunto de atributos.
ejemplo: "2023-10-01T12:00:00Z"

items.version: number
Número de versión del conjunto de atributos; cambia con cada actualización.
ejemplo: 1

items.identifier: string
Marcador del conjunto de atributos.
ejemplo: "attributeSet1"

items.title: string
Nombre del conjunto de atributos.
ejemplo: "Atributos del producto"

items.schema: Record<string, IAttributeSchemaItem>
Campos del esquema indexados por marcador.
ejemplo:

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

items.isVisible: boolean
Indica si el conjunto de atributos es visible.
ejemplo: true

items.type: string
Tipo del conjunto de atributos.
example: "product"

items.position: number
Índice del conjunto en la respuesta, empezando por 1 (1 para un único conjunto).
ejemplo: 1