Struggling with AUTHRET_JWTTOKENWRONG during IAuthServiceDotNetWrap.SDKAuth

Description
I have a Meeting SDK app on Windows (using the C# wrapper) which is only used by my local churches, so we have a user-managed app which isn’t published, if that makes any difference.

I received the email notification about moving away from SDK key/secret to OAuth client/secret, and I’ve been trying to implement the guidance - but the SDK fails during the SDKAuth call to create an SDK JWT, returning an error of AUTHRET_JWTTOKENWRONG. (At the moment I’m trying all of this on my personal developer account, which is separate from the account I’m using for production purposes. Let me know if that makes a difference.)

I can only assume the signing code itself is correct, as it has been working for years. As this is during SDK initialization, before we’re joining or starting a meeting, I’m only including values for appKey, iat, exp and tokenExp in the payload. (I’ve tried including sdkKey as well, but that didn’t help.)

Basically all I expected to change was providing the client ID where I used to provide the SDK key, and client secret where I used to provide the SDK secret. I expect the client ID and client secret to be valid as I’ve already been using those when obtaining or refreshing tokens elsewhere.

Is there any way of getting more information about what causes the AUTHRET_JWTTOKENWRONG error?

Which Windows Meeting SDK version?
6.6.5.19841

Troubleshooting Routes
Logging that I’m using the expected client ID and secret, comparing the JWT that I’m creating with the one created by Meeting SDK Auth

I’ve tested that the code still works when using the SDK key/secret instead of the client ID/secret. Is there any subtle difference between using the SDK key/secret and the client ID/secret that could explain this?

Device (please complete the following information):

  • Device: Surface Laptop
  • OS: Windows 11