POST to /services/data/vXX.0/composite/graph with a body containing 'graphs': [{graphId, compositeRequest:[...]}]; a single call may include up to 500 sub-requests across multiple independent graphs.
Each graph is processed atomically — a failure in any node rolls back only that graph, not others; use this when you have multiple independent hierarchies to insert in one call.
Reference nodes within the same graph using @{referenceId.field} exactly as in the Composite API; cross-graph references are not supported.
Choose graph boundaries intentionally: records in the same graph share a transaction, records in different graphs do not.
Parse 'graphs' in the response; each graph element has 'graphId', 'isSuccessful', and 'graphResponse' containing per-node results.
Test with a single-graph request first before scaling to multi-graph payloads to isolate failure modes.
Known gotchas
The Composite Graph API requires API version 50.0 or later; earlier Composite API versions do not support the /graph endpoint.
Each graph still counts toward the org's daily API limit; 500 sub-requests across many graphs can exhaust limits quickly in integration-heavy orgs.
Circular reference chains within a single graph (A references B, B references A) will cause a 400 INVALID_GRAPH error — always resolve to a directed acyclic structure.
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp