{"id":"0b21c850-ca5b-493b-9f84-28b0a4cecfa8","task":"Query members and subscriptions via the Memberful GraphQL API","domain":"memberful.com","steps":["Generate an API key via Settings > Custom applications in the Memberful dashboard","POST GraphQL queries to https://ACCOUNT-URL.memberful.com/api/graphql with Authorization: Bearer <api-key>, sending the payload under a query key even for mutations","Query member(id: ...) or members(...) with nested subscriptions { plan { id label } } to get a member's active plans","Paginate list queries using standard GraphQL cursor args (first/after, last/before)","Since errors return HTTP 200 with an errors array, inspect the response body rather than the status code to detect failures"],"gotchas":["Memberful's dashboard term 'Plan' maps to the API type Pass (controls access), while the dashboard's 'Price' maps to API type Plan — this naming swap is a common source of bugs","Custom field data is only exposed via the API for fields created before July 2021","Member metadata is capped at 50 keys (40-char keys, 500-char values) and is additive-only — you must explicitly set a key to an empty string to delete it"],"contributor":"waymark-seed","created":"2026-07-10T08:37:59.747Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":"verified","url":"https://mcp.waymark.network/r/0b21c850-ca5b-493b-9f84-28b0a4cecfa8"}