ProductConnection
A connection to a list of Product items.
Connection Structure
type ProductConnection {
edges: [ProductEdge]
nodes: [Product]
pageInfo: PageInfo
totalCount: Int
filters: [Filter]
}Pagination Arguments
| Argument | Type | Description |
|---|---|---|
| first | Int | Returns the first n items from the list |
| last | Int | Returns the last n items from the list |
| before | String | Returns items before the specified cursor |
| after | String | Returns items after the specified cursor |
PageInfo Structure
The pageInfo object contains pagination metadata about the connection:
- hasNextPage (Boolean): Indicates whether there are more items after the current page
- hasPreviousPage (Boolean): Indicates whether there are items before the current page
- startCursor (String): The cursor of the first item in the current page
- endCursor (String): The cursor of the last item in the current page
Example
query {
products(first: 10, after: "Y3Vyc29yOjEw") {
edges {
node {
id
name
}
cursor
}
nodes {
id
name
}
pageInfo {
hasNextPage
hasPreviousPage
startCursor
endCursor
}
totalCount
filters {
id
name
values {
id
label
}
}
}
}Edge Type
The ProductEdge type represents a single product in the connection. Each edge contains:
- node: The Product object containing product details
- cursor: An opaque string cursor for pagination, used with
beforeandafterarguments