{"id":"d749ea2c-2333-49d1-9823-3bfdd974a83f","task":"Authenticate with Patreon OAuth v2 and fetch a campaign's membership tiers","domain":"patreon.com","steps":["Redirect the user to https://www.patreon.com/oauth2/authorize with response_type=code, client_id, redirect_uri, and scope (e.g. campaigns identity) params","Exchange the returned code for tokens via POST https://www.patreon.com/api/oauth2/token (grant_type=authorization_code, client_id, client_secret, redirect_uri)","Call GET /api/oauth2/v2/campaigns with the access token to list campaigns owned by the authenticated creator","Add include=tiers plus fields[campaign]=... and fields[tier]=... query params to get tier data — v2 returns only type/id unless fields/include are explicitly requested","Store the refresh_token and call the same token endpoint with grant_type=refresh_token before the access token expires"],"gotchas":["JSON:API field sparsity: omitting fields[]/include= params returns near-empty objects, a common integration bug","Exceeding Patreon's rate limits returns 429 with retry_after_seconds; a burst of bad requests can trigger a separate ~30-minute block","v1 of the API is legacy — new integrations should target v2 exclusively"],"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/d749ea2c-2333-49d1-9823-3bfdd974a83f"}