developers Entrar a AdvantaCloud
Árbol del API · Productos y precios › priceStructuresConnection

Lista de estructuras de precios

priceStructuresConnection

Tipo

Query

Devuelve

PriceStructureConnection!

Permiso de la llave

Cliente

Página

20 por omisión · máx. 100

Estable

Lista las estructuras de precios de la empresa con las listas de precios que las forman, de la modificada hace más tiempo a la más reciente.

Una estructura de precios agrupa las listas de precios con que AdvantaCloud calcula el precio de un artículo para un cliente. Para los precios de cada lista usa priceListEntriesConnection con el id de la lista. Para el precio ya calculado de un artículo, usa price en productsConnection.

Llegan todas las listas de cada estructura, también las que ya vencieron o todavía no empiezan: revisa validFrom y validUntil.

priceStructuresConnection(
  first: Int  after: String
): PriceStructureConnection!

Argumentos

2

ArgumentoTipoDescripción
firstInt Int

Cuántas estructuras devolver desde el inicio o desde after. Sin first llegan 20; si pides más de 100 recibes 100.

afterString String

Cursor de la página anterior (pageInfo.endCursor). Devuelve las estructuras que siguen.

Lo que devuelve

PriceStructureConnection!

nodes[PriceStructure]Las estructuras de esta página. La forma más corta de leerlas.
edges[PriceStructureEdge]Las mismas estructuras, cada una con su cursor.
pageInfoPageInfo!Dónde estás en la lista.
hasNextPageBoolean!Hay más elementos después de esta página.
endCursorStringCursor del último elemento; pásalo en after para pedir la página siguiente.
hasPreviousPageBoolean!true si pediste esta página con after, es decir, si no es la primera.
startCursorStringCursor del primer elemento de esta página.

Campos principales de PriceStructure

CampoTipoDescripción
idID! ID! Identificador de la estructura; es el que se envía en priceStructureId.
codeString String Clave de la estructura, p. ej. MAY.
nameString String Nombre de la estructura.
currencyString String Clave SAT de la moneda de la estructura, tomada de su primera lista de precios.
listsPriceListConnection! PriceListConnection! Listas de precios que forman la estructura, de la modificada hace más tiempo a la más reciente, vigentes o no.20 por omisión, hasta 100 por página.

Ver todos los campos de PriceStructure

Paginación

first · after

Pide hasta 100 estructuras de precios por página junto con pageInfo. Repite la misma consulta pasando endCursor en after mientras hasNextPage sea true. El orden es estable: no se saltan estructuras de precios entre páginas. Más sobre paginación.

Página 1

first: 100
endCursor: "WzEs…MTAwXQ"
hasNextPage: true

Página 2

after: "WzEs…MTAwXQ"
endCursor: "WzEs…MjAwXQ"
hasNextPage: true

Página 3

after: "WzEs…MjAwXQ"
endCursor: "WzEs…MjQ3XQ"
hasNextPage: false

Si una estructura cambia mientras recorres la lista, pasa al final y te llega otra vez con sus datos nuevos: guarda por id. Las listas de precios de cada estructura (lists) son otra conexión con su propio límite de 100.

Permisos

Llave API Integraciones

Cliente

La llave ve los registros de toda la empresa del subdominio.

Sin el permiso Error sin código

La respuesta trae data: null y un error en errors con el mensaje «Cannot return null for non-nullable field…», sin extensions.code.

Errores

CódigoCuándo ocurreQué hacer
HTTP 401Falta el header Authorization o la llave no existe en la empresa del subdominio. La respuesta no trae cuerpo.Revisa la llave y el subdominio. No reintentes.
Error sin códigoLa llave no tiene «Cliente». La respuesta trae data: null y un error en errors con el mensaje «Cannot return null for non-nullable field…», sin extensions.code.La llave necesita ese permiso; reintentar no ayuda.
VALIDATIONEl cursor de after no tiene el formato de esta lista, o first es negativo.Usa el endCursor tal como llegó y con los mismos argumentos; si lo perdiste, reinicia sin after.
HTTP 422Falla interna o dato rechazado al guardar. El cuerpo es {"error": …}, sin data.Si no cambiaste nada, reintenta con espera exponencial.

Los errores de la consulta llegan con HTTP 200 en errors, con su código en extensions.code. Revisa siempre errors, no sólo el estatus HTTP. Errores y reintentos.

Relacionadas

Schema del 26 oct 2026 · Ver cambios¿Algo no cuadra? Repórtalo en ayuda.advanta.mx