Skip to main content

Appstle API & Webhook Structural Update

Overview

On Oct 8th, 2025, Appstle implemented a structural update to its internal Shopify GraphQL client to resolve upstream inconsistencies in pagination behavior. This update resulted in a shift from edges → nodes within certain paginated objects returned through Appstle’s APIs and webhook payloads.

This change was applied globally across all API responses and webhook payloads where Shopify GraphQL pagination is involved.

🔍 Background

Shopify had updated its recommended structure for paginated queries — shifting from the legacy edges { node { ... } } format to a simplified nodes { ... } format.
Reference: Shopify GraphQL Pagination — Connection Edges

To prevent production instability, infinite pagination loops, and timeout errors observed in merchant systems, Appstle adopted this new structure immediately.

⚙️ What Changed

Previous Format (Old)

"lines": {   "__typename": "SubscriptionLineConnection",   "edges": [     {       "__typename": "SubscriptionLineEdge",       "node": {         "__typename": "SubscriptionLine",         "currentPrice": 24.99       }     }   ] }

New Format (Updated)

"lines": {   "__typename": "SubscriptionLineConnection",   "nodes": [     {       "__typename": "SubscriptionLine",       "currentPrice": 24.99     }   ],   "pageInfo": {     "hasNextPage": false,     "hasPreviousPage": false,     "startCursor": "cursor_start",     "endCursor": "cursor_end"   } }

This change applies to all relevant API responses and webhook payloads (e.g., subscription contracts, customer data, and product-related GraphQL queries).


🧩 Impact for Integrators

If your integration parses raw GraphQL pagination responses from Appstle APIs or webhooks, you will need to:

  • Replace references to edges[].node with nodes[].

  • Update any logic tied to pagination objects (hasNextPage, startCursor, endCursor).

If your system only consumes Appstle’s higher-level API responses (and not direct GraphQL connections), you should not experience any disruption.

🧠 Summary

Aspect

Details

Change Type

Structural alignment with Shopify GraphQL pagination

Impact Scope

All Appstle APIs and webhook payloads with GraphQL responses and using pagination

Old Structure

edges { node { ... } }

New Structure

nodes { ... } + pageInfo

Reason

Fix upstream pagination inconsistency causing timeouts

Next Steps for Developers

Update response parsers to read from nodes instead of edges

Did this answer your question?