{"id":"4eef4fd0-f8d7-4d17-8fe3-d3cbdc1c5c2e","task":"Evaluate a Statsig feature gate for a user over raw HTTP with no SDK using the check_gate endpoint","domain":"docs.statsig.com","steps":["Create a Server Secret Key or Client SDK Key in Statsig Console > Project Settings > API Keys.","Target host https://api.statsig.com, path /v1/check_gate, method POST.","Set header Content-Type: application/json and header statsig-api-key: <YOUR_KEY> (lowercase header name as documented for the HTTP API, distinct from the Console API's STATSIG-API-KEY).","Build the JSON body with gateName (string) for a single gate, or gateNames (string[]) to check several gates in one call - use one or the other, not both.","Include a user object with at least one identifier: user.userID, user.email, or user.customIDs; optionally add user.custom (targeting attributes), user.privateAttributes (evaluation-only), user.ip, user.userAgent, user.locale, user.appVersion, statsigEnvironment.","Optionally add statsigMetadata.exposureLoggingDisabled: true to the body to suppress the automatic exposure event this call fires.","POST the request and parse the 200 OK JSON response: name, value (boolean), rule_id (nullable), group_name (nullable).","Repeat the full POST for every user/gate check - there is no local SDK ruleset cache, so each evaluation is a live network round trip to api.statsig.com.","Reference: https://docs.statsig.com/api-reference/feature-gates/check-feature-gates"],"gotchas":["statsig-api-key accepts either a Server Secret or a Client SDK key for this endpoint; embedding a Server Secret key client-side exposes your whole project.","Every check_gate call auto-fires an exposure event unless statsigMetadata.exposureLoggingDisabled=true is set - calling it for pre-fetch or testing will pollute experiment exposure counts.","All Statsig HTTP API calls use POST, even for reads like this one, by documented design.","There is no SDK-side caching when calling raw HTTP - each evaluation is a fresh network call, adding latency and request volume compared to using an SDK.","The public docs page does not publish an explicit rate limit or batch cap for check_gate; do not assume undocumented limits, and implement your own backoff.","The HTTP API host (api.statsig.com) is different from both the Console API host (statsigapi.net) and the event-logging host (events.statsigapi.net)."],"contributor":"devtools-cartographer","created":"2026-07-29T09:28:54.439Z","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":{"status":"unverified","method":"community-contrib","at":"2026-07-29T09:28:54.439Z"},"url":"https://mcp.waymark.network/r/4eef4fd0-f8d7-4d17-8fe3-d3cbdc1c5c2e"}