Skip to main content
Unless you are using the Bot Token Endpoint, you must configure an identity provider before you can create provisional accounts. This applies to both Server Authentication with External Credentials Exchange and Public Client Integration. Not sure which authentication method to use? See Choosing an Authentication Method.

Configuring Your Identity Provider

If you are using the Bot Token Endpoint, no Identity Provider configuration is required.
Open the Discord app for your game in the Developer Portal. Find the External Auth page under the Discord Social SDK section in the sidebar. Click on Add Auth Provider and choose the type of provider you’re using (Steam, OIDC, etc.). Fill in the required details for your provider. We currently support the following provider types:
  • OpenID Connect (OIDC)
  • Steam Session Tickets
  • Epic Online Services (EOS)
  • Unity
  • Apple
  • PlayStation Network (PSN)
If you are configuring OIDC, see OIDC Integration Requirements for the full list of requirements your issuer URL, discovery document, and ID tokens must meet. Providers are represented in Discord’s systems by the following types:

External Auth Types


OIDC Integration Requirements

If you are using OpenID Connect (OIDC) as your identity provider, Discord validates your configuration and tokens against the requirements below. Meeting these requirements is necessary both when saving your OIDC configuration in the Developer Portal and at runtime when tokens are exchanged.

Issuer URL Requirements

The issuer URL you configure in the Developer Portal must meet all of the following: Non-standard ports (e.g. :8080) are permitted.

OIDC Discovery Document Requirements

Discord fetches your OIDC configuration from {issuer_url}/.well-known/openid-configuration per RFC 8414. This endpoint must:
  • Be accessible over HTTPS
  • Not require HTTP redirects — Discord does not follow redirects when fetching this document or your JWKS endpoint
  • Return a valid JSON object (not an array)
The discovery document must include these fields: authorization_endpoint and token_endpoint are accepted but not used by Discord.

Supported Signing Algorithms

Your ID tokens must be signed using an asymmetric algorithm. Discord supports: Symmetric (HMAC) algorithms such as HS256 are not supported. Any unsupported algorithms listed in id_token_signing_alg_values_supported are silently ignored.

ID Token Requirements

The OIDC ID token passed as external_auth_token must meet all of the following: The optional preferred_username claim (1–32 characters) sets the provisional account’s display name if present. See Setting Display Names for how display names are chosen across providers.

Next Steps

Once your identity provider is configured, continue to the authentication method that matches your setup:

External Credentials Exchange

Exchange an external provider token (OIDC, Steam, EOS, etc.) server-side.

Public Client Integration

Authenticate directly from the client when you don’t have a backend.
Need help? Join the Discord Developers Server and share questions in the #social-sdk-dev-help channel for support from the community. If you encounter a bug while working with the Social SDK, please report it here: https://dis.gd/social-sdk-bug-report

Change Log