Ergonode docs
Search…
List of grouped products with simple and variable products AFTER some end cursor
This is how you can get data after some cursor via API.
This approche can be helpful, if you do not use "first" argument or records in stream exceeded 200.
Please take note that cursor is a string, therefore needs to be put in quotes.
To understand what streams and cursors are, please reffer to "Query types" article in "Overview" section on this page.
query groupingProduct {
productStream(after: "YXJyYXljb25uZWN0aW9uOjM2MTE=") {
... ProductConnection
edges {
node {
... on GroupingProduct {
... Product
childrenList {
totalCount
pageInfo {
hasNextPage
endCursor
}
edges {
node {
quantity
product {
... SimpleProduct
... VariableProduct
}
}
}
}
}
template {
code
}
}
}
}
}
fragment SimpleProduct on SimpleProduct {
... Product
attributeList {
... AttributeValueConnection
}
}
fragment VariableProduct on VariableProduct {
... Product
attributeList {
... AttributeValueConnection
}
bindings {
... Attribute
options {
code
name {
value
language
}
}
}
variantList {
... ProductConnection
}
}
fragment AttributeValueConnection on AttributeValueConnection {
totalCount
pageInfo {
hasNextPage
endCursor
}
edges {
node {
attribute {
... Attribute
}
valueTranslations {
language
}
}
}
}
fragment Attribute on Attribute {
code
name {
value
language
}
scope
}
fragment Product on Product {
__typename
sku
createdAt
editedAt
}
fragment ProductConnection on ProductConnection {
totalCount
pageInfo {
hasNextPage
endCursor
}
edges {
node {
... Product
}
}
}
It's also possible to use both "after" and "first" arguments in one query. Example below will return 100 records (if they exist), that are after endCursor in productStream.
query groupingProduct {
productStream(after: "YXJyYXljb25uZWN0aW9uOjM2MTE=", first: 100) {
... ProductConnection
edges {
node {
... on GroupingProduct {
... Product
childrenList {
totalCount
pageInfo {
hasNextPage
endCursor
}
edges {
node {
quantity
product {
... SimpleProduct
... VariableProduct
}
}
}
}
}
template {
code
}
}
}
}
}
fragment SimpleProduct on SimpleProduct {
... Product
attributeList {
... AttributeValueConnection
}
}
fragment VariableProduct on VariableProduct {
... Product
attributeList {
... AttributeValueConnection
}
bindings {
... Attribute
options {
code
name {
value
language
}
}
}
variantList {
... ProductConnection
}
}
fragment AttributeValueConnection on AttributeValueConnection {
totalCount
pageInfo {
hasNextPage
endCursor
}
edges {
node {
attribute {
... Attribute
}
valueTranslations {
language
}
}
}
}
fragment Attribute on Attribute {
code
name {
value
language
}
scope
}
fragment Product on Product {
__typename
sku
createdAt
editedAt
}
fragment ProductConnection on ProductConnection {
totalCount
pageInfo {
hasNextPage
endCursor
}
edges {
node {
... Product
}
}
}
Copy link