Kethineni Tarunteja
03/05/2026, 5:56 AMAkash Jivane
03/05/2026, 9:26 AMid_token_hint mandatory for /oauth2/v1/logout?
For the Descope OIDC logout endpoint, the expected pattern is to call:
<https://api.descope.com/oauth2/v1/logout?id_token_hint=><ID_TOKEN>&post_logout_redirect_uri=<URL>
The id_token returned during login is used as the id_token_hint when initiating logout. This allows the IdP to identify and terminate the correct session.
While logout can still work via session cookies, providing id_token_hint is strongly recommended because it ensures the correct user session is invalidated.
2. Could data.idTokenJSONString be null in the Salesforce RegistrationHandler?
From the Descope side, an ID token is returned as part of the OIDC token exchange during the login flow.
If data.idTokenJSONString is coming through as null, that usually indicates the Salesforce OIDC integration layer is not exposing the ID token to the RegistrationHandler, rather than Descope not issuing one.
Things worth confirming on the Salesforce side:
• The flow is using Authorization Code OIDC flow
• Salesforce Auth Provider is configured to process ID tokens
• The token endpoint response contains id_token
3. Does post_logout_redirect_uri need to be whitelisted elsewhere?
Yes — the redirect URI used in logout should be allowed in the OIDC application configuration in the Descope Console. This is required so the IdP knows which URLs are valid redirect targets after logout.Kethineni Tarunteja
03/05/2026, 11:25 AMAkash Jivane
03/05/2026, 11:41 AMid_token is consistently stored during login in the DescopeRegistrationHandler.
If data.idTokenJSONString isn’t populated during login, the cache will never contain the token and the Descope logout step will always be skipped.