GitHub OAuth Provider

Authenticate using GitHub OAuth provider.


Callback or Redirect URL pattern

https://example.com/api/{name}/oauth/callback/github




tssrc/payload.config.ts
            import { buildConfig } from "payload/config";
import { authPlugin } from "payload-auth-plugin";
import { GitHubAuthProvider } from "payload-auth-plugin/providers";

export default buildConfig({
  // --- rest of the config
  plugins: [
    // --- rest of the plugins
    authPlugin({
      providers: [
        GitHubAuthProvider({
          client_id: process.env.PROVIDER_CLIENT_ID as string,
          client_secret: process.env.PROVIDER_CLIENT_SECRET as string,
        }),
      ],
    }),
  ],
});

        

Args

  • client_id:

Type: string

Description: client_id is a string generated by GitHub to identify your Payload app.

Optional: No.


ts
            {
  client_id: "";
}

        

  • client_secret:

Type: string

Description: client_secret is a private key generated by GitHub to authenticate your Payload app.

Optional: No.


ts
            {
  client_secret: "";
}

        

  • params:

Type: Record<string, string>

Description: params any additional parameters to pass to the IDP for authorization.

Optional: Yes.


ts
            {
  params: {
    // additional parameters
  }
}

        

Returns

provider OAuth2ProviderConfig