Skip to content
masterclassBuddyTech Buzz5 fresh blogs · 5:00 AM IST

Better Auth · Const

kick

Kick is configured as a Better Auth social provider with a client ID and client secret. Clients begin authentication with signIn.social({ provider: "kick" }).

How it works

Kick is a social authentication provider configured under Better Auth’s socialProviders option. Supply the Kick client ID and secret, then invoke the client’s social sign-in flow with provider set to "kick"; the OAuth redirect must match the application’s configured callback URL.

Syntax

socialProviders: { kick: { clientId: string, clientSecret: string } }
await authClient.signIn.social({ provider: "kick" })

Parameters

NameTypeDescription
providerstringThe social provider identifier; set it to kick.

Returns

The documentation does not specify a return type or response shape for this provider flow.

Key points

  • Register Kick in the auth instance’s socialProviders configuration.
  • Kick authentication depends on credentials obtained from the Kick developer portal.
  • Start the client flow by passing an options object to signIn.social.
  • Use kick as the social provider identifier.

Common mistakes

  • For local development, register the exact localhost callback URL with Kick.
  • Changing Better Auth’s auth-route base path requires updating Kick’s registered redirect URL.

Example: Configure and sign in with Kick

import { betterAuth } from "better-auth"
import { createAuthClient } from "better-auth/client"

export const auth = betterAuth({
  socialProviders: {
    kick: {
      clientId: process.env.KICK_CLIENT_ID as string,
      clientSecret: process.env.KICK_CLIENT_SECRET as string,
    },
  },
})

const authClient = createAuthClient()
await authClient.signIn.social({ provider: "kick" })

Configure Kick with its client credentials, then start OAuth sign-in through the client’s social sign-in method.

When to use it

Social sign-in

Offer Kick as an OAuth login option alongside other social providers.

Local OAuth development

Use Kick credentials in a local development environment.

Production authentication

Provide a Kick login flow in a production application.

Interview questions

QHow do you add Kick sign-in to Better Auth?

Configure Kick inside socialProviders with clientId and clientSecret, then call authClient.signIn.social({ provider: "kick" }) on the client. The provider value must be the string kick.

Follow-up: What configuration detail can break the OAuth flow after moving auth routes? Update the provider’s redirect URL to reflect the new auth-route base path.

QWhat are the server and client pieces of the integration?

The server configuration stores the Kick credentials under socialProviders.kick. The client starts authentication through Better Auth’s standard social sign-in API rather than a Kick-specific client method.

Follow-up: What must be supplied for the provider configuration? Both a Kick client ID and client secret are required.

QWhat redirect URL setup is required?

Kick requires a registered redirect URL, with the local-development callback shown as http://localhost:3000/api/auth/callback/kick. Production should use the application’s production URL.

Follow-up: What should be checked if localhost works but production does not? Register the production callback URL rather than reusing the localhost URL.

  • betterAuth
  • socialProviders
  • createAuthClient
  • signIn.social

Source: authentication: Kick. Checked 2026-10-15.