Skip to main content

Appstle API & Webhook Structural Update

Updated over a month ago

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 edgesnodes 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?