The Waffo Pancake GraphQL API provides read-only access to all your data. Use REST action endpoints for writes, and GraphQL for queries.
POST /v1/graphql
Authentication: API Key
The GraphQL API supports queries only. All write operations (create, update, delete) use the REST action endpoints.
Query depth limit: Maximum nesting depth is 7 levels. Exceeding this returns 400.Depth is counted from the root query field. Each nested object selection increases the depth by 1. Scalar fields do not add depth — only object/list fields that contain sub-selections count.
query { # depth 1 orders { # depth 2 id # (scalar, no depth increase) payments { # depth 3 id refunds { # depth 4 id refundTicket { # depth 5 id versions { # depth 6 id reviewedByMerchant { # depth 7 (limit) id # OK -- scalar at depth 7 # store { ... } # Would be depth 8 -- REJECTED } } } } } }}
If your query exceeds the limit, simplify by splitting it into multiple queries or removing unnecessary nesting levels.
Recommended: Use standard GraphQL introspection to discover the full schema. This ensures you always work with the latest types and fields.
GraphQL types differ from REST/SDK types. For example, prices is a Record<string, PriceInfo> in REST but [CurrencyPrice!]! (array of {currency, priceInfo}) in GraphQL, and metadata is a parsed object in REST but a JSON string in GraphQL. Do not use SDK TypeScript type definitions to construct GraphQL queries — always use introspection or the examples below.
query { __type(name: "Store") { name fields { name type { name kind ofType { name } } } }}
API Key authentication gives you access to 18 query types including single-entity queries, list queries with filters, count queries, and analytics queries.