roblox-cloud · git:20260807.874075f · 2026-08-07 · sha256 5aea0bf7f34e3153
roblox-cloud git:20260807.874075fA
Immutable. This exact content is served forever at /api/v1/blob/5aea0bf7f34e3153.
--- name: roblox-cloud description: "Use for Roblox Open Cloud APIs, API keys, OAuth 2.0, webhooks, scopes, token lifecycle, or in-experience HttpService calls." last_reviewed: 2026-08-07 sources: - https://create.roblox.com/docs/cloud/guides - https://create.roblox.com/docs/cloud/auth/api-keys - https://create.roblox.com/docs/cloud/auth/oauth2-overview - https://create.roblox.com/docs/cloud/auth/oauth2-registration - https://create.roblox.com/docs/cloud/auth/oauth2-develop - https://create.roblox.com/docs/cloud/auth/oauth2-reference - https://create.roblox.com/docs/cloud/webhooks/webhook-notifications --- # Roblox Open Cloud ## When to Load Load for Open Cloud APIs, API keys, OAuth, app registration, webhooks, or supported HttpService calls. Route persistence, gameplay remotes, and Studio control to their domain skills. ## Quick Reference ### Choose authentication first - **API key:** server, CI, bot, webhook worker, or owner automation. Scope it to required resources and operations. - **OAuth 2.0:** a third-party app needs user-granted access to specific Roblox resources. Use authorization code flow with PKCE. - Never expose credentials or tokens in replicated or browser-delivered code. ### REST mechanics - Current resources generally use `https://apis.roblox.com/cloud/v2/...`; confirm each endpoint and legacy v1 exception. - Read `nextPageToken`; send it back as `pageToken` without changing the query. - Use `updateMask` only for fields intended to change. - Poll returned Operation resources with bounded exponential backoff. - Treat 429 and `RESOURCE_EXHAUSTED` as quota signals. Honor `Retry-After` when present. ### OAuth essentials 1. Register exact redirect URLs and minimum scopes. 2. Generate fresh high-entropy `state` and PKCE verifier/challenge per attempt. 3. Verify `state` before exchanging the short-lived, single-use code. 4. Exchange and refresh through a trusted backend. Replace rotated refresh tokens atomically. 5. Use `userinfo` for identity claims, `introspect` for token activity, and `token/resources` for granted resource access. 6. Reauthorize when scopes change and revoke tokens when disconnecting. Public clients cannot hold a secret and require PKCE. Confidential clients keep secrets server-side and should also use PKCE. ### Webhooks and HttpService - Verify webhook signatures, reject stale delivery timestamps, deduplicate notification IDs, return 2XX quickly, and process asynchronously. - Before an in-experience call, confirm the endpoint supports HttpService. Use HTTPS and a Roblox Secret for `x-api-key`; do not assume arbitrary headers are allowed. ### Failure boundaries Validate endpoint paths, schemas, scopes, creator permissions, and resource grants separately. Retry only transient failures. Never solve permission or invalid-input errors with repeated requests. > Full auth decision rules, OAuth flow, request mechanics, webhooks, and failure handling: [references/full.md](references/full.md)