{"registry_version":"2026.1025.387","generated_at":"2026-10-25T06:27:00Z","content_sha256":"089d16f627d9365e3d0663cc8069203706d7cb23a76c332226e29686968811a5","signed":true,"signature":{"key_id":"ed25519:74ca19268e364242","algorithm":"ed25519","expires_at":"2026-11-24T06:27:09Z","expired":false,"manifest":"/registry/manifest.json"},"id":"twitch/developer","name":"Twitch Developer application (Helix API)","vendor":"Twitch","status":"researched","last_verified":null,"last_researched":"2026-10-25","summary":"Register an application in the Twitch Developer Console (2FA required) to get a client ID and client secret for OAuth and the Twitch API.","account_model":{"summary":"A Twitch user account (with verified email and 2FA) owns applications registered in the Developer Console.","accounts":[{"name":"Twitch user account","kind":"personal","owned_by":"the person","required":true,"note":"Email must be verified and two-factor authentication enabled before registering an app."},{"name":"Registered application","kind":"developer","owned_by":"the person or company","parent":"Twitch user account","required":true,"note":"Holds the client ID, client secret and OAuth redirect URLs."}],"notes":["Organisation ownership of apps (Twitch Developer organisations) is not covered in the pages reviewed. [to verify]"]},"prerequisites":[{"need":"A Twitch account with a verified email address","note":"The register-app guide says to verify your email first."},{"need":"The OAuth redirect URL(s) your app will use (for example http://localhost:3000 for development)","note":"Redirect URLs are entered when registering the app. [to verify] whether non-HTTPS localhost is accepted."}],"identity_requires":[],"have_ready":[{"kind":"phone_for_2fa","description":"A phone or authenticator app for Twitch two-factor authentication","why":"Twitch requires 2FA on the account before you can register an application.","needed_for":["enable-2fa"],"auto_check":"none","source_url":"https://dev.twitch.tv/docs/authentication/register-app/"}],"steps":[{"id":"sign-in","title":"Log in to the Twitch Developer Console","summary":"Log in at dev.twitch.tv/console with your Twitch account. If you have no account you create it yourself; verapli does not create accounts. Verify your email first.","route":"guided","gate":"human_login","human_only":true,"gate_label":"You sign in","depends_on":[],"optional":false,"url":"https://dev.twitch.tv/console","lead_time":null,"preflight":[],"captures":null},{"id":"enable-2fa","title":"Enable two-factor authentication","summary":"In Twitch Security and Privacy settings, turn on two-factor authentication, then refresh the console.","route":"guided","gate":"2fa","human_only":true,"gate_label":"You enter a 2-step code","depends_on":["sign-in"],"optional":false,"url":"https://www.twitch.tv/settings/security","lead_time":null,"preflight":[],"captures":null},{"id":"accept-terms","title":"Review the Developer Services Agreement","summary":"Read the Twitch Developer Services Agreement, which governs use of Twitch APIs and Twitch Data, before registering an application.","route":"guided","gate":"human_terms","human_only":true,"gate_label":"You accept the terms","depends_on":["sign-in"],"optional":false,"url":"https://legal.twitch.com/en/legal/developer-agreement/","lead_time":null,"preflight":[],"captures":null},{"id":"register-app","title":"Register your application","summary":"In Applications, click Register Your Application. Enter a name unique across all Twitch applications, add your OAuth Redirect URLs (click Add for each), pick a Category, complete the CAPTCHA and click Create. Then open Manage and copy the Client ID.","route":"guided","gate":"captcha","human_only":true,"gate_label":"You solve a CAPTCHA","depends_on":["enable-2fa","accept-terms"],"optional":false,"url":"https://dev.twitch.tv/console/apps","lead_time":null,"preflight":[],"captures":"TWITCH_CLIENT_ID"},{"id":"create-secret","title":"Generate a client secret","summary":"On the app's Manage page, click New Secret and copy it straight away; verapli writes it to your env file. Generating a new secret invalidates the previous one.","route":"guided","gate":"human_submit","human_only":true,"gate_label":"You press submit","depends_on":["register-app"],"optional":false,"url":"https://dev.twitch.tv/console/apps","lead_time":null,"preflight":[],"captures":"TWITCH_CLIENT_SECRET"}],"gates":[{"step":"sign-in","gate":"human_login","label":"You sign in"},{"step":"enable-2fa","gate":"2fa","label":"You enter a 2-step code"},{"step":"accept-terms","gate":"human_terms","label":"You accept the terms"},{"step":"register-app","gate":"captcha","label":"You solve a CAPTCHA"},{"step":"create-secret","gate":"human_submit","label":"You press submit"}],"lead_times":[],"outputs":[{"name":"TWITCH_CLIENT_ID","description":"Twitch application client ID (public; sent as the Client-Id header)","secret":false,"example_format":"lowercase alphanumeric string, e.g. abc123… [to verify]","environments":["development","production"]},{"name":"TWITCH_CLIENT_SECRET","description":"Twitch application client secret, used for app access tokens and the authorization code flow","secret":true,"example_format":"lowercase alphanumeric string… [to verify]","environments":["development","production"]}],"renewals":[],"estimated_minutes":null,"guide_url":"https://verapli.com/guides/twitch/developer"}