kavachOS
Authentication

Kick

Sign in with Kick using OAuth 2.0.

Setup

Get credentials

Go to kick.com and navigate to Dashboard > Developer > Applications. Create an app and set your redirect URI:

https://your-app.com/api/kavach/auth/oauth/callback/kick

Configure

lib/kavach.ts
import { createKavach } from 'kavachos';
import { oauth } from 'kavachos/auth';

const kavach = await createKavach({
  database: { provider: 'sqlite', url: 'kavach.db' },
  plugins: [
    oauth({
      providers: [
        {
          id: 'kick',
          clientId: process.env.KICK_CLIENT_ID!,
          clientSecret: process.env.KICK_CLIENT_SECRET!,
        },
      ],
    }),
  ],
});
KICK_CLIENT_ID=...
KICK_CLIENT_SECRET=...

Scopes

Default scopes: user:read

ScopeWhat it unlocks
user:readRead user profile and email
channel:readRead channel information
chat:readRead chat messages

Kick's OAuth implementation is relatively new. Check the Kick API documentation for the latest scope definitions.

Endpoints

MethodPathDescription
GET/auth/oauth/authorize/kickRedirect to Kick
GET/auth/oauth/callback/kickHandle callback

On this page