Facebook Messenger SDK stopped sending PSID in GetContext() call

Sorry if this is the wrong place for such an extremely targeted question, but I can’t find anyone complaining of this issue anywhere. I have a Facebook Messenger Chatbot (a production and dev version) and I use web extensions to launch UIs that are too complex to deal with in free text. Within these web extensions I run the Facebook Messenger SDK (javascript) to identify the current user. Once initialised I call the GetContext() method which returns a context object, this method previously returned a payload containing their PSID (Page Scoped User ID) and a JWT which also contained the PSID. The web extension sends data to our API using this JWT for authorization. This has been working
fine for 2+ years.

A few days ago I noticed that the API calls from the web extensions are now failing and after debugging it I’ve found that the PSID is now an empty string in both the context object and the JWT (when decrypted), so our backend has no way to identify the user.

The bot is connected to the Page and the Web Extension is treated as an App in Facebook, they are both owned by the same FB Business account. The App has “Messenger” added as a Product.

Has something changed (silly question for FB I know)?

submitted by /u/fr4nklin_84
[link] [comments]